Compare commits

...

No commits in common. 'c9' and 'cs10' have entirely different histories.
c9 ... cs10

@ -1 +1 @@
f87fd355c6142e4e87d7a69702697f3a30c922d8 SOURCES/automake-1.16.2.tar.xz
32fb36e73568271ff506b60c55a6170b67681375 SOURCES/automake-1.16.5.tar.xz

2
.gitignore vendored

@ -1 +1 @@
SOURCES/automake-1.16.2.tar.xz
SOURCES/automake-1.16.5.tar.xz

@ -1,35 +0,0 @@
From 930a9a73f4bb776ec334eff4cf6e182802841daa Mon Sep 17 00:00:00 2001
From: Mike Frysinger <vapier@gentoo.org>
Date: Wed, 26 Jan 2022 06:33:19 -0500
Subject: [PATCH] python: add 3.10 - 3.15 to the version search list
Fixes automake bug https://bugs.gnu.org/53530.
Based on the cadence of Automake releases, add the current Python
release (3.10), the current Python development (3.11), and then 4
more versions on top of that. It doesn't hurt to check for a few
extra versions here since this is the fallback logic when the main
`python` and `python3` programs aren't found.
* m4/python.m4: Add python3.10 - python3.15.
* NEWS: Mention new Python versions.
---
NEWS | 3 +++
m4/python.m4 | 1 +
2 files changed, 4 insertions(+)
diff --git a/m4/python.m4 b/m4/python.m4
index f5b5371c6..6653e4d89 100644
--- a/m4/python.m4
+++ b/m4/python.m4
@@ -38,6 +38,7 @@ AC_DEFUN([AM_PATH_PYTHON],
dnl supported. (2.0 was released on October 16, 2000).
m4_define_default([_AM_PYTHON_INTERPRETER_LIST],
[python python2 python3 dnl
+ python3.15 python3.14 python3.13 python3.12 python3.11 python3.10 dnl
python3.9 python3.8 python3.7 python3.6 python3.5 python3.4 python3.3 dnl
python3.2 python3.1 python3.0 dnl
python2.7 python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 dnl
--
2.40.1

@ -0,0 +1,51 @@
From ed1368e8803e8934a8bbab52a38753484dba2a37 Mon Sep 17 00:00:00 2001
From: Karl Berry <karl@freefriends.org>
Date: Mon, 12 Dec 2022 14:50:33 -0800
Subject: [PATCH] test: avoid apostrophe in test document.
From automake patch https://bugs.gnu.org/59989
(though a different solution), suggestion by Frederic Berat.
* t/txinfo-include.sh: avoid apostrophes in test document,
since Texinfo 7.0 turns them into UTF-8 by default.
---
t/txinfo-include.sh | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/t/txinfo-include.sh b/t/txinfo-include.sh
index 8a15f01b0..10fff0753 100644
--- a/t/txinfo-include.sh
+++ b/t/txinfo-include.sh
@@ -28,6 +28,9 @@ main_TEXINFOS = one.texi two.texi three.texi
sub_more_TEXINFOS = sub/desc.texi sub/hist.texi
END
+# We avoid apostrophes in the test document since Texinfo
+# turns them into UTF-8, which is not easy to grep.
+#
cat > main.texi << 'END'
\input texinfo
@setfilename main.info
@@ -61,8 +64,8 @@ END
cat > three.texi << 'END'
@node three
-@chapter Chapter two
-GNU's Not Unix.
+@chapter Chapter three
+Quux quux quux.
END
mkdir sub
@@ -106,7 +109,7 @@ check_info_contents ()
srcdir=${1-.}
$FGREP "Foo bar, baz." $srcdir/main.info
$FGREP "Blah Blah Blah." $srcdir/main.info
- $FGREP "GNU's Not Unix." $srcdir/main.info
+ $FGREP "Quux quux quux." $srcdir/main.info
$FGREP 'It does something, really.' $srcdir/sub/more.info
$FGREP 'It was written somehow.' $srcdir/sub/more.info
}
--
2.39.0

@ -0,0 +1,31 @@
From 2a9908da9dbc075ee6c4e853cf3be0365b15f202 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20B=C3=A9rat?= <fberat@redhat.com>
Date: Mon, 12 Dec 2022 08:05:53 +0100
Subject: [PATCH] tests: Fix 'type defaults' error in link_cond due to main not
being properly declared
This is related to an effort to prepare Automake for future GCC/Clang
versions which set c99 as default standard to be used.
Not properly declaring main as "int main(...)" is rejected since c99.
* t/link_cond.sh: Add (void) to main definition.
---
t/link_cond.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/t/link_cond.sh b/t/link_cond.sh
index 45d0d7f40..889623131 100644
--- a/t/link_cond.sh
+++ b/t/link_cond.sh
@@ -52,7 +52,7 @@ $AUTOCONF
rm -f *.c++
cat > less.c <<'END'
/* Valid C but deliberately invalid C++ */
-main ()
+int main (void)
{
int new = 0;
return new;
--
2.39.1

@ -0,0 +1,34 @@
From 6d6fc91c472fd84bd71a1b012fa9ab77bd94efea Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20B=C3=A9rat?= <fberat@redhat.com>
Date: Mon, 12 Dec 2022 07:32:13 +0100
Subject: [PATCH] tests: depcomp: ensure make_ok() fails when run_make fails
While running automake tests with -std-gnu=c99, the compiler report
errors which lead to make to fail. Yet, these failures are ignored
during the tests, which considers them to be successful as stderror is
check for one specific pattern.
If make fails, investigation should be made to discover why, whatever
the reason for the failure is.
* t/ax/depcomp.sh: Make make_ok fail when make fails.
---
t/ax/depcomp.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/t/ax/depcomp.sh b/t/ax/depcomp.sh
index 3c4db10e3..7a3ac63a7 100644
--- a/t/ax/depcomp.sh
+++ b/t/ax/depcomp.sh
@@ -160,7 +160,7 @@ case $depcomp_with_libtool in
echo lib_LTLIBRARIES = libfoo.la >> Makefile.am
make_ok ()
{
- run_make -M -- ${1+"$@"}
+ run_make -M -- ${1+"$@"} || return 1
$FGREP 'unknown directive' output && return 1
rm -f output
# Checks for stray files possibly left around by less common
--
2.39.1

@ -1,799 +0,0 @@
From 7e50be6bce6b662d27e3049170282aaddaaee791 Mon Sep 17 00:00:00 2001
From: Jacob Bachmeyer <jcb@gnu.org>
Date: Wed, 14 Jul 2021 20:21:49 -0700
Subject: [PATCH] tests: use testsuite/ directory in DejaGnu tests
Patch posted:
https://lists.gnu.org/archive/html/automake-patches/2021-07/msg00009.html
* t/check12.sh: Consistently use the directory name, testsuite/,
for all DejaGnu tests, and always use recursive make to run
DejaGnu, for backward and forward compatibility.
* t/dejagnu3.sh: Likewise.
* t/dejagnu4.sh: Likewise.
* t/dejagnu5.sh: Likewise.
* t/dejagnu6.sh: Likewise.
* t/dejagnu7.sh: Likewise.
* t/dejagnu-absolute-builddir.sh: Likewise.
* t/dejagnu-relative-srcdir.sh: Likewise.
* t/dejagnu-siteexp-extend.sh: Likewise.
* t/dejagnu-siteexp-useredit.sh: Likewise.
* NEWS: mention this.
* THANKS: new contributor.
---
NEWS | 3 +
THANKS | 1 +
t/check12.sh | 62 +++++++++++---------
t/dejagnu-absolute-builddir.sh | 19 +++++--
t/dejagnu-relative-srcdir.sh | 32 +++++++----
t/dejagnu-siteexp-extend.sh | 101 ++++++++++++++++++---------------
t/dejagnu-siteexp-useredit.sh | 31 ++++++----
t/dejagnu3.sh | 20 +++++--
t/dejagnu4.sh | 39 ++++++++-----
t/dejagnu5.sh | 20 +++++--
t/dejagnu6.sh | 19 +++++--
t/dejagnu7.sh | 19 +++++--
12 files changed, 222 insertions(+), 144 deletions(-)
diff --git a/t/check12.sh b/t/check12.sh
index 31cb4f711..e1621840e 100644
--- a/t/check12.sh
+++ b/t/check12.sh
@@ -22,6 +22,7 @@ required=runtest
. test-init.sh
cat >> configure.ac << 'END'
+AC_CONFIG_FILES([testsuite/Makefile])
AC_OUTPUT
END
@@ -56,12 +57,17 @@ B_EXIT_STATUS=0; export B_EXIT_STATUS
## DejaGnu tests.
cat >> Makefile.am << 'END'
-AUTOMAKE_OPTIONS += dejagnu
+SUBDIRS = testsuite
+EXTRA_DIST += hammer spanner
+END
+
+mkdir testsuite
+
+cat >> testsuite/Makefile.am << 'END'
+AUTOMAKE_OPTIONS = dejagnu
DEJATOOL = hammer spanner
-AM_RUNTESTFLAGS = HAMMER=$(srcdir)/hammer SPANNER=$(srcdir)/spanner
-EXTRA_DIST += $(DEJATOOL)
-EXTRA_DIST += hammer.test/hammer.exp
-EXTRA_DIST += spanner.test/spanner.exp
+AM_RUNTESTFLAGS = HAMMER=$(top_srcdir)/hammer SPANNER=$(top_srcdir)/spanner
+EXTRA_DIST = hammer.test/hammer.exp spanner.test/spanner.exp
END
cat > hammer << 'END'
@@ -77,9 +83,9 @@ echo "I'm a right spanner!"
END
chmod +x hammer spanner
-mkdir hammer.test spanner.test
+mkdir testsuite/hammer.test testsuite/spanner.test
-cat > hammer.test/hammer.exp << 'END'
+cat > testsuite/hammer.test/hammer.exp << 'END'
set test test_hammer
spawn $HAMMER
expect {
@@ -88,7 +94,7 @@ expect {
}
END
-cat > spanner.test/spanner.exp << 'END'
+cat > testsuite/spanner.test/spanner.exp << 'END'
set test test_spanner
spawn $SPANNER
expect {
@@ -133,10 +139,10 @@ for vpath in : false; do
$srcdir/configure
$MAKE check
- test -f hammer.log
- test -f hammer.sum
- test -f spanner.log
- test -f spanner.sum
+ test -f testsuite/hammer.log
+ test -f testsuite/hammer.sum
+ test -f testsuite/spanner.log
+ test -f testsuite/spanner.sum
if test x"$am_serial_tests" != x"yes"; then
test -f test-suite.log
test -f a.log
@@ -147,10 +153,10 @@ for vpath in : false; do
cp -f config.status config-status.sav
$MAKE distclean
- test ! -e hammer.log
- test ! -e hammer.sum
- test ! -e spanner.log
- test ! -e spanner.sum
+ test ! -e testsuite/hammer.log
+ test ! -e testsuite/hammer.sum
+ test ! -e testsuite/spanner.log
+ test ! -e testsuite/spanner.sum
test ! -e test-suite.log
test ! -e a.log
test ! -e b.log
@@ -160,12 +166,12 @@ for vpath in : false; do
./config.status
NAIL=screw $MAKE check && exit 1
- test -f hammer.log
- test -f hammer.sum
- test -f spanner.log
- test -f spanner.sum
- grep 'FAIL: test_hammer' hammer.sum
- grep 'FAIL:' spanner.sum && exit 1
+ test -f testsuite/hammer.log
+ test -f testsuite/hammer.sum
+ test -f testsuite/spanner.log
+ test -f testsuite/spanner.sum
+ grep 'FAIL: test_hammer' testsuite/hammer.sum
+ grep 'FAIL:' testsuite/spanner.sum && exit 1
B_EXIT_STATUS=1 $MAKE check && exit 1
if test x"$am_serial_tests" != x"yes"; then
@@ -185,12 +191,12 @@ for vpath in : false; do
# Do not trust the exit status of 'make -k'.
NAIL=screw B_EXIT_STATUS=23 CHECKLOCAL_EXIT_STATUS=1 $MAKE -k check || :
- test -f hammer.log
- test -f hammer.sum
- test -f spanner.log
- test -f spanner.sum
- grep 'FAIL: test_hammer' hammer.sum
- grep 'FAIL:' spanner.sum && exit 1
+ test -f testsuite/hammer.log
+ test -f testsuite/hammer.sum
+ test -f testsuite/spanner.log
+ test -f testsuite/spanner.sum
+ grep 'FAIL: test_hammer' testsuite/hammer.sum
+ grep 'FAIL:' testsuite/spanner.sum && exit 1
if test x"$am_serial_tests" != x"yes"; then
cat test-suite.log
cat a.log
diff --git a/t/dejagnu-absolute-builddir.sh b/t/dejagnu-absolute-builddir.sh
index ac938a44c..0bddb8e3e 100644
--- a/t/dejagnu-absolute-builddir.sh
+++ b/t/dejagnu-absolute-builddir.sh
@@ -21,18 +21,25 @@ required=runtest
. test-init.sh
cat >> configure.ac << 'END'
+AC_CONFIG_FILES([testsuite/Makefile])
AC_OUTPUT
END
cat > Makefile.am << 'END'
+SUBDIRS = testsuite
+END
+
+mkdir testsuite
+
+cat > testsuite/Makefile.am << 'END'
AUTOMAKE_OPTIONS = dejagnu
DEJATOOL = tcl env
EXTRA_DIST = tcl.test/tcl.exp
END
-mkdir tcl.test
+mkdir testsuite/tcl.test
-cat > tcl.test/tcl.exp << 'END'
+cat > testsuite/tcl.test/tcl.exp << 'END'
send_user "tcl_objdir: $objdir\n"
if { [ regexp "^/" $objdir ] } {
pass "test_tcl_objdir"
@@ -50,10 +57,10 @@ $AUTOMAKE --add-missing
$MAKE check
# Sanity check: all tests have run.
-test -f env.log
-test -f env.sum
-test -f tcl.log
-test -f tcl.sum
+test -f testsuite/env.log
+test -f testsuite/env.sum
+test -f testsuite/tcl.log
+test -f testsuite/tcl.sum
$MAKE distcheck
diff --git a/t/dejagnu-relative-srcdir.sh b/t/dejagnu-relative-srcdir.sh
index 1225a1941..6bab70b12 100644
--- a/t/dejagnu-relative-srcdir.sh
+++ b/t/dejagnu-relative-srcdir.sh
@@ -21,44 +21,52 @@ required=runtest
. test-init.sh
cat >> configure.ac << 'END'
+AC_CONFIG_FILES([testsuite/Makefile])
AC_OUTPUT
END
cat > Makefile.am << 'END'
+SUBDIRS = testsuite
+END
+
+mkdir testsuite
+
+cat > testsuite/Makefile.am << 'END'
AUTOMAKE_OPTIONS = dejagnu
DEJATOOL = tcl env
-EXTRA_DIST = env.test/env.exp tcl.test/tcl.exp lib/tcl.exp
+EXTRA_DIST = env.test/env.exp tcl.test/tcl.exp
+EXTRA_DIST += lib/tcl.exp
END
-mkdir env.test tcl.test lib
+mkdir testsuite/env.test testsuite/tcl.test testsuite/lib
# DejaGnu can change $srcdir behind our backs, so we have to
# save its original value. Thanks to Ian Lance Taylor for the
# suggestion.
-cat > lib/tcl.exp << 'END'
+cat > testsuite/lib/tcl.exp << 'END'
send_user "tcl_lib_srcdir: $srcdir\n"
set orig_srcdir $srcdir
END
-cat > env.test/env.exp << 'END'
+cat > testsuite/env.test/env.exp << 'END'
set env_srcdir $env(srcdir)
send_user "env_srcdir: $env_srcdir\n"
-if { [ regexp "^\.(\./\.\.)?$" $env_srcdir ] } {
+if { [ regexp {^\.(\./\.\./\.\./testsuite)?$} $env_srcdir ] } {
pass "test_env_src"
} else {
fail "test_env_src"
}
END
-cat > tcl.test/tcl.exp << 'END'
+cat > testsuite/tcl.test/tcl.exp << 'END'
send_user "tcl_srcdir: $srcdir\n"
-if { [ regexp "^\.(\./\.\.)?$" $srcdir ] } {
+if { [ regexp {^\.(\./\.\./\.\./testsuite)?$} $srcdir ] } {
pass "test_tcl_src"
} else {
fail "test_tcl_src"
}
send_user "tcl_orig_srcdir: $orig_srcdir\n"
-if { [ regexp "^\.(\./\.\.)?$" $orig_srcdir ] } {
+if { [ regexp "^\.(\./\.\./\.\./testsuite)?$" $orig_srcdir ] } {
pass "test_tcl_orig_src"
} else {
fail "test_tcl_orig_src"
@@ -74,10 +82,10 @@ $AUTOMAKE --add-missing
$MAKE check
# Sanity check: all tests have run.
-test -f env.log
-test -f env.sum
-test -f tcl.log
-test -f tcl.sum
+test -f testsuite/env.log
+test -f testsuite/env.sum
+test -f testsuite/tcl.log
+test -f testsuite/tcl.sum
$MAKE distcheck
diff --git a/t/dejagnu-siteexp-extend.sh b/t/dejagnu-siteexp-extend.sh
index fb17d9d24..67e58c752 100644
--- a/t/dejagnu-siteexp-extend.sh
+++ b/t/dejagnu-siteexp-extend.sh
@@ -33,10 +33,17 @@ END
}
cat >> configure.ac << 'END'
+AC_CONFIG_FILES([testsuite/Makefile])
AC_OUTPUT
END
cat > Makefile.am << 'END'
+SUBDIRS = testsuite
+END
+
+mkdir testsuite
+
+cat > testsuite/Makefile.am << 'END'
AUTOMAKE_OPTIONS = dejagnu
DEJATOOL = tool
@@ -46,11 +53,11 @@ EXTRA_DEJAGNU_SITE_CONFIG = foo.exp
EXTRA_DIST += foo.exp
END
-echo 'set foo "/foo/"' > foo.exp
+echo 'set foo "/foo/"' > testsuite/foo.exp
-mkdir tool.test
-write_check_for foo > tool.test/tool.exp
-cat tool.test/tool.exp
+mkdir testsuite/tool.test
+write_check_for foo > testsuite/tool.test/tool.exp
+cat testsuite/tool.test/tool.exp
$ACLOCAL
$AUTOCONF
@@ -59,31 +66,31 @@ $AUTOMAKE --add-missing
./configure
$MAKE check
-cat foo.exp
-cat site.exp
-grep 'PASS: test_foo' tool.sum
+cat testsuite/foo.exp
+cat testsuite/site.exp
+grep 'PASS: test_foo' testsuite/tool.sum
-write_check_for bar >> tool.test/tool.exp
-write_check_for baz >> tool.test/tool.exp
-cat tool.test/tool.exp
+write_check_for bar >> testsuite/tool.test/tool.exp
+write_check_for baz >> testsuite/tool.test/tool.exp
+cat testsuite/tool.test/tool.exp
# Ensure that foo.exp will be newer than site.exp, which will
# thus have to be remade.
$sleep
# With this, below we'll also check that settings in files coming later in
# $(EXTRA_DEJAGNU_SITE_CONFIG) override those in files coming earlier.
-cat >> foo.exp <<'END'
+cat >> testsuite/foo.exp <<'END'
set bar "/foo/"
set baz "/foo/"
set qux "/foo/"
END
-$MAKE check && { cat site.exp; exit 1; }
-grep 'PASS: test_foo' tool.sum
-grep 'FAIL: test_bar' tool.sum
-grep 'FAIL: test_baz' tool.sum
+$MAKE check && { cat testsuite/site.exp; exit 1; }
+grep 'PASS: test_foo' testsuite/tool.sum
+grep 'FAIL: test_bar' testsuite/tool.sum
+grep 'FAIL: test_baz' testsuite/tool.sum
-cat >> Makefile.am << 'END'
+cat >> testsuite/Makefile.am << 'END'
EXTRA_DEJAGNU_SITE_CONFIG += bar bar.dir/bar
EXTRA_DIST += bar
DISTCLEANFILES = bar.dir/bar
@@ -92,41 +99,41 @@ bar.dir/bar:
echo 'set baz "/baz/"' > $@
END
-echo 'set bar "/bar/"' > bar
+echo 'set bar "/bar/"' > testsuite/bar
# This will allow us to check one more time that settings in files
# coming later in $(EXTRA_DEJAGNU_SITE_CONFIG) override those in
# files coming earlier.
-echo 'set baz "/xyz/"' >> bar
+echo 'set baz "/xyz/"' >> testsuite/bar
# Ensure that the Makefile will be newer than site.exp, which will
# thus have to be remade.
$sleep
-$AUTOMAKE Makefile
-./config.status Makefile
-
-$MAKE check || { cat site.exp; exit 1; }
-cat site.exp
-cat bar.dir/bar
-$FGREP '/bar/' site.exp
-$FGREP '/baz/' site.exp
-grep 'PASS: test_foo' tool.sum
-grep 'PASS: test_bar' tool.sum
-grep 'PASS: test_baz' tool.sum
+$AUTOMAKE testsuite/Makefile
+./config.status testsuite/Makefile
+
+$MAKE check || { cat testsuite/site.exp; exit 1; }
+cat testsuite/site.exp
+cat testsuite/bar.dir/bar
+$FGREP '/bar/' testsuite/site.exp
+$FGREP '/baz/' testsuite/site.exp
+grep 'PASS: test_foo' testsuite/tool.sum
+grep 'PASS: test_bar' testsuite/tool.sum
+grep 'PASS: test_baz' testsuite/tool.sum
# Check that the features we're testing behave well in VPATH builds.
$MAKE distcheck
# Check that the user can edit the site.exp file, and that his edits
# are retained.
-write_check_for zardoz >> tool.test/tool.exp
-cat tool.test/tool.exp
-echo 'set zardoz "/zardoz/"' >> site.exp
+write_check_for zardoz >> testsuite/tool.test/tool.exp
+cat testsuite/tool.test/tool.exp
+echo 'set zardoz "/zardoz/"' >> testsuite/site.exp
$MAKE check
-cat site.exp
-grep 'PASS: test_zardoz' tool.sum
+cat testsuite/site.exp
+grep 'PASS: test_zardoz' testsuite/tool.sum
-cat >> Makefile.am << 'END'
+cat >> testsuite/Makefile.am << 'END'
EXTRA_DEJAGNU_SITE_CONFIG += quux.exp
quux.exp:
echo 'set zardoz "/quux/"' > $@
@@ -135,25 +142,25 @@ END
# Ensure that the Makefile will be newer than on site.exp, which will
# thus have to be remade.
$sleep
-$AUTOMAKE Makefile
-./config.status Makefile
-grep 'zardoz.*/quux/' Makefile
+$AUTOMAKE testsuite/Makefile
+./config.status testsuite/Makefile
+grep 'zardoz.*/quux/' testsuite/Makefile
-$MAKE site.exp
-cat site.exp
-cat quux.exp
-grep 'zardoz.*/quux/' site.exp
+(cd testsuite/ && $MAKE site.exp)
+cat testsuite/site.exp
+cat testsuite/quux.exp
+grep 'zardoz.*/quux/' testsuite/site.exp
$MAKE check
-grep 'PASS: test_zardoz' tool.sum
-grep 'zardoz: /zardoz/' tool.log
-grep 'zardoz.*quux' tool.log && exit 1
+grep 'PASS: test_zardoz' testsuite/tool.sum
+grep 'zardoz: /zardoz/' testsuite/tool.log
+grep 'zardoz.*quux' testsuite/tool.log && exit 1
# Check that files in $(EXTRA_DEJAGNU_SITE_CONFIG) are not distributed
# by default.
$MAKE distdir
ls -l $distdir
-test ! -e $distdir/bar.dir/bar
-test ! -e $distdir/quux.exp
+test ! -e $distdir/testsuite/bar.dir/bar
+test ! -e $distdir/testsuite/quux.exp
:
diff --git a/t/dejagnu-siteexp-useredit.sh b/t/dejagnu-siteexp-useredit.sh
index 835f8e8f7..f121ec926 100644
--- a/t/dejagnu-siteexp-useredit.sh
+++ b/t/dejagnu-siteexp-useredit.sh
@@ -20,18 +20,25 @@
. test-init.sh
cat >> configure.ac << 'END'
+AC_CONFIG_FILES([testsuite/Makefile])
AC_OUTPUT
END
cat > Makefile.am << 'END'
+SUBDIRS = testsuite
+END
+
+mkdir testsuite
+
+cat > testsuite/Makefile.am << 'END'
AUTOMAKE_OPTIONS = dejagnu
DEJATOOL = foo
END
# Deliberately select a variable defined automatically by
# the Makefile-generated site.exp.
-mkdir foo.test
-cat > foo.test/foo.exp << 'END'
+mkdir testsuite/foo.test
+cat > testsuite/foo.test/foo.exp << 'END'
send_user "objdir: $objdir\n"
set pipe "|"
if { $objdir == "${pipe}objdir${pipe}" } {
@@ -47,21 +54,21 @@ $AUTOMAKE --add-missing
./configure
-$MAKE site.exp
-echo 'set objdir "|objdir|"' >> site.exp
-cat site.exp
+(cd testsuite/ && $MAKE site.exp)
+echo 'set objdir "|objdir|"' >> testsuite/site.exp
+cat testsuite/site.exp
$sleep
-touch Makefile
-$MAKE site.exp
-cat site.exp
-is_newest site.exp Makefile # Sanity check.
-grep '|objdir|' site.exp
-test $($FGREP -c '|objdir|' site.exp) -eq 1
+touch testsuite/Makefile
+(cd testsuite/ && $MAKE site.exp)
+cat testsuite/site.exp
+is_newest testsuite/site.exp testsuite/Makefile # Sanity check.
+grep '|objdir|' testsuite/site.exp
+test $($FGREP -c '|objdir|' testsuite/site.exp) -eq 1
# We can do a "more semantic" check if DejaGnu is available.
if runtest SOMEPROGRAM=someprogram --version; then
$MAKE check
- grep 'PASS: test_obj' foo.sum
+ grep 'PASS: test_obj' testsuite/foo.sum
fi
:
diff --git a/t/dejagnu3.sh b/t/dejagnu3.sh
index a215e2829..d93c42a26 100644
--- a/t/dejagnu3.sh
+++ b/t/dejagnu3.sh
@@ -27,19 +27,27 @@ END
chmod +x hammer
cat >> configure.ac << 'END'
+AC_CONFIG_FILES([testsuite/Makefile])
AC_OUTPUT
END
cat > Makefile.am << 'END'
+SUBDIRS = testsuite
+EXTRA_DIST = hammer
+END
+
+mkdir testsuite
+
+cat > testsuite/Makefile.am << 'END'
AUTOMAKE_OPTIONS = dejagnu
DEJATOOL = hammer
-AM_RUNTESTFLAGS = HAMMER=$(srcdir)/hammer
-EXTRA_DIST = hammer hammer.test/hammer.exp
+AM_RUNTESTFLAGS = HAMMER=$(top_srcdir)/hammer
+EXTRA_DIST = hammer.test/hammer.exp
END
-mkdir hammer.test
+mkdir testsuite/hammer.test
-cat > hammer.test/hammer.exp << 'END'
+cat > testsuite/hammer.test/hammer.exp << 'END'
set test test
spawn $HAMMER
expect {
@@ -55,8 +63,8 @@ $AUTOMAKE --add-missing
./configure
$MAKE check
-test -f hammer.log
-test -f hammer.sum
+test -f testsuite/hammer.log
+test -f testsuite/hammer.sum
$MAKE distcheck
diff --git a/t/dejagnu4.sh b/t/dejagnu4.sh
index ca2e6e89f..7306e9f8d 100644
--- a/t/dejagnu4.sh
+++ b/t/dejagnu4.sh
@@ -39,23 +39,31 @@ END
chmod +x spanner
cat >> configure.ac << 'END'
+AC_CONFIG_FILES([testsuite/Makefile])
AC_OUTPUT
END
cat > Makefile.am << 'END'
+SUBDIRS = testsuite
+EXTRA_DIST = hammer spanner
+END
+
+mkdir testsuite
+
+cat > testsuite/Makefile.am << 'END'
AUTOMAKE_OPTIONS = dejagnu
DEJATOOL = hammer spanner
-AM_RUNTESTFLAGS = HAMMER=$(srcdir)/hammer SPANNER=$(srcdir)/spanner
+AM_RUNTESTFLAGS = HAMMER=$(top_srcdir)/hammer SPANNER=$(top_srcdir)/spanner
-EXTRA_DIST = hammer hammer.test/hammer.exp
-EXTRA_DIST += spanner spanner.test/spanner.exp
+EXTRA_DIST = hammer.test/hammer.exp
+EXTRA_DIST += spanner.test/spanner.exp
END
-mkdir hammer.test spanner.test
+mkdir testsuite/hammer.test testsuite/spanner.test
-cat > hammer.test/hammer.exp << 'END'
+cat > testsuite/hammer.test/hammer.exp << 'END'
set test test
spawn $HAMMER
expect {
@@ -64,7 +72,7 @@ expect {
}
END
-cat > spanner.test/spanner.exp << 'END'
+cat > testsuite/spanner.test/spanner.exp << 'END'
set test test
spawn $SPANNER
expect {
@@ -80,10 +88,10 @@ $AUTOMAKE --add-missing
./configure
$MAKE check
-test -f hammer.log
-test -f hammer.sum
-test -f spanner.log
-test -f spanner.sum
+test -f testsuite/hammer.log
+test -f testsuite/hammer.sum
+test -f testsuite/spanner.log
+test -f testsuite/spanner.sum
$MAKE distcheck
@@ -92,11 +100,12 @@ sed 's/E\(verything\)/Not e\1/' hammer > thammer
mv -f thammer hammer
chmod +x hammer
-rm -f hammer.log hammer.sum spanner.log spanner.sum
+rm -f testsuite/hammer.log testsuite/hammer.sum
+rm -f testsuite/spanner.log testsuite/spanner.sum
$MAKE check && exit 1
-test -f hammer.log
-test -f hammer.sum
-test -f spanner.log
-test -f spanner.sum
+test -f testsuite/hammer.log
+test -f testsuite/hammer.sum
+test -f testsuite/spanner.log
+test -f testsuite/spanner.sum
:
diff --git a/t/dejagnu5.sh b/t/dejagnu5.sh
index b750d36cd..63f11afd8 100644
--- a/t/dejagnu5.sh
+++ b/t/dejagnu5.sh
@@ -29,17 +29,25 @@ END
chmod +x $package
cat >> configure.ac << 'END'
+AC_CONFIG_FILES([testsuite/Makefile])
AC_OUTPUT
END
cat > Makefile.am << END
+SUBDIRS = testsuite
+EXTRA_DIST = $package
+END
+
+mkdir testsuite
+
+cat > testsuite/Makefile.am << END
AUTOMAKE_OPTIONS = dejagnu
-EXTRA_DIST = $package $package.test/$package.exp
-AM_RUNTESTFLAGS = PACKAGE=\$(srcdir)/$package
+EXTRA_DIST = $package.test/$package.exp
+AM_RUNTESTFLAGS = PACKAGE=\$(top_srcdir)/$package
END
-mkdir $package.test
-cat > $package.test/$package.exp << 'END'
+mkdir testsuite/$package.test
+cat > testsuite/$package.test/$package.exp << 'END'
set test "a_dejagnu_test"
spawn $PACKAGE
expect {
@@ -55,8 +63,8 @@ $AUTOMAKE --add-missing
./configure
$MAKE check
-test -f $package.log
-test -f $package.sum
+test -f testsuite/$package.log
+test -f testsuite/$package.sum
$MAKE distcheck
diff --git a/t/dejagnu6.sh b/t/dejagnu6.sh
index 19ae23a81..95054ed78 100644
--- a/t/dejagnu6.sh
+++ b/t/dejagnu6.sh
@@ -26,17 +26,24 @@ END
chmod +x faildeja
cat >> configure.ac << 'END'
+AC_CONFIG_FILES([testsuite/Makefile])
AC_OUTPUT
END
cat > Makefile.am << 'END'
+SUBDIRS = testsuite
+END
+
+mkdir testsuite
+
+cat > testsuite/Makefile.am << 'END'
AUTOMAKE_OPTIONS = dejagnu
DEJATOOL = faildeja
-AM_RUNTESTFLAGS = FAILDEJA=$(srcdir)/faildeja
+AM_RUNTESTFLAGS = FAILDEJA=$(top_srcdir)/faildeja
END
-mkdir faildeja.test
-cat > faildeja.test/faildeja.exp << 'END'
+mkdir testsuite/faildeja.test
+cat > testsuite/faildeja.test/faildeja.exp << 'END'
set test failing_deja_test
spawn $FAILDEJA
expect {
@@ -51,8 +58,8 @@ $AUTOMAKE --add-missing
./configure
$MAKE check && exit 1
-test -f faildeja.log
-test -f faildeja.sum
-$FGREP 'FAIL: failing_deja_test' faildeja.sum
+test -f testsuite/faildeja.log
+test -f testsuite/faildeja.sum
+$FGREP 'FAIL: failing_deja_test' testsuite/faildeja.sum
:
diff --git a/t/dejagnu7.sh b/t/dejagnu7.sh
index 2bbce0e99..b57341e50 100644
--- a/t/dejagnu7.sh
+++ b/t/dejagnu7.sh
@@ -30,17 +30,24 @@ END
chmod +x failtcl
cat >> configure.ac << 'END'
+AC_CONFIG_FILES([testsuite/Makefile])
AC_OUTPUT
END
cat > Makefile.am << 'END'
+SUBDIRS = testsuite
+END
+
+mkdir testsuite
+
+cat > testsuite/Makefile.am << 'END'
AUTOMAKE_OPTIONS = dejagnu
DEJATOOL = failtcl
-AM_RUNTESTFLAGS = --status FAILTCL=$(srcdir)/failtcl
+AM_RUNTESTFLAGS = --status FAILTCL=$(top_srcdir)/failtcl
END
-mkdir failtcl.test
-cat > failtcl.test/failtcl.exp << 'END'
+mkdir testsuite/failtcl.test
+cat > testsuite/failtcl.test/failtcl.exp << 'END'
set test test
spawn $FAILTCL
expect {
@@ -55,8 +62,8 @@ $AUTOMAKE --add-missing
./configure
$MAKE check && exit 1
-test -f failtcl.log
-test -f failtcl.sum
-$FGREP 'missing close-brace' failtcl.sum
+test -f testsuite/failtcl.log
+test -f testsuite/failtcl.sum
+$FGREP 'missing close-brace' testsuite/failtcl.sum
:
--
2.40.1

@ -1,28 +0,0 @@
From: Pavel Raiskup <praiskup@redhat.com>
Date: Tue, 7 Jul 2015 11:46:24 +0200
Subject: [PATCH] tests: disable vala testcases
Currently broken vala installation in Fedora? Upstream thread:
http://debbugs.gnu.org/cgi/bugreport.cgi?bug=12522
diff --git a/t/list-of-tests.mk b/t/list-of-tests.mk
index 9363ee3..b99f15c 100644
--- a/t/list-of-tests.mk
+++ b/t/list-of-tests.mk
@@ -1239,16 +1239,6 @@ t/upc2.sh \
t/upc3.sh \
t/vala-configure.sh \
t/vala-grepping.sh \
-t/vala-headers.sh \
-t/vala-libs.sh \
-t/vala-mix.sh \
-t/vala-mix2.sh \
-t/vala-non-recursive-setup.sh \
-t/vala-parallel.sh \
-t/vala-per-target-flags.sh \
-t/vala-recursive-setup.sh \
-t/vala-vapi.sh \
-t/vala-vpath.sh \
t/vars.sh \
t/vars3.sh \
t/var-recurs.sh \

@ -1,84 +0,0 @@
From e21d46fddd0753e66a4acda88317670fee07f3e6 Mon Sep 17 00:00:00 2001
From: "Miro Hron\\v{c}ok" <miro@hroncok.cz>
Date: Tue, 27 Oct 2020 14:33:46 -0700
Subject: [PATCH] python: determine Python (3.10) version number correctly.
This change fixes https://bugs.gnu.org/44239
(and https://bugzilla.redhat.com/show_bug.cgi?id=1889732).
* m4/python.m4: use print('%u.%u' % sys.version_info[:2]) for
the version number instead of merely sys.version[:3], so the
numbers are treated as numbers.
* t/python-vars.sh (PYTHON_VERSION): Likewise.
* doc/automake.texi: Document it.
* NEWS: mention it. (Minor tweaks from Karl Berry.)
---
NEWS | 2 ++
doc/automake.texi | 2 +-
m4/python.m4 | 12 +++++++-----
t/python-vars.sh | 4 +++-
4 files changed, 13 insertions(+), 7 deletions(-)
diff --git a/doc/automake.texi b/doc/automake.texi
index ed7e2e242..17bc2dae6 100644
--- a/doc/automake.texi
+++ b/doc/automake.texi
@@ -7861,7 +7861,7 @@ AM_CONDITIONAL([HAVE_PYTHON], [test "$PYTHON" != :])
@item PYTHON_VERSION
The Python version number, in the form @var{major}.@var{minor}
(e.g., @samp{2.5}). This is currently the value of
-@samp{sys.version[:3]}.
+@samp{'%u.%u' % sys.version_info[:2]}.
@item PYTHON_PREFIX
The string @samp{$@{prefix@}}. This term may be used in future work
diff --git a/m4/python.m4 b/m4/python.m4
index 16c2f4f1a..b2302baa3 100644
--- a/m4/python.m4
+++ b/m4/python.m4
@@ -1,7 +1,7 @@
## ------------------------ -*- Autoconf -*-
## Python file handling
## From Andrew Dalke
-## Updated by James Henstridge
+## Updated by James Henstridge and other contributors.
## ------------------------
# Copyright (C) 1999-2020 Free Software Foundation, Inc.
#
@@ -86,12 +86,14 @@ AC_DEFUN([AM_PATH_PYTHON],
m4_default([$3], [AC_MSG_ERROR([no suitable Python interpreter found])])
else
- dnl Query Python for its version number. Getting [:3] seems to be
- dnl the best way to do this; it's what "site.py" does in the standard
- dnl library.
+ dnl Query Python for its version number. Although site.py simply uses
+ dnl sys.version[:3], printing that failed with Python 3.10, since the
+ dnl trailing zero was eliminated. So now we output just the major
+ dnl and minor version numbers, as numbers. Apparently the tertiary
+ dnl version is not of interest.
AC_CACHE_CHECK([for $am_display_PYTHON version], [am_cv_python_version],
- [am_cv_python_version=`$PYTHON -c "import sys; sys.stdout.write(sys.version[[:3]])"`])
+ [am_cv_python_version=`$PYTHON -c "import sys; print('%u.%u' % sys.version_info[[:2]])"`])
AC_SUBST([PYTHON_VERSION], [$am_cv_python_version])
dnl Use the values of $prefix and $exec_prefix for the corresponding
diff --git a/t/python-vars.sh b/t/python-vars.sh
index 5c748bcf1..b53018b37 100644
--- a/t/python-vars.sh
+++ b/t/python-vars.sh
@@ -28,7 +28,9 @@ CONFIG_SITE=/dev/null; export CONFIG_SITE
# vary among different python installations, so we need more relaxed
# and ad-hoc checks for them. Also, more proper "functional" checks
# on them should be done in the 'python-virtualenv.sh' test.
-PYTHON_VERSION=$($PYTHON -c 'import sys; print(sys.version[:3])') || exit 1
+#
+# This version identification is duplicated in python.m4 (and the manual).
+PYTHON_VERSION=$($PYTHON -c 'import sys; print("%u.%u" % sys.version_info[:2])') || exit 1
PYTHON_PLATFORM=$($PYTHON -c 'import sys; print(sys.platform)') || exit 1
PYTHON_EXEC_PREFIX='${exec_prefix}'
PYTHON_PREFIX='${prefix}'
--
2.29.0

1486
SOURCES/config.guess vendored

File diff suppressed because it is too large Load Diff

1790
SOURCES/config.sub vendored

File diff suppressed because it is too large Load Diff

@ -0,0 +1,16 @@
diff -r -U5 automake-1.16.5.old/t/fort2.sh automake-1.16.5/t/fort2.sh
--- automake-1.16.5.old/t/fort2.sh 2022-05-16 15:12:39.683825720 +0200
+++ automake-1.16.5/t/fort2.sh 2022-05-16 15:12:53.495805448 +0200
@@ -80,11 +80,11 @@
grep ' fake-fc .* --@08 .* greets\.f08 ' out
grep ' fake-fc .* --@08 .* sub/bonjour\.f08 ' out
grep ' fake-fc .* --gby .* --@95 .*[` ]bye\.f95 ' out
grep ' fake-fc .* --gby .* --@90 .*[` ]sub/baz\.f90 ' out
-test $(grep -c '.*--gby.*\.f' out) -eq 2
+test $(grep -cE '.*--gby.*bye\.f95|--gby.*baz\.f90' out) -eq 2
$EGREP 'fake-fc.*--@(95|03|08).*\.f90' out && exit 1
$EGREP 'fake-fc.*--@(90|03|08).*\.f95' out && exit 1
$EGREP 'fake-fc.*--@(90|95|08).*\.f03' out && exit 1
$EGREP 'fake-fc.*--@(95|95|03).*\.f08' out && exit 1

@ -0,0 +1,265 @@
From 38f4f6dcdb907e0006a8e83246e010d5d5cad98d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20B=C3=A9rat?= <fberat@redhat.com>
Date: Thu, 8 Dec 2022 10:09:14 +0100
Subject: [PATCH v2 2/3] tests: Fix implicit function declaration errors
In-Reply-To: <20221212070554.1635775-3-fberat@redhat.com>
Changes from v1:
Modifications to "t/ax/depcomp.sh" have been moved to a dedicated patch
-- 8< --
This is related to an effort to prepare Automake for future GCC/Clang
versions which set c99 as default standard to be used.
Function should be properly declared prior to use in order to be
compatible with c99 standard.
This is valid for both local functions and standard functions (as
printf).
Modified files:
* t/c-demo.sh
* t/cond35.sh
* t/dist-vs-built-sources.sh
* t/lex-clean.sh
* t/lex-multiple.sh
* t/lex-nodist.sh
* t/ltcond2.sh
* t/ltconv.sh
* t/subobj-clean-lt-pr10697.sh
* t/subobj-clean-pr10697.sh
* t/tags-pr12372.sh
* t/yacc-basic.sh
* t/yacc-clean.sh
* t/yacc-nodist.sh
---
t/c-demo.sh | 1 +
t/cond35.sh | 2 ++
t/dist-vs-built-sources.sh | 1 +
t/lex-clean.sh | 1 +
t/lex-multiple.sh | 4 ++++
t/lex-nodist.sh | 2 ++
t/ltcond2.sh | 2 ++
t/ltconv.sh | 6 ++++++
t/subobj-clean-lt-pr10697.sh | 10 +++++++++-
t/subobj-clean-pr10697.sh | 10 +++++++++-
t/tags-pr12372.sh | 3 ++-
t/yacc-basic.sh | 1 +
t/yacc-clean.sh | 4 ++++
t/yacc-nodist.sh | 2 ++
14 files changed, 46 insertions(+), 3 deletions(-)
diff --git a/t/c-demo.sh b/t/c-demo.sh
index 7e0e8d64f..d25bf214b 100644
--- a/t/c-demo.sh
+++ b/t/c-demo.sh
@@ -113,6 +113,7 @@ test -f build-aux/compile # We have per-target flags on C sources.
./configure --enable-dependency-tracking
cat > src/main.c << 'END'
+#include <stdio.h>
#include "foo.h"
#include "bar.h"
int main (void)
diff --git a/t/cond35.sh b/t/cond35.sh
index 215a22548..bad133970 100644
--- a/t/cond35.sh
+++ b/t/cond35.sh
@@ -73,6 +73,8 @@ END
cat > tparse.y << 'END'
%{
+extern int yylex(void);
+
void yyerror (const char *s) {}
%}
%token EOF
diff --git a/t/dist-vs-built-sources.sh b/t/dist-vs-built-sources.sh
index d038e66dd..db2776f9a 100644
--- a/t/dist-vs-built-sources.sh
+++ b/t/dist-vs-built-sources.sh
@@ -41,6 +41,7 @@ foo_SOURCES = foo.c
END
cat > foo.c << 'END'
+#include <stdio.h>
#include "h.h"
int main (void) { printf ("%s\n", F); return 0; }
END
diff --git a/t/lex-clean.sh b/t/lex-clean.sh
index 5aa199338..e53da8fd2 100644
--- a/t/lex-clean.sh
+++ b/t/lex-clean.sh
@@ -61,6 +61,7 @@ cat > lexer.l << 'END'
END
cat > main.c << 'END'
+extern int yylex (void);
int main (void)
{
return yylex ();
diff --git a/t/lex-multiple.sh b/t/lex-multiple.sh
index 2655b633e..bf119ec84 100644
--- a/t/lex-multiple.sh
+++ b/t/lex-multiple.sh
@@ -56,6 +56,10 @@ cat > main.c << 'END'
#include <stdlib.h>
#include <string.h>
+extern int yylex (void);
+extern int foolex (void);
+extern int bar_lex (void);
+
int main (int argc, char *argv[])
{
if (argc != 2)
diff --git a/t/lex-nodist.sh b/t/lex-nodist.sh
index 599539405..187dd5437 100644
--- a/t/lex-nodist.sh
+++ b/t/lex-nodist.sh
@@ -62,6 +62,8 @@ CLEANFILES = $(nodist_prog_SOURCES)
END
cat > main.c << 'END'
+extern int yylex (void);
+
int main ()
{
return yylex ();
diff --git a/t/ltcond2.sh b/t/ltcond2.sh
index 29244c9b3..7e7bcadc4 100644
--- a/t/ltcond2.sh
+++ b/t/ltcond2.sh
@@ -73,6 +73,8 @@ void print (void)
END
cat > main.c <<'END'
+extern void print(void);
+
int main (void)
{
print();
diff --git a/t/ltconv.sh b/t/ltconv.sh
index 2c4cc47a1..ec79ef80e 100644
--- a/t/ltconv.sh
+++ b/t/ltconv.sh
@@ -91,6 +91,12 @@ echo 'int sub22 () { return 22; }' > sub2/sub22/sub22.c
cat >test.c <<'EOF'
#include <stdio.h>
+
+extern int sub1 (void);
+extern int sub2 (void);
+extern int sub21 (void);
+extern int sub22 (void);
+
int main ()
{
if (1 != sub1 ())
diff --git a/t/subobj-clean-lt-pr10697.sh b/t/subobj-clean-lt-pr10697.sh
index bb656c43f..53fc02f09 100644
--- a/t/subobj-clean-lt-pr10697.sh
+++ b/t/subobj-clean-lt-pr10697.sh
@@ -83,7 +83,15 @@ libfoo_la_SOURCES = \
END
mkdir sub1 sub2
-echo 'int libmain (void)' > main.c
+
+echo "/* Subobj clean: libtool case*/" > main.c
+for i in 1 2; do
+ for j in a b c d e f; do
+ echo "extern void $j$i (void);" >> main.c
+ done
+done
+
+echo 'int libmain (void)' >> main.c
echo '{' >> main.c
for i in 1 2; do
for j in a b c d e f; do
diff --git a/t/subobj-clean-pr10697.sh b/t/subobj-clean-pr10697.sh
index f77de8c92..a7f97f6d1 100644
--- a/t/subobj-clean-pr10697.sh
+++ b/t/subobj-clean-pr10697.sh
@@ -81,7 +81,15 @@ foo_SOURCES = \
END
mkdir sub1 sub2
-echo 'int main (void)' > main.c
+
+echo "/* Subobj clean: generic case*/" > main.c
+for i in 1 2; do
+ for j in a b c d e f; do
+ echo "extern void $j$i (void);" >> main.c
+ done
+done
+
+echo 'int main (void)' >> main.c
echo '{' >> main.c
for i in 1 2; do
for j in a b c d e f; do
diff --git a/t/tags-pr12372.sh b/t/tags-pr12372.sh
index b9c022f70..1a9e1e026 100644
--- a/t/tags-pr12372.sh
+++ b/t/tags-pr12372.sh
@@ -53,7 +53,8 @@ noinst_PROGRAMS = zap
zap_SOURCES = zardoz.pc
END
-echo 'int main(void) [ return bar(1); ]' > foo-main.pc
+echo 'extern int bar(int);' > foo-main.pc
+echo 'int main(void) [ return bar(1); ]' >> foo-main.pc
echo 'int bar(int x) { return !x; }' > barbar.c
echo 'int m@in(void) { return 0; }' > sub/zardoz.pc
diff --git a/t/yacc-basic.sh b/t/yacc-basic.sh
index 5b258a30c..8cc0d06a2 100644
--- a/t/yacc-basic.sh
+++ b/t/yacc-basic.sh
@@ -49,6 +49,7 @@ a : 'a' { exit(0); };
END
cat > foo.c << 'END'
+extern int yyparse(void);
int main () { yyparse (); return 1; }
END
diff --git a/t/yacc-clean.sh b/t/yacc-clean.sh
index 373774b6a..fef079cf3 100644
--- a/t/yacc-clean.sh
+++ b/t/yacc-clean.sh
@@ -65,6 +65,8 @@ END
cat > sub1/parse.y << 'END'
%{
+#include <stdio.h>
+
int yylex () { return (getchar ()); }
void yyerror (const char *s) {}
%}
@@ -74,6 +76,8 @@ END
cp sub1/parse.y sub2/parse.y
cat > sub1/main.c << 'END'
+extern int yyparse(void);
+
int main ()
{
return yyparse ();
diff --git a/t/yacc-nodist.sh b/t/yacc-nodist.sh
index d350a80f9..4a8ebe9ca 100644
--- a/t/yacc-nodist.sh
+++ b/t/yacc-nodist.sh
@@ -78,6 +78,8 @@ BUILT_SOURCES = parse.h
END
cat > sub1/main.c << 'END'
+extern int yyparse(void);
+
int main ()
{
return yyparse ();
--
2.38.1

@ -0,0 +1,58 @@
From 5e74354030fe88e038a6fc1b3f4c2321df150352 Mon Sep 17 00:00:00 2001
From: Frederic Berat <fberat@redhat.com>
Date: Fri, 16 Dec 2022 06:42:45 +0100
Subject: [PATCH v3] tests: Fix implicit function declaration in ax/depcomp.sh
In-Reply-To: <20230113064804.580F5340B54@smtp.gentoo.org>
Change since v2:
- Replace the mv operation by a cp operation to ensure that subfoo.h is
considered being modified.
-- 8< --
In depcomp.sh, the following occurs:
1. Files are created so that headers and units are available in
subdirectories
2. Multiple "make" are executed, while modifying the content of the
headers, some should fail, others should succeed.
3. At the end, the "sub/subfoo.h" header gets removed.
4. make is executed again, which is expected to succeed.
Yet, with c99, this can't work as the subfoo.h header contains
declaration that are used by foo.c.
Thus, we need to get them back, either by inserting the declaration in
foo.c (or any other header/unit), or by restoring subfoo.h to its
original state.
The later solution seems the easiest path, being less intrusive in
depcomp.sh.
---
t/ax/depcomp.sh | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/t/ax/depcomp.sh b/t/ax/depcomp.sh
index 7a3ac63a7..c92f7c8df 100644
--- a/t/ax/depcomp.sh
+++ b/t/ax/depcomp.sh
@@ -243,6 +243,7 @@ cat > sub/subfoo.h <<'END'
#include <stdio.h>
extern int subfoo (void);
END
+cp sub/subfoo.h sub/subfoo.save
cat > src/baz.c <<'END'
#include "baz.h"
@@ -399,8 +400,7 @@ do_test ()
&& rewrite "$srcdir"/sub/subfoo.h echo 'choke me' \
&& not $MAKE \
&& delete "$srcdir"/sub/subfoo.h \
- && edit "$srcdir"/sub/subfoo.c -e 1d \
- && edit "$srcdir"/foo.h -e 2d \
+ && cp "$srcdir"/sub/subfoo.save "$srcdir"/sub/subfoo.h \
&& make_ok \
|| r='not ok'
result_ "$r" "$pfx dependency tracking works"
--
2.39.0

@ -1,5 +1,13 @@
%global api_version 1.16
# redhat-rpm-config sets CFLAGS, CXXFLAGS and LDFLAGS, but not
# OBJCFLAGS. This means that Obj-C tests will be compiled without hardening
# flags, and then fail when linked with the hardened linker flags.
# We therefore need to disable build flags to be able to test automake itself.
# Since the automake executables are all interpreted languages, they aren't
# compiled and so the build flags only affect the tests anyway.
%undefine _auto_set_build_flags
# do not mangle shebang in files which are part of bootstraped project
%global __brp_mangle_shebangs_exclude_from /usr/share/automake-%{api_version}
@ -14,38 +22,58 @@
Summary: A GNU tool for automatically creating Makefiles
Name: automake
# Any bump here requires libtool rebuild, rhbz#1813010
Version: %{api_version}.2
Release: 8%{?dist}
# docs ~> GFDL, sources ~> GPLv2+, mkinstalldirs ~> PD and install-sh ~> MIT
License: GPLv2+ and GFDL and Public Domain and MIT
Version: %{api_version}.5
Release: 18%{?dist}
# To help future rebase, the following licenses were seen in the following files/folders:
# usr/bin/* - GPL-2.0-or-later
# usr/share/aclocal-1.16/* - FSFULLR
# usr/share/automake-1.16:
# Automake/Getopt.pm - GPL-3.0-or-later
# Automake/* - GPL-2.0-or-later
# am/* - GPL-2.0-or-later
# INSTALL - FSFAP
# install-sh - X11 AND LicenseRef-Fedora-Public-Domain (added by autoconf)
# mkinstalldirs - LicenseRef-Fedora-Public-Domain
# config.{guess,sub} - GPL-3.0-or-later WITH Autoconf-exception-generic-3.0
# texinfo.tex - GPL-3.0-or-later WITH Texinfo-exception
# * - GPL-2.0-or-later WITH Autoconf-exception-generic
# usr/share/doc/automake:
# {NEWS,README} - GPL-2.0-or-later
# amhello-1.0.tar:
# src/Makefile.in - FSFULLRWD
# src/* - FSFUL
# {Makefile.in,aclocal.m4} - FSFULLRWD
# {Makefile.am,configure,configure.ac} - FSFUL
# {compile,depcomp,missing} - GPL-2.0-or-later WITH Autoconf-exception-generic
# install-sh - X11 AND LicenseRef-Fedora-Public-Domain (added by autoconf)
# usr/share/info:
# * - GFDL-1.3-or-later
# usr/share/man/man1/*: generated from usr/bin/{aclocal,automake} using help2man
License: GPL-2.0-or-later AND GPL-2.0-or-later WITH Autoconf-exception-generic AND GPL-3.0-or-later AND GPL-3.0-or-later WITH Autoconf-exception-generic-3.0 AND GPL-3.0-or-later WITH Texinfo-exception AND GFDL-1.3-or-later AND FSFAP AND FSFUL AND FSFULLR AND FSFULLRWD AND X11 AND LicenseRef-Fedora-Public-Domain
Source: ftp://ftp.gnu.org/gnu/automake/automake-%{version}.tar.xz
Source2: http://git.savannah.gnu.org/cgit/config.git/plain/config.sub
Source3: http://git.savannah.gnu.org/cgit/config.git/plain/config.guess
# Keep those patches in 'git format-patch' format (with docs).
%if %{with check} && !%{without automake_enables_optional_test}
Patch0: automake-1.15-disable-vala-tests.patch
%endif
# Support multiple digits in Python version, e.g. Python 3.10
# Taken from upstream commit (NEWS hunks removed due to conflicts)
# https://debbugs.gnu.org/cgi/bugreport.cgi?bug=44239
Patch1: automake-1.16.2-python-version-multiple-digits.patch
# Backport 7e50be6bce6b662d27e3049170282aaddaaee791
# tests: use testsuite/ directory in DejaGnu tests
# Stripped from NEWS/THANKS changes
# Fixes: RHBZ#2215991
Patch2: 0001-tests-use-testsuite-directory-in-DejaGnu-tests.patch
# Backport 930a9a73f4bb776ec334eff4cf6e182802841daa
# Stripped from NEWS updates.
# Ensures python 3.1x can be found even if it is not the default system
# interpreter.
# See RHBZ#2210304
Patch3: 0001-python-add-3.10-3.15-to-the-version-search-list.patch
# ~> downstream
# The patch is only made necessary due to fedora specific changes
# which lead to .package_note-automake-1.16.5-3.fc36.x86_64.ld
# being inserted in build logs, breaking the original grep instruction
Patch0: fort2.patch
# From upstream: ed1368e8803e8934a8bbab52a38753484dba2a37
Patch1: 0001-test-avoid-apostrophe-in-test-document.patch
# From upstream: 2a9908da9dbc075ee6c4e853cf3be0365b15f202
Patch2: 0001-tests-Fix-type-defaults-error-in-link_cond-due-to-ma.patch
# Proposed upstream: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=59993#23
Patch3: v2-0002-tests-Fix-implicit-function-declaration-errors.patch
# Proposed upstream: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=60962#5
Patch4: v3-0003-tests-Fix-implicit-function-declaration-in-ax-dep.patch
# Proposed upstream: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=59994#29
Patch5: v2-0001-tests-Don-t-try-to-prevent-flex-to-include-unistd.patch
# From upstream: 6d6fc91c472fd84bd71a1b012fa9ab77bd94efea
# Reveals failures due to C99 porting that wouldn't be seen otherwise
Patch6: 0001-tests-depcomp-ensure-make_ok-fails-when-run_make-fai.patch
URL: http://www.gnu.org/software/automake/
Requires: autoconf >= 2.65
@ -78,7 +106,6 @@ BuildRequires: expect
BuildRequires: flex
BuildRequires: gcc-gfortran
BuildRequires: gettext-devel
BuildRequires: java-11-openjdk-devel
BuildRequires: libtool
BuildRequires: ncompress
BuildRequires: sharutils
@ -113,16 +140,11 @@ Makefiles.
autoreconf -iv
%endif
for file in %SOURCE2 %SOURCE3; do
for dest in $(find -name "$(basename "$file")"); do
cp "$file" "$dest"
done
done
%build
# disable replacing config.guess and config.sub from redhat-rpm-config
%global _configure_gnuconfig_hack 0
# redhat-rpm-config package, which provides this configure macro, will overwrite
# the config.sub and config.guess files intentionally. The automake maintainer
# needs to check that those files are provided up to date.
%configure
%make_build
cp m4/acdir/README README.aclocal
@ -155,20 +177,71 @@ make -k %{?_smp_mflags} check %{?TESTS_FLAGS: TESTS="%{TESTS_FLAGS}"} \
%changelog
* Fri Jun 23 2023 Frederic Berat <fberat@redhat.com> - 1.16.2-8
- Backport python: add 3.10 - 3.15 to the version search list
- Fixes: RHBZ#2210304
* Tue Oct 29 2024 Troy Dawson <tdawson@redhat.com> - 1.16.5-18
- Bump release for October 2024 mass rebuild:
Resolves: RHEL-64018
* Mon Jun 24 2024 Troy Dawson <tdawson@redhat.com> - 1.16.5-17
- Bump release for June 2024 mass rebuild
* Mon Jan 22 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.16.5-16
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Fri Jan 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.16.5-15
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Mon Aug 07 2023 Frederic Berat <fberat@redhat.com> - 1.16.5-14
- Migrate to SPDX licenses (#2222090)
* Wed Jul 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.16.5-13
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Tue Feb 14 2023 Frederic Berat <fberat@redhat.com> - 1.16.5-12
- Port to modern C: various fixes
* Fri Jan 20 2023 Frederic Berat <fberat@redhat.com> - 1.16.5-11
- Fix test failure due to texinfo 7.0 update
* Wed Jan 18 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.16.5-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Wed Aug 03 2022 Frederic Berat <fberat@redhat.com> - 1.16.5-9
- Fix tests environment failures due to LDFLAGS being set globally
- Remove ExclusiveArch as there is no java dependency anymore
* Wed Jul 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.16.5-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Tue Jul 12 2022 Frederic Berat <fberat@redhat.com> - 1.16.5-7
- Remove java-devel from test related BuildRequires
* Fri Jul 08 2022 Jiri Vanek <jvanek@redhat.com> - 1.16.5-6
- Rebuilt for Drop i686 JDKs
* Tue May 17 2022 Frederic Berat <fberat@redhat.com> - 1.16.5-5
- Fix fort2.sh test
- Remove external config.sub and config.guess as they are overwritten anyway
* Mon Feb 07 2022 Frederic Berat <fberat@redhat.com> - 1.16.5-4
- Switch to java-devel as a build requirement (#2051135)
* Sat Feb 05 2022 Jiri Vanek <jvanek@redhat.com> - 1.16.5-3
- Rebuilt for java-17-openjdk as system jdk
* Wed Jan 19 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.16.5-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Mon Oct 04 2021 Ondrej Dubaj <odubaj@redhat.com> - 1.16.5-1
- Rebase to upstream version 1.16.5
* Wed Jun 21 2023 Frederic Berat <fberat@redhat.com> - 1.16.2-7
- Backport: tests: use testsuite/ directory in DejaGnu tests
- Fixes: RHBZ#2215991
* Tue Jul 27 2021 Ondrej Dubaj <odubaj@redhat.com> - 1.16.4-1
- Rebase to upstream version 1.16.4
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 1.16.2-6
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
Related: rhbz#1991688
* Tue Jul 27 2021 Ondrej Dubaj <odubaj@redhat.com> - 1.16.3-1
- Rebase to upstream version 1.16.3
* Thu Apr 15 2021 Mohan Boddu <mboddu@redhat.com> - 1.16.2-5
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
* Wed Jul 21 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.16.2-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.16.2-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild

Loading…
Cancel
Save