diff options
author | Andreas K. Hüttel <dilfridge@gentoo.org> | 2016-05-29 18:59:56 +0200 |
---|---|---|
committer | Andreas K. Hüttel <dilfridge@gentoo.org> | 2016-05-29 19:00:16 +0200 |
commit | 611d1b6ec6832d5d1dffcbfd8a805df1bcba8fc5 (patch) | |
tree | 1281167eef777a408280ea6fdbaade26be805143 /dev-perl/libintl-perl/files | |
parent | net-misc/chrony: Fix logrotate script (diff) | |
download | gentoo-611d1b6ec6832d5d1dffcbfd8a805df1bcba8fc5.tar.gz gentoo-611d1b6ec6832d5d1dffcbfd8a805df1bcba8fc5.tar.bz2 gentoo-611d1b6ec6832d5d1dffcbfd8a805df1bcba8fc5.zip |
dev-perl/libintl-perl: Sanitize build system. This may be the solution for bug 583674.
Package-Manager: portage-2.3.0_rc1
Diffstat (limited to 'dev-perl/libintl-perl/files')
-rw-r--r-- | dev-perl/libintl-perl/files/libintl-perl-1.240.0-sanity.patch | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/dev-perl/libintl-perl/files/libintl-perl-1.240.0-sanity.patch b/dev-perl/libintl-perl/files/libintl-perl-1.240.0-sanity.patch new file mode 100644 index 000000000000..b9add8a334c7 --- /dev/null +++ b/dev-perl/libintl-perl/files/libintl-perl-1.240.0-sanity.patch @@ -0,0 +1,72 @@ +diff -ruN libintl-perl-1.24.orig/Makefile.PL libintl-perl-1.24/Makefile.PL +--- libintl-perl-1.24.orig/Makefile.PL 2015-04-03 15:28:12.000000000 +0200 ++++ libintl-perl-1.24/Makefile.PL 2016-05-29 18:42:29.495587789 +0200 +@@ -163,56 +163,8 @@ + + package MY; + +-# FIXME: This is really a hack! Problem: Depending on the build system, +-# we may or may not build and install the XS version. If the XS version +-# is being built, the directory blib/arch will be populated, if it is +-# not being built, blib/arch will be empty. Unfortunately, if blib/arch +-# is not empty, *all* library files will be installed in the architecture +-# dependent locations, if it is empty, they will be installed in the +-# architecture independent tree. +-# +-# Unfortunately, ExtUtils::MakeMaker does not take care of uninstalling +-# files from previous installations. Consequently, we cannot determine +-# which version of the library will be loaded, since this depends on the +-# current value of @INC. +-# +-# The solution does not really make me happy. The Makefile will be patched, +-# so that instead of ExtUtils::Install a custom module MyInstall.pm will +-# be used. This custom module overwrites the subroutine that detects +-# whether a directory is empty in ExtUtils::Install, and will lie if that +-# directory happens to be "blib/arch". This little hack effectively disables +-# the annoying behavior of ExtUtils::Install (and I sincerely hope that +-# this is portable). +-sub libscan +-{ +- my ($self, $file) = @_; +- +- return if 'MyInstall.pm' eq $file; +- +- $self->SUPER::libscan ($file); +-} +- +-sub tools_other +-{ +- my $self = shift; +- +- my $fragment = $self->SUPER::tools_other (@_); +- +- $fragment =~ s/^MOD_INSTALL\s*=\s*(.*?)-MExtUtils::Install +- /MOD_INSTALL =$1-MMyInstall/msx; +- +- return $fragment; +-} +- + package main; + +-my $name = $0; +-$name =~ s,Makefile\.PL$,xs_disabled,; +-local *HANDLE; +-open HANDLE, ">$name" or die "cannot open '$name' for writing: $!"; +-print HANDLE !$build_gettext_xs; +-close HANDLE or die "cannot close '$name': $!"; +- + WriteMakefile ( + NAME => 'libintl-perl', + VERSION_FROM => 'lib/Locale/Messages.pm', +@@ -232,11 +184,6 @@ + }, + }, + PL_FILES => {}, +- DIR => [$build_gettext_xs ? ('gettext_xs') : ()], +- clean => { FILES => 'xs_disabled build_xs' } +- # If you want to build the XS version although the automatic detection +- # suggests not to build it, uncomment the following line. +- #DIR => [ ('gettext_xs') ],, + ); + + sub MY::postamble { |