distribution/packages/devel/autoconf/patches/autoconf-autoreconf-exclude.patch
2022-04-09 14:10:23 -04:00

139 lines
3.7 KiB
Diff

Upstream-Status: Pending
Index: autoconf-2.63/bin/autoreconf.in
===================================================================
--- autoconf-2.63.orig/bin/autoreconf.in 2008-12-31 17:39:01.000000000 +0000
+++ autoconf-2.63/bin/autoreconf.in 2008-12-31 17:43:38.000000000 +0000
@@ -76,6 +76,7 @@
-i, --install copy missing auxiliary files
--no-recursive don't rebuild sub-packages
-s, --symlink with -i, install symbolic links instead of copies
+ -x, --exclude=STEPS steps we should not run
-m, --make when applicable, re-run ./configure && make
-W, --warnings=CATEGORY report the warnings falling in CATEGORY [syntax]
@@ -136,6 +137,13 @@
# Recurse into subpackages
my $recursive = 1;
+# Steps to exclude
+my @exclude;
+my @ex;
+
+my $uses_gettext;
+my $configure_ac;
+
## ---------- ##
## Routines. ##
## ---------- ##
@@ -153,6 +161,7 @@
'B|prepend-include=s' => \@prepend_include,
'i|install' => \$install,
's|symlink' => \$symlink,
+ 'x|exclude=s' => \@exclude,
'm|make' => \$run_make,
'recursive!' => \$recursive);
@@ -162,6 +171,8 @@
parse_WARNINGS;
parse_warnings '--warnings', @warning;
+ @exclude = map { split /,/ } @exclude;
+
# Even if the user specified a configure.ac, trim to get the
# directory, and look for configure.ac again. Because (i) the code
# is simpler, and (ii) we are still able to diagnose simultaneous
@@ -255,6 +266,11 @@
{
my ($aclocal, $flags) = @_;
+ @ex = grep (/^aclocal$/, @exclude);
+ if ($#ex != -1) {
+ return;
+ }
+
# aclocal 1.8+ does all this for free. It can be recognized by its
# --force support.
if ($aclocal_supports_force)
@@ -368,7 +384,10 @@
}
else
{
- xsystem_hint ("autopoint is needed because this package uses Gettext", "$autopoint");
+ @ex = grep (/^autopoint$/, @exclude);
+ if ($#ex == -1) {
+ xsystem_hint ("autopoint is needed because this package uses Gettext", "$autopoint");
+ }
}
@@ -532,16 +551,17 @@
{
$libtoolize .= " --ltdl";
}
- xsystem_hint ("libtoolize is needed because this package uses Libtool", $libtoolize);
- $rerun_aclocal = 1;
+ @ex = grep (/^libtoolize$/, @exclude);
+ if ($#ex == -1) {
+ xsystem_hint ("libtoolize is needed because this package uses Libtool", $libtoolize);
+ $rerun_aclocal = 1;
+ }
}
else
{
verb "$configure_ac: not running libtoolize: --install not given";
}
-
-
# ------------------- #
# Rerunning aclocal. #
# ------------------- #
@@ -572,7 +592,10 @@
# latter runs the former, and (ii) autoconf is stricter than
# autoheader. So all in all, autoconf should give better error
# messages.
- xsystem ($autoconf);
+ @ex = grep (/^autoconf$/, @exclude);
+ if ($#ex == -1) {
+ xsystem ("$autoconf");
+ }
# -------------------- #
@@ -593,7 +616,10 @@
}
else
{
- xsystem ($autoheader);
+ @ex = grep (/^autoheader$/, @exclude);
+ if ($#ex == -1) {
+ xsystem ("$autoheader");
+ }
}
@@ -610,7 +636,10 @@
# We should always run automake, and let it decide whether it shall
# update the file or not. In fact, the effect of `$force' is already
# included in `$automake' via `--no-force'.
- xsystem ($automake);
+ @ex = grep (/^automake$/, @exclude);
+ if ($#ex == -1) {
+ xsystem ("$automake");
+ }
}
@@ -634,7 +663,10 @@
}
else
{
- xsystem ("$make");
+ @ex = grep (/^make$/, @exclude);
+ if ($#ex == -1) {
+ xsystem ("$make");
+ }
}
}
}