From 56905ace8c747a42b4b917e9407070bd3df26d16 Mon Sep 17 00:00:00 2001 From: CentOS Sources Date: Nov 16 2016 13:20:51 +0000 Subject: import rh-perl524-perl-ExtUtils-CBuilder-0.280225-366.el7 --- diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..fe7597b --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/ExtUtils-CBuilder-0.280224.tar.gz diff --git a/.rh-perl524-perl-ExtUtils-CBuilder.metadata b/.rh-perl524-perl-ExtUtils-CBuilder.metadata new file mode 100644 index 0000000..251f42c --- /dev/null +++ b/.rh-perl524-perl-ExtUtils-CBuilder.metadata @@ -0,0 +1 @@ +5dc79083f031fcb2d1e989e0bc00526885d851f7 SOURCES/ExtUtils-CBuilder-0.280224.tar.gz diff --git a/README.md b/README.md deleted file mode 100644 index 98f42b4..0000000 --- a/README.md +++ /dev/null @@ -1,4 +0,0 @@ -The master branch has no content - -Look at the c7 branch if you are working with CentOS-7, or the c4/c5/c6 branch for CentOS-4, 5 or 6 -If you find this file in a distro specific branch, it means that no content has been checked in yet diff --git a/SOURCES/ExtUtils-CBuilder-0.280219-Link-XS-modules-to-libperl.so-with-EU-CBuilder-on-Li.patch b/SOURCES/ExtUtils-CBuilder-0.280219-Link-XS-modules-to-libperl.so-with-EU-CBuilder-on-Li.patch new file mode 100644 index 0000000..a98ddc6 --- /dev/null +++ b/SOURCES/ExtUtils-CBuilder-0.280219-Link-XS-modules-to-libperl.so-with-EU-CBuilder-on-Li.patch @@ -0,0 +1,65 @@ +From 0c575416d2889e92c6c0d487ec2b52b45882557a Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= +Date: Wed, 3 Jul 2013 11:01:02 +0200 +Subject: [PATCH] Link XS modules to libperl.so with EU::CBuilder on Linux +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + + + + +Signed-off-by: Petr Písař +--- + MANIFEST | 1 + + lib/ExtUtils/CBuilder/Platform/linux.pm | 26 ++++++++++++++++++++++++++ + 2 files changed, 27 insertions(+) + create mode 100644 lib/ExtUtils/CBuilder/Platform/linux.pm + +diff --git a/MANIFEST b/MANIFEST +index eb71c93..5be739e 100644 +--- a/MANIFEST ++++ b/MANIFEST +@@ -24,6 +24,7 @@ lib/ExtUtils/CBuilder/Platform/android.pm + lib/ExtUtils/CBuilder/Platform/cygwin.pm + lib/ExtUtils/CBuilder/Platform/darwin.pm + lib/ExtUtils/CBuilder/Platform/dec_osf.pm ++lib/ExtUtils/CBuilder/Platform/linux.pm + lib/ExtUtils/CBuilder/Platform/os2.pm + t/00-have-compiler.t + t/01-basic.t +diff --git a/lib/ExtUtils/CBuilder/Platform/linux.pm b/lib/ExtUtils/CBuilder/Platform/linux.pm +new file mode 100644 +index 0000000..e3251c4 +--- /dev/null ++++ b/lib/ExtUtils/CBuilder/Platform/linux.pm +@@ -0,0 +1,26 @@ ++package ExtUtils::CBuilder::Platform::linux; ++ ++use strict; ++use ExtUtils::CBuilder::Platform::Unix; ++use File::Spec; ++ ++use vars qw($VERSION @ISA); ++$VERSION = '0.280206'; ++@ISA = qw(ExtUtils::CBuilder::Platform::Unix); ++ ++sub link { ++ my ($self, %args) = @_; ++ my $cf = $self->{config}; ++ ++ # Link XS modules to libperl.so explicitly because multiple ++ # dlopen(, RTLD_LOCAL) hides libperl symbols from XS module. ++ local $cf->{lddlflags} = $cf->{lddlflags}; ++ if ($ENV{PERL_CORE}) { ++ $cf->{lddlflags} .= ' -L' . $self->perl_inc(); ++ } ++ $cf->{lddlflags} .= ' -lperl'; ++ ++ return $self->SUPER::link(%args); ++} ++ ++1; +-- +1.9.3 + diff --git a/SOURCES/ExtUtils-CBuilder-0.280224-Upgrade-to-0.280225.patch b/SOURCES/ExtUtils-CBuilder-0.280224-Upgrade-to-0.280225.patch new file mode 100644 index 0000000..f4bf4ab --- /dev/null +++ b/SOURCES/ExtUtils-CBuilder-0.280224-Upgrade-to-0.280225.patch @@ -0,0 +1,254 @@ +diff --git a/Changes b/Changes +index 27f3bc3..aaebade 100644 +--- a/Changes ++++ b/Changes +@@ -1,6 +1,12 @@ + Revision history for Perl extension ExtUtils::CBuilder. + +-0.282224 - 2015-10-09 ++0.280225 - 2016-01-04 ++ ++ Fixed: ++ ++ - New location of libperl on Win32 when building core (RT #126632) ++ ++0.280224 - 2015-10-09 + + Enhncements: + +diff --git a/Makefile.PL b/Makefile.PL +index 820b294..44cb33a 100644 +--- a/Makefile.PL ++++ b/Makefile.PL +@@ -29,7 +29,7 @@ my %WriteMakefileArgs = ( + "TEST_REQUIRES" => { + "Test::More" => "0.47" + }, +- "VERSION" => "0.280224", ++ "VERSION" => "0.280225", + "test" => { + "TESTS" => "t/*.t" + } +diff --git a/lib/ExtUtils/CBuilder.pm b/lib/ExtUtils/CBuilder.pm +index abe976e..6ce0c68 100644 +--- a/lib/ExtUtils/CBuilder.pm ++++ b/lib/ExtUtils/CBuilder.pm +@@ -1,5 +1,5 @@ + package ExtUtils::CBuilder; +-$ExtUtils::CBuilder::VERSION = '0.280224'; ++$ExtUtils::CBuilder::VERSION = '0.280225'; + use File::Spec (); + use File::Path (); + use File::Basename (); +diff --git a/lib/ExtUtils/CBuilder/Base.pm b/lib/ExtUtils/CBuilder/Base.pm +index eb4c175..60b2f43 100644 +--- a/lib/ExtUtils/CBuilder/Base.pm ++++ b/lib/ExtUtils/CBuilder/Base.pm +@@ -1,5 +1,5 @@ + package ExtUtils::CBuilder::Base; +-$ExtUtils::CBuilder::Base::VERSION = '0.280224'; ++$ExtUtils::CBuilder::Base::VERSION = '0.280225'; + use strict; + use warnings; + use File::Spec; +diff --git a/lib/ExtUtils/CBuilder/Platform/Unix.pm b/lib/ExtUtils/CBuilder/Platform/Unix.pm +index d6c1768..399e254 100644 +--- a/lib/ExtUtils/CBuilder/Platform/Unix.pm ++++ b/lib/ExtUtils/CBuilder/Platform/Unix.pm +@@ -1,5 +1,5 @@ + package ExtUtils::CBuilder::Platform::Unix; +-$ExtUtils::CBuilder::Platform::Unix::VERSION = '0.280224'; ++$ExtUtils::CBuilder::Platform::Unix::VERSION = '0.280225'; + use warnings; + use strict; + use ExtUtils::CBuilder::Base; +diff --git a/lib/ExtUtils/CBuilder/Platform/VMS.pm b/lib/ExtUtils/CBuilder/Platform/VMS.pm +index 194d888..e9d9f6f 100644 +--- a/lib/ExtUtils/CBuilder/Platform/VMS.pm ++++ b/lib/ExtUtils/CBuilder/Platform/VMS.pm +@@ -1,5 +1,5 @@ + package ExtUtils::CBuilder::Platform::VMS; +-$ExtUtils::CBuilder::Platform::VMS::VERSION = '0.280224'; ++$ExtUtils::CBuilder::Platform::VMS::VERSION = '0.280225'; + use warnings; + use strict; + use ExtUtils::CBuilder::Base; +diff --git a/lib/ExtUtils/CBuilder/Platform/Windows.pm b/lib/ExtUtils/CBuilder/Platform/Windows.pm +index b95592d..80b8f29 100644 +--- a/lib/ExtUtils/CBuilder/Platform/Windows.pm ++++ b/lib/ExtUtils/CBuilder/Platform/Windows.pm +@@ -1,5 +1,5 @@ + package ExtUtils::CBuilder::Platform::Windows; +-$ExtUtils::CBuilder::Platform::Windows::VERSION = '0.280224'; ++$ExtUtils::CBuilder::Platform::Windows::VERSION = '0.280225'; + use strict; + use warnings; + +@@ -151,7 +151,7 @@ sub link { + # if running in perl source tree, look for libs there, not installed + my $lddlflags = $cf->{lddlflags}; + my $perl_src = $self->perl_src(); +- $lddlflags =~ s/\Q$cf->{archlibexp}\E[\\\/]CORE/$perl_src/ if $perl_src; ++ $lddlflags =~ s/\Q$cf->{archlibexp}\E[\\\/]CORE/$perl_src\/lib\/CORE/ if $perl_src; + + my %spec = ( + srcdir => $to, +diff --git a/lib/ExtUtils/CBuilder/Platform/Windows/BCC.pm b/lib/ExtUtils/CBuilder/Platform/Windows/BCC.pm +index cd93b72..513c4ac 100644 +--- a/lib/ExtUtils/CBuilder/Platform/Windows/BCC.pm ++++ b/lib/ExtUtils/CBuilder/Platform/Windows/BCC.pm +@@ -1,5 +1,5 @@ + package ExtUtils::CBuilder::Platform::Windows::BCC; +-$ExtUtils::CBuilder::Platform::Windows::BCC::VERSION = '0.280224'; ++$ExtUtils::CBuilder::Platform::Windows::BCC::VERSION = '0.280225'; + use strict; + use warnings; + +diff --git a/lib/ExtUtils/CBuilder/Platform/Windows/GCC.pm b/lib/ExtUtils/CBuilder/Platform/Windows/GCC.pm +index 5f219f2..19851df 100644 +--- a/lib/ExtUtils/CBuilder/Platform/Windows/GCC.pm ++++ b/lib/ExtUtils/CBuilder/Platform/Windows/GCC.pm +@@ -1,5 +1,5 @@ + package ExtUtils::CBuilder::Platform::Windows::GCC; +-$ExtUtils::CBuilder::Platform::Windows::GCC::VERSION = '0.280224'; ++$ExtUtils::CBuilder::Platform::Windows::GCC::VERSION = '0.280225'; + use warnings; + use strict; + +diff --git a/lib/ExtUtils/CBuilder/Platform/Windows/MSVC.pm b/lib/ExtUtils/CBuilder/Platform/Windows/MSVC.pm +index f14988e..c8d675f 100644 +--- a/lib/ExtUtils/CBuilder/Platform/Windows/MSVC.pm ++++ b/lib/ExtUtils/CBuilder/Platform/Windows/MSVC.pm +@@ -1,5 +1,5 @@ + package ExtUtils::CBuilder::Platform::Windows::MSVC; +-$ExtUtils::CBuilder::Platform::Windows::MSVC::VERSION = '0.280224'; ++$ExtUtils::CBuilder::Platform::Windows::MSVC::VERSION = '0.280225'; + use warnings; + use strict; + +diff --git a/lib/ExtUtils/CBuilder/Platform/aix.pm b/lib/ExtUtils/CBuilder/Platform/aix.pm +index 949ef53..488d3e6 100644 +--- a/lib/ExtUtils/CBuilder/Platform/aix.pm ++++ b/lib/ExtUtils/CBuilder/Platform/aix.pm +@@ -1,5 +1,5 @@ + package ExtUtils::CBuilder::Platform::aix; +-$ExtUtils::CBuilder::Platform::aix::VERSION = '0.280224'; ++$ExtUtils::CBuilder::Platform::aix::VERSION = '0.280225'; + use warnings; + use strict; + use ExtUtils::CBuilder::Platform::Unix; +diff --git a/lib/ExtUtils/CBuilder/Platform/android.pm b/lib/ExtUtils/CBuilder/Platform/android.pm +index 5940922..b9e6af3 100644 +--- a/lib/ExtUtils/CBuilder/Platform/android.pm ++++ b/lib/ExtUtils/CBuilder/Platform/android.pm +@@ -1,5 +1,5 @@ + package ExtUtils::CBuilder::Platform::android; +-$ExtUtils::CBuilder::Platform::android::VERSION = '0.280224'; ++$ExtUtils::CBuilder::Platform::android::VERSION = '0.280225'; + use warnings; + use strict; + use File::Spec; +diff --git a/lib/ExtUtils/CBuilder/Platform/cygwin.pm b/lib/ExtUtils/CBuilder/Platform/cygwin.pm +index c020e44..339840f 100644 +--- a/lib/ExtUtils/CBuilder/Platform/cygwin.pm ++++ b/lib/ExtUtils/CBuilder/Platform/cygwin.pm +@@ -1,5 +1,5 @@ + package ExtUtils::CBuilder::Platform::cygwin; +-$ExtUtils::CBuilder::Platform::cygwin::VERSION = '0.280224'; ++$ExtUtils::CBuilder::Platform::cygwin::VERSION = '0.280225'; + use warnings; + use strict; + use File::Spec; +diff --git a/lib/ExtUtils/CBuilder/Platform/darwin.pm b/lib/ExtUtils/CBuilder/Platform/darwin.pm +index 324c268..04a87da 100644 +--- a/lib/ExtUtils/CBuilder/Platform/darwin.pm ++++ b/lib/ExtUtils/CBuilder/Platform/darwin.pm +@@ -1,5 +1,5 @@ + package ExtUtils::CBuilder::Platform::darwin; +-$ExtUtils::CBuilder::Platform::darwin::VERSION = '0.280224'; ++$ExtUtils::CBuilder::Platform::darwin::VERSION = '0.280225'; + use warnings; + use strict; + use ExtUtils::CBuilder::Platform::Unix; +diff --git a/lib/ExtUtils/CBuilder/Platform/dec_osf.pm b/lib/ExtUtils/CBuilder/Platform/dec_osf.pm +index 0eb098f..d503e86 100644 +--- a/lib/ExtUtils/CBuilder/Platform/dec_osf.pm ++++ b/lib/ExtUtils/CBuilder/Platform/dec_osf.pm +@@ -1,5 +1,5 @@ + package ExtUtils::CBuilder::Platform::dec_osf; +-$ExtUtils::CBuilder::Platform::dec_osf::VERSION = '0.280224'; ++$ExtUtils::CBuilder::Platform::dec_osf::VERSION = '0.280225'; + use warnings; + use strict; + use ExtUtils::CBuilder::Platform::Unix; +diff --git a/lib/ExtUtils/CBuilder/Platform/os2.pm b/lib/ExtUtils/CBuilder/Platform/os2.pm +index 19047b9..8d0e3eb 100644 +--- a/lib/ExtUtils/CBuilder/Platform/os2.pm ++++ b/lib/ExtUtils/CBuilder/Platform/os2.pm +@@ -1,5 +1,5 @@ + package ExtUtils::CBuilder::Platform::os2; +-$ExtUtils::CBuilder::Platform::os2::VERSION = '0.280224'; ++$ExtUtils::CBuilder::Platform::os2::VERSION = '0.280225'; + use warnings; + use strict; + use ExtUtils::CBuilder::Platform::Unix; +diff --git a/t/00-have-compiler.t b/t/00-have-compiler.t +index 1661812..1073277 100644 +--- a/t/00-have-compiler.t ++++ b/t/00-have-compiler.t +@@ -26,14 +26,34 @@ ok( $b, "got CBuilder object" ) or diag $@; + + # test missing compiler + { +-my $b1 = ExtUtils::CBuilder->new(quiet => 1); +-configure_fake_missing_compilers($b1); +-is( $b1->have_compiler, 0, "have_compiler: fake missing cc" ); ++ ++ my $b1 = ExtUtils::CBuilder->new(quiet => 1); ++ ++ configure_fake_missing_compilers($b1); ++ ++ # This will fork a child that will print ++ # 'Can't exec "djaadjfkadjkfajdf"' ++ # or similar on STDERR; so make sure fd2 is temporarily closed before ++ # the fork ++ open(my $orig_err, ">&", \*STDERR) or die "Can't dup STDERR: $!"; ++ close(STDERR); ++ my $res = $b1->have_compiler; ++ open(STDERR, ">&", $orig_err) or die "Can't dup \$orig_err $!"; ++ close($orig_err); ++ ++ is($res, 0, "have_compiler: fake missing cc" ); + } + { +-my $b2 = ExtUtils::CBuilder->new(quiet => 1); +-configure_fake_missing_compilers($b2); +-is( $b2->have_cplusplus, 0, "have_cplusplus: fake missing c++" ); ++ my $b2 = ExtUtils::CBuilder->new(quiet => 1); ++ configure_fake_missing_compilers($b2); ++ ++ open(my $orig_err, ">&", \*STDERR) or die "Can't dup STDERR: $!"; ++ close(STDERR); ++ my $res = $b2->have_cplusplus; ++ open(STDERR, ">&", $orig_err) or die "Can't dup \$orig_err $!"; ++ close($orig_err); ++ ++ is($res, 0, "have_cplusplus: fake missing c++" ); + } + + # test found compiler +diff --git a/t/02-link.t b/t/02-link.t +index 31ee918..0c64619 100644 +--- a/t/02-link.t ++++ b/t/02-link.t +@@ -19,8 +19,8 @@ my ($source_file, $object_file, $exe_file); + my $b = ExtUtils::CBuilder->new(quiet => $quiet); + + # test plan +-if ($^O eq 'MSWin32') { +- plan skip_all => "link_executable() is not implemented yet on Win32"; ++if ($^O =~ / ^ ( MSWin32 | os390 ) $ /xi) { ++ plan skip_all => "link_executable() is not implemented yet on $^O"; + } + elsif ( ! $b->have_compiler ) { + plan skip_all => "no compiler available for testing"; diff --git a/SPECS/perl-ExtUtils-CBuilder.spec b/SPECS/perl-ExtUtils-CBuilder.spec new file mode 100644 index 0000000..6c9c6e6 --- /dev/null +++ b/SPECS/perl-ExtUtils-CBuilder.spec @@ -0,0 +1,128 @@ +%{?scl:%scl_package perl-ExtUtils-CBuilder} + +%global base_version 0.280224 +Name: %{?scl_prefix}perl-ExtUtils-CBuilder +# Compete with perl.spec +Epoch: 1 +# Mimic perl.spec +Version: 0.280225 +Release: 366%{?dist} +Summary: Compile and link C code for Perl modules +License: GPL+ or Artistic +Group: Development/Libraries +URL: http://search.cpan.org/dist/ExtUtils-CBuilder/ +Source0: http://www.cpan.org/authors/id/A/AM/AMBS/ExtUtils-CBuilder-%{base_version}.tar.gz +# Link XS modules to libperl.so with EU::CBuilder on Linux, bug #960048 +Patch0: ExtUtils-CBuilder-0.280219-Link-XS-modules-to-libperl.so-with-EU-CBuilder-on-Li.patch +# Unbundled from perl 5.24.0 +Patch1: ExtUtils-CBuilder-0.280224-Upgrade-to-0.280225.patch +BuildArch: noarch +BuildRequires: findutils +BuildRequires: make +BuildRequires: %{?scl_prefix}perl +BuildRequires: %{?scl_prefix}perl-generators +BuildRequires: %{?scl_prefix}perl(ExtUtils::MakeMaker) +BuildRequires: %{?scl_prefix}perl(strict) +BuildRequires: %{?scl_prefix}perl(warnings) +# Run-time: +BuildRequires: %{?scl_prefix}perl(Config) +BuildRequires: %{?scl_prefix}perl(Cwd) +BuildRequires: %{?scl_prefix}perl(DynaLoader) +# ExtUtils::Mksymlists 6.30 not used at test time +BuildRequires: %{?scl_prefix}perl(File::Basename) +BuildRequires: %{?scl_prefix}perl(File::Path) +BuildRequires: %{?scl_prefix}perl(File::Spec) >= 3.13 +# File::Spec::Functions not used at test time +BuildRequires: %{?scl_prefix}perl(File::Temp) +# IO::File not used at test time +BuildRequires: %{?scl_prefix}perl(IPC::Cmd) +BuildRequires: %{?scl_prefix}perl(Perl::OSType) >= 1 +BuildRequires: %{?scl_prefix}perl(Text::ParseWords) +BuildRequires: %{?scl_prefix}perl(vars) +BuildRequires: %{?scl_prefix}perl-devel +# Tests: +BuildRequires: %{?scl_prefix}perl(Test::More) >= 0.47 +# vmsish not used +Requires: %{?scl_prefix}perl(:MODULE_COMPAT_%(%{?scl:scl enable %{scl} '}eval "$(perl -V:version)";echo $version%{?scl:'})) +Requires: %{?scl_prefix}perl(DynaLoader) +Requires: %{?scl_prefix}perl(ExtUtils::Mksymlists) >= 6.30 +Requires: %{?scl_prefix}perl(File::Spec) >= 3.13 +Requires: %{?scl_prefix}perl(Perl::OSType) >= 1 +Requires: %{?scl_prefix}perl-devel + +# Remove under-specified dependencies +%if 0%{?rhel} < 7 +# RPM 4.8 style +%{?filter_setup: +%filter_from_requires /^%{?scl_prefix}perl(File::Spec)$/d +%filter_from_requires /^%{?scl_prefix}perl(Perl::OSType)$/d +%?perl_default_filter +} +%else +%{?perl_default_filter} +%global __requires_exclude %{?__requires_exclude:%__requires_exclude|}^%{?scl_prefix}perl\\((File::Spec|Perl::OSType)\\)$ +%endif + +%description +This module can build the C portions of Perl modules by invoking the +appropriate compilers and linkers in a cross-platform manner. It was motivated +by the Module::Build project, but may be useful for other purposes as well. + +%prep +%setup -q -n ExtUtils-CBuilder-%{base_version} +%patch0 -p1 +%patch1 -p1 + +%build +%{?scl:scl enable %{scl} '}perl Makefile.PL INSTALLDIRS=vendor && make %{?_smp_mflags}%{?scl:'} + +%install +%{?scl:scl enable %{scl} '}make pure_install DESTDIR=$RPM_BUILD_ROOT%{?scl:'} +find $RPM_BUILD_ROOT -type f -name .packlist -delete +%{_fixperms} $RPM_BUILD_ROOT/* + +%check +%{?scl:scl enable %{scl} '}make test%{?scl:'} + +%files +%doc LICENSE +%doc Changes CONTRIBUTING README README.mkdn +%{perl_vendorlib}/* +%{_mandir}/man3/* + +%changelog +* Mon Jul 11 2016 Petr Pisar - 1:0.280225-366 +- SCL + +* Sat May 14 2016 Jitka Plesnikova - 1:0.280225-365 +- Increase release to favour standalone package + +* Wed May 11 2016 Jitka Plesnikova - 1:0.280225-1 +- 0.280225 bump in order to dual-live with perl 5.24 + +* Thu Feb 04 2016 Fedora Release Engineering - 1:0.280224-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Mon Oct 12 2015 Petr Pisar - 1:0.280224-1 +- 0.280224 bump + +* Thu Jun 18 2015 Fedora Release Engineering - 1:0.280223-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Thu Jun 04 2015 Jitka Plesnikova - 1:0.280223-2 +- Perl 5.22 rebuild + +* Thu Jun 04 2015 Petr Pisar - 1:0.280223-1 +- 0.280223 bump + +* Wed Jun 03 2015 Jitka Plesnikova - 1:0.280221-2 +- Perl 5.22 rebuild + +* Wed May 06 2015 Petr Pisar - 1:0.280221-1 +- 0.280221 bump in order to dual-live with perl 5.22 + +* Mon Nov 03 2014 Petr Pisar - 1:0.280220-1 +- 0.280220 bump + +* Thu Sep 18 2014 Petr Pisar - 1:0.280219-1 +- Specfile autogenerated by cpanspec 1.78.