xref: /OK3568_Linux_fs/yocto/poky/meta/recipes-devtools/autoconf/autoconf/autoreconf-exclude.patch (revision 4882a59341e53eb6f0b4789bf948001014eff981)
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
5
6Upstream-Status: Inappropriate [oe specific]
7---
8 bin/autoreconf.in | 26 ++++++++++++++++++++++++++
9 1 file changed, 26 insertions(+)
10
11diff --git a/bin/autoreconf.in b/bin/autoreconf.in
12index bb9f316d..7da3005b 100644
13--- a/bin/autoreconf.in
14+++ b/bin/autoreconf.in
15@@ -82,6 +82,7 @@ Operation modes:
16   -i, --install            copy missing standard auxiliary files
17       --no-recursive       don't rebuild sub-packages
18   -s, --symlink            with -i, install symbolic links instead of copies
19+  -x, --exclude=STEPS      steps we should not run
20   -m, --make               when applicable, re-run ./configure && make
21   -W, --warnings=CATEGORY  report the warnings falling in CATEGORY [syntax]
22
23@@ -141,6 +142,10 @@ my $run_make = 0;
24 # Recurse into subpackages
25 my $recursive = 1;
26
27+# Steps to exclude
28+my @exclude;
29+my @ex;
30+
31 ## ---------- ##
32 ## Routines.  ##
33 ## ---------- ##
34@@ -161,6 +166,7 @@ sub parse_args ()
35 	  'B|prepend-include=s'	 => \@prepend_include,
36 	  'i|install'            => \$install,
37 	  's|symlink'            => \$symlink,
38+  	  'x|exclude=s'          => \@exclude,
39 	  'm|make'               => \$run_make,
40 	  'recursive!'           => \$recursive);
41
42@@ -170,6 +176,8 @@ sub parse_args ()
43   parse_WARNINGS;
44   parse_warnings @warning;
45
46+  @exclude = map { split /,/ } @exclude;
47+
48   # Even if the user specified a configure.ac, trim to get the
49   # directory, and look for configure.ac again.  Because (i) the code
50   # is simpler, and (ii) we are still able to diagnose simultaneous
51@@ -493,8 +501,11 @@ sub autoreconf_current_directory ($)
52     }
53   else
54     {
55+      @ex = grep (/^autopoint$/, @exclude);
56+      if ($#ex == -1) {
57       xsystem_hint ("autopoint is needed because this package uses Gettext",
58                     $autopoint);
59+      }
60     }
61
62
63@@ -687,9 +698,12 @@ sub autoreconf_current_directory ($)
64 	{
65 	  $libtoolize .= " --ltdl";
66 	}
67+      @ex = grep (/^libtoolize$/, @exclude);
68+      if ($#ex == -1) {
69       xsystem_hint ("libtoolize is needed because this package uses Libtool",
70 		    $libtoolize);
71       $rerun_aclocal = 1;
72+      }
73     }
74   else
75     {
76@@ -726,8 +740,11 @@ sub autoreconf_current_directory ($)
77     }
78   elsif ($install)
79     {
80+      @ex = grep (/^gtkdocize$/, @exclude);
81+      if ($#ex == -1) {
82       xsystem_hint ("gtkdocize is needed because this package uses Gtkdoc",
83 		    $gtkdocize);
84+      }
85     }
86   else
87     {
88@@ -765,7 +782,10 @@ sub autoreconf_current_directory ($)
89   # latter runs the former, and (ii) autoconf is stricter than
90   # autoheader.  So all in all, autoconf should give better error
91   # messages.
92+  @ex = grep (/^autoconf$/, @exclude);
93+  if ($#ex == -1) {
94   xsystem ($autoconf);
95+  }
96
97
98   # -------------------- #
99@@ -786,7 +806,10 @@ sub autoreconf_current_directory ($)
100     }
101   else
102     {
103+      @ex = grep (/^autoheader$/, @exclude);
104+      if ($#ex == -1) {
105       xsystem ($autoheader);
106+      }
107     }
108
109
110@@ -803,7 +826,10 @@ sub autoreconf_current_directory ($)
111       # We should always run automake, and let it decide whether it shall
112       # update the file or not.  In fact, the effect of '$force' is already
113       # included in '$automake' via '--no-force'.
114+      @ex = grep (/^automake$/, @exclude);
115+      if ($#ex == -1) {
116       xsystem ($automake);
117+      }
118     }
119
120   # ---------------------------------------------------- #
121--
1222.25.1
123
124