Import
This commit is contained in:
parent
feb6693d1b
commit
8f43a4c40e
1
.gitignore
vendored
1
.gitignore
vendored
@ -1 +1,2 @@
|
||||
ExtUtils-CBuilder-0.21.tar.gz
|
||||
/ExtUtils-CBuilder-0.280219.tar.gz
|
||||
|
||||
@ -0,0 +1,65 @@
|
||||
From 0c575416d2889e92c6c0d487ec2b52b45882557a Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
|
||||
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
|
||||
|
||||
<https://bugzilla.redhat.com/show_bug.cgi?id=960048>
|
||||
<http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=327585#50>
|
||||
|
||||
Signed-off-by: Petr Písař <ppisar@redhat.com>
|
||||
---
|
||||
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
|
||||
|
||||
@ -1 +0,0 @@
|
||||
Package obsoleted by the base perl package in 5.10.0.
|
||||
77
perl-ExtUtils-CBuilder.spec
Normal file
77
perl-ExtUtils-CBuilder.spec
Normal file
@ -0,0 +1,77 @@
|
||||
Name: perl-ExtUtils-CBuilder
|
||||
# Compete with perl.spec
|
||||
Epoch: 1
|
||||
# Mimic perl.spec
|
||||
Version: 0.280219
|
||||
Release: 1%{?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-%{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
|
||||
BuildArch: noarch
|
||||
BuildRequires: perl
|
||||
BuildRequires: perl(ExtUtils::MakeMaker)
|
||||
BuildRequires: perl(strict)
|
||||
BuildRequires: perl(warnings)
|
||||
# Run-time:
|
||||
BuildRequires: perl(Config)
|
||||
BuildRequires: perl(Cwd)
|
||||
BuildRequires: perl(DynaLoader)
|
||||
# ExtUtils::Mksymlists 6.30 not used at test time
|
||||
BuildRequires: perl(File::Basename)
|
||||
BuildRequires: perl(File::Path)
|
||||
BuildRequires: perl(File::Spec) >= 3.13
|
||||
# File::Spec::Functions not used at test time
|
||||
BuildRequires: perl(File::Temp)
|
||||
# IO::File not used at test time
|
||||
BuildRequires: perl(IPC::Cmd)
|
||||
BuildRequires: perl(Perl::OSType) >= 1
|
||||
BuildRequires: perl(Text::ParseWords)
|
||||
BuildRequires: perl(vars)
|
||||
BuildRequires: perl-devel
|
||||
# Tests:
|
||||
BuildRequires: perl(Test::More) >= 0.47
|
||||
# vmsish not used
|
||||
Requires: perl(:MODULE_COMPAT_%(eval "`perl -V:version`"; echo $version))
|
||||
Requires: perl(DynaLoader)
|
||||
Requires: perl(ExtUtils::Mksymlists) >= 6.30
|
||||
Requires: perl(File::Spec) >= 3.13
|
||||
Requires: perl(Perl::OSType) >= 1
|
||||
Requires: perl-devel
|
||||
|
||||
%{?perl_default_filter}
|
||||
# Remove under-specified dependencies
|
||||
%global __requires_exclude %{?__requires_exclude:%__requires_exclude|}^perl\\((File::Spec|Perl::OSType)\\)$
|
||||
|
||||
%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-%{version}
|
||||
%patch0 -p1
|
||||
|
||||
%build
|
||||
perl Makefile.PL INSTALLDIRS=vendor
|
||||
make %{?_smp_mflags}
|
||||
|
||||
%install
|
||||
make pure_install DESTDIR=$RPM_BUILD_ROOT
|
||||
find $RPM_BUILD_ROOT -type f -name .packlist -exec rm -f {} \;
|
||||
%{_fixperms} $RPM_BUILD_ROOT/*
|
||||
|
||||
%check
|
||||
make test
|
||||
|
||||
%files
|
||||
%doc Changes CONTRIBUTING LICENSE README README.mkdn
|
||||
%{perl_vendorlib}/*
|
||||
%{_mandir}/man3/*
|
||||
|
||||
%changelog
|
||||
* Thu Sep 18 2014 Petr Pisar <ppisar@redhat.com> - 1:0.280219-1
|
||||
- Specfile autogenerated by cpanspec 1.78.
|
||||
Loading…
Reference in New Issue
Block a user