wireshark/aclocal-flags

63 lines
1.9 KiB
Bash
Executable File

#!/bin/sh
#
# This script returns the flags to be fed to "aclocal" to ensure that
# it finds GLib's aclocal macros. (We assume GTK+ is installed in the
# same place as GLib.)
#
# aclocal will search, by default, only in a directory in the same
# tree where it was installed - e.g., if installed in "/usr/bin", it'll
# search only in "/usr/share/aclocal", and if installed in "/usr/local/bin",
# it'll search only in "/usr/local/share/aclocal".
#
# However, there is no guarantee that GLib has been installed there; if
# it's not, it won't find the GLib autoconf macros, and will complain
# bitterly.
#
# So, if the "share/local" directory under the directory reported by
# "pkg-config --variable=prefix glib-2.0" isn't the same directory as
# the directory reported by "aclocal --print-ac-dir", we return a "-I"
# flag with the first of those directories as the argument.
#
# (If they *are* the same directory, and we supply that "-I" flag,
# "aclocal" will look in that directory twice, and get well and truly
# confused, reporting a ton of duplicate macro definitions.)
#
# $Id$
#
#
# OK, where will aclocal look by default?
#
aclocal_dir=`aclocal --print-ac-dir`
#
# And where do we want to make sure it looks?
#
glib_prefix=`pkg-config --variable=prefix glib-2.0 2>/dev/null`
if [ -z "$glib_prefix" ]
then
glib_aclocal_dir=""
else
glib_aclocal_dir=$glib_prefix/share/aclocal
fi
ac_missing_dir=`dirname $0`
echo "-I $ac_missing_dir/aclocal-fallback" | tr -d '\012' | tr -d '\015'
#
# If there's no "aclocal", the former will be empty; if there's no
# "pkg-config" or it doesn't know about glib-2.0, the latter will be
# empty.
#
# Add the "-I" flag only if neither of those strings are empty, and
# they're different.
#
if [ ! -z "$aclocal_dir" -a ! -z "$glib_aclocal_dir" \
-a "$aclocal_dir" != "$glib_aclocal_dir" ]
then
echo " -I $glib_aclocal_dir" | tr -d '\012' | tr -d '\015'
fi
echo
exit 0