diff options
Diffstat (limited to 'tests/distcheck-configure-flags-subpkg.test')
-rwxr-xr-x | tests/distcheck-configure-flags-subpkg.test | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/tests/distcheck-configure-flags-subpkg.test b/tests/distcheck-configure-flags-subpkg.test new file mode 100755 index 000000000..695b47c19 --- /dev/null +++ b/tests/distcheck-configure-flags-subpkg.test @@ -0,0 +1,83 @@ +#! /bin/sh +# Copyright (C) 2011 Free Software Foundation, Inc. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +# Check AM_DISTCHECK_CONFIGURE_FLAGS and DISTCHECK_CONFIGURE_FLAGS +# are not honored in a subpackage Makefile.am, but the flags from +# AM_DISTCHECK_CONFIGURE_FLAGS and DISTCHECK_CONFIGURE_FLAGS are +# passed down to the configure script of the subpackage. This is +# explicitly documented in the manual. + +. ./defs || Exit 1 + +set -e + +cat >> configure.in << 'END' +AC_CONFIG_SUBDIRS([subpkg]) +if test $dc != ok || test $am_dc != ok; then + AC_MSG_ERROR([dc=$dc am_dc=$dc]) +fi +AC_OUTPUT +END + +mkdir subpkg + +sed <configure.in >subpkg/configure.in \ + -e 's/^AC_INIT.*/AC_INIT([subpkg], [2.0])/' \ + -e '/^AC_CONFIG_SUBDIRS/d' \ + +cat configure.in +cat subpkg/configure.in + +dc=KO am_dc=KO; export dc am_dc + +cat > Makefile.am << 'END' +AM_DISTCHECK_CONFIGURE_FLAGS = am_dc=ok +DISTCHECK_CONFIGURE_FLAGS = dc=ok +END + +: > subpkg/Makefile.am + +$ACLOCAL +$AUTOMAKE +$AUTOCONF + +cd subpkg +$ACLOCAL +$AUTOMAKE +$AUTOCONF +cd .. + +# For debugging. +$FGREP 'DISTCHECK_CONFIGURE_FLAGS' Makefile.in subpkg/Makefile.in + +grep '^AM_DISTCHECK_CONFIGURE_FLAGS =' Makefile.in +grep '^DISTCHECK_CONFIGURE_FLAGS =' Makefile.in +$EGREP '^(AM_)?DISTCHECK_CONFIGURE_FLAGS' subpkg/Makefile.in && Exit 1 + +./configure dc=ok am_dc=ok + +# Flags in $(DISTCHECK_CONFIGURE_FLAGS) and $(AM_DISTCHECK_CONFIGURE_FLAGS) +# should be passed down to the subpackage configure when "make distcheck" +# is run from the top-level package ... +$MAKE distcheck + +# ... but not when "make distcheck" is run from the subpackage. +cd subpkg +$MAKE distcheck >output 2>&1 && { cat output; Exit 1; } +cat output +grep '^configure:.* dc=KO am_dc=KO' output + +: |