| #! /bin/sh |
| # Copyright (C) 2014-2024 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 <https://www.gnu.org/licenses/>. |
| |
| # Ensure "make distcheck" detects all missing files, without getting |
| # confused by the fact that they exists in the "original" source tree |
| # from which "make distcheck" is run. See automake bug#18286. |
| |
| . test-init.sh |
| |
| echo AC_OUTPUT >> configure.ac |
| |
| cat > Makefile.am <<'END' |
| $(srcdir)/test_data.am: $(srcdir)/test_data.txt $(srcdir)/gen-testdata.sh |
| cd $(srcdir) && $(SHELL) gen-testdata.sh <test_data.txt >test_data.am |
| |
| include $(srcdir)/test_data.am |
| |
| check-local: |
| is $(testdata) == foo bar |
| END |
| |
| cat > test_data.txt <<'END' |
| foo |
| bar |
| END |
| |
| |
| cat > gen-testdata.sh <<'END' |
| #!/bin/sh |
| printf 'testdata = \\\n' |
| sed 's/$/ \\/' |
| echo '$(empty_string)' |
| END |
| chmod a+x gen-testdata.sh |
| |
| $sleep |
| ./gen-testdata.sh <test_data.txt >test_data.am |
| |
| $ACLOCAL |
| $AUTOCONF |
| $AUTOMAKE -a |
| |
| ./configure |
| |
| $MAKE check |
| |
| # Oops, we failed to distribute some required files! |
| run_make -e FAIL -M distcheck |
| $FGREP '../../test_data.txt' output |
| |
| # But if we distribute them, everything will be OK. |
| echo 'EXTRA_DIST = test_data.txt gen-testdata.sh' >> Makefile.am |
| |
| using_gmake || $MAKE Makefile |
| $MAKE distcheck |
| |
| : |