Gentoo Archives: gentoo-commits

From: "Andreas Hüttel" <dilfridge@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-perl/libintl-perl/files/, dev-perl/libintl-perl/
Date: Sun, 29 May 2016 17:00:35
Message-Id: 1464541216.611d1b6ec6832d5d1dffcbfd8a805df1bcba8fc5.dilfridge@gentoo
1 commit: 611d1b6ec6832d5d1dffcbfd8a805df1bcba8fc5
2 Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
3 AuthorDate: Sun May 29 16:59:56 2016 +0000
4 Commit: Andreas Hüttel <dilfridge <AT> gentoo <DOT> org>
5 CommitDate: Sun May 29 17:00:16 2016 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=611d1b6e
7
8 dev-perl/libintl-perl: Sanitize build system. This may be the solution for bug 583674.
9
10 Package-Manager: portage-2.3.0_rc1
11
12 .../files/libintl-perl-1.240.0-sanity.patch | 72 ++++++++++++++++++++++
13 .../libintl-perl/libintl-perl-1.240.0-r1.ebuild | 36 +++++++++++
14 2 files changed, 108 insertions(+)
15
16 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
17 new file mode 100644
18 index 0000000..b9add8a
19 --- /dev/null
20 +++ b/dev-perl/libintl-perl/files/libintl-perl-1.240.0-sanity.patch
21 @@ -0,0 +1,72 @@
22 +diff -ruN libintl-perl-1.24.orig/Makefile.PL libintl-perl-1.24/Makefile.PL
23 +--- libintl-perl-1.24.orig/Makefile.PL 2015-04-03 15:28:12.000000000 +0200
24 ++++ libintl-perl-1.24/Makefile.PL 2016-05-29 18:42:29.495587789 +0200
25 +@@ -163,56 +163,8 @@
26 +
27 + package MY;
28 +
29 +-# FIXME: This is really a hack! Problem: Depending on the build system,
30 +-# we may or may not build and install the XS version. If the XS version
31 +-# is being built, the directory blib/arch will be populated, if it is
32 +-# not being built, blib/arch will be empty. Unfortunately, if blib/arch
33 +-# is not empty, *all* library files will be installed in the architecture
34 +-# dependent locations, if it is empty, they will be installed in the
35 +-# architecture independent tree.
36 +-#
37 +-# Unfortunately, ExtUtils::MakeMaker does not take care of uninstalling
38 +-# files from previous installations. Consequently, we cannot determine
39 +-# which version of the library will be loaded, since this depends on the
40 +-# current value of @INC.
41 +-#
42 +-# The solution does not really make me happy. The Makefile will be patched,
43 +-# so that instead of ExtUtils::Install a custom module MyInstall.pm will
44 +-# be used. This custom module overwrites the subroutine that detects
45 +-# whether a directory is empty in ExtUtils::Install, and will lie if that
46 +-# directory happens to be "blib/arch". This little hack effectively disables
47 +-# the annoying behavior of ExtUtils::Install (and I sincerely hope that
48 +-# this is portable).
49 +-sub libscan
50 +-{
51 +- my ($self, $file) = @_;
52 +-
53 +- return if 'MyInstall.pm' eq $file;
54 +-
55 +- $self->SUPER::libscan ($file);
56 +-}
57 +-
58 +-sub tools_other
59 +-{
60 +- my $self = shift;
61 +-
62 +- my $fragment = $self->SUPER::tools_other (@_);
63 +-
64 +- $fragment =~ s/^MOD_INSTALL\s*=\s*(.*?)-MExtUtils::Install
65 +- /MOD_INSTALL =$1-MMyInstall/msx;
66 +-
67 +- return $fragment;
68 +-}
69 +-
70 + package main;
71 +
72 +-my $name = $0;
73 +-$name =~ s,Makefile\.PL$,xs_disabled,;
74 +-local *HANDLE;
75 +-open HANDLE, ">$name" or die "cannot open '$name' for writing: $!";
76 +-print HANDLE !$build_gettext_xs;
77 +-close HANDLE or die "cannot close '$name': $!";
78 +-
79 + WriteMakefile (
80 + NAME => 'libintl-perl',
81 + VERSION_FROM => 'lib/Locale/Messages.pm',
82 +@@ -232,11 +184,6 @@
83 + },
84 + },
85 + PL_FILES => {},
86 +- DIR => [$build_gettext_xs ? ('gettext_xs') : ()],
87 +- clean => { FILES => 'xs_disabled build_xs' }
88 +- # If you want to build the XS version although the automatic detection
89 +- # suggests not to build it, uncomment the following line.
90 +- #DIR => [ ('gettext_xs') ],,
91 + );
92 +
93 + sub MY::postamble {
94
95 diff --git a/dev-perl/libintl-perl/libintl-perl-1.240.0-r1.ebuild b/dev-perl/libintl-perl/libintl-perl-1.240.0-r1.ebuild
96 new file mode 100644
97 index 0000000..cdefba9
98 --- /dev/null
99 +++ b/dev-perl/libintl-perl/libintl-perl-1.240.0-r1.ebuild
100 @@ -0,0 +1,36 @@
101 +# Copyright 1999-2016 Gentoo Foundation
102 +# Distributed under the terms of the GNU General Public License v2
103 +# $Id$
104 +
105 +EAPI=5
106 +
107 +MODULE_AUTHOR=GUIDO
108 +MODULE_VERSION=1.24
109 +inherit perl-module
110 +
111 +DESCRIPTION="High-Level Interface to Uniforum Message Translation"
112 +HOMEPAGE="http://guido-flohr.net/projects/libintl-perl ${HOMEPAGE}"
113 +
114 +LICENSE="GPL-3"
115 +SLOT="0"
116 +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~x64-solaris ~x86-solaris"
117 +IUSE=""
118 +
119 +DEPEND="virtual/libintl"
120 +RDEPEND=${DEPEND}
121 +
122 +PATCHES=( "${FILESDIR}/${P}-sanity.patch" )
123 +
124 +SRC_TEST=do
125 +
126 +src_test() {
127 + if grep -q '^de_' <( locale -a ) ; then
128 + if grep -q '^de_AT$' <( locale -a ) ; then
129 + perl-module_src_test
130 + else
131 + ewarn "Skipping tests, known broken with de_ and without de_AT"
132 + fi
133 + else
134 + perl-module_src_test
135 + fi
136 +}