Accepting request 855597 from home:AndreasStieger:branches:devel:tools:building

autoconf 2.70

OBS-URL: https://build.opensuse.org/request/show/855597
OBS-URL: https://build.opensuse.org/package/show/devel:tools:building/autoconf?expand=0&rev=46
This commit is contained in:
Martin Pluskal 2020-12-14 07:12:21 +00:00 committed by Git OBS Bridge
parent fd9e6494df
commit 8c1e8530e6
14 changed files with 283 additions and 344 deletions

View File

@ -1,145 +0,0 @@
From e17a30e987d7ee695fb4294a82d987ec3dc9b974 Mon Sep 17 00:00:00 2001
From: Eric Blake <eblake@redhat.com>
Date: Wed, 14 Sep 2016 08:17:06 -0500
Subject: [PATCH] AC_HEADER_MAJOR: port to glibc 2.25
glibc 2.25 is deprecating the namespace pollution of <sys/types.h>
injecting major(), minor(), and makedev() into the compilation
environment, with a warning that insists that users include
<sys/sysmacros.h> instead. However, because the expansion of
AC_HEADER_MAJOR didn't bother checking sys/sysmacros.h until
after probing whether sys/types.h pollutes the namespace, it was
not defining MAJOR_IN_SYSMACROS, with the result that code
compiled with -Werror chokes on the deprecation warnings because
it was not including sysmacros.h.
In addition to fixing autoconf (which only benefits projects
that rebuild configure after this fix is released), we can also
give a hint to distros on how they can populate config.site with
a cache variable to force pre-existing configure scripts without
the updated macro to behave sanely in the presence of glibc 2.25
(the documentation is especially useful since that cache variable
is no longer present in autoconf after this patch).
Note that mingw lacks major/minor/makedev in any of its standard
headers; for that platform, the behavior of this macro is unchanged
(code using the recommended include formula will get a compile error
when trying to use major(), whether before or after this patch); but
for now, it is assumed that programs actually concerned with
creating devices are not worried about portability to mingw. If
desired, a later patch could tighten AC_HEADER_MAJOR to fail at
configure time if the macros are unavailable in any of the three
system headers, but that semantic change is not worth mixing into
this patch.
* lib/autoconf/headers.m4 (AC_HEADER_MAJOR): Drop check for
major within sys/types.h; it interferes with the need to check
sysmacros.h first.
* doc/autoconf.texi (Particular Headers) <AC_HEADER_MAJOR>: Expand
details on usage, and on workarounds for non-updated projects.
Signed-off-by: Eric Blake <eblake@redhat.com>
---
doc/autoconf.texi | 35 +++++++++++++++++++++++++++++++----
lib/autoconf/headers.m4 | 30 ++++++++++++++----------------
2 files changed, 45 insertions(+), 20 deletions(-)
diff --git a/doc/autoconf.texi b/doc/autoconf.texi
index 9ad7dc1c5f..4f041bd4ed 100644
--- a/doc/autoconf.texi
+++ b/doc/autoconf.texi
@@ -5970,10 +5970,37 @@ Particular Headers
@cvindex MAJOR_IN_SYSMACROS
@hdrindex{sys/mkdev.h}
@hdrindex{sys/sysmacros.h}
-If @file{sys/types.h} does not define @code{major}, @code{minor}, and
-@code{makedev}, but @file{sys/mkdev.h} does, define
-@code{MAJOR_IN_MKDEV}; otherwise, if @file{sys/sysmacros.h} does, define
-@code{MAJOR_IN_SYSMACROS}.
+Detect the headers required to use @code{makedev}, @code{major}, and
+@code{minor}. These functions may be defined by @file{sys/mkdev.h},
+@code{sys/sysmacros.h}, or @file{sys/types.h}.
+
+@code{AC_HEADER_MAJOR} defines @code{MAJOR_IN_MKDEV} if they are in
+@file{sys/mkdev.h}, or @code{MAJOR_IN_SYSMACROS} if they are in
+@file{sys/sysmacros.h}. If neither macro is defined, they are either in
+@file{sys/types.h} or unavailable.
+
+To properly use these functions, your code should contain something
+like:
+
+@verbatim
+#include <sys/types.h>
+#ifdef MAJOR_IN_MKDEV
+# include <sys/mkdev.h>
+#elif defined MAJOR_IN_SYSMACROS
+# include <sys/sysmacros.h>
+#endif
+@end verbatim
+
+Note: Configure scripts built with Autoconf 2.69 or earlier will not
+detect a problem if @file{sys/types.h} contains definitions of
+@code{major}, @code{minor}, and/or @code{makedev} that trigger compiler
+warnings upon use. This is known to occur with GNU libc 2.25, where
+those definitions are being deprecated to reduce namespace pollution.
+If it is not practical to use Autoconf 2.70 to regenerate the configure
+script of affected software, you can work around the problem by setting
+@samp{ac_cv_header_sys_types_h_makedev=no}, as an argument to
+@command{configure} or as part of a @file{config.site} site default file
+(@pxref{Site Defaults}).
@end defmac
@defmac AC_HEADER_RESOLV
diff --git a/lib/autoconf/headers.m4 b/lib/autoconf/headers.m4
index 0c44973b0c..72262c1eb1 100644
--- a/lib/autoconf/headers.m4
+++ b/lib/autoconf/headers.m4
@@ -427,31 +427,29 @@ fi
# AC_HEADER_MAJOR
# ---------------
+# Thanks to glibc 2.25 deprecating macros in sys/types.h, coupled with
+# back-compat to autoconf 2.69, we need the following logic:
+# Check whether <sys/types.h> compiles.
+# If <sys/mkdev.h> compiles, assume it provides major/minor/makedev.
+# Otherwise, if <sys/sysmacros.h> compiles, assume it provides the macros.
+# Otherwise, either the macros were provided by <sys/types.h>, or do
+# not exist on the platform. Code trying to use these three macros is
+# assumed to not care about platforms that lack the macros.
AN_FUNCTION([major], [AC_HEADER_MAJOR])
AN_FUNCTION([makedev], [AC_HEADER_MAJOR])
AN_FUNCTION([minor], [AC_HEADER_MAJOR])
AN_HEADER([sys/mkdev.h], [AC_HEADER_MAJOR])
AC_DEFUN([AC_HEADER_MAJOR],
-[AC_CACHE_CHECK(whether sys/types.h defines makedev,
- ac_cv_header_sys_types_h_makedev,
-[AC_LINK_IFELSE([AC_LANG_PROGRAM([[@%:@include <sys/types.h>]],
- [[return makedev(0, 0);]])],
- [ac_cv_header_sys_types_h_makedev=yes],
- [ac_cv_header_sys_types_h_makedev=no])
-])
-
-if test $ac_cv_header_sys_types_h_makedev = no; then
+[AC_CHECK_HEADERS_ONCE([sys/types.h])
AC_CHECK_HEADER(sys/mkdev.h,
[AC_DEFINE(MAJOR_IN_MKDEV, 1,
[Define to 1 if `major', `minor', and `makedev' are
declared in <mkdev.h>.])])
-
- if test $ac_cv_header_sys_mkdev_h = no; then
- AC_CHECK_HEADER(sys/sysmacros.h,
- [AC_DEFINE(MAJOR_IN_SYSMACROS, 1,
- [Define to 1 if `major', `minor', and `makedev'
- are declared in <sysmacros.h>.])])
- fi
+if test $ac_cv_header_sys_mkdev_h = no; then
+ AC_CHECK_HEADER(sys/sysmacros.h,
+ [AC_DEFINE(MAJOR_IN_SYSMACROS, 1,
+ [Define to 1 if `major', `minor', and `makedev'
+ are declared in <sysmacros.h>.])])
fi
])# AC_HEADER_MAJOR
--
2.18.0

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:954bd69b391edc12d6a4a51a2dd1476543da5c6bbf05a95b59dc0dd6fd4c2969
size 1927468

View File

@ -1,12 +0,0 @@
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)
Comment: Public key at http://people.redhat.com/eblake/eblake.gpg
iQEcBAABCAAGBQJPl2ywAAoJEKeha0olJ0Nq3Q4IAJTtjgjMtPd2PkfaJVdwTMzv
OkCk5TTb+o1SiFFIAjv8ojL74sEFjCGzJn2xr5zauQZ/K5UP8uoCNUmMytbafA+h
KXmzZ0eZzItb+SljmNhzz0/2id/RM/lhbei7YJPZ4NdAM++aEZHVteDHqbEbCiD3
lOE4RtjOp9C0QKXY04Y6a31CLVsZsPQzJctyKQo7H81iX7JoKfpWhRgYJYwzMYBX
YJ4BeBaP6KHV2qTK9X4Cf8cIpxdJHzD744rV/dqo/b6RnG5H2ynYvuSr4VwtkS7I
z+yEbEbmjvHS3cB8AqnDnnrxLduI1Bp3SgwmpR28VadDp+hk+6HU4F/UpYOcfZk=
=FUb/
-----END PGP SIGNATURE-----

