1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- #!/bin/sh
- PATH=/usr/local/gnu-autotools/bin/:$PATH
- export PATH
- # Start from one level above the build directory
- if [ -f version ]; then
- cd ..
- fi
- if [ \! -f build/version ]; then
- echo "Can't find source directory"
- exit 1
- fi
- # BSD make's "OBJDIR" support freaks out the automake-generated
- # Makefile. Effectively disable it.
- export MAKEOBJDIRPREFIX=/junk
- # Start from the build directory, where the version file is located
- if [ -f build/version ]; then
- cd build
- fi
- if [ \! -f version ]; then
- echo "Can't find version file"
- exit 1
- fi
- # Update the build number in the 'version' file.
- # Separate number from additional alpha/beta/etc marker
- MARKER=`cat version | sed 's/[0-9.]//g'`
- # Bump the number
- VN=`cat version | sed 's/[^0-9.]//g'`
- # Build out the string.
- VS="$(($VN/1000000)).$(( ($VN/1000)%1000 )).$(( $VN%1000 ))$MARKER"
- cd ..
- # Clean up the source dir as much as we can.
- /bin/sh build/clean.sh
- # Substitute the versions into Libarchive's archive.h and archive_entry.h
- perl -p -i -e "s/^(#define\tARCHIVE_VERSION_NUMBER).*/\$1 $VN/" libarchive/archive.h
- perl -p -i -e "s/^(#define\tARCHIVE_VERSION_NUMBER).*/\$1 $VN/" libarchive/archive_entry.h
- perl -p -i -e "s/^(#define\tARCHIVE_VERSION_ONLY_STRING).*/\$1 \"$VS\"/" libarchive/archive.h
- # Substitute versions into configure.ac as well
- perl -p -i -e 's/(m4_define\(\[LIBARCHIVE_VERSION_S\]),.*\)/$1,['"$VS"'])/' configure.ac
- perl -p -i -e 's/(m4_define\(\[LIBARCHIVE_VERSION_N\]),.*\)/$1,['"$VN"'])/' configure.ac
- # Remove developer CFLAGS if a release build is being made
- if [ -n "${MAKE_LIBARCHIVE_RELEASE}" ]; then
- perl -p -i -e "s/^(DEV_CFLAGS.*)/# \$1/" Makefile.am
- perl -p -i -e 's/CMAKE_BUILD_TYPE "[A-Za-z]*"/CMAKE_BUILD_TYPE "Release"/' CMakeLists.txt
- fi
- set -xe
- aclocal -I build/autoconf
- # Note: --automake flag needed only for libtoolize from
- # libtool 1.5.x; in libtool 2.2.x it is a synonym for --quiet
- case `uname` in
- Darwin) glibtoolize --automake -c;;
- *) libtoolize --automake -c;;
- esac
- autoconf
- autoheader
- automake -a -c
|