X-Git-Url: http://git.ipfire.org/?a=blobdiff_plain;f=autogen.sh;h=3625b2da9125a105b0f5b6846dfb0075cbf93acc;hb=e902609400a861dbdb47d5c3eb98b951530bf01d;hp=dc3d95be77dfbd0e24243850e53c631f1908e14d;hpb=a77bfc3a00182a26a6fd46dde971bf2688e06d63;p=thirdparty%2Futil-linux.git diff --git a/autogen.sh b/autogen.sh index dc3d95be77..3625b2da91 100755 --- a/autogen.sh +++ b/autogen.sh @@ -3,7 +3,7 @@ # # Helps generate autoconf/automake stuff, when code is checked out from SCM. # -# Copyright (C) 2006-2009 - Karel Zak +# Copyright (C) 2006-2010 - Karel Zak # srcdir=`dirname $0` @@ -12,91 +12,137 @@ test -z "$srcdir" && srcdir=. THEDIR=`pwd` cd $srcdir DIE=0 -HAS_GTKDOC=1 + +# provide simple gettext backward compatibility +autopoint_fun () +{ + # we have to deal with set -e ... + ret="0" + + # check against this hardcoded set of alternative gettext versions + gt_ver=`gettext --version |\ + sed -n -e 's/.* \(0\.17\|0\.18\|0\.18\.[1-2]\)$/\1/p'` + + if [ -n "$gt_ver" ]; then + echo "warning: forcing autopoint to use old gettext $gt_ver" + rm -f configure.ac.autogenbak + sed -i.autogenbak configure.ac \ + -e "s/\(AM_GNU_GETTEXT_VERSION\).*/\1([$gt_ver])/" + fi + + autopoint "$@" || ret=$? + + if [ -n "$gt_ver" ]; then + mv configure.ac.autogenbak configure.ac + fi + + return $ret +} + +test -f sys-utils/mount.c || { + echo + echo "You must run this script in the top-level util-linux directory." + echo + DIE=1 +} (autopoint --version) < /dev/null > /dev/null 2>&1 || { echo - echo "You must have autopoint installed to generate util-linux-ng build system.." - echo "Download the appropriate package for your distribution," - echo "or see http://www.gnu.org/software/gettext" + echo "You must have autopoint installed to generate the util-linux build system." + echo "The autopoint command is part of the GNU gettext package." + echo DIE=1 } (autoconf --version) < /dev/null > /dev/null 2>&1 || { echo - echo "You must have autoconf installed to generate util-linux-ng build system." + echo "You must have autoconf installed to generate the util-linux build system." + echo + DIE=1 +} +(autoheader --version) < /dev/null > /dev/null 2>&1 || { + echo + echo "You must have autoheader installed to generate the util-linux build system." + echo "The autoheader command is part of the GNU autoconf package." echo - echo "Download the appropriate package for your distribution," - echo "or see http://www.gnu.org/software/autoconf" DIE=1 } -#(libtool --version) < /dev/null > /dev/null 2>&1 || { -# echo -# echo "You must have libtool-2 installed to generate util-linux-ng build system." -# echo "Download the appropriate package for your distribution," -# echo "or see http://www.gnu.org/software/libtool" -# DIE=1 -#} +if ! (bison --version) < /dev/null > /dev/null 2>&1; then + echo + echo "You must have bison installed to build the util-linux." + echo + DIE=1 +else + lexver=$(bison --version | awk '/^bison \(GNU [Bb]ison\)/ { print $4 }') + case "$lexver" in + [2-9].*) + ;; + *) + echo + echo "You must have bison version >= 2.x, but you have $lexver." + echo + DIE=1 + ;; + esac +fi -(automake --version) < /dev/null > /dev/null 2>&1 || { +LIBTOOLIZE=libtoolize +case `uname` in Darwin*) LIBTOOLIZE=glibtoolize ;; esac +if ! ($LIBTOOLIZE --version) < /dev/null > /dev/null 2>&1; then + echo + echo "You must have libtool-2 installed to generate the util-linux build system." echo - echo "You must have automake installed to generate util-linux-ng build system." - echo - echo "Download the appropriate package for your distribution," - echo "or see http://www.gnu.org/software/automake" DIE=1 -} -(autoheader --version) < /dev/null > /dev/null 2>&1 || { +else + ltver=$($LIBTOOLIZE --version | awk '/^[g]*libtoolize/ { print $4 }') + ltver=${ltver:-"none"} + test ${ltver##2.} = "$ltver" && { + echo + echo "You must have libtool version >= 2.x.x, but you have $ltver." + echo + DIE=1 + } +fi + +(automake --version) < /dev/null > /dev/null 2>&1 || { + echo + echo "You must have automake installed to generate the util-linux build system." echo - echo "You must have autoheader installed to generate util-linux-ng build system." - echo - echo "Download the appropriate package for your distribution," - echo "or see http://www.gnu.org/software/autoheader" DIE=1 } -#(gtkdocize --version) < /dev/null > /dev/null 2>&1 || { -# echo -# echo "You must have gtkdocize installed to generate util-linux-ng build system." -# echo -#} - if test "$DIE" -eq 1; then exit 1 fi -test -f mount/mount.c || { - echo "You must run this script in the top-level util-linux-ng directory" - exit 1 -} - -#ltver=$(libtoolize --version | awk '/^libtoolize/ { print $4 }') -#test ${ltver##2.} == "$ltver" && { -# echo "You must have libtool version >= 2.x.x, but you have $ltver." -# exit 1 -#} - echo -echo "Generate build-system by:" +echo "Generating build-system with:" echo " autopoint: $(autopoint --version | head -1)" echo " aclocal: $(aclocal --version | head -1)" echo " autoconf: $(autoconf --version | head -1)" echo " autoheader: $(autoheader --version | head -1)" echo " automake: $(automake --version | head -1)" -#echo " libtoolize: $(libtoolize --version | head -1)" -#echo " gtkdocize: $(gtkdocize --version | head -1)" +echo " libtoolize: $($LIBTOOLIZE --version | head -1)" +echo " bison: $(bison --version | head -1)" + +rm -rf autom4te.cache set -e -autopoint --force $AP_OPTS -#libtoolize --force --copy $LT_OPTS +po/update-potfiles +autopoint_fun --force $AP_OPTS +if ! grep -q datarootdir po/Makefile.in.in; then + echo autopoint does not honor dataroot variable, patching. + sed -i -e 's/^datadir *=\(.*\)/datarootdir = @datarootdir@\ +datadir = @datadir@/g' po/Makefile.in.in +fi +$LIBTOOLIZE --force $LT_OPTS aclocal -I m4 $AL_OPTS autoconf $AC_OPTS autoheader $AH_OPTS -#gtkdocize --copy --docdir config automake --add-missing $AM_OPTS -cd $THEDIR +cd "$THEDIR" echo echo "Now type '$srcdir/configure' and 'make' to compile."