3
autoconf-2.70.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:fa9e227860d9d845c0a07f63b88c8d7a2ae1aa2345fb619384bb8accc19fecc6
size 1346528

16
autoconf-2.70.tar.xz.sig Normal file
View File

@ -0,0 +1,16 @@
-----BEGIN PGP SIGNATURE-----
iQIzBAABCAAdFiEEgvhU885zF0uLYxdAkfzDK2dpqmQFAl/Pyp0ACgkQkfzDK2dp
qmRwHQ/+K6xxNpeHx0jWQk0GRWiYr4d00ViWAXu2El0zdNh3m3DqQGXmHtZten46
ez1v8gx4bkvStgZZGh4AgFRnR7zp0am32PwLLAGepraxD06YwlAAZgzCztFW0/9b
DQjYXlW8Jfsx0eQRNX5J41od1MCSjLwjCAx5HFUhAeniwBHrvhn/oaxnd451oJm9
LPD6oc9ccd4hh7Ff5ElWZdzi7eBOGcjox8+6lxcyieeNYOGoMtRvmrrhGV67ym0s
3Yh5nREqMsaxE7NYSuzM0T+pUZJYMal5dbWYvDdycJqLu9/UabSZLuppNVFTyYAK
43v9Xq7CvHRaJpvqhMiczyjlk86cR/SdKItTaY1ZsTATw/j8uxNTH049XIWP7bM1
oa7ypMMD779Ihk0Ci7Bl9ZJ8tjsPP1jlPRcHLoyam15HDEQcORDk3YiEJMF74XZ4
t5TTAw/bDPlGB2fHix5IrSipMaLzKHhlzGAl0exQ35liSSqI6eb2DjnyAO1P1hft
S/Ds5CsL0cRfUKzvoQTRuhJMn1caO2IZfWzCgxGKc6g9XMXyRzYCihGNKSvG1/Vl
66Chjbpv4LXFmASLY41eGclK/c+74nwP9GdO+Sn8jCJsFddlU4pXffBDsk1F+r+c
uLbSss93weH5bh6uS0ll6jU36/3YBudxBLQWDtRtW2uV9Vb8MiE=
=6ak1
-----END PGP SIGNATURE-----

View File

@ -1,3 +1,72 @@
-------------------------------------------------------------------
Sun Dec 13 18:52:47 UTC 2020 - Andreas Stieger <andreas.stieger@gmx.de>
- autoconf 2.70:
* Warnings about obsolete constructs are now on by default,
these warnings can be turned off with -Wno-obsolete
* Many macros have become pickier about argument quotation
* Many macros no longer AC_REQUIRE as many other macros as they
used to, may expose several classes of latent bugs
* More macros use config.sub and config.guess internally
* Setting CC to a C++ compiler is no longer supported
* Running configure tests with warnings promoted to errors is
not supported
* Including confdefs.h manually may cause test failures
* Older versions of automake and aclocal (< 1.8) are no longer
supported
* AC_CONFIG_SUBDIRS no longer directly supports Cygnus configure
* AC_CHECK_HEADER and AC_CHECK_HEADERS only do a compilation test
* AC_INCLUDES_DEFAULT assumes an ISO C90 compliant C implementation
* AS_ECHO and AS_ECHO_N unconditionally use printf
* Configure scripts require support for $( ... ) command
substitution
* AC_INIT now trims extra white space from its arguments
* Macros that take whitespace-separated lists as arguments
now always expand macros within those arguments
* AC_FUNC_STRERROR_R assumes strerror_r is unavailable if its
not declared
* AC_OPENMP cant be used if you have files named mp or penmp
* Configure scripts now support a --runstatedir option
* autoreconf will now run gtkdocize and intltoolize when appropriate
* autoreconf now recognizes AM_GNU_GETTEXT_REQUIRE_VERSION
* autoheader handles secondary config headers better
* AC_PROG_CC now enables C2011 mode if the compiler supports it
* New macro AC_C__GENERIC tests for C2011 _Generic support
* AC_C_VARARRAYS has been aligned with C2011.
* New macro AC_CONFIG_MACRO_DIRS
* AC_USE_SYSTEM_EXTENSIONS knows about more extensions to enable
* New compatibility macro AC_CHECK_INCLUDES_DEFAULT
* AC_REQUIRE_AUX_FILE has been improved
* AC_PROG_LEX has an option to not look for yywrap
* Use of the long-deprecated name configure.in for the autoconf
input file now elicits a warning in the “obsolete” category
* Use of the undocumented internal shell variables $as_echo and
$as_echo_n now elicits a warning in the “obsolete” category.
The macros AS_ECHO and AS_ECHO_N should be used instead.
* autoconf will now issue warnings (in the “syntax” category)
if the input file is missing a call to AC_INIT and/or AC_OUTPUT
* autoconf will now issue warnings (in the “syntax” category)
for a non-literal URL argument to AC_INIT, and for a TARNAME
argument to AC_INIT which is either non-literal or contains
characters that should not be used in file names (e.g. *).
* AC_PROG_CC_STDC, AC_PROG_CC_C89, AC_PROG_CC_C99 are now
obsolete. Applications should use AC_PROG_CC.
* AC_HEADER_STDC and AC_HEADER_TIME are now stubs.
* AC_DIAGNOSE, AC_FATAL, AC_WARNING, and _AC_COMPUTE_INT are now
replaced with modern equivalents by autoupdate.
* AC_CONFIG_HEADER is now diagnosed as obsolete, and replaced with
AC_CONFIG_HEADERS by autoupdate.
* The macro AC_OBSOLETE is obsolete.
* Man pages for config.guess and config.sub are no longer provided
* Bug fixes for compatibility with current Automake, Libtool,
Perl, Texinfo, and shells
* Compatibility fixes for compilers and build environments
* Various autotest enhancements
- drop upstream patches:
* autoconf-perl-5.17-fixes.patch
* port-tests-to-bash-5.patch
- remove obsolete texinfo packaging macros
-------------------------------------------------------------------
Tue Nov 5 23:07:29 UTC 2019 - Stefan Brüns <stefan.bruens@rwth-aachen.de>

