Initial import of perl-Package-Stash-XS-0.17-2
This is a back-end for Package::Stash, which provides the functionality in a way that's less buggy and much faster. It will be used by default if it's installed, and should be preferred in all environments with a compiler.
This commit is contained in:
parent
1f2ac15863
commit
4f3db6b0c1
1
.gitignore
vendored
1
.gitignore
vendored
@ -0,0 +1 @@
|
||||
/Package-Stash-XS-0.17.tar.gz
|
26
Package-Stash-XS-0.17-no-Test-Requires.patch
Normal file
26
Package-Stash-XS-0.17-no-Test-Requires.patch
Normal file
@ -0,0 +1,26 @@
|
||||
diff -up Package-Stash-XS-0.17/t/20-leaks.t.orig Package-Stash-XS-0.17/t/20-leaks.t
|
||||
--- Package-Stash-XS-0.17/t/20-leaks.t.orig 2010-11-17 12:13:08.000000000 +0000
|
||||
+++ Package-Stash-XS-0.17/t/20-leaks.t 2010-11-17 12:13:36.937820610 +0000
|
||||
@@ -4,7 +4,8 @@ use warnings;
|
||||
use lib 't/lib';
|
||||
use Test::More;
|
||||
use Test::Fatal;
|
||||
-use Test::Requires 'Test::LeakTrace';
|
||||
+eval "use Test::LeakTrace";
|
||||
+plan skip_all => "Test::LeakTrace required for this test" if $@;
|
||||
|
||||
use Package::Stash;
|
||||
use Symbol;
|
||||
diff -up Package-Stash-XS-0.17/t/21-leaks-debug.t.orig Package-Stash-XS-0.17/t/21-leaks-debug.t
|
||||
--- Package-Stash-XS-0.17/t/21-leaks-debug.t.orig 2010-11-17 12:13:08.000000000 +0000
|
||||
+++ Package-Stash-XS-0.17/t/21-leaks-debug.t 2010-11-17 12:13:50.722253597 +0000
|
||||
@@ -4,7 +4,8 @@ use warnings;
|
||||
use lib 't/lib';
|
||||
use Test::More;
|
||||
use Test::Fatal;
|
||||
-use Test::Requires 'Test::LeakTrace';
|
||||
+eval "use Test::LeakTrace";
|
||||
+plan skip_all => "Test::LeakTrace required for this test" if $@;
|
||||
|
||||
BEGIN { $^P |= 0x210 } # PERLDBf_SUBLINE
|
||||
|
206
Package-Stash-XS-0.17-old-Test::More.patch
Normal file
206
Package-Stash-XS-0.17-old-Test::More.patch
Normal file
@ -0,0 +1,206 @@
|
||||
diff -up Package-Stash-XS-0.17/t/01-basic.t.orig Package-Stash-XS-0.17/t/01-basic.t
|
||||
--- Package-Stash-XS-0.17/t/01-basic.t.orig 2010-11-16 21:41:01.000000000 +0000
|
||||
+++ Package-Stash-XS-0.17/t/01-basic.t 2010-11-17 12:11:30.370843769 +0000
|
||||
@@ -2,7 +2,7 @@
|
||||
use strict;
|
||||
use warnings;
|
||||
use lib 't/lib';
|
||||
-use Test::More;
|
||||
+use Test::More tests => 122;
|
||||
use Test::Fatal;
|
||||
|
||||
use Package::Stash;
|
||||
@@ -416,5 +416,3 @@ like(exception {
|
||||
"list_all_symbols CODE",
|
||||
);
|
||||
}
|
||||
-
|
||||
-done_testing;
|
||||
diff -up Package-Stash-XS-0.17/t/02-extension.t.orig Package-Stash-XS-0.17/t/02-extension.t
|
||||
--- Package-Stash-XS-0.17/t/02-extension.t.orig 2010-11-16 21:41:01.000000000 +0000
|
||||
+++ Package-Stash-XS-0.17/t/02-extension.t 2010-11-17 12:11:30.370843769 +0000
|
||||
@@ -2,7 +2,7 @@
|
||||
use strict;
|
||||
use warnings;
|
||||
use lib 't/lib';
|
||||
-use Test::More;
|
||||
+use Test::More tests => 15;
|
||||
use Test::Fatal;
|
||||
|
||||
{
|
||||
@@ -70,5 +70,3 @@ is(exception {
|
||||
}, undef, '... created %Foo::baz successfully');
|
||||
|
||||
ok(!defined($Foo::{baz}), '... the %baz slot has still not been created');
|
||||
-
|
||||
-done_testing;
|
||||
diff -up Package-Stash-XS-0.17/t/03-io.t.orig Package-Stash-XS-0.17/t/03-io.t
|
||||
--- Package-Stash-XS-0.17/t/03-io.t.orig 2010-11-16 21:41:01.000000000 +0000
|
||||
+++ Package-Stash-XS-0.17/t/03-io.t 2010-11-17 12:11:30.373843863 +0000
|
||||
@@ -2,7 +2,7 @@
|
||||
use strict;
|
||||
use warnings;
|
||||
use lib 't/lib';
|
||||
-use Test::More;
|
||||
+use Test::More tests => 11;
|
||||
use Test::Fatal;
|
||||
|
||||
{
|
||||
@@ -47,5 +47,3 @@ use Package::Stash;
|
||||
ok($stash->has_symbol('baz'), "has baz");
|
||||
is($stash->get_symbol('baz'), *Foo::foo{IO}, "got the right baz");
|
||||
}
|
||||
-
|
||||
-done_testing;
|
||||
diff -up Package-Stash-XS-0.17/t/04-get.t.orig Package-Stash-XS-0.17/t/04-get.t
|
||||
--- Package-Stash-XS-0.17/t/04-get.t.orig 2010-11-16 21:41:01.000000000 +0000
|
||||
+++ Package-Stash-XS-0.17/t/04-get.t 2010-11-17 12:11:30.395844555 +0000
|
||||
@@ -2,7 +2,7 @@
|
||||
use strict;
|
||||
use warnings;
|
||||
use lib 't/lib';
|
||||
-use Test::More;
|
||||
+use Test::More tests => 36;
|
||||
|
||||
use Package::Stash;
|
||||
use Scalar::Util;
|
||||
@@ -182,5 +182,3 @@ use Scalar::Util;
|
||||
"stash has the right variable");
|
||||
}
|
||||
}
|
||||
-
|
||||
-done_testing;
|
||||
diff -up Package-Stash-XS-0.17/t/05-isa.t.orig Package-Stash-XS-0.17/t/05-isa.t
|
||||
--- Package-Stash-XS-0.17/t/05-isa.t.orig 2010-11-16 21:41:01.000000000 +0000
|
||||
+++ Package-Stash-XS-0.17/t/05-isa.t 2010-11-17 12:11:30.396844586 +0000
|
||||
@@ -2,7 +2,7 @@
|
||||
use strict;
|
||||
use warnings;
|
||||
use lib 't/lib';
|
||||
-use Test::More;
|
||||
+use Test::More tests => 1;
|
||||
|
||||
use Package::Stash;
|
||||
|
||||
@@ -17,6 +17,7 @@ use Package::Stash;
|
||||
my $stash = Package::Stash->new('Foo');
|
||||
my @ISA = ('Bar');
|
||||
@{$stash->get_or_add_symbol('@ISA')} = @ISA;
|
||||
+SKIP: {
|
||||
+skip "Test::More >= 0.88 needed for isa_ok() tests on classes", 1 if $Test::More::VERSION < 0.88;
|
||||
isa_ok('Foo', 'Bar');
|
||||
-
|
||||
-done_testing;
|
||||
+}
|
||||
diff -up Package-Stash-XS-0.17/t/06-addsub.t.orig Package-Stash-XS-0.17/t/06-addsub.t
|
||||
--- Package-Stash-XS-0.17/t/06-addsub.t.orig 2010-11-16 21:41:01.000000000 +0000
|
||||
+++ Package-Stash-XS-0.17/t/06-addsub.t 2010-11-17 12:11:30.396844586 +0000
|
||||
@@ -2,7 +2,7 @@
|
||||
use strict;
|
||||
use warnings;
|
||||
use lib 't/lib';
|
||||
-use Test::More;
|
||||
+use Test::More tests => 7;
|
||||
use Test::Fatal;
|
||||
|
||||
BEGIN { $^P |= 0x210 } # PERLDBf_SUBLINE
|
||||
@@ -42,5 +42,3 @@ $foo_stash->add_symbol(
|
||||
|
||||
is $DB::sub{'Foo::dunk'}, sprintf "%s:%d-%d", "FileName", 100, 199,
|
||||
'... got the right %DB::sub value for dunk with specified args';
|
||||
-
|
||||
-done_testing;
|
||||
diff -up Package-Stash-XS-0.17/t/07-edge-cases.t.orig Package-Stash-XS-0.17/t/07-edge-cases.t
|
||||
--- Package-Stash-XS-0.17/t/07-edge-cases.t.orig 2010-11-16 21:41:01.000000000 +0000
|
||||
+++ Package-Stash-XS-0.17/t/07-edge-cases.t 2010-11-17 12:11:30.397844618 +0000
|
||||
@@ -2,7 +2,7 @@
|
||||
use strict;
|
||||
use warnings;
|
||||
use lib 't/lib';
|
||||
-use Test::More;
|
||||
+use Test::More tests => 11;
|
||||
|
||||
use Package::Stash;
|
||||
|
||||
@@ -51,5 +51,3 @@ is(ref($constant), 'CODE', "expanded a c
|
||||
# was here)
|
||||
is(ref($stash->get_symbol('$glob')), '', "nothing yet");
|
||||
is(ref($stash->get_or_add_symbol('$glob')), 'SCALAR', "got an empty scalar");
|
||||
-
|
||||
-done_testing;
|
||||
diff -up Package-Stash-XS-0.17/t/10-synopsis.t.orig Package-Stash-XS-0.17/t/10-synopsis.t
|
||||
--- Package-Stash-XS-0.17/t/10-synopsis.t.orig 2010-11-16 21:41:01.000000000 +0000
|
||||
+++ Package-Stash-XS-0.17/t/10-synopsis.t 2010-11-17 12:11:30.397844618 +0000
|
||||
@@ -2,7 +2,7 @@
|
||||
use strict;
|
||||
use warnings;
|
||||
use lib 't/lib';
|
||||
-use Test::More;
|
||||
+use Test::More tests => 3;
|
||||
|
||||
use Package::Stash;
|
||||
|
||||
@@ -15,5 +15,3 @@ $stash->add_symbol('%foo', {bar => 1});
|
||||
ok(!$stash->has_symbol('$foo'), "doesn't have anything in scalar slot");
|
||||
my $namespace = $stash->namespace;
|
||||
is_deeply(*{ $namespace->{foo} }{HASH}, {bar => 1}, "namespace works properly");
|
||||
-
|
||||
-done_testing;
|
||||
diff -up Package-Stash-XS-0.17/t/20-leaks.t.orig Package-Stash-XS-0.17/t/20-leaks.t
|
||||
--- Package-Stash-XS-0.17/t/20-leaks.t.orig 2010-11-16 21:41:01.000000000 +0000
|
||||
+++ Package-Stash-XS-0.17/t/20-leaks.t 2010-11-17 12:12:10.737112352 +0000
|
||||
@@ -9,6 +9,8 @@ use Test::Requires 'Test::LeakTrace';
|
||||
use Package::Stash;
|
||||
use Symbol;
|
||||
|
||||
+plan tests => 25;
|
||||
+
|
||||
{
|
||||
package Bar;
|
||||
}
|
||||
@@ -136,7 +138,10 @@ use Symbol;
|
||||
ok($foo->has_symbol('@ISA'));
|
||||
is(ref($foo->get_symbol('@ISA')), 'ARRAY');
|
||||
is_deeply($foo->get_symbol('@ISA'), ['Exporter']);
|
||||
+ SKIP: {
|
||||
+ skip "Test::More >= 0.88 needed for isa_ok() tests on classes", 1 if $Test::More::VERSION < 0.88;
|
||||
isa_ok('Foo', 'Exporter');
|
||||
+ }
|
||||
}
|
||||
|
||||
{
|
||||
@@ -190,5 +195,3 @@ use Symbol;
|
||||
eval { $foo->get_or_add_symbol('&blorg') };
|
||||
} "doesn't leak on errors";
|
||||
}
|
||||
-
|
||||
-done_testing;
|
||||
diff -up Package-Stash-XS-0.17/t/21-leaks-debug.t.orig Package-Stash-XS-0.17/t/21-leaks-debug.t
|
||||
--- Package-Stash-XS-0.17/t/21-leaks-debug.t.orig 2010-11-16 21:41:01.000000000 +0000
|
||||
+++ Package-Stash-XS-0.17/t/21-leaks-debug.t 2010-11-17 12:12:31.234756439 +0000
|
||||
@@ -11,6 +11,8 @@ BEGIN { $^P |= 0x210 } # PERLDBf_SUBLINE
|
||||
use Package::Stash;
|
||||
use Symbol;
|
||||
|
||||
+plan tests => 25;
|
||||
+
|
||||
{
|
||||
package Bar;
|
||||
}
|
||||
@@ -138,7 +140,10 @@ use Symbol;
|
||||
ok($foo->has_symbol('@ISA'));
|
||||
is(ref($foo->get_symbol('@ISA')), 'ARRAY');
|
||||
is_deeply($foo->get_symbol('@ISA'), ['Exporter']);
|
||||
+ SKIP: {
|
||||
+ skip "Test::More >= 0.88 needed for isa_ok() tests on classes", 1 if $Test::More::VERSION < 0.88;
|
||||
isa_ok('Foo', 'Exporter');
|
||||
+ }
|
||||
}
|
||||
|
||||
{
|
||||
@@ -192,5 +197,3 @@ use Symbol;
|
||||
eval { $foo->get_or_add_symbol('&blorg') };
|
||||
} "doesn't leak on errors";
|
||||
}
|
||||
-
|
||||
-done_testing;
|
30
Package-Stash-XS-0.17-old-eumm.patch
Normal file
30
Package-Stash-XS-0.17-old-eumm.patch
Normal file
@ -0,0 +1,30 @@
|
||||
--- Package-Stash-XS-0.17/Makefile.PL 2010-11-16 21:41:01.000000000 +0000
|
||||
+++ Package-Stash-XS-0.17/Makefile.PL 2010-11-17 11:08:49.844078063 +0000
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
BEGIN { require 5.8.3; }
|
||||
|
||||
-use ExtUtils::MakeMaker 6.31;
|
||||
+use ExtUtils::MakeMaker 6.17;
|
||||
|
||||
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
'Test::Requires' => '0'
|
||||
},
|
||||
'CONFIGURE_REQUIRES' => {
|
||||
- 'ExtUtils::MakeMaker' => '6.31'
|
||||
+ 'ExtUtils::MakeMaker' => '6.17'
|
||||
},
|
||||
'DISTNAME' => 'Package-Stash-XS',
|
||||
'EXE_FILES' => [],
|
||||
@@ -47,6 +47,9 @@
|
||||
delete $WriteMakefileArgs{CONFIGURE_REQUIRES}
|
||||
unless eval { ExtUtils::MakeMaker->VERSION(6.52) };
|
||||
|
||||
+delete $WriteMakefileArgs{LICENSE}
|
||||
+ unless eval { ExtUtils::MakeMaker->VERSION(6.31) };
|
||||
+
|
||||
WriteMakefile(%WriteMakefileArgs);
|
||||
|
||||
|
87
perl-Package-Stash-XS.spec
Normal file
87
perl-Package-Stash-XS.spec
Normal file
@ -0,0 +1,87 @@
|
||||
Name: perl-Package-Stash-XS
|
||||
Version: 0.17
|
||||
Release: 2%{?dist}
|
||||
Summary: Faster and more correct implementation of the Package::Stash API
|
||||
Group: Development/Libraries
|
||||
License: GPL+ or Artistic
|
||||
URL: http://search.cpan.org/dist/Package-Stash-XS/
|
||||
Source0: http://search.cpan.org/CPAN/authors/id/D/DO/DOY/Package-Stash-XS-%{version}.tar.gz
|
||||
Patch0: Package-Stash-XS-0.17-old-eumm.patch
|
||||
Patch1: Package-Stash-XS-0.17-old-Test::More.patch
|
||||
Patch2: Package-Stash-XS-0.17-no-Test-Requires.patch
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||
BuildRequires: perl >= 3:5.8.3
|
||||
BuildRequires: perl(ExtUtils::MakeMaker)
|
||||
BuildRequires: perl(Test::EOL)
|
||||
BuildRequires: perl(Test::Fatal)
|
||||
BuildRequires: perl(Test::More)
|
||||
BuildRequires: perl(Test::NoTabs)
|
||||
BuildRequires: perl(Test::Pod)
|
||||
BuildRequires: perl(Test::Pod::Coverage)
|
||||
# Some test suite requirements not universally available
|
||||
%if "%{?rhel}" != "4" && "%{?rhel}" != "5"
|
||||
BuildRequires: perl(Test::LeakTrace) >= 0.11
|
||||
%endif
|
||||
%if "%{?rhel}" != "4"
|
||||
BuildRequires: perl(Pod::Coverage::TrustPod)
|
||||
BuildRequires: perl(Test::Requires)
|
||||
%endif
|
||||
Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
|
||||
|
||||
# Don't "provide" private Perl libs
|
||||
%{?perl_default_filter}
|
||||
|
||||
%description
|
||||
This is a back-end for Package::Stash, which provides the functionality in a
|
||||
way that's less buggy and much faster. It will be used by default if it's
|
||||
installed, and should be preferred in all environments with a compiler.
|
||||
|
||||
%prep
|
||||
%setup -q -n Package-Stash-XS-%{version}
|
||||
|
||||
# Don't really need ExtUtils::MakeMaker >= 6.31
|
||||
%if "%{?rhel}" == "4" || "%{?rhel}" == "5"
|
||||
%patch0 -p1
|
||||
%endif
|
||||
|
||||
# Patch test suite to work with old Test::More versions if necessary
|
||||
%if "%{?rhel}" == "4" || "%{?rhel}" == "5"
|
||||
%patch1 -p1
|
||||
%endif
|
||||
|
||||
# Work around absence of Test::Requires in EPEL-4
|
||||
%if "%{?rhel}" == "4"
|
||||
%patch2 -p1
|
||||
%endif
|
||||
|
||||
%build
|
||||
perl Makefile.PL INSTALLDIRS=vendor OPTIMIZE="%{optflags}"
|
||||
make %{?_smp_mflags}
|
||||
|
||||
%install
|
||||
rm -rf %{buildroot}
|
||||
make pure_install DESTDIR=%{buildroot}
|
||||
find %{buildroot} -type f -name .packlist -exec rm -f {} ';'
|
||||
find %{buildroot} -type f -name '*.bs' -a -size 0 -exec rm -f {} ';'
|
||||
find %{buildroot} -depth -type d -exec rmdir {} ';' 2>/dev/null
|
||||
chmod -R u+w %{buildroot}
|
||||
|
||||
%check
|
||||
make test RELEASE_TESTING=1
|
||||
|
||||
%clean
|
||||
rm -rf %{buildroot}
|
||||
|
||||
%files
|
||||
%defattr(-,root,root,-)
|
||||
%doc Changes LICENSE README
|
||||
%{perl_vendorarch}/auto/Package/
|
||||
%{perl_vendorarch}/Package/
|
||||
%{_mandir}/man3/Package::Stash::XS.3pm*
|
||||
|
||||
%changelog
|
||||
* Wed Nov 17 2010 Paul Howarth <paul@city-fan.org> - 0.17-2
|
||||
- Santitize spec for Fedora submission
|
||||
|
||||
* Wed Nov 17 2010 Paul Howarth <paul@city-fan.org> - 0.17-1
|
||||
- Initial RPM build
|
Loading…
Reference in New Issue
Block a user