| #!/bin/sh | |
| # Copyright 2000-2005 The Apache Software Foundation or its licensors, as | |
| # applicable. | |
| # | |
| # Licensed under the Apache License, Version 2.0 (the "License"); | |
| # you may not use this file except in compliance with the License. | |
| # You may obtain a copy of the License at | |
| # | |
| # http://www.apache.org/licenses/LICENSE-2.0 | |
| # | |
| # Unless required by applicable law or agreed to in writing, software | |
| # distributed under the License is distributed on an "AS IS" BASIS, | |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
| # See the License for the specific language governing permissions and | |
| # limitations under the License. | |
| # | |
| # | |
| # buildconf: Build the support scripts needed to compile from a | |
| # checked-out version of the source code. | |
| # Verify that the builder has the right config tools installed | |
| # | |
| build/buildcheck.sh || exit 1 | |
| libtoolize=`build/PrintPath glibtoolize libtoolize15 libtoolize14 libtoolize` | |
| if [ "x$libtoolize" = "x" ]; then | |
| echo "libtoolize not found in path" | |
| exit 1 | |
| fi | |
| # Create the libtool helper files | |
| # | |
| # Note: we copy (rather than link) them to simplify distribution. | |
| # Note: APR supplies its own config.guess and config.sub -- we do not | |
| # rely on libtool's versions | |
| # | |
| echo "Copying libtool helper files ..." | |
| # Remove any libtool files so one can switch between libtool 1.3 | |
| # and libtool 1.4 by simply rerunning the buildconf script. | |
| (cd build ; rm -f ltconfig ltmain.sh libtool.m4) | |
| $libtoolize --copy --automake | |
| if [ -f libtool.m4 ]; then | |
| ltfile=`pwd`/libtool.m4 | |
| else | |
| ltfindcmd="`sed -n \"/=[^\\\`]/p;/libtool_m4=/{s/.*=/echo /p;q;}\" \ | |
| < $libtoolize`" | |
| ltfile=${LIBTOOL_M4-`eval "$ltfindcmd"`} | |
| # Expecting the code above to be very portable, but just in case... | |
| if [ -z "$ltfile" -o ! -f "$ltfile" ]; then | |
| ltpath=`dirname $libtoolize` | |
| ltfile=`cd $ltpath/../share/aclocal ; pwd`/libtool.m4 | |
| fi | |
| fi | |
| if [ ! -f $ltfile ]; then | |
| echo "$ltfile not found" | |
| exit 1 | |
| fi | |
| echo "buildconf: Using libtool.m4 at ${ltfile}." | |
| cat $ltfile | sed -e 's/LIBTOOL=\(.*\)top_build/LIBTOOL=\1apr_build/' > build/libtool.m4 | |
| # libtool.m4 from 1.6 requires ltsugar.m4 | |
| if [ -f ltsugar.m4 ]; then | |
| rm -f build/ltsugar.m4 | |
| mv ltsugar.m4 build/ltsugar.m4 | |
| fi | |
| # Clean up any leftovers | |
| rm -f aclocal.m4 libtool.m4 | |
| # | |
| # Generate the autoconf header and ./configure | |
| # | |
| echo "Creating include/arch/unix/apr_private.h.in ..." | |
| ${AUTOHEADER:-autoheader} | |
| echo "Creating configure ..." | |
| ### do some work to toss config.cache? | |
| ${AUTOCONF:-autoconf} | |
| # Remove autoconf 2.5x's cache directory | |
| rm -rf autom4te*.cache | |
| echo "Generating 'make' outputs ..." | |
| build/gen-build.py make | |
| # Create RPM Spec file | |
| if [ -f `which cut` ]; then | |
| echo rebuilding rpm spec file | |
| ( REVISION=`build/get-version.sh all include/apr_version.h APR` | |
| VERSION=`echo $REVISION | cut -d- -s -f1` | |
| RELEASE=`echo $REVISION | cut -d- -s -f2` | |
| if [ "x$VERSION" = "x" ]; then | |
| VERSION=$REVISION | |
| RELEASE=1 | |
| fi | |
| cat ./build/rpm/apr.spec.in | \ | |
| sed -e "s/APR_VERSION/$VERSION/" \ | |
| -e "s/APR_RELEASE/$RELEASE/" \ | |
| > apr.spec ) | |
| fi | |
| exit 0 |