summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard W.M. Jones <rjones@redhat.com>2011-07-22 10:39:37 +0100
committerRichard W.M. Jones <rjones@redhat.com>2011-07-22 10:47:34 +0100
commitee947dd4e44bb407a8b9e4cd33a0a2e25077fa6b (patch)
tree50a340380f8c758e660b644c6e091bb060f29d4e
parent00da6d769e4e736ebc6dca2e634fae15c0a0c3d2 (diff)
downloadhivex-ee947dd4e44bb407a8b9e4cd33a0a2e25077fa6b.tar.gz
hivex-ee947dd4e44bb407a8b9e4cd33a0a2e25077fa6b.tar.xz
hivex-ee947dd4e44bb407a8b9e4cd33a0a2e25077fa6b.zip
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.
-rw-r--r--.gitignore1
-rw-r--r--perl/Makefile.PL.in3
2 files changed, 3 insertions, 1 deletions
diff --git a/.gitignore b/.gitignore
index 5984892..0704794 100644
--- a/.gitignore
+++ b/.gitignore
@@ -76,6 +76,7 @@ perl/lib/Win/Hivex.pm
perl/Makefile-pl
perl/Makefile-pl.old
perl/Makefile.PL
+perl/MYMETA.yml
perl/pm_to_blib
pod2htm?.tmp
po/*.gmo
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@top_builddir@/lib/.libs -lhivex',
INC => '-I@top_builddir@/lib -I@top_srcdir@/lib',
TYPEMAPS => [ '@srcdir@/typemap' ],
- CCFLAGS => '@CFLAGS@',
+ CCFLAGS => $Config{ccflags} . ' @CFLAGS@',
);