Skip to content
Snippets Groups Projects
Commit 481963d9 authored by Ralph Giles's avatar Ralph Giles
Browse files

Require automake 1.6.

nodist_include_HEADERS is not supported by automake 1.4. It ignores the
line entirely and fails to install ao/os_types.h, preventing any
application from compiling against libao. Therefore we make the
requirement explicit by adding it to the AUTOMAKE_OPTIONS in
Makefile.am.

Unfortunately, automake 1.4 is still the default on many systems
(including Debian unstable) and in stark contrast to the situation with
autoconf, even when 1.6 or later is installed there is no dispatch
mechanism to ensure the appropriate version is used. Therefore we make
an attempt in autogen.sh to select the correct executables for aclocal
and automake and run those.

Note that while the message says, "checking for automake 1.6 or
later..." it actually only checks for a matching version number. If
someone knows how to do the 'or later' part in portable shell, please
let me know.


git-svn-id: http://svn.xiph.org/trunk/ao@5521 0101bb08-14d6-0310-b084-bc0e0c8e3800
parent 8eaeb3de
No related branches found
No related tags found
No related merge requests found
## Process this file with automake to produce Makefile.in ## Process this file with automake to produce Makefile.in
AUTOMAKE_OPTIONS = foreign dist-zip AUTOMAKE_OPTIONS = foreign 1.6 dist-zip
SUBDIRS = src include doc debian SUBDIRS = src include doc debian
......
...@@ -20,15 +20,53 @@ echo "checking for autoconf... " ...@@ -20,15 +20,53 @@ echo "checking for autoconf... "
DIE=1 DIE=1
} }
echo "checking for automake... " VERSIONGREP="sed -e s/.*[^0-9\.]\([0-9]\.[0-9]\).*/\1/"
(automake --version) < /dev/null > /dev/null 2>&1 || {
# do we need automake?
if test -r Makefile.am; then
AM_NEEDED=`fgrep AUTOMAKE_OPTIONS Makefile.am | $VERSIONGREP`
if test -z $AM_NEEDED; then
echo -n "checking for automake... "
AUTOMAKE=automake
ACLOCAL=aclocal
if ($AUTOMAKE --version < /dev/null > /dev/null 2>&1); then
echo "no"
AUTOMAKE=
else
echo "yes"
fi
else
echo -n "checking for automake $AM_NEEDED or later... "
for am in automake-$AM_NEEDED automake$AM_NEEDED automake; do
($am --version < /dev/null > /dev/null 2>&1) || continue
ver=`$am --version < /dev/null | head -1 | $VERSIONGREP`
if test $ver = $AM_NEEDED; then
AUTOMAKE=$am
echo $AUTOMAKE
break
fi
done
test -z $AUTOMAKE && echo "no"
echo -n "checking for aclocal $AM_NEEDED or later... "
for ac in aclocal-$AM_NEEDED aclocal$AM_NEEDED aclocal; do
($ac --version < /dev/null > /dev/null 2>&1) || continue
ver=`$ac --version < /dev/null | head -1 | $VERSIONGREP`
if test $ver = $AM_NEEDED; then
ACLOCAL=$ac
echo $ACLOCAL
break
fi
done
test -z $ACLOCAL && echo "no"
fi
test -z $AUTOMAKE || test -z $ACLOCAL && {
echo echo
echo "You must have automake installed to compile $package." echo "You must have automake installed to compile $package."
echo "Download the appropriate package for your system," echo "Download the appropriate package for your distribution,"
echo "or get the source from one of the GNU ftp sites" echo "or get the source tarball at ftp://ftp.gnu.org/pub/gnu/"
echo "listed in http://www.gnu.org/order/ftp.html" exit 1
DIE=1 }
} fi
echo -n "checking for libtool... " echo -n "checking for libtool... "
for LIBTOOLIZE in libtoolize glibtoolize nope; do for LIBTOOLIZE in libtoolize glibtoolize nope; do
...@@ -60,14 +98,14 @@ fi ...@@ -60,14 +98,14 @@ fi
echo "Generating configuration files for $package, please wait...." echo "Generating configuration files for $package, please wait...."
echo " aclocal $ACLOCAL_FLAGS" echo " $ACLOCAL $ACLOCAL_FLAGS"
aclocal $ACLOCAL_FLAGS $ACLOCAL $ACLOCAL_FLAGS
#echo " autoheader" #echo " autoheader"
#autoheader #autoheader
echo " $LIBTOOLIZE --automake" echo " $LIBTOOLIZE --automake"
$LIBTOOLIZE --automake $LIBTOOLIZE --automake
echo " automake --add-missing $AUTOMAKE_FLAGS" echo " $AUTOMAKE --add-missing $AUTOMAKE_FLAGS"
automake --add-missing $AUTOMAKE_FLAGS $AUTOMAKE --add-missing $AUTOMAKE_FLAGS
echo " autoconf" echo " autoconf"
autoconf autoconf
......
## Process this file with automake to produce Makefile.in ## Process this file with automake to produce Makefile.in
AUTOMAKE_OPTIONS = foreign AUTOMAKE_OPTIONS = foreign 1.6
SUBDIRS = ao SUBDIRS = ao
## Process this file with automake to produce Makefile.in ## Process this file with automake to produce Makefile.in
AUTOMAKE_OPTIONS = foreign AUTOMAKE_OPTIONS = foreign 1.6
includedir = $(prefix)/include/ao includedir = $(prefix)/include/ao
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment