summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRoss Burton <ross.burton@arm.com>2020-07-15 16:03:21 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2021-02-07 22:26:42 +0000
commitbdad4025c7d3e21fc99eb1055746aeb69fd8d915 (patch)
treecb34eb832858cff00d3c7281c38251a668c9bf63
parent1dbef3ce981495ad08ca045c6ad80a7417f4619c (diff)
downloadpoky-bdad4025c7d3e21fc99eb1055746aeb69fd8d915.tar.gz
autoconf: upgrade to 2.71
After too many years, autoconf has made a new release. On the whole it is compatible with previous releases, but some macros are more specific about what they expose so minor tweaks to configure.ac may be required. autoconf also now invokes intltoolize, gtkdocize, and copies config.sub/guess, so there is less work for autotools.bbclass to do. - AC_HEADER_MAJOR-port-to-glibc-2.25.patch - add_musl_config.patch - autoconf-replace-w-option-in-shebangs-with-modern-use-warnings.patch - autoreconf-gnuconfigize.patch - check-automake-cross-warning.patch - config_site.patch - fix_path_xtra.patch - performance.patch Drop a number of patches which have been integrated upstream. - man-host-perl.patch Don't use the target perl path when building documentation at build time: - no-man.patch Don't build documentation in native builds to avoid further build dependencies. (From OE-Core rev: f5dd2e0acbb0aa4079c51aaeab8c26e743a4c714) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-devtools/autoconf/autoconf/AC_HEADER_MAJOR-port-to-glibc-2.25.patch101
-rw-r--r--meta/recipes-devtools/autoconf/autoconf/add_musl_config.patch26
-rw-r--r--meta/recipes-devtools/autoconf/autoconf/autoconf-replace-w-option-in-shebangs-with-modern-use-warnings.patch120
-rw-r--r--meta/recipes-devtools/autoconf/autoconf/autoreconf-exclude.patch113
-rw-r--r--meta/recipes-devtools/autoconf/autoconf/autoreconf-gnuconfigize.patch38
-rw-r--r--meta/recipes-devtools/autoconf/autoconf/autotest-automake-result-format.patch32
-rw-r--r--meta/recipes-devtools/autoconf/autoconf/check-automake-cross-warning.patch34
-rw-r--r--meta/recipes-devtools/autoconf/autoconf/config_site.patch40
-rw-r--r--meta/recipes-devtools/autoconf/autoconf/fix_path_xtra.patch120
-rw-r--r--meta/recipes-devtools/autoconf/autoconf/man-host-perl.patch24
-rw-r--r--meta/recipes-devtools/autoconf/autoconf/no-man.patch21
-rw-r--r--meta/recipes-devtools/autoconf/autoconf/performance.patch60
-rw-r--r--meta/recipes-devtools/autoconf/autoconf/preferbash.patch39
-rw-r--r--meta/recipes-devtools/autoconf/autoconf/program_prefix.patch36
-rw-r--r--meta/recipes-devtools/autoconf/autoconf/remove-usr-local-lib-from-m4.patch28
-rw-r--r--meta/recipes-devtools/autoconf/autoconf_2.71.bb (renamed from meta/recipes-devtools/autoconf/autoconf_2.69.bb)32
16 files changed, 180 insertions, 684 deletions
diff --git a/meta/recipes-devtools/autoconf/autoconf/AC_HEADER_MAJOR-port-to-glibc-2.25.patch b/meta/recipes-devtools/autoconf/autoconf/AC_HEADER_MAJOR-port-to-glibc-2.25.patch
deleted file mode 100644
index b2d7dc0e24..0000000000
--- a/meta/recipes-devtools/autoconf/autoconf/AC_HEADER_MAJOR-port-to-glibc-2.25.patch
+++ /dev/null
@@ -1,101 +0,0 @@
1From b859ab1b211d348b46eca9158b7742f050c8115e Mon Sep 17 00:00:00 2001
2From: Eric Blake <eblake@redhat.com>
3Date: Wed, 14 Sep 2016 08:17:06 -0500
4Subject: [PATCH] AC_HEADER_MAJOR: port to glibc 2.25
5
6glibc 2.25 is deprecating the namespace pollution of <sys/types.h>
7injecting major(), minor(), and makedev() into the compilation
8environment, with a warning that insists that users include
9<sys/sysmacros.h> instead. However, because the expansion of
10AC_HEADER_MAJOR didn't bother checking sys/sysmacros.h until
11after probing whether sys/types.h pollutes the namespace, it was
12not defining MAJOR_IN_SYSMACROS, with the result that code
13compiled with -Werror chokes on the deprecation warnings because
14it was not including sysmacros.h.
15
16In addition to fixing autoconf (which only benefits projects
17that rebuild configure after this fix is released), we can also
18give a hint to distros on how they can populate config.site with
19a cache variable to force pre-existing configure scripts without
20the updated macro to behave sanely in the presence of glibc 2.25
21(the documentation is especially useful since that cache variable
22is no longer present in autoconf after this patch).
23
24Note that mingw lacks major/minor/makedev in any of its standard
25headers; for that platform, the behavior of this macro is unchanged
26(code using the recommended include formula will get a compile error
27when trying to use major(), whether before or after this patch); but
28for now, it is assumed that programs actually concerned with
29creating devices are not worried about portability to mingw. If
30desired, a later patch could tighten AC_HEADER_MAJOR to fail at
31configure time if the macros are unavailable in any of the three
32system headers, but that semantic change is not worth mixing into
33this patch.
34
35* lib/autoconf/headers.m4 (AC_HEADER_MAJOR): Drop check for
36major within sys/types.h; it interferes with the need to check
37sysmacros.h first.
38
39Signed-off-by: Eric Blake <eblake@redhat.com>
40
41Remove the documentation change from the patch
42Upstream-Status: Backport
43
44Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
45---
46 lib/autoconf/headers.m4 | 30 ++++++++++++++----------------
47 1 file changed, 14 insertions(+), 16 deletions(-)
48
49diff --git a/lib/autoconf/headers.m4 b/lib/autoconf/headers.m4
50index 81a7fa2..a57d0d3 100644
51--- a/lib/autoconf/headers.m4
52+++ b/lib/autoconf/headers.m4
53@@ -502,31 +502,29 @@ fi
54
55 # AC_HEADER_MAJOR
56 # ---------------
57+# Thanks to glibc 2.25 deprecating macros in sys/types.h, coupled with
58+# back-compat to autoconf 2.69, we need the following logic:
59+# Check whether <sys/types.h> compiles.
60+# If <sys/mkdev.h> compiles, assume it provides major/minor/makedev.
61+# Otherwise, if <sys/sysmacros.h> compiles, assume it provides the macros.
62+# Otherwise, either the macros were provided by <sys/types.h>, or do
63+# not exist on the platform. Code trying to use these three macros is
64+# assumed to not care about platforms that lack the macros.
65 AN_FUNCTION([major], [AC_HEADER_MAJOR])
66 AN_FUNCTION([makedev], [AC_HEADER_MAJOR])
67 AN_FUNCTION([minor], [AC_HEADER_MAJOR])
68 AN_HEADER([sys/mkdev.h], [AC_HEADER_MAJOR])
69 AC_DEFUN([AC_HEADER_MAJOR],
70-[AC_CACHE_CHECK(whether sys/types.h defines makedev,
71- ac_cv_header_sys_types_h_makedev,
72-[AC_LINK_IFELSE([AC_LANG_PROGRAM([[@%:@include <sys/types.h>]],
73- [[return makedev(0, 0);]])],
74- [ac_cv_header_sys_types_h_makedev=yes],
75- [ac_cv_header_sys_types_h_makedev=no])
76-])
77-
78-if test $ac_cv_header_sys_types_h_makedev = no; then
79+[AC_CHECK_HEADERS_ONCE([sys/types.h])
80 AC_CHECK_HEADER(sys/mkdev.h,
81 [AC_DEFINE(MAJOR_IN_MKDEV, 1,
82 [Define to 1 if `major', `minor', and `makedev' are
83 declared in <mkdev.h>.])])
84-
85- if test $ac_cv_header_sys_mkdev_h = no; then
86- AC_CHECK_HEADER(sys/sysmacros.h,
87- [AC_DEFINE(MAJOR_IN_SYSMACROS, 1,
88- [Define to 1 if `major', `minor', and `makedev'
89- are declared in <sysmacros.h>.])])
90- fi
91+if test $ac_cv_header_sys_mkdev_h = no; then
92+ AC_CHECK_HEADER(sys/sysmacros.h,
93+ [AC_DEFINE(MAJOR_IN_SYSMACROS, 1,
94+ [Define to 1 if `major', `minor', and `makedev'
95+ are declared in <sysmacros.h>.])])
96 fi
97 ])# AC_HEADER_MAJOR
98
99--
1002.7.4
101
diff --git a/meta/recipes-devtools/autoconf/autoconf/add_musl_config.patch b/meta/recipes-devtools/autoconf/autoconf/add_musl_config.patch
deleted file mode 100644
index a9094d2128..0000000000
--- a/meta/recipes-devtools/autoconf/autoconf/add_musl_config.patch
+++ /dev/null
@@ -1,26 +0,0 @@
1backport http://git.savannah.gnu.org/cgit/config.git/commit/config.sub?id=062587eaa891396c936555ae51f7e77eeb71a5fe
2
3Signed-off-by: Khem Raj <raj.khem@gmail.com>
4Upstream-Status: Backport
5Index: autoconf-2.69/build-aux/config.sub
6===================================================================
7--- autoconf-2.69.orig/build-aux/config.sub
8+++ autoconf-2.69/build-aux/config.sub
9@@ -123,7 +123,7 @@ esac
10 maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
11 case $maybe_os in
12 nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
13- linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
14+ linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
15 knetbsd*-gnu* | netbsd*-gnu* | \
16 kopensolaris*-gnu* | \
17 storm-chaos* | os2-emx* | rtmk-nova*)
18@@ -1360,7 +1360,7 @@ case $os in
19 | -chorusos* | -chorusrdb* | -cegcc* \
20 | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
21 | -mingw32* | -linux-gnu* | -linux-android* \
22- | -linux-newlib* | -linux-uclibc* \
23+ | -linux-newlib* | -linux-musl* | -linux-uclibc* \
24 | -uxpv* | -beos* | -mpeix* | -udk* \
25 | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
26 | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
diff --git a/meta/recipes-devtools/autoconf/autoconf/autoconf-replace-w-option-in-shebangs-with-modern-use-warnings.patch b/meta/recipes-devtools/autoconf/autoconf/autoconf-replace-w-option-in-shebangs-with-modern-use-warnings.patch
deleted file mode 100644
index ae0e3825f6..0000000000
--- a/meta/recipes-devtools/autoconf/autoconf/autoconf-replace-w-option-in-shebangs-with-modern-use-warnings.patch
+++ /dev/null
@@ -1,120 +0,0 @@
1From 236552ff5b9f1ebf666d8d0e9850007dcce03d26 Mon Sep 17 00:00:00 2001
2From: Serhii Popovych <spopovyc@cisco.com>
3Date: Wed, 10 Feb 2016 16:32:44 +0000
4Subject: [PATCH] perl: Replace -w option in shebangs with modern "use
5 warnings"
6
7In some builds we might provide ac_cv_path_PERL as /usr/bin/env perl
8to use newer version of the perl from users PATH rather than
9older from standard system path.
10
11However using /usr/bin/env perl -w from shebang line isn't
12possible because it translates to something like
13/usr/bin/env -w perl and env complains about illegal option.
14
15To address this we can remove -w option from perl shebang
16line and add "use warnings" statement.
17
18Upstream-Status: Pending
19Signed-off-by: Serhii Popovych <spopovyc@cisco.com>
20---
21 bin/autom4te.in | 3 ++-
22 bin/autoreconf.in | 3 ++-
23 bin/autoscan.in | 3 ++-
24 bin/autoupdate.in | 3 ++-
25 bin/ifnames.in | 3 ++-
26 5 files changed, 10 insertions(+), 5 deletions(-)
27
28diff --git a/bin/autom4te.in b/bin/autom4te.in
29index 11773c9..a8f5e41 100644
30--- a/bin/autom4te.in
31+++ b/bin/autom4te.in
32@@ -1,4 +1,4 @@
33-#! @PERL@ -w
34+#! @PERL@
35 # -*- perl -*-
36 # @configure_input@
37
38@@ -42,6 +42,7 @@ use Autom4te::General;
39 use Autom4te::XFile;
40 use File::Basename;
41 use strict;
42+use warnings;
43
44 # Data directory.
45 my $pkgdatadir = $ENV{'AC_MACRODIR'} || '@pkgdatadir@';
46diff --git a/bin/autoreconf.in b/bin/autoreconf.in
47index e245db4..1a318cb 100644
48--- a/bin/autoreconf.in
49+++ b/bin/autoreconf.in
50@@ -1,4 +1,4 @@
51-#! @PERL@ -w
52+#! @PERL@
53 # -*- perl -*-
54 # @configure_input@
55
56@@ -45,6 +45,7 @@ use Autom4te::XFile;
57 # Do not use Cwd::chdir, since it might hang.
58 use Cwd 'cwd';
59 use strict;
60+use warnings;
61
62 ## ----------- ##
63 ## Variables. ##
64diff --git a/bin/autoscan.in b/bin/autoscan.in
65index a67c48d..b931249 100644
66--- a/bin/autoscan.in
67+++ b/bin/autoscan.in
68@@ -1,4 +1,4 @@
69-#! @PERL@ -w
70+#! @PERL@
71 # -*- perl -*-
72 # @configure_input@
73
74@@ -43,6 +43,7 @@ use Autom4te::XFile;
75 use File::Basename;
76 use File::Find;
77 use strict;
78+use warnings;
79
80 use vars qw(@cfiles @makefiles @shfiles @subdirs %printed);
81
82diff --git a/bin/autoupdate.in b/bin/autoupdate.in
83index 9737d49..92cb147 100644
84--- a/bin/autoupdate.in
85+++ b/bin/autoupdate.in
86@@ -1,4 +1,4 @@
87-#! @PERL@ -w
88+#! @PERL@
89 # -*- perl -*-
90 # @configure_input@
91
92@@ -44,6 +44,7 @@ use Autom4te::General;
93 use Autom4te::XFile;
94 use File::Basename;
95 use strict;
96+use warnings;
97
98 # Lib files.
99 my $autom4te = $ENV{'AUTOM4TE'} || '@bindir@/@autom4te-name@';
100diff --git a/bin/ifnames.in b/bin/ifnames.in
101index ba2cd05..74b0278 100644
102--- a/bin/ifnames.in
103+++ b/bin/ifnames.in
104@@ -1,4 +1,4 @@
105-#! @PERL@ -w
106+#! @PERL@
107 # -*- perl -*-
108 # @configure_input@
109
110@@ -44,6 +44,7 @@ BEGIN
111 use Autom4te::General;
112 use Autom4te::XFile;
113 use Autom4te::FileUtils;
114+use warnings;
115
116 # $HELP
117 # -----
118--
1192.3.0
120
diff --git a/meta/recipes-devtools/autoconf/autoconf/autoreconf-exclude.patch b/meta/recipes-devtools/autoconf/autoconf/autoreconf-exclude.patch
index d1bd3a2a31..374b939404 100644
--- a/meta/recipes-devtools/autoconf/autoconf/autoreconf-exclude.patch
+++ b/meta/recipes-devtools/autoconf/autoconf/autoreconf-exclude.patch
@@ -1,18 +1,25 @@
1Upstream-Status: Pending 1From 0071d28e304745a16871561f23117fdb00dd2559 Mon Sep 17 00:00:00 2001
2From: Ross Burton <ross.burton@intel.com>
3Date: Thu, 12 Mar 2020 17:25:23 +0000
4Subject: [PATCH 4/7] autoreconf-exclude.patch
2 5
3Index: autoconf-2.63/bin/autoreconf.in 6---
4=================================================================== 7 bin/autoreconf.in | 26 ++++++++++++++++++++++++++
5--- autoconf-2.63.orig/bin/autoreconf.in 2008-12-31 17:39:01.000000000 +0000 8 1 file changed, 26 insertions(+)
6+++ autoconf-2.63/bin/autoreconf.in 2008-12-31 17:43:38.000000000 +0000 9
7@@ -76,6 +76,7 @@ 10diff --git a/bin/autoreconf.in b/bin/autoreconf.in
8 -i, --install copy missing auxiliary files 11index bb9f316d..7da3005b 100644
12--- a/bin/autoreconf.in
13+++ b/bin/autoreconf.in
14@@ -82,6 +82,7 @@ Operation modes:
15 -i, --install copy missing standard auxiliary files
9 --no-recursive don't rebuild sub-packages 16 --no-recursive don't rebuild sub-packages
10 -s, --symlink with -i, install symbolic links instead of copies 17 -s, --symlink with -i, install symbolic links instead of copies
11+ -x, --exclude=STEPS steps we should not run 18+ -x, --exclude=STEPS steps we should not run
12 -m, --make when applicable, re-run ./configure && make 19 -m, --make when applicable, re-run ./configure && make
13 -W, --warnings=CATEGORY report the warnings falling in CATEGORY [syntax] 20 -W, --warnings=CATEGORY report the warnings falling in CATEGORY [syntax]
14 21
15@@ -136,6 +137,13 @@ 22@@ -141,6 +142,10 @@ my $run_make = 0;
16 # Recurse into subpackages 23 # Recurse into subpackages
17 my $recursive = 1; 24 my $recursive = 1;
18 25
@@ -20,13 +27,10 @@ Index: autoconf-2.63/bin/autoreconf.in
20+my @exclude; 27+my @exclude;
21+my @ex; 28+my @ex;
22+ 29+
23+my $uses_gettext;
24+my $configure_ac;
25+
26 ## ---------- ## 30 ## ---------- ##
27 ## Routines. ## 31 ## Routines. ##
28 ## ---------- ## 32 ## ---------- ##
29@@ -153,6 +161,7 @@ 33@@ -161,6 +166,7 @@ sub parse_args ()
30 'B|prepend-include=s' => \@prepend_include, 34 'B|prepend-include=s' => \@prepend_include,
31 'i|install' => \$install, 35 'i|install' => \$install,
32 's|symlink' => \$symlink, 36 's|symlink' => \$symlink,
@@ -34,106 +38,85 @@ Index: autoconf-2.63/bin/autoreconf.in
34 'm|make' => \$run_make, 38 'm|make' => \$run_make,
35 'recursive!' => \$recursive); 39 'recursive!' => \$recursive);
36 40
37@@ -162,6 +171,8 @@ 41@@ -170,6 +176,8 @@ sub parse_args ()
38 parse_WARNINGS; 42 parse_WARNINGS;
39 parse_warnings '--warnings', @warning; 43 parse_warnings @warning;
40 44
41+ @exclude = map { split /,/ } @exclude; 45+ @exclude = map { split /,/ } @exclude;
42+ 46+
43 # Even if the user specified a configure.ac, trim to get the 47 # Even if the user specified a configure.ac, trim to get the
44 # directory, and look for configure.ac again. Because (i) the code 48 # directory, and look for configure.ac again. Because (i) the code
45 # is simpler, and (ii) we are still able to diagnose simultaneous 49 # is simpler, and (ii) we are still able to diagnose simultaneous
46@@ -255,6 +266,11 @@ 50@@ -493,8 +501,11 @@ sub autoreconf_current_directory ($)
47 {
48 my ($aclocal, $flags) = @_;
49
50+ @ex = grep (/^aclocal$/, @exclude);
51+ if ($#ex != -1) {
52+ return;
53+ }
54+
55 # aclocal 1.8+ does all this for free. It can be recognized by its
56 # --force support.
57 if ($aclocal_supports_force)
58@@ -368,7 +384,10 @@
59 } 51 }
60 else 52 else
61 { 53 {
62- xsystem_hint ("autopoint is needed because this package uses Gettext", "$autopoint");
63+ @ex = grep (/^autopoint$/, @exclude); 54+ @ex = grep (/^autopoint$/, @exclude);
64+ if ($#ex == -1) { 55+ if ($#ex == -1) {
65+ xsystem_hint ("autopoint is needed because this package uses Gettext", "$autopoint"); 56 xsystem_hint ("autopoint is needed because this package uses Gettext",
57 $autopoint);
66+ } 58+ }
67 } 59 }
68 60
69 61
70@@ -532,16 +551,17 @@ 62@@ -687,9 +698,12 @@ sub autoreconf_current_directory ($)
71 { 63 {
72 $libtoolize .= " --ltdl"; 64 $libtoolize .= " --ltdl";
73 } 65 }
74- xsystem_hint ("libtoolize is needed because this package uses Libtool", $libtoolize);
75- $rerun_aclocal = 1;
76+ @ex = grep (/^libtoolize$/, @exclude); 66+ @ex = grep (/^libtoolize$/, @exclude);
77+ if ($#ex == -1) { 67+ if ($#ex == -1) {
78+ xsystem_hint ("libtoolize is needed because this package uses Libtool", $libtoolize); 68 xsystem_hint ("libtoolize is needed because this package uses Libtool",
79+ $rerun_aclocal = 1; 69 $libtoolize);
70 $rerun_aclocal = 1;
80+ } 71+ }
81 } 72 }
82 else 73 else
83 { 74 {
84 verb "$configure_ac: not running libtoolize: --install not given"; 75@@ -726,8 +740,11 @@ sub autoreconf_current_directory ($)
85 } 76 }
86 77 elsif ($install)
87- 78 {
88- 79+ @ex = grep (/^gtkdocize$/, @exclude);
89 # ------------------- # 80+ if ($#ex == -1) {
90 # Rerunning aclocal. # 81 xsystem_hint ("gtkdocize is needed because this package uses Gtkdoc",
91 # ------------------- # 82 $gtkdocize);
92@@ -572,7 +592,10 @@ 83+ }
84 }
85 else
86 {
87@@ -765,7 +782,10 @@ sub autoreconf_current_directory ($)
93 # latter runs the former, and (ii) autoconf is stricter than 88 # latter runs the former, and (ii) autoconf is stricter than
94 # autoheader. So all in all, autoconf should give better error 89 # autoheader. So all in all, autoconf should give better error
95 # messages. 90 # messages.
96- xsystem ($autoconf);
97+ @ex = grep (/^autoconf$/, @exclude); 91+ @ex = grep (/^autoconf$/, @exclude);
98+ if ($#ex == -1) { 92+ if ($#ex == -1) {
99+ xsystem ("$autoconf"); 93 xsystem ($autoconf);
100+ } 94+ }
101 95
102 96
103 # -------------------- # 97 # -------------------- #
104@@ -593,7 +616,10 @@ 98@@ -786,7 +806,10 @@ sub autoreconf_current_directory ($)
105 } 99 }
106 else 100 else
107 { 101 {
108- xsystem ($autoheader);
109+ @ex = grep (/^autoheader$/, @exclude); 102+ @ex = grep (/^autoheader$/, @exclude);
110+ if ($#ex == -1) { 103+ if ($#ex == -1) {
111+ xsystem ("$autoheader"); 104 xsystem ($autoheader);
112+ } 105+ }
113 } 106 }
114 107
115 108
116@@ -610,7 +636,10 @@ 109@@ -803,7 +826,10 @@ sub autoreconf_current_directory ($)
117 # We should always run automake, and let it decide whether it shall 110 # We should always run automake, and let it decide whether it shall
118 # update the file or not. In fact, the effect of `$force' is already 111 # update the file or not. In fact, the effect of '$force' is already
119 # included in `$automake' via `--no-force'. 112 # included in '$automake' via '--no-force'.
120- xsystem ($automake);
121+ @ex = grep (/^automake$/, @exclude); 113+ @ex = grep (/^automake$/, @exclude);
122+ if ($#ex == -1) { 114+ if ($#ex == -1) {
123+ xsystem ("$automake"); 115 xsystem ($automake);
124+ } 116+ }
125 } 117 }
126 118
127 119 # ---------------------------------------------------- #
128@@ -634,7 +663,10 @@ 120--
129 } 1212.25.1
130 else 122
131 {
132- xsystem ("$make");
133+ @ex = grep (/^make$/, @exclude);
134+ if ($#ex == -1) {
135+ xsystem ("$make");
136+ }
137 }
138 }
139 }
diff --git a/meta/recipes-devtools/autoconf/autoconf/autoreconf-gnuconfigize.patch b/meta/recipes-devtools/autoconf/autoconf/autoreconf-gnuconfigize.patch
deleted file mode 100644
index 5ff18c2350..0000000000
--- a/meta/recipes-devtools/autoconf/autoconf/autoreconf-gnuconfigize.patch
+++ /dev/null
@@ -1,38 +0,0 @@
1Upstream-Status: Pending
2
3#
4# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher
5#
6
7Index: autoconf-2.63/bin/autoreconf.in
8===================================================================
9--- autoconf-2.63.orig/bin/autoreconf.in 2008-12-31 17:43:55.000000000 +0000
10+++ autoconf-2.63/bin/autoreconf.in 2008-12-31 17:46:16.000000000 +0000
11@@ -58,7 +58,7 @@
12 $help = "Usage: $0 [OPTION]... [DIRECTORY]...
13
14 Run `autoconf' (and `autoheader', `aclocal', `automake', `autopoint'
15-(formerly `gettextize'), and `libtoolize' where appropriate)
16+(formerly `gettextize'), `libtoolize', and `gnu-configize' where appropriate)
17 repeatedly to remake the GNU Build System files in specified
18 DIRECTORIES and their subdirectories (defaulting to `.').
19
20@@ -115,6 +115,7 @@
21 my $libtoolize = $ENV{'LIBTOOLIZE'} || 'libtoolize';
22 my $autopoint = $ENV{'AUTOPOINT'} || 'autopoint';
23 my $make = $ENV{'MAKE'} || 'make';
24+my $gnuconfigize = $ENV{'GNUCONFIGIZE'} || 'gnu-configize';
25
26 # --install -- as --add-missing in other tools.
27 my $install = 0;
28@@ -644,6 +645,10 @@
29 }
30 }
31
32+ @ex = grep (/^gnu-configize$/, @exclude);
33+ if ($#ex == -1) {
34+ xsystem ("$gnuconfigize");
35+ }
36
37 # -------------- #
38 # Running make. #
diff --git a/meta/recipes-devtools/autoconf/autoconf/autotest-automake-result-format.patch b/meta/recipes-devtools/autoconf/autoconf/autotest-automake-result-format.patch
index b5e8174efd..de048d23d7 100644
--- a/meta/recipes-devtools/autoconf/autoconf/autotest-automake-result-format.patch
+++ b/meta/recipes-devtools/autoconf/autoconf/autotest-automake-result-format.patch
@@ -1,22 +1,14 @@
1From a7e722f974e2529d3e564d8d94c86cc8bdbc40e7 Mon Sep 17 00:00:00 2001 1From 8c0f24404bebffdaf3132d81e2b9560d34ff1677 Mon Sep 17 00:00:00 2001
2From: Radu Patriu <radu.patriu@enea.com> 2From: Ross Burton <ross.burton@intel.com>
3Date: Mon, 24 Mar 2014 16:33:19 +0200 3Date: Thu, 12 Mar 2020 17:25:45 +0000
4Subject: [PATCH] autotest: new testsuite option to enable automake test 4Subject: [PATCH 6/7] autotest-automake-result-format.patch
5 result format
6 5
7* lib/autotest/general.m4: added "--am-fmt | -A" command line
8parameter for testsuite script to enable "RESULT: testname" output;
9will be used by yocto ptest packages.
10
11Upstream-Status: Pending
12
13Signed-off-by: Radu Patriu <radu.patriu@enea.com>
14--- 6---
15 lib/autotest/general.m4 | 39 +++++++++++++++++++++++++++++---------- 7 lib/autotest/general.m4 | 39 +++++++++++++++++++++++++++++----------
16 1 file changed, 29 insertions(+), 10 deletions(-) 8 1 file changed, 29 insertions(+), 10 deletions(-)
17 9
18diff --git a/lib/autotest/general.m4 b/lib/autotest/general.m4 10diff --git a/lib/autotest/general.m4 b/lib/autotest/general.m4
19index 60c0352..c1f5a9b 100644 11index 0c0e3c5b..17590e96 100644
20--- a/lib/autotest/general.m4 12--- a/lib/autotest/general.m4
21+++ b/lib/autotest/general.m4 13+++ b/lib/autotest/general.m4
22@@ -412,6 +412,9 @@ at_recheck= 14@@ -412,6 +412,9 @@ at_recheck=
@@ -29,7 +21,7 @@ index 60c0352..c1f5a9b 100644
29 # The directory we run the suite in. Default to . if no -C option. 21 # The directory we run the suite in. Default to . if no -C option.
30 at_dir=`pwd` 22 at_dir=`pwd`
31 # An absolute reference to this testsuite script. 23 # An absolute reference to this testsuite script.
32@@ -530,6 +533,10 @@ do 24@@ -525,6 +528,10 @@ do
33 at_check_filter_trace=at_fn_filter_trace 25 at_check_filter_trace=at_fn_filter_trace
34 ;; 26 ;;
35 27
@@ -40,7 +32,7 @@ index 60c0352..c1f5a9b 100644
40 [[0-9] | [0-9][0-9] | [0-9][0-9][0-9] | [0-9][0-9][0-9][0-9]]) 32 [[0-9] | [0-9][0-9] | [0-9][0-9][0-9] | [0-9][0-9][0-9][0-9]])
41 at_fn_validate_ranges at_option 33 at_fn_validate_ranges at_option
42 AS_VAR_APPEND([at_groups], ["$at_option$as_nl"]) 34 AS_VAR_APPEND([at_groups], ["$at_option$as_nl"])
43@@ -718,10 +725,10 @@ m4_divert_push([HELP_MODES])dnl 35@@ -713,10 +720,10 @@ m4_divert_push([HELP_MODES])dnl
44 cat <<_ATEOF || at_write_fail=1 36 cat <<_ATEOF || at_write_fail=1
45 37
46 Operation modes: 38 Operation modes:
@@ -55,7 +47,7 @@ index 60c0352..c1f5a9b 100644
55 _ATEOF 47 _ATEOF
56 m4_divert_pop([HELP_MODES])dnl 48 m4_divert_pop([HELP_MODES])dnl
57 m4_wrap([m4_divert_push([HELP_TUNING_BEGIN])dnl 49 m4_wrap([m4_divert_push([HELP_TUNING_BEGIN])dnl
58@@ -747,6 +754,7 @@ Execution tuning: 50@@ -742,6 +749,7 @@ Execution tuning:
59 -d, --debug inhibit clean up and top-level logging 51 -d, --debug inhibit clean up and top-level logging
60 [ default for debugging scripts] 52 [ default for debugging scripts]
61 -x, --trace enable tests shell tracing 53 -x, --trace enable tests shell tracing
@@ -63,7 +55,7 @@ index 60c0352..c1f5a9b 100644
63 _ATEOF 55 _ATEOF
64 m4_divert_pop([HELP_TUNING_BEGIN])])dnl 56 m4_divert_pop([HELP_TUNING_BEGIN])])dnl
65 m4_divert_push([HELP_END])dnl 57 m4_divert_push([HELP_END])dnl
66@@ -1162,7 +1170,9 @@ at_fn_group_banner () 58@@ -1129,7 +1137,9 @@ at_fn_group_banner ()
67 [*]) at_desc_line="$[1]: " ;; 59 [*]) at_desc_line="$[1]: " ;;
68 esac 60 esac
69 AS_VAR_APPEND([at_desc_line], ["$[3]$[4]"]) 61 AS_VAR_APPEND([at_desc_line], ["$[3]$[4]"])
@@ -74,7 +66,7 @@ index 60c0352..c1f5a9b 100644
74 echo "# -*- compilation -*-" >> "$at_group_log" 66 echo "# -*- compilation -*-" >> "$at_group_log"
75 } 67 }
76 68
77@@ -1188,42 +1198,51 @@ _ATEOF 69@@ -1155,42 +1165,51 @@ _ATEOF
78 case $at_xfail:$at_status in 70 case $at_xfail:$at_status in
79 yes:0) 71 yes:0)
80 at_msg="UNEXPECTED PASS" 72 at_msg="UNEXPECTED PASS"
@@ -132,5 +124,5 @@ index 60c0352..c1f5a9b 100644
132 at_log_msg="$at_group. $at_desc ($at_setup_line): $at_msg" 124 at_log_msg="$at_group. $at_desc ($at_setup_line): $at_msg"
133 case $at_status in 125 case $at_status in
134-- 126--
1351.7.9.5 1272.25.1
136 128
diff --git a/meta/recipes-devtools/autoconf/autoconf/check-automake-cross-warning.patch b/meta/recipes-devtools/autoconf/autoconf/check-automake-cross-warning.patch
deleted file mode 100644
index 73394d7d52..0000000000
--- a/meta/recipes-devtools/autoconf/autoconf/check-automake-cross-warning.patch
+++ /dev/null
@@ -1,34 +0,0 @@
1Use --warning=cross only if supported by automake
2
3Upstream-Status: Inappropriate [configuration]
4
5Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
6
7--- a/bin/autoreconf.in
8+++ b/bin/autoreconf.in
9@@ -127,6 +127,8 @@ my $aclocal_supports_warnings = 0;
10 my $automake_supports_force_missing = 0;
11 # Does automake support -Wfoo?
12 my $automake_supports_warnings = 0;
13+# Does automake support --warning=cross
14+my $automake_supports_cross_warning = 0;
15
16 my @prepend_include;
17 my @include;
18@@ -191,6 +193,7 @@ sub parse_args ()
19 $aclocal_supports_warnings = $aclocal_help =~ /--warnings/;
20 $automake_supports_force_missing = $automake_help =~ /--force-missing/;
21 $automake_supports_warnings = $automake_help =~ /--warnings/;
22+ $automake_supports_cross_warning = $automake_help =~ /cross/;
23
24 # Dispatch autoreconf's option to the tools.
25 # --include;
26@@ -244,6 +247,8 @@ sub parse_args ()
27 $libtoolize .= ' --debug';
28 }
29 # --warnings;
30+ @warning = grep { $_ ne "cross" } @warning
31+ if ! $automake_supports_cross_warning;
32 if (@warning)
33 {
34 my $warn = ' --warnings=' . join (',', @warning);
diff --git a/meta/recipes-devtools/autoconf/autoconf/config_site.patch b/meta/recipes-devtools/autoconf/autoconf/config_site.patch
deleted file mode 100644
index 9f044404dd..0000000000
--- a/meta/recipes-devtools/autoconf/autoconf/config_site.patch
+++ /dev/null
@@ -1,40 +0,0 @@
1Upstream-Status: Pending
2
3Poky provides a list of site files in CONFIG_SITE whereas autoconf
4only expects one file. This patch changes autoconf to accept a list of
5them.
6
7RP 1/2/10
8
9Updated for 2.68 version: the CONFIG_SITE var was not getting used at all
10fixed the 2.68 code
11Nitin A Kamble <nitin.a.kamble@intel.com> 2011/05/27
12
13Index: autoconf-2.68/lib/autoconf/general.m4
14===================================================================
15--- autoconf-2.68.orig/lib/autoconf/general.m4
16+++ autoconf-2.68/lib/autoconf/general.m4
17@@ -1878,7 +1878,6 @@ AU_DEFUN([AC_VALIDATE_CACHED_SYSTEM_TUPL
18 m4_define([AC_SITE_LOAD],
19 [# Prefer an explicitly selected file to automatically selected ones.
20 ac_site_file1=NONE
21-ac_site_file2=NONE
22 if test -n "$CONFIG_SITE"; then
23 # We do not want a PATH search for config.site.
24 case $CONFIG_SITE in @%:@((
25@@ -1886,14 +1885,8 @@ if test -n "$CONFIG_SITE"; then
26 */*) ac_site_file1=$CONFIG_SITE;;
27 *) ac_site_file1=./$CONFIG_SITE;;
28 esac
29-elif test "x$prefix" != xNONE; then
30- ac_site_file1=$prefix/share/config.site
31- ac_site_file2=$prefix/etc/config.site
32-else
33- ac_site_file1=$ac_default_prefix/share/config.site
34- ac_site_file2=$ac_default_prefix/etc/config.site
35 fi
36-for ac_site_file in "$ac_site_file1" "$ac_site_file2"
37+for ac_site_file in $ac_site_file1
38 do
39 test "x$ac_site_file" = xNONE && continue
40 if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then
diff --git a/meta/recipes-devtools/autoconf/autoconf/fix_path_xtra.patch b/meta/recipes-devtools/autoconf/autoconf/fix_path_xtra.patch
deleted file mode 100644
index 65df88f8f9..0000000000
--- a/meta/recipes-devtools/autoconf/autoconf/fix_path_xtra.patch
+++ /dev/null
@@ -1,120 +0,0 @@
1Upstream-Status: Pending
2
3We don't build xmkmf so any values returned from it are going to be wrong.
4Using any paths in /usr/ for x headers/libs is a bad idea when cross compiling.
5This patch removes them to stop any confusion.
6
7RP - 20071115
8
9Index: autoconf-2.68/lib/autoconf/libs.m4
10===================================================================
11--- autoconf-2.68.orig/lib/autoconf/libs.m4
12+++ autoconf-2.68/lib/autoconf/libs.m4
13@@ -159,53 +159,6 @@ m4_popdef([AC_Lib_Name])dnl
14 # --------------------- #
15
16
17-# _AC_PATH_X_XMKMF
18-# ----------------
19-# Internal subroutine of _AC_PATH_X.
20-# Set ac_x_includes and/or ac_x_libraries.
21-m4_define([_AC_PATH_X_XMKMF],
22-[AC_ARG_VAR(XMKMF, [Path to xmkmf, Makefile generator for X Window System])dnl
23-rm -f -r conftest.dir
24-if mkdir conftest.dir; then
25- cd conftest.dir
26- cat >Imakefile <<'_ACEOF'
27-incroot:
28- @echo incroot='${INCROOT}'
29-usrlibdir:
30- @echo usrlibdir='${USRLIBDIR}'
31-libdir:
32- @echo libdir='${LIBDIR}'
33-_ACEOF
34- if (export CC; ${XMKMF-xmkmf}) >/dev/null 2>/dev/null && test -f Makefile; then
35- # GNU make sometimes prints "make[1]: Entering ...", which would confuse us.
36- for ac_var in incroot usrlibdir libdir; do
37- eval "ac_im_$ac_var=\`\${MAKE-make} $ac_var 2>/dev/null | sed -n 's/^$ac_var=//p'\`"
38- done
39- # Open Windows xmkmf reportedly sets LIBDIR instead of USRLIBDIR.
40- for ac_extension in a so sl dylib la dll; do
41- if test ! -f "$ac_im_usrlibdir/libX11.$ac_extension" &&
42- test -f "$ac_im_libdir/libX11.$ac_extension"; then
43- ac_im_usrlibdir=$ac_im_libdir; break
44- fi
45- done
46- # Screen out bogus values from the imake configuration. They are
47- # bogus both because they are the default anyway, and because
48- # using them would break gcc on systems where it needs fixed includes.
49- case $ac_im_incroot in
50- /usr/include) ac_x_includes= ;;
51- *) test -f "$ac_im_incroot/X11/Xos.h" && ac_x_includes=$ac_im_incroot;;
52- esac
53- case $ac_im_usrlibdir in
54- /usr/lib | /usr/lib64 | /lib | /lib64) ;;
55- *) test -d "$ac_im_usrlibdir" && ac_x_libraries=$ac_im_usrlibdir ;;
56- esac
57- fi
58- cd ..
59- rm -f -r conftest.dir
60-fi
61-])# _AC_PATH_X_XMKMF
62-
63-
64 # _AC_PATH_X_DIRECT
65 # -----------------
66 # Internal subroutine of _AC_PATH_X.
67@@ -213,44 +166,7 @@ fi
68 m4_define([_AC_PATH_X_DIRECT],
69 [# Standard set of common directories for X headers.
70 # Check X11 before X11Rn because it is often a symlink to the current release.
71-ac_x_header_dirs='
72-/usr/X11/include
73-/usr/X11R7/include
74-/usr/X11R6/include
75-/usr/X11R5/include
76-/usr/X11R4/include
77-
78-/usr/include/X11
79-/usr/include/X11R7
80-/usr/include/X11R6
81-/usr/include/X11R5
82-/usr/include/X11R4
83-
84-/usr/local/X11/include
85-/usr/local/X11R7/include
86-/usr/local/X11R6/include
87-/usr/local/X11R5/include
88-/usr/local/X11R4/include
89-
90-/usr/local/include/X11
91-/usr/local/include/X11R7
92-/usr/local/include/X11R6
93-/usr/local/include/X11R5
94-/usr/local/include/X11R4
95-
96-/usr/X386/include
97-/usr/x386/include
98-/usr/XFree86/include/X11
99-
100-/usr/include
101-/usr/local/include
102-/usr/unsupported/include
103-/usr/athena/include
104-/usr/local/x11r5/include
105-/usr/lpp/Xamples/include
106-
107-/usr/openwin/include
108-/usr/openwin/share/include'
109+ac_x_header_dirs=''
110
111 if test "$ac_x_includes" = no; then
112 # Guess where to find include files, by looking for Xlib.h.
113@@ -299,7 +215,6 @@ AC_DEFUN([_AC_PATH_X],
114 [AC_CACHE_VAL(ac_cv_have_x,
115 [# One or both of the vars are not set, and there is no cached value.
116 ac_x_includes=no ac_x_libraries=no
117-_AC_PATH_X_XMKMF
118 _AC_PATH_X_DIRECT
119 case $ac_x_includes,$ac_x_libraries in #(
120 no,* | *,no | *\'*)
diff --git a/meta/recipes-devtools/autoconf/autoconf/man-host-perl.patch b/meta/recipes-devtools/autoconf/autoconf/man-host-perl.patch
new file mode 100644
index 0000000000..c6c135625d
--- /dev/null
+++ b/meta/recipes-devtools/autoconf/autoconf/man-host-perl.patch
@@ -0,0 +1,24 @@
1Don't use the target perl when regenerating the man pages.
2
3Upstream-Status: Inappropriate
4Signed-off-by: Ross Burton <ross.burton@arm.com>
5
6diff --git a/man/local.mk b/man/local.mk
7index e69858b1..78c68ab5 100644
8--- a/man/local.mk
9+++ b/man/local.mk
10@@ -67,13 +67,12 @@ SUFFIXES += .w .1
11 @echo "Updating man page $@"
12 $(MKDIR_P) $(@D)
13 PATH="$(top_srcdir)/man$(PATH_SEPARATOR)$$PATH"; \
14- PERL="$(PERL)"; \
15 PACKAGE_NAME="$(PACKAGE_NAME)"; \
16 VERSION="$(VERSION)"; \
17 RELEASE_YEAR="$(RELEASE_YEAR)"; \
18 top_srcdir="$(top_srcdir)"; \
19 channeldefs_pm="$(channeldefs_pm)"; \
20- export PATH PERL PACKAGE_NAME VERSION RELEASE_YEAR; \
21+ export PATH PACKAGE_NAME VERSION RELEASE_YEAR; \
22 export top_srcdir channeldefs_pm; \
23 $(HELP2MAN) \
24 --include=$(srcdir)/$*.x \
diff --git a/meta/recipes-devtools/autoconf/autoconf/no-man.patch b/meta/recipes-devtools/autoconf/autoconf/no-man.patch
new file mode 100644
index 0000000000..2c44375f43
--- /dev/null
+++ b/meta/recipes-devtools/autoconf/autoconf/no-man.patch
@@ -0,0 +1,21 @@
1For native builds we don't care about the documentation, and this would
2otherwise pull in a dependency on help2man.
3
4Upstream-Status: Inappropriate
5Signed-off-by: Ross Burton <ross.burton@arm.com>
6
7diff --git a/Makefile.in b/Makefile.in
8index 146e8e3..a1827c1 100644
9--- a/Makefile.in
10+++ b/Makefile.in
11@@ -763,10 +762,0 @@ dist_buildaux_SCRIPTS = \
12-dist_man_MANS = \
13- man/autoconf.1 \
14- man/autoheader.1 \
15- man/autom4te.1 \
16- man/autoreconf.1 \
17- man/autoscan.1 \
18- man/autoupdate.1 \
19- man/ifnames.1
20-
21-
diff --git a/meta/recipes-devtools/autoconf/autoconf/performance.patch b/meta/recipes-devtools/autoconf/autoconf/performance.patch
deleted file mode 100644
index 1842fe92b7..0000000000
--- a/meta/recipes-devtools/autoconf/autoconf/performance.patch
+++ /dev/null
@@ -1,60 +0,0 @@
1The check for solaris 'print' causes significant problems on a linux machine
2with dash as /bin/sh since it triggers the execution of "print" which on some
3linux systems is a perl script which is part of mailcap. Worse, this perl
4script calls "which file" and if successful ignores the path file was found
5in and just runs "file" without a path. Each exection causes PATH to be searched.
6
7Simply assuming the shell's printf function works cuts out all the fork overhead
8and when parallel tasks are running, this overhead appears to be significant.
9
10RP
112015/11/28
12Upstream-Status: Inappropriate
13
14Index: autoconf-2.69/lib/m4sugar/m4sh.m4
15===================================================================
16--- autoconf-2.69.orig/lib/m4sugar/m4sh.m4
17+++ autoconf-2.69/lib/m4sugar/m4sh.m4
18@@ -1045,40 +1045,8 @@ m4_defun([_AS_ECHO_PREPARE],
19 [[as_nl='
20 '
21 export as_nl
22-# Printing a long string crashes Solaris 7 /usr/bin/printf.
23-as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
24-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
25-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
26-# Prefer a ksh shell builtin over an external printf program on Solaris,
27-# but without wasting forks for bash or zsh.
28-if test -z "$BASH_VERSION$ZSH_VERSION" \
29- && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
30- as_echo='print -r --'
31- as_echo_n='print -rn --'
32-elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
33- as_echo='printf %s\n'
34- as_echo_n='printf %s'
35-else
36- if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
37- as_echo_body='eval /usr/ucb/echo -n "$][1$as_nl"'
38- as_echo_n='/usr/ucb/echo -n'
39- else
40- as_echo_body='eval expr "X$][1" : "X\\(.*\\)"'
41- as_echo_n_body='eval
42- arg=$][1;
43- case $arg in @%:@(
44- *"$as_nl"*)
45- expr "X$arg" : "X\\(.*\\)$as_nl";
46- arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
47- esac;
48- expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
49- '
50- export as_echo_n_body
51- as_echo_n='sh -c $as_echo_n_body as_echo'
52- fi
53- export as_echo_body
54- as_echo='sh -c $as_echo_body as_echo'
55-fi
56+as_echo='printf %s\n'
57+as_echo_n='printf %s'
58 ]])# _AS_ECHO_PREPARE
59
60
diff --git a/meta/recipes-devtools/autoconf/autoconf/preferbash.patch b/meta/recipes-devtools/autoconf/autoconf/preferbash.patch
index fa76ee9bdd..3979e83f70 100644
--- a/meta/recipes-devtools/autoconf/autoconf/preferbash.patch
+++ b/meta/recipes-devtools/autoconf/autoconf/preferbash.patch
@@ -1,25 +1,36 @@
1This value is used to determine CONFIG_SHELL and SHELL which may get exported into 1From 0aac3047cd7681d610b22d79501c297fa3433148 Mon Sep 17 00:00:00 2001
2scripts shared via sstate onto other systems. 2From: Ross Burton <ross.burton@intel.com>
3Date: Thu, 12 Mar 2020 17:25:41 +0000
4Subject: [PATCH 2/7] m4sh: prefer bash over sh
3 5
4Some systems have /bin/sh -> dash and others /bin/sh -> bash. Bash is preferred 6_AS_DETECT_BETTER_SHELL looks for a good shell to use, and tries to look for
5but sometimes we can sometimes end up exporting /bin/sh yet use bashisms. 7'sh' before 'bash'. Whilst for many systems sh is a symlink to bash,
8there are many where sh is a symlink to a more minimal sh implementation.
6 9
7This patch puts bash first in the search results which avoids the bash/dash confusion. 10For example, Debian by default has /bin/sh -> /bin/dash: dash is a faster
11shell to start (which makes a notable difference to boot speed) but is not
12as fast as bash at executing long scripts (and configure scripts are not
13known for their conciseness).
8 14
9RP 2012/9/23 15Change the search order to bash then sh, so that a known-good shell (bash)
16is used if available over something which is merely POSIX compliant.
17---
18 lib/m4sugar/m4sh.m4 | 2 +-
19 1 file changed, 1 insertion(+), 1 deletion(-)
10 20
11Upstream-Status: Inappropriate [OE specific configuration] 21diff --git a/lib/m4sugar/m4sh.m4 b/lib/m4sugar/m4sh.m4
12 22index 9d543952..84ef84a9 100644
13Index: autoconf-2.69/lib/m4sugar/m4sh.m4 23--- a/lib/m4sugar/m4sh.m4
14=================================================================== 24+++ b/lib/m4sugar/m4sh.m4
15--- autoconf-2.69.orig/lib/m4sugar/m4sh.m4 2012-03-07 17:35:26.000000000 +0000 25@@ -230,7 +230,7 @@ dnl Remove any tests from suggested that are also required
16+++ autoconf-2.69/lib/m4sugar/m4sh.m4 2013-09-23 16:12:38.853597515 +0000
17@@ -229,7 +229,7 @@
18 [_AS_PATH_WALK([/bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH], 26 [_AS_PATH_WALK([/bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH],
19 [case $as_dir in @%:@( 27 [case $as_dir in @%:@(
20 /*) 28 /*)
21- for as_base in sh bash ksh sh5; do 29- for as_base in sh bash ksh sh5; do
22+ for as_base in bash sh ksh sh5; do 30+ for as_base in bash sh ksh sh5; do
23 # Try only shells that exist, to save several forks. 31 # Try only shells that exist, to save several forks.
24 as_shell=$as_dir/$as_base 32 as_shell=$as_dir$as_base
25 AS_IF([{ test -f "$as_shell" || test -f "$as_shell.exe"; } && 33 AS_IF([{ test -f "$as_shell" || test -f "$as_shell.exe"; } &&
34--
352.25.1
36
diff --git a/meta/recipes-devtools/autoconf/autoconf/program_prefix.patch b/meta/recipes-devtools/autoconf/autoconf/program_prefix.patch
index 978a401f0a..4ff535fc15 100644
--- a/meta/recipes-devtools/autoconf/autoconf/program_prefix.patch
+++ b/meta/recipes-devtools/autoconf/autoconf/program_prefix.patch
@@ -1,20 +1,26 @@
1Upstream-Status: Pending 1From f4f19a5c03e8ae3b9cc93d24b76694f4b7b2eb76 Mon Sep 17 00:00:00 2001
2From: Ross Burton <ross.burton@intel.com>
3Date: Thu, 12 Mar 2020 17:28:38 +0000
4Subject: [PATCH 3/7] program_prefix.patch
2 5
3# 6Signed-off-by: Ross Burton <ross.burton@intel.com>
4# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher 7---
5# 8 lib/autoconf/general.m4 | 2 +-
9 1 file changed, 1 insertion(+), 1 deletion(-)
6 10
7--- autoconf-2.57/lib/autoconf/general.m4~program_prefix 11diff --git a/lib/autoconf/general.m4 b/lib/autoconf/general.m4
8+++ autoconf-2.57/lib/autoconf/general.m4 12index 16f0d074..4c5e0b36 100644
9@@ -1676,8 +1676,9 @@ 13--- a/lib/autoconf/general.m4
14+++ b/lib/autoconf/general.m4
15@@ -2070,7 +2070,7 @@ _AC_CANONICAL_SPLIT([target])
16
10 # The aliases save the names the user supplied, while $host etc. 17 # The aliases save the names the user supplied, while $host etc.
11 # will get canonicalized. 18 # will get canonicalized.
12 test -n "$target_alias" && 19-test -n "$target_alias" &&
13- test "$program_prefix$program_suffix$program_transform_name" = \ 20+test -n "$target_alias" && test "$target_alias" != "$host_alias" &&
14- NONENONEs,x,x, && 21 test "$program_prefix$program_suffix$program_transform_name" = \
15+ test "$target_alias" != "$host_alias" && 22 NONENONEs,x,x, &&
16+ test "$program_prefix$program_suffix$program_transform_name" = \
17+ NONENONEs,x,x, &&
18 program_prefix=${target_alias}-[]dnl 23 program_prefix=${target_alias}-[]dnl
19 ])# AC_CANONICAL_TARGET 24--
20 252.25.1
26
diff --git a/meta/recipes-devtools/autoconf/autoconf/remove-usr-local-lib-from-m4.patch b/meta/recipes-devtools/autoconf/autoconf/remove-usr-local-lib-from-m4.patch
index 55d2e2fe7e..b842f14f4f 100644
--- a/meta/recipes-devtools/autoconf/autoconf/remove-usr-local-lib-from-m4.patch
+++ b/meta/recipes-devtools/autoconf/autoconf/remove-usr-local-lib-from-m4.patch
@@ -1,17 +1,18 @@
1We have problem using hardcoded directories like /usr/local here 1From a08643ac3fef884900d6cfa161f0acec3ef104d1 Mon Sep 17 00:00:00 2001
2which will be checked for cross builds. This is a special case which 2From: Ross Burton <ross.burton@intel.com>
3is valid for AIX only. We do not have AIX as one of our supported 3Date: Thu, 12 Mar 2020 17:25:37 +0000
4build host or target. Therefore we get rid of the hardcoded paths 4Subject: [PATCH 1/7] remove-usr-local-lib-from-m4.patch
5and make life easier for cross compilation process.
6 5
7Signed-off-by: Khem Raj <raj.khem@gmail.com> 6Signed-off-by: Ross Burton <ross.burton@intel.com>
7---
8 lib/autoconf/functions.m4 | 9 ---------
9 1 file changed, 9 deletions(-)
8 10
9Upstream-Status: Inappropriate [Upstream does care for AIX while we may not] 11diff --git a/lib/autoconf/functions.m4 b/lib/autoconf/functions.m4
10Index: autoconf-2.68/lib/autoconf/functions.m4 12index 12f60b99..07da7941 100644
11=================================================================== 13--- a/lib/autoconf/functions.m4
12--- autoconf-2.68.orig/lib/autoconf/functions.m4 2010-09-22 14:52:19.000000000 -0700 14+++ b/lib/autoconf/functions.m4
13+++ autoconf-2.68/lib/autoconf/functions.m4 2011-08-03 11:57:05.822199513 -0700 15@@ -801,15 +801,6 @@ if test $ac_have_func = no; then
14@@ -749,15 +749,6 @@ if test $ac_have_func = no; then
15 [LIBS="-lutil $LIBS" ac_have_func=yes ac_cv_func_getloadavg_setgid=yes]) 16 [LIBS="-lutil $LIBS" ac_have_func=yes ac_cv_func_getloadavg_setgid=yes])
16 fi 17 fi
17 18
@@ -27,3 +28,6 @@ Index: autoconf-2.68/lib/autoconf/functions.m4
27 # Make sure it is really in the library, if we think we found it, 28 # Make sure it is really in the library, if we think we found it,
28 # otherwise set up the replacement function. 29 # otherwise set up the replacement function.
29 AC_CHECK_FUNCS(getloadavg, [], 30 AC_CHECK_FUNCS(getloadavg, [],
31--
322.25.1
33
diff --git a/meta/recipes-devtools/autoconf/autoconf_2.69.bb b/meta/recipes-devtools/autoconf/autoconf_2.71.bb
index e30536a221..3202a87273 100644
--- a/meta/recipes-devtools/autoconf/autoconf_2.69.bb
+++ b/meta/recipes-devtools/autoconf/autoconf_2.71.bb
@@ -5,32 +5,23 @@ file that lists the operating system features that the package can use, in the f
5LICENSE = "GPLv3+" 5LICENSE = "GPLv3+"
6HOMEPAGE = "http://www.gnu.org/software/autoconf/" 6HOMEPAGE = "http://www.gnu.org/software/autoconf/"
7SECTION = "devel" 7SECTION = "devel"
8DEPENDS = "m4-native gnu-config-native" 8DEPENDS = "m4-native autoconf-native automake-native gnu-config-native help2man-native"
9DEPENDS_remove_class-native = "autoconf-native automake-native help2man-native"
9 10
10PR = "r11" 11LIC_FILES_CHKSUM = "file://COPYING;md5=cc3f3a7596cb558bbd9eb7fbaa3ef16c \
12 file://COPYINGv3;md5=1ebbd3e34237af26da5dc08a4e440464"
11 13
12LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe \ 14SRC_URI = "${GNU_MIRROR}/autoconf/${BP}.tar.gz \
13 file://COPYINGv3;md5=d32239bcb673463ab874e80d47fae504"
14
15SRC_URI = "${GNU_MIRROR}/autoconf/autoconf-${PV}.tar.gz \
16 file://program_prefix.patch \ 15 file://program_prefix.patch \
17 file://check-automake-cross-warning.patch \
18 file://autoreconf-exclude.patch \ 16 file://autoreconf-exclude.patch \
19 file://autoreconf-gnuconfigize.patch \
20 file://config_site.patch \
21 file://remove-usr-local-lib-from-m4.patch \ 17 file://remove-usr-local-lib-from-m4.patch \
22 file://preferbash.patch \ 18 file://preferbash.patch \
23 file://autotest-automake-result-format.patch \ 19 file://autotest-automake-result-format.patch \
24 file://add_musl_config.patch \ 20 file://man-host-perl.patch \
25 file://performance.patch \
26 file://AC_HEADER_MAJOR-port-to-glibc-2.25.patch \
27 file://autoconf-replace-w-option-in-shebangs-with-modern-use-warnings.patch \
28 " 21 "
22SRC_URI_append_class-native = " file://no-man.patch"
29 23
30SRC_URI[md5sum] = "82d05e03b93e45f5a39b828dc9c6c29b" 24SRC_URI[sha256sum] = "431075ad0bf529ef13cb41e9042c542381103e80015686222b8a9d4abef42a1c"
31SRC_URI[sha256sum] = "954bd69b391edc12d6a4a51a2dd1476543da5c6bbf05a95b59dc0dd6fd4c2969"
32
33SRC_URI_append_class-native = " file://fix_path_xtra.patch"
34 25
35RDEPENDS_${PN} = "m4 gnu-config \ 26RDEPENDS_${PN} = "m4 gnu-config \
36 perl \ 27 perl \
@@ -69,11 +60,14 @@ CACHED_CONFIGUREVARS += "ac_cv_path_PERL='${PERL}'"
69 60
70EXTRA_OECONF += "ac_cv_path_M4=m4 ac_cv_prog_TEST_EMACS=no" 61EXTRA_OECONF += "ac_cv_path_M4=m4 ac_cv_prog_TEST_EMACS=no"
71 62
72do_configure() { 63# As autoconf installs its own config.* files, ensure that they're always up to date.
73 # manually install a newer config.guess/.sub 64update_gnu_config() {
74 install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.guess ${S}/build-aux 65 install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.guess ${S}/build-aux
75 install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.sub ${S}/build-aux 66 install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.sub ${S}/build-aux
67}
68do_configure[prefuncss] += "update_gnu_config"
76 69
70do_configure_class-native() {
77 oe_runconf 71 oe_runconf
78} 72}
79 73