View File

@ -1,7 +1,7 @@
#
# spec file for package autoconf-el
#
# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
# Copyright (c) 2020 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -16,20 +16,18 @@
#
%define site_lisp %{_datadir}/emacs/site-lisp
Name: autoconf-el
BuildRequires: emacs-nox
BuildRequires: m4 >= 1.4.6
BuildRequires: xz
Version: 2.69
Version: 2.70
Release: 0
Summary: Emacs mode for editing GNU Autoconf scripts
License: GPL-3.0-or-later
Url: http://www.gnu.org/software/autoconf
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Source: http://ftp.gnu.org/gnu/autoconf/autoconf-%{version}.tar.gz
BuildArch: noarch
URL: https://www.gnu.org/software/autoconf
Source: http://ftp.gnu.org/gnu/autoconf/autoconf-%{version}.tar.xz
BuildRequires: emacs-nox
BuildRequires: m4 >= 1.4.6
Enhances: emacs
%define site_lisp %{_prefix}/share/emacs/site-lisp
BuildArch: noarch
%description
Emacs mode for editing GNU Autoconf scripts
@ -38,12 +36,16 @@ Emacs mode for editing GNU Autoconf scripts
%setup -q -n autoconf-%{version}
%build
./configure --prefix=%{_prefix} --infodir=%{_infodir} --mandir=%{_mandir}
make -C lib/emacs %{?_smp_mflags}
%configure
%make_build
%install
make -C lib/emacs install DESTDIR=$RPM_BUILD_ROOT
sed 's/^;//' > $RPM_BUILD_ROOT%{site_lisp}/suse-start-%{name}.el <<\EOF
mkdir -p %{buildroot}%{site_lisp}
install -c -m 644 lib/emacs/autoconf-mode.el %{buildroot}%{site_lisp}/autoconf-mode.el
install -c -m 644 lib/emacs/autoconf-mode.elc %{buildroot}%{site_lisp}/autoconf-mode.elc
install -c -m 644 lib/emacs/autotest-mode.el %{buildroot}%{site_lisp}/autotest-mode.el
install -c -m 644 lib/emacs/autotest-mode.elc %{buildroot}%{site_lisp}/autotest-mode.elc
sed 's/^;//' > %{buildroot}%{site_lisp}/suse-start-%{name}.el <<\EOF
;;; %{site_lisp}/suse-start-%{name}.el
;
(autoload 'autoconf-mode "autoconf-mode"
@ -60,7 +62,7 @@ sed 's/^;//' > $RPM_BUILD_ROOT%{site_lisp}/suse-start-%{name}.el <<\EOF
EOF
%files
%defattr(-,root,root)
%license COPYING
%{site_lisp}/*.el
%{site_lisp}/*.elc

View File

@ -1,28 +0,0 @@
From e5654a5591884b92633c7785f325626711e7f7aa Mon Sep 17 00:00:00 2001
From: Paul Eggert <eggert@cs.ucla.edu>
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
<http://lists.gnu.org/archive/html/bug-autoconf/2013-01/msg00059.html>.
---
bin/autoscan.in | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
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.7.2.5

View File

@ -1,3 +1,72 @@
-------------------------------------------------------------------
Sun Dec 13 18:52:47 UTC 2020 - Andreas Stieger <andreas.stieger@gmx.de>
- autoconf 2.70:
* Warnings about obsolete constructs are now on by default,
these warnings can be turned off with -Wno-obsolete
* Many macros have become pickier about argument quotation
* Many macros no longer AC_REQUIRE as many other macros as they
used to, may expose several classes of latent bugs
* More macros use config.sub and config.guess internally
* Setting CC to a C++ compiler is no longer supported
* Running configure tests with warnings promoted to errors is
not supported
* Including confdefs.h manually may cause test failures
* Older versions of automake and aclocal (< 1.8) are no longer
supported
* AC_CONFIG_SUBDIRS no longer directly supports Cygnus configure
* AC_CHECK_HEADER and AC_CHECK_HEADERS only do a compilation test
* AC_INCLUDES_DEFAULT assumes an ISO C90 compliant C implementation
* AS_ECHO and AS_ECHO_N unconditionally use printf
* Configure scripts require support for $( ... ) command
substitution
* AC_INIT now trims extra white space from its arguments
* Macros that take whitespace-separated lists as arguments
now always expand macros within those arguments
* AC_FUNC_STRERROR_R assumes strerror_r is unavailable if its
not declared
* AC_OPENMP cant be used if you have files named mp or penmp
* Configure scripts now support a --runstatedir option
* autoreconf will now run gtkdocize and intltoolize when appropriate
* autoreconf now recognizes AM_GNU_GETTEXT_REQUIRE_VERSION
* autoheader handles secondary config headers better
* AC_PROG_CC now enables C2011 mode if the compiler supports it
* New macro AC_C__GENERIC tests for C2011 _Generic support
* AC_C_VARARRAYS has been aligned with C2011.
* New macro AC_CONFIG_MACRO_DIRS
* AC_USE_SYSTEM_EXTENSIONS knows about more extensions to enable
* New compatibility macro AC_CHECK_INCLUDES_DEFAULT
* AC_REQUIRE_AUX_FILE has been improved
* AC_PROG_LEX has an option to not look for yywrap
* Use of the long-deprecated name configure.in for the autoconf
input file now elicits a warning in the “obsolete” category
* Use of the undocumented internal shell variables $as_echo and
$as_echo_n now elicits a warning in the “obsolete” category.
The macros AS_ECHO and AS_ECHO_N should be used instead.
* autoconf will now issue warnings (in the “syntax” category)
if the input file is missing a call to AC_INIT and/or AC_OUTPUT
* autoconf will now issue warnings (in the “syntax” category)
for a non-literal URL argument to AC_INIT, and for a TARNAME
argument to AC_INIT which is either non-literal or contains
characters that should not be used in file names (e.g. *).
* AC_PROG_CC_STDC, AC_PROG_CC_C89, AC_PROG_CC_C99 are now
obsolete. Applications should use AC_PROG_CC.
* AC_HEADER_STDC and AC_HEADER_TIME are now stubs.
* AC_DIAGNOSE, AC_FATAL, AC_WARNING, and _AC_COMPUTE_INT are now
replaced with modern equivalents by autoupdate.
* AC_CONFIG_HEADER is now diagnosed as obsolete, and replaced with
AC_CONFIG_HEADERS by autoupdate.
* The macro AC_OBSOLETE is obsolete.
* Man pages for config.guess and config.sub are no longer provided
* Bug fixes for compatibility with current Automake, Libtool,
Perl, Texinfo, and shells
* Compatibility fixes for compilers and build environments
* Various autotest enhancements
- drop upstream patches:
* autoconf-perl-5.17-fixes.patch
* port-tests-to-bash-5.patch
- remove obsolete texinfo packaging macros
-------------------------------------------------------------------
Tue Nov 5 23:07:29 UTC 2019 - Stefan Brüns <stefan.bruens@rwth-aachen.de>

View File

@ -1,7 +1,7 @@
#
# spec file for package autoconf-testsuite
#
# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
# Copyright (c) 2020 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -17,30 +17,24 @@
Name: autoconf-testsuite
Version: 2.69
Version: 2.70
Release: 0
Summary: A GNU Tool for Automatically Configuring Source Code
License: GPL-3.0-or-later
Url: http://www.gnu.org/software/autoconf
Source0: http://ftp.gnu.org/gnu/autoconf/autoconf-%{version}.tar.gz
Source1: http://ftp.gnu.org/gnu/autoconf/autoconf-%{version}.tar.gz.sig
URL: https://www.gnu.org/software/autoconf
Source0: http://ftp.gnu.org/gnu/autoconf/autoconf-%{version}.tar.xz
Source1: http://ftp.gnu.org/gnu/autoconf/autoconf-%{version}.tar.xz.sig
Source2: %{name}.keyring
Patch0: autoreconf-ltdl.diff
# PATCH-FIX-UPSTREAM autoconf-perl-5.17-fixes.patch dimstar@opensuse.org -- autoscan: port to perl 5.17 (with perl 5.22, it is now fatal).
Patch1: autoconf-perl-5.17-fixes.patch
# PATCH-FIX-UPSTREAM AC_HEADER_MAJOR: port to glibc 2.25
Patch2: ac-header-major.patch
# PATCH-FIX-UPSTREAM Port tests to Bash 5
Patch3: port-tests-to-bash-5.patch
BuildRequires: help2man
BuildRequires: m4 >= 1.4.6
Requires: info
Requires: m4 >= 1.4.6
Requires: perl-base >= 5.6
Requires(post): %{install_info_prereq}
Requires(preun): %{install_info_prereq}
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildArch: noarch
%if "%{name}" == "autoconf-testsuite"
BuildRequires: gcc-c++
%endif
%description
GNU Autoconf is a tool for configuring source code and makefiles. Using
@ -58,43 +52,30 @@ only required for the generation of the scripts, not their use.
%prep
%setup -q -n autoconf-%{version}
%patch0
%patch1 -p1
%patch2 -p1
%patch3 -p1
%build
%configure
make %{?_smp_mflags}
%make_build
%if "%{name}" == "autoconf-testsuite"
%check
trap 'test $? -ne 0 && cat tests/testsuite.log' EXIT
make %{?_smp_mflags} check
%make_build check
%install
%else
%install
%{?make_install} %{!?make_install:make install DESTDIR=%{buildroot}}
rm -f %{buildroot}%{_datadir}/emacs/site-lisp/*.el*
# info's dir file is not auto ignored on some systems
rm -rf %{buildroot}%{_infodir}/dir
%make_install
%endif
%post
%install_info --info-dir=%{_infodir} %{_infodir}/autoconf.info.gz
%preun
%install_info_delete --info-dir=%{_infodir} %{_infodir}/autoconf.info.gz
%if "%{name}" == "autoconf"
%files
%defattr(-,root,root)
%doc AUTHORS NEWS README TODO
%license COPYING
%{_bindir}/*
%{_datadir}/autoconf
%doc %{_infodir}/*.gz
%doc %{_mandir}/man1/*.gz
%{_infodir}/*.gz
%{_mandir}/man1/*.gz
%endif
%changelog

View File

@ -1,3 +1,72 @@
-------------------------------------------------------------------
Sun Dec 13 18:52:47 UTC 2020 - Andreas Stieger <andreas.stieger@gmx.de>
- autoconf 2.70:
* Warnings about obsolete constructs are now on by default,
these warnings can be turned off with -Wno-obsolete
* Many macros have become pickier about argument quotation
* Many macros no longer AC_REQUIRE as many other macros as they
used to, may expose several classes of latent bugs
* More macros use config.sub and config.guess internally
* Setting CC to a C++ compiler is no longer supported
* Running configure tests with warnings promoted to errors is
not supported
* Including confdefs.h manually may cause test failures
* Older versions of automake and aclocal (< 1.8) are no longer
supported
* AC_CONFIG_SUBDIRS no longer directly supports Cygnus configure
* AC_CHECK_HEADER and AC_CHECK_HEADERS only do a compilation test
* AC_INCLUDES_DEFAULT assumes an ISO C90 compliant C implementation
* AS_ECHO and AS_ECHO_N unconditionally use printf
* Configure scripts require support for $( ... ) command
substitution
* AC_INIT now trims extra white space from its arguments
* Macros that take whitespace-separated lists as arguments
now always expand macros within those arguments
* AC_FUNC_STRERROR_R assumes strerror_r is unavailable if its
not declared
* AC_OPENMP cant be used if you have files named mp or penmp
* Configure scripts now support a --runstatedir option
* autoreconf will now run gtkdocize and intltoolize when appropriate
* autoreconf now recognizes AM_GNU_GETTEXT_REQUIRE_VERSION
* autoheader handles secondary config headers better
* AC_PROG_CC now enables C2011 mode if the compiler supports it
* New macro AC_C__GENERIC tests for C2011 _Generic support
* AC_C_VARARRAYS has been aligned with C2011.
* New macro AC_CONFIG_MACRO_DIRS
* AC_USE_SYSTEM_EXTENSIONS knows about more extensions to enable
* New compatibility macro AC_CHECK_INCLUDES_DEFAULT
* AC_REQUIRE_AUX_FILE has been improved
* AC_PROG_LEX has an option to not look for yywrap
* Use of the long-deprecated name configure.in for the autoconf
input file now elicits a warning in the “obsolete” category
* Use of the undocumented internal shell variables $as_echo and
$as_echo_n now elicits a warning in the “obsolete” category.
The macros AS_ECHO and AS_ECHO_N should be used instead.
* autoconf will now issue warnings (in the “syntax” category)
if the input file is missing a call to AC_INIT and/or AC_OUTPUT
* autoconf will now issue warnings (in the “syntax” category)
for a non-literal URL argument to AC_INIT, and for a TARNAME
argument to AC_INIT which is either non-literal or contains
characters that should not be used in file names (e.g. *).
* AC_PROG_CC_STDC, AC_PROG_CC_C89, AC_PROG_CC_C99 are now
obsolete. Applications should use AC_PROG_CC.
* AC_HEADER_STDC and AC_HEADER_TIME are now stubs.
* AC_DIAGNOSE, AC_FATAL, AC_WARNING, and _AC_COMPUTE_INT are now
replaced with modern equivalents by autoupdate.
* AC_CONFIG_HEADER is now diagnosed as obsolete, and replaced with
AC_CONFIG_HEADERS by autoupdate.
* The macro AC_OBSOLETE is obsolete.
* Man pages for config.guess and config.sub are no longer provided
* Bug fixes for compatibility with current Automake, Libtool,
Perl, Texinfo, and shells
* Compatibility fixes for compilers and build environments
* Various autotest enhancements
- drop upstream patches:
* autoconf-perl-5.17-fixes.patch
* port-tests-to-bash-5.patch
- remove obsolete texinfo packaging macros
-------------------------------------------------------------------
Tue Nov 5 23:07:29 UTC 2019 - Stefan Brüns <stefan.bruens@rwth-aachen.de>

View File

@ -1,7 +1,7 @@
#
# spec file for package autoconf
#
# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
# Copyright (c) 2020 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -17,30 +17,24 @@
Name: autoconf
Version: 2.69
Version: 2.70
Release: 0
Summary: A GNU Tool for Automatically Configuring Source Code
License: GPL-3.0-or-later
Url: http://www.gnu.org/software/autoconf
Source0: http://ftp.gnu.org/gnu/autoconf/autoconf-%{version}.tar.gz
Source1: http://ftp.gnu.org/gnu/autoconf/autoconf-%{version}.tar.gz.sig
URL: https://www.gnu.org/software/autoconf
Source0: http://ftp.gnu.org/gnu/autoconf/autoconf-%{version}.tar.xz
Source1: http://ftp.gnu.org/gnu/autoconf/autoconf-%{version}.tar.xz.sig
Source2: %{name}.keyring
Patch0: autoreconf-ltdl.diff
# PATCH-FIX-UPSTREAM autoconf-perl-5.17-fixes.patch dimstar@opensuse.org -- autoscan: port to perl 5.17 (with perl 5.22, it is now fatal).
Patch1: autoconf-perl-5.17-fixes.patch
# PATCH-FIX-UPSTREAM AC_HEADER_MAJOR: port to glibc 2.25
Patch2: ac-header-major.patch
# PATCH-FIX-UPSTREAM Port tests to Bash 5
Patch3: port-tests-to-bash-5.patch
BuildRequires: help2man
BuildRequires: m4 >= 1.4.6
Requires: info
Requires: m4 >= 1.4.6
Requires: perl-base >= 5.6
Requires(post): %{install_info_prereq}
Requires(preun): %{install_info_prereq}
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildArch: noarch
%if "%{name}" == "autoconf-testsuite"
BuildRequires: gcc-c++
%endif
%description
GNU Autoconf is a tool for configuring source code and makefiles. Using
@ -58,43 +52,30 @@ only required for the generation of the scripts, not their use.
%prep
%setup -q -n autoconf-%{version}
%patch0
%patch1 -p1
%patch2 -p1
%patch3 -p1
%build
%configure
make %{?_smp_mflags}
%make_build
%if "%{name}" == "autoconf-testsuite"
%check
trap 'test $? -ne 0 && cat tests/testsuite.log' EXIT
make %{?_smp_mflags} check
%make_build check
%install
%else
%install
%{?make_install} %{!?make_install:make install DESTDIR=%{buildroot}}
rm -f %{buildroot}%{_datadir}/emacs/site-lisp/*.el*
# info's dir file is not auto ignored on some systems
rm -rf %{buildroot}%{_infodir}/dir
%make_install
%endif
%post
%install_info --info-dir=%{_infodir} %{_infodir}/autoconf.info.gz
%preun
%install_info_delete --info-dir=%{_infodir} %{_infodir}/autoconf.info.gz
%if "%{name}" == "autoconf"
%files
%defattr(-,root,root)
%doc AUTHORS NEWS README TODO
%license COPYING
%{_bindir}/*
%{_datadir}/autoconf
%doc %{_infodir}/*.gz
%doc %{_mandir}/man1/*.gz
%{_infodir}/*.gz
%{_mandir}/man1/*.gz
%endif
%changelog

View File

@ -1,22 +1,22 @@
Index: bin/autoreconf.in
===================================================================
--- bin/autoreconf.in.orig 2012-04-25 00:00:28.000000000 +0200
+++ bin/autoreconf.in 2012-04-25 16:50:22.272144014 +0200
@@ -470,6 +470,8 @@ sub autoreconf_current_directory ()
'AC_CONFIG_AUX_DIR',
'AC_CONFIG_HEADERS',
'AC_CONFIG_SUBDIRS',
+ 'AC_LIBLTDL_CONVENIENCE',
+ 'AC_LIBLTDL_INSTALLABLE',
'AC_INIT',
'AC_PROG_LIBTOOL',
'LT_INIT',
@@ -488,6 +490,8 @@ sub autoreconf_current_directory ()
$uses_libtool = 1 if $macro eq "AC_PROG_LIBTOOL"
--- bin/autoreconf.in.orig
+++ bin/autoreconf.in
@@ -595,6 +595,8 @@ sub autoreconf_current_directory ($)
'AC_CONFIG_AUX_DIR',
'AC_CONFIG_HEADERS',
'AC_CONFIG_SUBDIRS',
+ 'AC_LIBLTDL_CONVENIENCE',
+ 'AC_LIBLTDL_INSTALLABLE',
'AC_INIT',
'AC_REQUIRE_AUX_FILE',
'AC_PROG_LIBTOOL',
@@ -620,6 +622,8 @@ sub autoreconf_current_directory ($)
|| $macro eq "AM_PROG_LIBTOOL"
|| $macro eq "LT_INIT";
$uses_libltdl = 1 if $macro eq "LT_CONFIG_LTDL_DIR";
+ $uses_libltdl = 1 if $macro eq "AC_LIBLTDL_CONVENIENCE";
+ $uses_libltdl = 1 if $macro eq "AC_LIBLTDL_INSTALLABLE";
$uses_autoheader = 1 if $macro eq "AC_CONFIG_HEADERS";
$uses_automake = 1 if $macro eq "AM_INIT_AUTOMAKE";
push @subdir, split (' ', $args[0])
$uses_intltool = 1 if $macro eq "IT_PROG_INTLTOOL";

View File

@ -1,63 +0,0 @@
From 5b9db67786a428164abafe626ab11a2754aad528 Mon Sep 17 00:00:00 2001
From: Ondrej Dubaj <odubaj@redhat.com>
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.9.1