wireshark/autogen.sh
Guy Harris ec9f9cb687 Add a script, "aclocal-flags", which figures out where
1) aclocal expects autoconf/automake macros to be hidden;

	2) GTK+ hid its autoconf/automake macros;

and, if both places exist but aren't the same directory, returns a "-I"
flag to tell aclocal to look in GTK+'s directory.

Then have "autogen.sh", and Makefiles in directories with "acinclude.m4"
files, use that script and pass what flag it supplies, if any, to
aclocal.

This should, I hope, avoid problems such as those FreeBSD systems where
GTK+ was installed from a port or package (and thus stuck its macros in
"/usr/X11R6/share/aclocal") but aclocal doesn't look there.

(It doesn't solve the problem of somebody downloading and installing,
say, libtool from source - which means it probably shows up under
"/usr/local", with its macros in "/usr/local/share/aclocal" - on a
system that comes with aclocal (meaning it probably just looks in
"/usr/share/aclocal", but that may be best fixed by, whenever you
download a source tarball for something that's part of your OS,
configuring it to install in the standard system directories and
*overwriting* your OS's version.)

svn path=/trunk/; revision=2165
2000-07-26 08:03:57 +00:00

86 lines
2 KiB
Bash
Executable file

#!/bin/sh
#
# Run this to generate all the initial makefiles.
#
# $Id: autogen.sh,v 1.10 2000/07/26 08:03:39 guy Exp $
DIE=true
PROJECT="Ethereal"
VER=`autoconf --version | grep '^autoconf' | sed 's/.*)//'`
case "$VER" in
0* | 1\.* | 2\.[0-9] | 2\.[0-9][a-z]* | \
2\.1[0-2] | 2\.1[0-2][a-z]* )
cat >&2 <<_EOF_
You must have autoconf 2.13 or later installed to compile $PROJECT.
Download the appropriate package for your distribution/OS,
or get the source tarball at ftp://ftp.gnu.org/pub/gnu/autoconf/
_EOF_
DIE="exit 1"
;;
esac
VER=`automake --version | grep '^automake' | sed 's/.*)//'`
case "$VER" in
0* | 1\.[0-3] | 1\.[0-3][a-z]* )
cat >&2 <<_EOF_
You must have automake 1.4 or later installed to compile $PROJECT.
Download the appropriate package for your distribution/OS,
or get the source tarball at ftp://ftp.gnu.org/pub/gnu/automake/
_EOF_
DIE="exit 1"
;;
esac
VER=`libtool --version | grep ' libtool)' | \
sed 's/.*) \([0-9][0-9.]*\) .*/\1/' `
case "$VER" in
0* | 1\.[0-2] | 1\.[0-2][a-z]* | \
1\.3\.[0-2] | 1\.3\.[0-2][a-z]* )
cat >&2 <<_EOF_
You must have libtool 1.3.3 or later installed to compile $PROJECT.
Download the appropriate package for your distribution/OS,
or get the source tarball at ftp://ftp.gnu.org/pub/gnu/libtool/
_EOF_
DIE="exit 1"
;;
esac
$DIE
libtoolize --copy --force || exit 1
if test -z "$*"; then
echo "Running ./configure with no arguments. If you wish to pass any,"
echo "please specify them on the $0 command line."
fi
aclocal_flags="`./aclocal-flags`"
for dir in . wiretap ; do
echo processing $dir
(
cd $dir
aclocalinclude="$ACLOCAL_FLAGS $aclocal_flags"; \
echo aclocal $aclocalinclude
aclocal $aclocalinclude || exit 1
echo autoheader
autoheader || exit 1
echo automake --add-missing --gnu $am_opt
automake --add-missing --gnu $am_opt || exit 1
echo autoconf
autoconf || exit 1
) || exit 1
done
./configure "$@" || exit 1
echo
echo "Now type 'make' to compile $PROJECT."