| #! /bin/sh |
| . "${srcdir=.}/init.sh"; path_prepend_ . ../src |
| |
| # Test the autopoint program, without Automake. |
| |
| : ${AUTOCONF=autoconf} |
| ${AUTOCONF} --version >/dev/null 2>/dev/null \ |
| || { echo "Skipping test: autoconf not found"; Exit 77; } |
| |
| cat <<\EOF >configure.ac |
| AC_PREREQ([2.60]) |
| EOF |
| |
| ${AUTOCONF} >/dev/null 2>/dev/null \ |
| || { echo "Skipping test: autoconf version too old"; Exit 77; } |
| |
| rm -f configure.ac |
| |
| gettext_datadir=$top_builddir/misc |
| export gettext_datadir |
| |
| # Check for not copying libintl source. |
| cat <<EOF >configure.ac |
| AC_INIT |
| AC_CONFIG_SRCDIR(hello.c) |
| AC_CONFIG_AUX_DIR([build-aux]) |
| |
| AC_PROG_CC |
| AM_GNU_GETTEXT([external]) |
| AM_GNU_GETTEXT_VERSION([$ARCHIVE_VERSION]) |
| |
| AC_CONFIG_FILES([Makefile]) |
| AC_CONFIG_FILES([po/Makefile.in]) |
| AC_OUTPUT |
| EOF |
| |
| $gettext_datadir/autopoint >/dev/null 2>autopoint.err |
| test $? = 0 || { cat autopoint.err; Exit 1; } |
| |
| test ! -d intl || Exit 1 |
| test -d m4 || Exit 1 |
| test -d po || Exit 1 |
| test -d build-aux || Exit 1 |
| |
| test -f m4/po.m4 || Exit 1 |
| test -f po/Makefile.in.in || Exit 1 |
| test -f build-aux/config.rpath || Exit 1 |
| |
| rm -fr m4 po ABOUT-NLS build-aux/config.rpath |
| |
| # Check for copying libintl source of the current version. |
| cat <<EOF >configure.ac |
| AC_INIT |
| AC_CONFIG_SRCDIR(hello.c) |
| |
| AC_PROG_CC |
| AM_GNU_GETTEXT |
| AM_GNU_GETTEXT_VERSION([$ARCHIVE_VERSION]) |
| |
| AC_CONFIG_FILES([Makefile]) |
| AC_CONFIG_FILES([po/Makefile.in]) |
| AC_OUTPUT |
| EOF |
| |
| $gettext_datadir/autopoint >/dev/null 2>autopoint.err |
| test $? = 1 || { cat autopoint.err; Exit 1; } |
| |
| rm -fr intl m4 po ABOUT-NLS config.rpath |
| |
| # Check for copying libintl source of an older version. |
| cat <<EOF >configure.ac |
| AC_INIT |
| AC_CONFIG_SRCDIR(hello.c) |
| |
| AC_PROG_CC |
| AM_GNU_GETTEXT |
| AM_GNU_GETTEXT_VERSION([0.19]) |
| |
| AC_CONFIG_FILES([Makefile]) |
| AC_CONFIG_FILES([po/Makefile.in]) |
| AC_OUTPUT |
| EOF |
| |
| $gettext_datadir/autopoint >/dev/null 2>autopoint.err |
| test $? = 0 || { cat autopoint.err; Exit 1; } |
| |
| test -d intl || Exit 1 |
| test -d m4 || Exit 1 |
| test -d po || Exit 1 |
| |
| test -f intl/VERSION || Exit 1 |
| test -f m4/po.m4 || Exit 1 |
| test -f po/Makefile.in.in || Exit 1 |
| |
| rm -fr intl m4 po ABOUT-NLS config.rpath |
| |
| # Check for custom macro directory. |
| cat <<EOF >configure.ac |
| AC_INIT |
| AC_CONFIG_SRCDIR(hello.c) |
| |
| AC_PROG_CC |
| AM_GNU_GETTEXT([external]) |
| AM_GNU_GETTEXT_VERSION([$ARCHIVE_VERSION]) |
| |
| # first macro directory, in which po.m4, etc. belong |
| AC_CONFIG_MACRO_DIR([gettext-m4]) |
| |
| # second macro directory |
| AC_CONFIG_MACRO_DIR([m4]) |
| |
| AC_CONFIG_FILES([Makefile]) |
| AC_CONFIG_FILES([po/Makefile.in]) |
| AC_OUTPUT |
| EOF |
| |
| $gettext_datadir/autopoint >/dev/null 2>autopoint.err |
| test $? = 0 || { cat autopoint.err; Exit 1; } |
| |
| test ! -d intl || Exit 1 |
| test ! -d m4 || Exit 1 |
| test -d gettext-m4 || Exit 1 |
| test -d po || Exit 1 |
| |
| test -f gettext-m4/po.m4 || Exit 1 |
| test -f po/Makefile.in.in || Exit 1 |
| |
| rm -fr gettext-m4 po ABOUT-NLS config.rpath |
| |
| # Check for multiple arguments to AM_GNU_GETTEXT |
| # <https://savannah.gnu.org/bugs/?40082> |
| cat <<EOF >configure.ac |
| AC_INIT |
| AC_CONFIG_SRCDIR(hello.c) |
| |
| AC_PROG_CC |
| AM_GNU_GETTEXT([external], [need-formatstring-macros]) |
| AM_GNU_GETTEXT_VERSION([$ARCHIVE_VERSION]) |
| |
| AC_CONFIG_FILES([Makefile]) |
| AC_CONFIG_FILES([po/Makefile.in]) |
| AC_OUTPUT |
| EOF |
| |
| $gettext_datadir/autopoint >/dev/null 2>autopoint.err |
| test $? = 0 || { cat autopoint.err; Exit 1; } |
| |
| test ! -d intl || Exit 1 |
| test -d m4 || Exit 1 |
| test -d po || Exit 1 |
| |
| test -f m4/po.m4 || Exit 1 |
| test -f po/Makefile.in.in || Exit 1 |
| |
| rm -fr m4 po ABOUT-NLS config.rpath |
| |
| # Check for certain built-in macros are not in effect when tracing: |
| # <https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=764580> |
| cat <<EOF >configure.ac |
| AC_INIT |
| AC_CONFIG_SRCDIR(hello.c) |
| |
| dnl m4_shiftn internally calls m4_assert, which is disabled by autopoint |
| m4_define([_gt_recurse], |
| [m4_ifblank([\$1], , [_gt_recurse(m4_shiftn(1, \$@))])]) |
| _gt_recurse([a], [b], , [c]) |
| |
| AC_PROG_CC |
| AM_GNU_GETTEXT([external]) |
| AM_GNU_GETTEXT_VERSION([$ARCHIVE_VERSION]) |
| |
| AC_CONFIG_FILES([Makefile]) |
| AC_CONFIG_FILES([po/Makefile.in]) |
| AC_OUTPUT |
| EOF |
| |
| $gettext_datadir/autopoint >/dev/null 2>autopoint.err |
| test $? = 0 || { cat autopoint.err; Exit 1; } |
| |
| test ! -d intl || Exit 1 |
| test -d m4 || Exit 1 |
| test -d po || Exit 1 |
| |
| test -f m4/po.m4 || Exit 1 |
| test -f po/Makefile.in.in || Exit 1 |
| |
| rm -fr m4 po ABOUT-NLS config.rpath |
| |
| # Check for AM_GNU_GETTEXT_REQUIRE_VERSION. |
| cat <<EOF >configure.ac |
| AC_INIT |
| AC_CONFIG_SRCDIR(hello.c) |
| |
| AC_PROG_CC |
| AM_GNU_GETTEXT_REQUIRE_VERSION([0.19]) |
| AM_GNU_GETTEXT([external]) |
| |
| AC_CONFIG_FILES([Makefile]) |
| AC_CONFIG_FILES([po/Makefile.in]) |
| AC_OUTPUT |
| EOF |
| |
| $gettext_datadir/autopoint >/dev/null 2>autopoint.err |
| test $? = 0 || { cat autopoint.err; Exit 1; } |
| |
| test ! -d intl || Exit 1 |
| test -d m4 || Exit 1 |
| test -d po || Exit 1 |
| |
| test -f m4/po.m4 || Exit 1 |
| test -f po/Makefile.in.in || Exit 1 |
| |
| # Check for the case where both AM_GNU_GETTEXT_REQUIRE_VERSION and |
| # AM_GNU_GETTEXT_VERSION are used. Once with libintl source. |
| cat <<EOF >configure.ac |
| AC_INIT |
| AC_CONFIG_SRCDIR(hello.c) |
| |
| AC_PROG_CC |
| AM_GNU_GETTEXT |
| AM_GNU_GETTEXT_REQUIRE_VERSION([0.19]) |
| # This shall be ignored when AM_GNU_GETTEXT_REQUIRE_VERSION is defined |
| AM_GNU_GETTEXT_VERSION([0.19]) |
| |
| AC_CONFIG_MACRO_DIR([m4]) |
| |
| AC_CONFIG_FILES([Makefile]) |
| AC_CONFIG_FILES([po/Makefile.in]) |
| AC_OUTPUT |
| EOF |
| |
| $gettext_datadir/autopoint >autopoint.out 2>autopoint.err |
| test $? = 1 || { cat autopoint.err; Exit 1; } |
| |
| # Check for the case where both AM_GNU_GETTEXT_REQUIRE_VERSION and |
| # AM_GNU_GETTEXT_VERSION are used. Once without libintl source. |
| cat <<EOF >configure.ac |
| AC_INIT |
| AC_CONFIG_SRCDIR(hello.c) |
| |
| AC_PROG_CC |
| AM_GNU_GETTEXT([external]) |
| AM_GNU_GETTEXT_REQUIRE_VERSION([0.19]) |
| # This shall be ignored when AM_GNU_GETTEXT_REQUIRE_VERSION is defined |
| AM_GNU_GETTEXT_VERSION([0.19]) |
| |
| AC_CONFIG_MACRO_DIR([m4]) |
| |
| AC_CONFIG_FILES([Makefile]) |
| AC_CONFIG_FILES([po/Makefile.in]) |
| AC_OUTPUT |
| EOF |
| |
| $gettext_datadir/autopoint >autopoint.out 2>autopoint.err |
| test $? = 0 || { cat autopoint.err; Exit 1; } |
| |
| grep 'using AM_GNU_GETTEXT_REQUIRE_VERSION' autopoint.out 2>&1 >/dev/null || Exit 1 |
| |
| test ! -d intl || Exit 1 |
| test -d m4 || Exit 1 |
| test -d po || Exit 1 |
| |
| test -f m4/po.m4 || Exit 1 |
| test -f po/Makefile.in.in || Exit 1 |