summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2013-01-14 17:37:20 +0000
committerMike Frysinger <vapier@gentoo.org>2013-01-14 17:37:20 +0000
commit8307d15984a98e61346c6184c5b50c79c19d3391 (patch)
tree765add3cc5700495f3986ff8fdc4d85777c45b97 /sys-devel
parentFix shebang for all scripts. Does not work otherwise if system py is 3 series. (diff)
downloadgentoo-2-8307d15984a98e61346c6184c5b50c79c19d3391.tar.gz
gentoo-2-8307d15984a98e61346c6184c5b50c79c19d3391.tar.bz2
gentoo-2-8307d15984a98e61346c6184c5b50c79c19d3391.zip
Do perl thread detection at runtime rather than configure time #343439 by Muelli.
(Portage version: 2.2.0_alpha144/cvs/Linux x86_64, signed Manifest commit with key FB7C4156)
Diffstat (limited to 'sys-devel')
-rw-r--r--sys-devel/automake/ChangeLog7
-rw-r--r--sys-devel/automake/automake-1.13.1.ebuild5
-rw-r--r--sys-devel/automake/files/automake-1.13-dyn-ithreads.patch59
3 files changed, 68 insertions, 3 deletions
diff --git a/sys-devel/automake/ChangeLog b/sys-devel/automake/ChangeLog
index ff39c47a3777..28f527c0e626 100644
--- a/sys-devel/automake/ChangeLog
+++ b/sys-devel/automake/ChangeLog
@@ -1,6 +1,11 @@
# ChangeLog for sys-devel/automake
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-devel/automake/ChangeLog,v 1.180 2013/01/03 18:45:44 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/automake/ChangeLog,v 1.181 2013/01/14 17:37:20 vapier Exp $
+
+ 14 Jan 2013; Mike Frysinger <vapier@gentoo.org>
+ +files/automake-1.13-dyn-ithreads.patch, automake-1.13.1.ebuild:
+ Do perl thread detection at runtime rather than configure time #343439 by
+ Muelli.
03 Jan 2013; Diego E. Pettenò <flameeyes@gentoo.org> automake-1.12.2.ebuild,
automake-1.12.3.ebuild, automake-1.12.4.ebuild, automake-1.12.5.ebuild,
diff --git a/sys-devel/automake/automake-1.13.1.ebuild b/sys-devel/automake/automake-1.13.1.ebuild
index c5004817841b..34934a64dfab 100644
--- a/sys-devel/automake/automake-1.13.1.ebuild
+++ b/sys-devel/automake/automake-1.13.1.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-devel/automake/automake-1.13.1.ebuild,v 1.2 2013/01/03 11:33:55 flameeyes Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/automake/automake-1.13.1.ebuild,v 1.3 2013/01/14 17:37:20 vapier Exp $
inherit eutils versionator unpacker
@@ -23,7 +23,7 @@ LICENSE="GPL-2"
# Use Gentoo versioning for slotting.
SLOT="${PV:0:4}"
# Testing.
-#KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd"
IUSE=""
RDEPEND="dev-lang/perl
@@ -51,6 +51,7 @@ src_unpack() {
-e "s:(automake|automake-history)(.info|.texi):\1${SLOT}\2:g" \
Makefile.in || die
export WANT_AUTOCONF=2.5
+ epatch "${FILESDIR}"/${PN}-1.13-dyn-ithreads.patch
}
src_compile() {
diff --git a/sys-devel/automake/files/automake-1.13-dyn-ithreads.patch b/sys-devel/automake/files/automake-1.13-dyn-ithreads.patch
new file mode 100644
index 000000000000..f790e7724c93
--- /dev/null
+++ b/sys-devel/automake/files/automake-1.13-dyn-ithreads.patch
@@ -0,0 +1,59 @@
+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
+