[hivex] Add upstream patch to fix Perl CCFLAGS for Perl 5.14 on i686.
Richard W.M. Jones
rjones at fedoraproject.org
Fri Jul 22 09:58:58 UTC 2011
commit b2ed1b67df7935039f873895ead0db4e0387bf65
Author: Richard W.M. Jones <rjones at redhat.com>
Date: Fri Jul 22 10:57:09 2011 +0100
Add upstream patch to fix Perl CCFLAGS for Perl 5.14 on i686.
0001-perl-Fix-CCFLAGS-on-Perl-5.14.patch | 49 ++++++++++++++++++++++++++++++
hivex.spec | 9 +++++-
2 files changed, 57 insertions(+), 1 deletions(-)
---
diff --git a/0001-perl-Fix-CCFLAGS-on-Perl-5.14.patch b/0001-perl-Fix-CCFLAGS-on-Perl-5.14.patch
new file mode 100644
index 0000000..acf9c6a
--- /dev/null
+++ b/0001-perl-Fix-CCFLAGS-on-Perl-5.14.patch
@@ -0,0 +1,49 @@
+From ee947dd4e44bb407a8b9e4cd33a0a2e25077fa6b Mon Sep 17 00:00:00 2001
+From: "Richard W.M. Jones" <rjones at redhat.com>
+Date: Fri, 22 Jul 2011 10:39:37 +0100
+Subject: [PATCH] perl: Fix CCFLAGS on Perl 5.14.
+
+A change to ExtUtils::CBuilder in Perl 5.14 causes CCFLAGS to
+completely replace, rather than appending, the C flags.
+
+The unfortunate consequence of this is that vital flags such as
+-D_FILE_OFFSET_BITS=64 are missing. For 32 bit code, this means you
+get binary-incompatible code that completely fails to load.
+
+For further analysis see:
+
+http://www.nntp.perl.org/group/perl.perl5.porters/2011/04/msg171535.html
+
+This commit changes CCFLAGS so that it appends to the existing
+$Config{ccflags} instead of replacing it. On earlier versions of Perl
+this means we get two copies of the flags, which is unfortunate but
+should be safe.
+
+Also, ignore MYMETA.yml file produced by Perl 5.14.
+---
+ .gitignore | 1 +
+ perl/Makefile.PL.in | 3 ++-
+ 2 files changed, 3 insertions(+), 1 deletions(-)
+
+diff --git a/perl/Makefile.PL.in b/perl/Makefile.PL.in
+index e6e3d72..77b4a0e 100644
+--- a/perl/Makefile.PL.in
++++ b/perl/Makefile.PL.in
+@@ -15,6 +15,7 @@
+ # along with this program; if not, write to the Free Software
+ # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+
++use Config;
+ use ExtUtils::MakeMaker;
+
+ WriteMakefile (
+@@ -26,5 +27,5 @@ WriteMakefile (
+ LIBS => '-L at top_builddir@/lib/.libs -lhivex',
+ INC => '-I at top_builddir@/lib -I at top_srcdir@/lib',
+ TYPEMAPS => [ '@srcdir@/typemap' ],
+- CCFLAGS => '@CFLAGS@',
++ CCFLAGS => $Config{ccflags} . ' @CFLAGS@',
+ );
+--
+1.7.5.2
+
diff --git a/hivex.spec b/hivex.spec
index 7b0ab79..1b5150a 100644
--- a/hivex.spec
+++ b/hivex.spec
@@ -7,7 +7,7 @@
Name: hivex
Version: 1.2.7
-Release: 6%{?dist}
+Release: 7%{?dist}
Summary: Read and write Windows Registry binary hive files
Group: Development/Libraries
@@ -43,6 +43,9 @@ Patch1: 0001-ocaml-Set-package-name-when-installing-native-bindin.patch
Patch2: 0002-ocaml-Really-fix-make-install-rule.patch
Patch3: ocaml-Fix-autotools.patch
+# Upstream patch to fix Perl CCFLAGS for Perl 5.14 on i686.
+Patch4: 0001-perl-Fix-CCFLAGS-on-Perl-5.14.patch
+
%description
Hive files are the undocumented binary blobs that Windows uses to
@@ -152,6 +155,7 @@ python-%{name} contains Python bindings for %{name}.
%patch1 -p1
%patch2 -p1
%patch3 -p1
+%patch4 -p1
%build
@@ -260,6 +264,9 @@ rm -rf $RPM_BUILD_ROOT
%changelog
+* Thu Jul 21 2011 Richard W.M. Jones <rjones at redhat.com> - 1.2.7-7
+- Add upstream patch to fix Perl CCFLAGS for Perl 5.14 on i686.
+
* Thu Jul 21 2011 Richard W.M. Jones <rjones at redhat.com> - 1.2.7-6
- i686 package is broken, experimentally rebuild it.
More information about the scm-commits
mailing list