X-Git-Url: https://git.saurik.com/bison.git/blobdiff_plain/6712933e0f2d2cbf43dc6b9bfe5c60b7d9941955..6dde1c82cd2961df2fcb508b694d64b4d485f279:/bootstrap?ds=sidebyside diff --git a/bootstrap b/bootstrap index 34dce9d4..b30d8f50 100755 --- a/bootstrap +++ b/bootstrap @@ -23,6 +23,11 @@ package=bison +# Ensure file names are sorted consistently across platforms; +# e.g., m4/ulonglong_gl.m4 should follow m4/ulonglong.m4. +LC_ALL=C +export LC_ALL + # Parse options. for option @@ -43,19 +48,6 @@ do esac done -# Check that gettext version matches what's in configure.ac. -# FIXME: We shouldn't have to modify configure.ac every time -# a new gettext version comes out. -gettext_have=$(LC_ALL=C gettext --version | sed 's/.* //; 1q') -gettext_need=$( - sed -n '/^AM_GNU_GETTEXT_VERSION/{ s/.*\[//; s/].*//; p; q; }' configure.ac -) -test "$gettext_have" = "$gettext_need" || { - echo >&2 "$0: Your gettext version is $gettext_have." - echo >&2 "$0: Please install and use gettext-$gettext_need instead." - exit 1 -} - echo "$0: Bootstrapping CVS $package..." build_cvs_prefix() { @@ -114,6 +106,7 @@ quotearg stdbool stpcpy xalloc +xalloc-die xstrndup ' @@ -142,6 +135,13 @@ for gnulib_file in $gnulib_files; do case $gnulib_file in m4/onceonly_2_57.m4) dest=m4/onceonly.m4;; + # These will be overwritten by autopoint, which still uses + # old jm_.* macro names, so we have to keep both copies. + # m4/gettext.m4 isn't mentioned here, since it's patched below. + m4/glibc21.m4 | m4/inttypes_h.m4 | m4/lib-ld.m4 | \ + m4/lib-prefix.m4 | m4/po.m4 | m4/stdint_h.m4 | m4/uintmax_t.m4 | \ + m4/ulonglong.m4) + dest=`expr $gnulib_file : '\(.*\).m4'`_gl.m4;; esac rm -f $dest && @@ -149,6 +149,12 @@ for gnulib_file in $gnulib_files; do cp -p $GNULIB_SRCDIR/$gnulib_file $dest || exit done +echo "$0: patching m4/gettext.m4 so that AM_INTL_SUBDIR is empty ..." +sed ' + /^AC_DEFUN(\[AM_INTL_SUBDIR],/,/^]/c\ + AC_DEFUN([AM_INTL_SUBDIR], []) +' m4/gettext.m4 >m4/gettext_gl.m4 || exit + # Get translations. @@ -189,6 +195,7 @@ intl_files_to_remove=' aclocal.m4 intl m4/codeset.m4 + m4/gettext.m4 m4/glibc21.m4 m4/intdiv0.m4 m4/intmax.m4 @@ -197,8 +204,11 @@ intl_files_to_remove=' m4/inttypes-pri.m4 m4/isc-posix.m4 m4/lcmessage.m4 + m4/lib-ld.m4 + m4/lib-prefix.m4 m4/longdouble.m4 m4/longlong.m4 + m4/po.m4 m4/printf-posix.m4 m4/signed.m4 m4/size_max.m4 @@ -212,18 +222,11 @@ intl_files_to_remove=' echo $0: rm -fr $intl_files_to_remove ... rm -fr $intl_files_to_remove || exit -echo "$0: patching m4/gettext.m4 so that AM_INTL_SUBDIR is empty ..." -sed ' - /^AC_DEFUN(\[AM_INTL_SUBDIR],/,/^]/c\ - AC_DEFUN([AM_INTL_SUBDIR], []) -' m4/gettext.m4 >m4/gettext.m4t && -mv m4/gettext.m4t m4/gettext.m4 || exit - # Patch what appears to be a bug in gettext 0.14.1; # remove this once the bug is fixed. grep @top_builddir@ po/Makefile.in.in >/dev/null || { echo "$0: prepending 'top_builddir=@top_builddir@' to po/Makefile.in.in ... " - old_contents=$(cat po/Makefile.in.in) || exit + old_contents=`cat po/Makefile.in.in` || exit cat >po/Makefile.in.in <p # if src/parse-gram.[ch] are out of date, rebuild them. -parse_gram_y=$(find src/parse-gram.y \ +parse_gram_y=`find src/parse-gram.y \ '(' -newer src/parse-gram.c -o -newer src/parse-gram.h ')' \ - -print) || exit + -print` || exit case $parse_gram_y in ?*) echo "$0: warning: bootstrapping with old src/parse-gram.[ch] files."