You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
60 lines
2.1 KiB
60 lines
2.1 KiB
12 years ago
|
https://bugs.gentoo.org/343439
|
||
|
|
||
|
From 182626687f2640609f8eb28ad1b04b078342f2c7 Mon Sep 17 00:00:00 2001
|
||
|
From: Mike Frysinger <vapier@gentoo.org>
|
||
|
Date: Sat, 12 Jan 2013 00:19:40 -0500
|
||
|
Subject: [PATCH] ithreads: use runtime (not configure time) detection of perl
|
||
|
threads
|
||
|
|
||
|
I can't imagine the runtime checks being a big runtime penalty, so there
|
||
|
shouldn't be a need to do the checks at configure check and hardcode the
|
||
|
result in the generated automake.
|
||
|
|
||
|
With the current system, it means if you change your perl config (build
|
||
|
perl w/threads, build automake, build perl w/out threads), or deploy a
|
||
|
compiled automake package on a different system (build had threads, but
|
||
|
deployed system does not), you get errors when trying to run automake.
|
||
|
|
||
|
So take the logic from configure.ac and move it to the one place where
|
||
|
PERL_THREADS is used (lib/Automake/Config.in) and do the version/config
|
||
|
checking at runtime.
|
||
|
|
||
|
* bootstrap.sh (PERL_THREADS): Delete assignment and use in sed.
|
||
|
* configure.ac (am_cv_prog_PERL_ithreads, PERL_THREADS): Delete all code
|
||
|
related to these two variables.
|
||
|
* lib/Automake/Config.in (perl_threads): Initialize to 0, and only set to
|
||
|
1 if the perl version is at least 5.007_002, and useithreads is in Config.
|
||
|
|
||
|
Copyright-paperwork-exempt: yes
|
||
|
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
||
|
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
|
||
|
---
|
||
|
bootstrap.sh | 2 --
|
||
|
configure.ac | 26 --------------------------
|
||
|
lib/Automake/Config.in | 9 ++++++++-
|
||
|
3 files changed, 8 insertions(+), 29 deletions(-)
|
||
|
|
||
|
diff --git a/lib/Automake/Config.in b/lib/Automake/Config.in
|
||
|
index fe6ef9d..885e74e 100644
|
||
|
--- a/lib/Automake/Config.in
|
||
|
+++ b/lib/Automake/Config.in
|
||
|
@@ -33,7 +33,14 @@ our $PACKAGE_BUGREPORT = '@PACKAGE_BUGREPORT@';
|
||
|
our $VERSION = '@VERSION@';
|
||
|
our $RELEASE_YEAR = '@RELEASE_YEAR@';
|
||
|
our $libdir = '@datadir@/@PACKAGE@-@APIVERSION@';
|
||
|
-our $perl_threads = @PERL_THREADS@;
|
||
|
+
|
||
|
+our $perl_threads = 0;
|
||
|
+# We need at least this version for CLONE support.
|
||
|
+if (eval { require 5.007_002; })
|
||
|
+ {
|
||
|
+ use Config;
|
||
|
+ $perl_threads = $Config{useithreads};
|
||
|
+ }
|
||
|
|
||
|
1;
|
||
|
|
||
|
--
|
||
|
1.8.0.2
|
||
|
|