summaryrefslogtreecommitdiff
path: root/srclib/apr-util/xml/expat/buildconf.sh
diff options
context:
space:
mode:
Diffstat (limited to 'srclib/apr-util/xml/expat/buildconf.sh')
-rwxr-xr-xsrclib/apr-util/xml/expat/buildconf.sh120
1 files changed, 73 insertions, 47 deletions
diff --git a/srclib/apr-util/xml/expat/buildconf.sh b/srclib/apr-util/xml/expat/buildconf.sh
index 94ea8a1c..817dd59b 100755
--- a/srclib/apr-util/xml/expat/buildconf.sh
+++ b/srclib/apr-util/xml/expat/buildconf.sh
@@ -1,64 +1,90 @@
-#! /bin/sh
-
+#!/bin/sh
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
#
-# Find libtoolize. Prefer 1.x versions.
#
-libtoolize=`conftools/PrintPath glibtoolize1 glibtoolize libtoolize libtoolize15 libtoolize14`
+
+# buildconf: Build the support scripts needed to compile from a
+# checked-out version of the source code.
+
+if [ "$1" = "--verbose" -o "$1" = "-v" ]; then
+ verbose="--verbose"
+ shift
+fi
+
+libtoolize=`conftools/PrintPath glibtoolize1 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) the files.
-#
-# Note: This bundled version of expat will not always replace the
-# files since we have a special config.guess/config.sub that we
-# want to ensure is used.
-echo "Copying libtool helper files ..."
-
-# Remove any m4 cache and libtool files so one can switch between
-# autoconf and libtool versions by simply rerunning the buildconf script.
+# 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
#
-m4files='lt~obsolete.m4 ltversion.m4 ltoptions.m4 argz.m4 ltsugar.m4 libtool.m4'
+echo "Copying libtool helper files using $libtoolize"
-(cd conftools ; rm -f ltconfig ltmain.sh aclocal.m4 $m4files)
+# Remove any libtool files so one can switch between libtool versions
+# by simply rerunning the buildconf script.
rm -rf autom4te*.cache aclocal.m4
+m4files='argz.m4 libtool.m4 ltoptions.m4 ltsugar.m4 ltversion.m4 lt~obsolete.m4'
+(cd conftools ; rm -f ltconfig ltmain.sh aclocal.m4 $m4files)
-$libtoolize --copy --automake
+# Determine libtool version, because --copy behaves differently
+# w.r.t. copying libtool.m4
+lt_pversion=`$libtoolize --version 2>/dev/null|sed -e 's/([^)]*)//g;s/^[^0-9]*//;s/[- ].*//g;q'`
+lt_version=`echo $lt_pversion|sed -e 's/\([a-z]*\)$/.\1/'`
+IFS=.; set $lt_version; IFS=' '
-#
-# find libtool.m4
-#
-if [ ! -f libtool.m4 ]; then
- ltpath=`dirname $libtoolize`
- ltfile=${LIBTOOL_M4-`cd $ltpath/../share/aclocal ; pwd`/libtool.m4}
- if [ -f $ltfile ]; then
- echo "libtool.m4 found at $ltfile"
- cp $ltfile conftools/libtool.m4
+# libtool 1
+if test "$1" = "1"; then
+ $libtoolize --copy --automake
+ # Unlikely, maybe for old versions the file exists
+ if [ -f libtool.m4 ]; then
+ ltfile=`pwd`/libtool.m4
else
- echo "libtool.m4 not found - aborting!"
+
+ # Extract all lines setting variables from libtoolize up until
+ # libtool_m4 gets set
+ ltfindcmd="`sed -n \"/=[^\\\`]/p;/libtool_m4=/{s/.*=/echo /p;q;}\" \
+ < $libtoolize`"
+
+ # Get path to libtool.m4 either from LIBTOOL_M4 env var or our libtoolize based script
+ 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
-fi
+ # Do we need this anymore?
+ echo "Using libtool.m4 at ${ltfile}."
+ rm -f conftools/libtool.m4
+ cp -p $ltfile conftools/libtool.m4
-#
-# Build aclocal.m4 from libtool's m4 files
-#
-echo "dnl THIS FILE IS AUTOMATICALLY GENERATED BY buildconf.sh" > aclocal.m4
-echo "dnl edits here will be lost" >> aclocal.m4
-
-for m4file in $m4files
-do
- m4file=conftools/$m4file
- if [ -f $m4file ]; then
- echo "Incorporating $m4file into aclocal.m4 ..."
- cat $m4file >> aclocal.m4
- rm -f $m4file
- fi
-done
+# libtool 2
+elif test "$1" = "2"; then
+ $libtoolize --copy --quiet $verbose
+fi
cross_compile_warning="warning: AC_TRY_RUN called without default to allow cross compiling"
@@ -66,13 +92,13 @@ cross_compile_warning="warning: AC_TRY_RUN called without default to allow cross
# Generate the autoconf header template (config.h.in) and ./configure
#
echo "Creating config.h.in ..."
-${AUTOHEADER:-autoheader} 2>&1 | grep -v "$cross_compile_warning"
+${AUTOHEADER:-autoheader} $verbose 2>&1 | grep -v "$cross_compile_warning"
echo "Creating configure ..."
### do some work to toss config.cache?
-${AUTOCONF:-autoconf} 2>&1 | grep -v "$cross_compile_warning"
+${AUTOCONF:-autoconf} $verbose 2>&1 | grep -v "$cross_compile_warning"
-# Remove autoconf caches
-rm -rf autom4te*.cache aclocal.m4
+# Clean up any leftovers and autoconf caches
+rm -rf autom4te*.cache aclocal.m4 libtool.m4
exit 0