diff --git a/0001-Fix-test-suite-with-modern-Perl.patch b/Fix-test-suite-with-modern-Perl.patch similarity index 100% rename from 0001-Fix-test-suite-with-modern-Perl.patch rename to Fix-test-suite-with-modern-Perl.patch diff --git a/Port-tests-to-Bash-5.patch b/Port-tests-to-Bash-5.patch new file mode 100644 index 0000000000000000000000000000000000000000..36d02340a5c03ff9aef4037b662c61f3db05db4f --- /dev/null +++ b/Port-tests-to-Bash-5.patch @@ -0,0 +1,63 @@ +From 5b9db67786a428164abafe626ab11a2754aad528 Mon Sep 17 00:00:00 2001 +From: Ondrej Dubaj +Date: Wed, 28 Aug 2019 07:39:50 +0200 +Subject: [PATCH] Port tests to Bash 5 + +* tests/local.at (AT_CHECK_ENV, AT_CONFIG_CMP): +Add BASH_ARGC, BASH_ARGV to list of variables to be ignored when +comparing variable space dumps. +(AT_CONFIG_CMP): Also ignore LINENO. +* tests/m4sh.at: Also unset LINENO in 'reference' and 'test/test-1'. +--- + tests/local.at | 5 ++++- + tests/m4sh.at | 4 ++-- + 2 files changed, 6 insertions(+), 3 deletions(-) + +diff --git a/tests/local.at b/tests/local.at +index a22958c..852be28 100644 +--- a/tests/local.at ++++ b/tests/local.at +@@ -325,7 +325,7 @@ if test -f state-env.before && test -f state-env.after; then + [AWK|LEX|LEXLIB|LEX_OUTPUT_ROOT|LN_S|M4|MKDIR_P|RANLIB|SET_MAKE|YACC], + [GREP|[EF]GREP|SED], + [[_@]|.[*#?$].], +- [argv|ARGC|LINENO|OLDPWD|PIPESTATUS|RANDOM|SECONDS]))=' \ ++ [argv|ARGC|LINENO|BASH_ARGC|BASH_ARGV|OLDPWD|PIPESTATUS|RANDOM|SECONDS]))=' \ + $act_file || + test $? -eq 1 || echo failed >&2 + ) 2>stderr-$act_file | +@@ -382,6 +382,9 @@ do + /'\'\\\$\''=/ d + /^argv=/ d + /^ARGC=/ d ++ /^BASH_ARGC=/ d ++ /^BASH_ARGV=/ d ++ /^LINENO=/ d + ' $act_file >at_config_vars-$act_file + done + AT_CMP([at_config_vars-$1], [at_config_vars-$2])[]dnl +diff --git a/tests/m4sh.at b/tests/m4sh.at +index e9d70b0..cbdfcb6 100644 +--- a/tests/m4sh.at ++++ b/tests/m4sh.at +@@ -254,7 +254,7 @@ AT_CHECK([autom4te -l m4sh $1.as -o $1]) + # `_oline_', once processed and ran, produces our reference. + # We check that we find ourselves by looking at a string which is + # available only in the original script: `_oline_'. +-AT_DATA_LINENO([reference], [false], [__OLINE__], [_oline__]) ++AT_DATA_LINENO([reference], [true], [__OLINE__], [_oline__]) + AT_CHECK([./reference], 0, [stdout]) + + # The reference: +@@ -264,7 +264,7 @@ mv stdout expout + # Be sure to be out of the PATH. + AT_CHECK([mkdir test || exit 77]) + +-AT_DATA_LINENO([test/test-1], [false], [__LINENO__], [LINENO]) ++AT_DATA_LINENO([test/test-1], [true], [__LINENO__], [LINENO]) + AT_CHECK([./test/test-1], 0, [expout]) + AT_CHECK([(PATH=test$PATH_SEPARATOR$PATH; export PATH; exec test-1)], + 0, [expout]) +-- +1.8.3.1 + diff --git a/autoconf-el.el b/autoconf-el.el new file mode 100644 index 0000000000000000000000000000000000000000..62e2a73c03c3411d108c2b6abfed909916930885 --- /dev/null +++ b/autoconf-el.el @@ -0,0 +1,11 @@ +;; Activate autoconf-mode +(autoload 'autoconf-mode "autoconf-mode" + "Major mode for editing autoconf files." t) +(add-to-list 'auto-mode-alist + '("\.ac\'\|configure\.in\'" . autoconf-mode)) + +;; Activate autotest-mode +(autoload 'autotest-mode "autotest-mode" + "Major mode for editing autotest files." t) +(add-to-list 'auto-mode-alist + '("\.at\'" . autotest-mode)) diff --git a/autoconf-init.el b/autoconf-init.el deleted file mode 100644 index 1c5725dc3ab05bc4ce15a3bb788a7ad6f2a04a6a..0000000000000000000000000000000000000000 --- a/autoconf-init.el +++ /dev/null @@ -1,16 +0,0 @@ -;; Activate autoconf-mode - -;; Uncomment the following code if you feel that autoconf-mode.el does better -;; job than Emacs's default autoconf.el. - -;; (autoload 'autoconf-mode "autoconf-mode" -;; "Major mode for editing autoconf files." t) -;; (setq auto-mode-alist -;; (cons '("\.ac\'\|configure\.in\'" . autoconf-mode) -;; auto-mode-alist)) - -;; Activate autotest-mode -(autoload 'autotest-mode "autotest-mode" - "Major mode for editing autotest files." t) -(setq auto-mode-alist - (cons '("\.at\'" . autotest-mode) auto-mode-alist)) diff --git a/autoconf.spec b/autoconf.spec index 6dc5f16f0b0e59d3f5f7c22b5c72ba9576991ee6..9aebd3154f4fbaeae9044dd72c2a87ffeb5ce72d 100644 --- a/autoconf.spec +++ b/autoconf.spec @@ -3,20 +3,22 @@ Name: autoconf Version: 2.69 -Release: 29 +Release: 30 Summary: An extensible package to automatically configure software source code packages License: GPLv2+ and GPLv3+ and GFDL URL: https://www.gnu.org/software/%{name}/ Source0: http://ftp.gnu.org/gnu/%{name}/%{name}-%{version}.tar.xz Source1: config.site -Source2: autoconf-init.el - -Patch1: autoconf-2.69-perl-5.22-autoscan.patch +Source2: autoconf-el.el +# four patches backport from upstream to solve test suite failure +Patch1: autoscan-port-to-perl-5.17.patch +Patch2: Port-tests-to-Bash-5.patch +Patch3: tests-avoid-spurious-test-failure-with-libtool-2.4.3.patch #fix the failure of test 38 autotools and whitespace in file names -Patch6000: 0001-Fix-test-suite-with-modern-Perl.patch +Patch4: Fix-test-suite-with-modern-Perl.patch -Patch9000: 0001-skip-one-test-at-line-1616-of-autotest.patch +Patch9000: skip-one-test-at-line-1616-of-autotest.patch BuildArch: noarch @@ -48,7 +50,7 @@ make %{?_smp_mflags} check %install %make_install install -p -D %{SOURCE1} %{buildroot}%{_datadir} -install -p -D %{SOURCE2} %{buildroot}%{_emacs_sitestartdir}/autoconf-init.el +install -p -D %{SOURCE2} %{buildroot}%{_emacs_sitestartdir}/autoconf-el.el %post help /sbin/install-info %{_infodir}/autoconf.info %{_infodir}/dir || : @@ -75,5 +77,8 @@ fi %changelog +* Sat Jan 4 2020 openEuler Buildteam - 2.69-30 +- Strengthen sources and patches + * Fri Oct 11 2019 openEuler Buildteam - 2.69-29 - Package Init diff --git a/autoscan-port-to-perl-5.17.patch b/autoscan-port-to-perl-5.17.patch new file mode 100644 index 0000000000000000000000000000000000000000..10a5cd265c653bdbc71f6a9c27c4a7ea57071840 --- /dev/null +++ b/autoscan-port-to-perl-5.17.patch @@ -0,0 +1,28 @@ +From e5654a5591884b92633c7785f325626711e7f7aa Mon Sep 17 00:00:00 2001 +From: Paul Eggert +Date: Tue, 29 Jan 2013 13:46:48 -0800 +Subject: [PATCH] autoscan: port to perl 5.17 + +* bin/autoscan.in (scan_sh_file): Escape '{'. This avoids a +feature that is deprecated in Perl 5.17. Reported by Ray Lauff in +. +--- + bin/autoscan.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/bin/autoscan.in b/bin/autoscan.in +index 993a750..db1df79 100644 +--- a/bin/autoscan.in ++++ b/bin/autoscan.in +@@ -358,7 +358,7 @@ sub scan_sh_file ($) + { + # Strip out comments and variable references. + s/#.*//; +- s/\${[^\}]*}//g; ++ s/\$\{[^\}]*}//g; + s/@[^@]*@//g; + + # Tokens in the code. +-- +1.8.3.1 + diff --git a/config.site b/config.site index cd21dd4b83a76b93e2e9de37b69daf5ba3b4e8a5..976734c3403ee419b26b212c39a8e5549492e75a 100644 --- a/config.site +++ b/config.site @@ -1,22 +1,18 @@ -# This is the config.site file to satisfy FHS defaults when installing below /usr. +# This is the config.site file to satisfy FHS defaults when installing below +# /usr. +# +# You may override this file by your config.site using the CONFIG_SITE env +# variable. -if test -n "$host"; then - # skip when cross-compiling - return 0 -fi +# return when cross compiling +[ -n $host ] && return 0; -if test "$prefix" = /usr \ - || { test "$prefix" = NONE && test "$ac_default_prefix" = /usr ; } +if [ "$prefix" = /usr ] || [[ "$prefix" = NONE && "$ac_default_prefix" = /usr ]] then - test "$sysconfdir" = '${prefix}/etc' && sysconfdir=/etc - test "$sharedstatedir" = '${prefix}/com' && sharedstatedir=/var - test "$localstatedir" = '${prefix}/var' && localstatedir=/var + [ "$sysconfdir" = '${prefix}/etc' ] && sysconfdir=/etc + [ "$localstatedir" = '${prefix}/var' ] && localstatedir=/var + [ "$sharedstatedir" = '${prefix}/com' ] && sharedstatedir=/var - ARCH=`uname -m` - for i in x86_64 ppc64 s390x aarch64; do - if test $ARCH = $i; then - test "$libdir" = '${exec_prefix}/lib' && libdir='${exec_prefix}/lib64' - break - fi - done +# for x86_64 aarch64 + [ "$libdir" = '${exec_prefix}/lib' ] && libdir='${exec_prefix}/lib64' fi diff --git a/0001-skip-one-test-at-line-1616-of-autotest.patch b/skip-one-test-at-line-1616-of-autotest.patch similarity index 100% rename from 0001-skip-one-test-at-line-1616-of-autotest.patch rename to skip-one-test-at-line-1616-of-autotest.patch diff --git a/tests-avoid-spurious-test-failure-with-libtool-2.4.3.patch b/tests-avoid-spurious-test-failure-with-libtool-2.4.3.patch new file mode 100644 index 0000000000000000000000000000000000000000..fcdda83072fcefdde1ce5c26fd2c0bbc3328495d --- /dev/null +++ b/tests-avoid-spurious-test-failure-with-libtool-2.4.3.patch @@ -0,0 +1,31 @@ +From 247b02e5a5bb79ca6666e91de02ae2d3cb0cd325 Mon Sep 17 00:00:00 2001 +From: "Gary V. Vaughan" +Date: Mon, 3 Nov 2014 07:25:03 +0100 +Subject: [PATCH] tests: avoid spurious test failure with libtool 2.4.3 + +Based on a report by Bruce Dubbs. + +* tests/foreign.at (Libtool): Be tolerant of 'quote' replacing the +older `quote'. + +Signed-off-by: Eric Blake +--- + tests/foreign.at | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tests/foreign.at b/tests/foreign.at +index a9dc33c..d4702cd 100644 +--- a/tests/foreign.at ++++ b/tests/foreign.at +@@ -57,7 +57,7 @@ AT_CHECK([./config.guess || exit 77], [], [ignore], [ignore]) + # Make sure at-path contains something valid, and let the test suite + # display it when verbose. And fail, skipping would too easily hide + # problems. +-AT_CHECK([sed -n ["s,^.*\`\\(/[^']*\\)'.*,\\1,p"] stdout], [0], [stdout]) ++AT_CHECK([sed -n ["s,^[^']*[\`']\\(/[^']*\\)'.*,\\1,p"] stdout], [0], [stdout]) + AT_CHECK([test -f "`sed -n 1p stdout`"]) + + # Older libtoolize installed everything but install-sh... +-- +1.8.3.1 +