Compare commits

..

No commits in common. "c8-stream-5.3" and "c8-stream-5.24" have entirely different histories.

7 changed files with 168 additions and 4924 deletions

2
.gitignore vendored
View File

@ -1 +1 @@
SOURCES/ExtUtils-ParseXS-3.35.tar.gz
SOURCES/ExtUtils-ParseXS-3.30.tar.gz

View File

@ -1 +1 @@
5b40949a789d0ac52a32cbfe622be5018f700ed8 SOURCES/ExtUtils-ParseXS-3.35.tar.gz
b44ef93e1357a47b6f3aee3684f1a63dc2abf207 SOURCES/ExtUtils-ParseXS-3.30.tar.gz

View File

@ -0,0 +1,139 @@
diff --git a/lib/ExtUtils/ParseXS.pm b/lib/ExtUtils/ParseXS.pm
index f67a82d..32d74e1 100644
--- a/lib/ExtUtils/ParseXS.pm
+++ b/lib/ExtUtils/ParseXS.pm
@@ -11,7 +11,7 @@ use Symbol;
our $VERSION;
BEGIN {
- $VERSION = '3.30';
+ $VERSION = '3.31';
}
use ExtUtils::ParseXS::Constants $VERSION;
use ExtUtils::ParseXS::CountLines $VERSION;
@@ -579,7 +579,7 @@ EOF
} );
}
else {
- print "\t$class *";
+ print "\t" . map_type($self, "$class *");
$self->{var_types}->{"THIS"} = "$class *";
$self->generate_init( {
type => "$class *",
diff --git a/lib/ExtUtils/ParseXS/Constants.pm b/lib/ExtUtils/ParseXS/Constants.pm
index 8856551..2319a24 100644
--- a/lib/ExtUtils/ParseXS/Constants.pm
+++ b/lib/ExtUtils/ParseXS/Constants.pm
@@ -3,7 +3,7 @@ use strict;
use warnings;
use Symbol;
-our $VERSION = '3.30';
+our $VERSION = '3.31';
=head1 NAME
diff --git a/lib/ExtUtils/ParseXS/CountLines.pm b/lib/ExtUtils/ParseXS/CountLines.pm
index 2f45292..222a95c 100644
--- a/lib/ExtUtils/ParseXS/CountLines.pm
+++ b/lib/ExtUtils/ParseXS/CountLines.pm
@@ -1,7 +1,7 @@
package ExtUtils::ParseXS::CountLines;
use strict;
-our $VERSION = '3.30';
+our $VERSION = '3.31';
our $SECTION_END_MARKER;
diff --git a/lib/ExtUtils/ParseXS/Eval.pm b/lib/ExtUtils/ParseXS/Eval.pm
index 8c075a3..7315332 100644
--- a/lib/ExtUtils/ParseXS/Eval.pm
+++ b/lib/ExtUtils/ParseXS/Eval.pm
@@ -2,7 +2,7 @@ package ExtUtils::ParseXS::Eval;
use strict;
use warnings;
-our $VERSION = '3.30';
+our $VERSION = '3.31';
=head1 NAME
diff --git a/lib/ExtUtils/ParseXS/Utilities.pm b/lib/ExtUtils/ParseXS/Utilities.pm
index 4de9f4e..41a9f6d 100644
--- a/lib/ExtUtils/ParseXS/Utilities.pm
+++ b/lib/ExtUtils/ParseXS/Utilities.pm
@@ -5,7 +5,7 @@ use Exporter;
use File::Spec;
use ExtUtils::ParseXS::Constants ();
-our $VERSION = '3.30';
+our $VERSION = '3.31';
our (@ISA, @EXPORT_OK);
@ISA = qw(Exporter);
diff --git a/lib/ExtUtils/Typemaps.pm b/lib/ExtUtils/Typemaps.pm
index a16ae06..48d623e 100644
--- a/lib/ExtUtils/Typemaps.pm
+++ b/lib/ExtUtils/Typemaps.pm
@@ -2,7 +2,7 @@ package ExtUtils::Typemaps;
use 5.006001;
use strict;
use warnings;
-our $VERSION = '3.30';
+our $VERSION = '3.31';
require ExtUtils::ParseXS;
require ExtUtils::ParseXS::Constants;
diff --git a/lib/ExtUtils/Typemaps/Cmd.pm b/lib/ExtUtils/Typemaps/Cmd.pm
index ccd5efe..ffed504 100644
--- a/lib/ExtUtils/Typemaps/Cmd.pm
+++ b/lib/ExtUtils/Typemaps/Cmd.pm
@@ -2,7 +2,7 @@ package ExtUtils::Typemaps::Cmd;
use 5.006001;
use strict;
use warnings;
-our $VERSION = '3.30';
+our $VERSION = '3.31';
use ExtUtils::Typemaps;
diff --git a/lib/ExtUtils/Typemaps/InputMap.pm b/lib/ExtUtils/Typemaps/InputMap.pm
index 67ea1c2..86c646d 100644
--- a/lib/ExtUtils/Typemaps/InputMap.pm
+++ b/lib/ExtUtils/Typemaps/InputMap.pm
@@ -2,7 +2,7 @@ package ExtUtils::Typemaps::InputMap;
use 5.006001;
use strict;
use warnings;
-our $VERSION = '3.30';
+our $VERSION = '3.31';
=head1 NAME
diff --git a/lib/ExtUtils/Typemaps/OutputMap.pm b/lib/ExtUtils/Typemaps/OutputMap.pm
index 42cbe5c..32cf9f9 100644
--- a/lib/ExtUtils/Typemaps/OutputMap.pm
+++ b/lib/ExtUtils/Typemaps/OutputMap.pm
@@ -2,7 +2,7 @@ package ExtUtils::Typemaps::OutputMap;
use 5.006001;
use strict;
use warnings;
-our $VERSION = '3.30';
+our $VERSION = '3.31';
=head1 NAME
diff --git a/lib/ExtUtils/Typemaps/Type.pm b/lib/ExtUtils/Typemaps/Type.pm
index 7e0f4ba..abe93cb 100644
--- a/lib/ExtUtils/Typemaps/Type.pm
+++ b/lib/ExtUtils/Typemaps/Type.pm
@@ -4,7 +4,7 @@ use strict;
use warnings;
require ExtUtils::Typemaps;
-our $VERSION = '3.30';
+our $VERSION = '3.31';
=head1 NAME

View File

@ -0,0 +1,10 @@
diff -up ExtUtils-ParseXS/lib/ExtUtils/xsubpp.cve ExtUtils-ParseXS/lib/ExtUtils/xsubpp
--- ExtUtils-ParseXS/lib/ExtUtils/xsubpp.cve 2016-02-05 16:26:05.000000000 +0100
+++ ExtUtils-ParseXS/lib/ExtUtils/xsubpp 2016-08-02 13:39:39.791316159 +0200
@@ -1,5 +1,6 @@
#!perl
use 5.006;
+BEGIN { pop @INC if $INC[-1] eq '.' }
use strict;
eval {
require ExtUtils::ParseXS;

File diff suppressed because it is too large Load Diff

View File

@ -1,126 +0,0 @@
From 4f8996e1ea5a5f24b1d5b4462f56a917daa67a47 Mon Sep 17 00:00:00 2001
From: Jitka Plesnikova <jplesnik@redhat.com>
Date: Fri, 26 Apr 2019 15:59:36 +0200
Subject: [PATCH] Upgrade to 3.40
The generated prototype (with PROTOTYPES: ENABLE) would include
OUTLIST parameters, but these aren't arguments to the perl function.
---
lib/ExtUtils/ParseXS.pm | 4 ++--
lib/ExtUtils/ParseXS/Constants.pm | 2 +-
lib/ExtUtils/ParseXS/CountLines.pm | 2 +-
lib/ExtUtils/ParseXS/Eval.pm | 2 +-
lib/ExtUtils/ParseXS/Utilities.pm | 2 +-
t/002-more.t | 7 +++++--
6 files changed, 11 insertions(+), 8 deletions(-)
diff --git a/lib/ExtUtils/ParseXS.pm b/lib/ExtUtils/ParseXS.pm
index e1f0940..fba7f4d 100644
--- a/lib/ExtUtils/ParseXS.pm
+++ b/lib/ExtUtils/ParseXS.pm
@@ -11,7 +11,7 @@ use Symbol;
our $VERSION;
BEGIN {
- $VERSION = '3.39';
+ $VERSION = '3.40';
require ExtUtils::ParseXS::Constants; ExtUtils::ParseXS::Constants->VERSION($VERSION);
require ExtUtils::ParseXS::CountLines; ExtUtils::ParseXS::CountLines->VERSION($VERSION);
require ExtUtils::ParseXS::Utilities; ExtUtils::ParseXS::Utilities->VERSION($VERSION);
@@ -467,7 +467,7 @@ EOM
$self->{defaults}->{$args[$i]} = $2;
$self->{defaults}->{$args[$i]} =~ s/"/\\"/g;
}
- $self->{proto_arg}->[$i+1] = '$';
+ $self->{proto_arg}->[$i+1] = '$' unless $only_C_inlist_ref->{$args[$i]};
}
my $min_args = $num_args - $extra_args;
$report_args =~ s/"/\\"/g;
diff --git a/lib/ExtUtils/ParseXS/Constants.pm b/lib/ExtUtils/ParseXS/Constants.pm
index 45b5674..2c392e3 100644
--- a/lib/ExtUtils/ParseXS/Constants.pm
+++ b/lib/ExtUtils/ParseXS/Constants.pm
@@ -3,7 +3,7 @@ use strict;
use warnings;
use Symbol;
-our $VERSION = '3.39';
+our $VERSION = '3.40';
=head1 NAME
diff --git a/lib/ExtUtils/ParseXS/CountLines.pm b/lib/ExtUtils/ParseXS/CountLines.pm
index 5b48449..a9258f9 100644
--- a/lib/ExtUtils/ParseXS/CountLines.pm
+++ b/lib/ExtUtils/ParseXS/CountLines.pm
@@ -1,7 +1,7 @@
package ExtUtils::ParseXS::CountLines;
use strict;
-our $VERSION = '3.39';
+our $VERSION = '3.40';
our $SECTION_END_MARKER;
diff --git a/lib/ExtUtils/ParseXS/Eval.pm b/lib/ExtUtils/ParseXS/Eval.pm
index 9eba5e5..840bac7 100644
--- a/lib/ExtUtils/ParseXS/Eval.pm
+++ b/lib/ExtUtils/ParseXS/Eval.pm
@@ -2,7 +2,7 @@ package ExtUtils::ParseXS::Eval;
use strict;
use warnings;
-our $VERSION = '3.39';
+our $VERSION = '3.40';
=head1 NAME
diff --git a/lib/ExtUtils/ParseXS/Utilities.pm b/lib/ExtUtils/ParseXS/Utilities.pm
index ae25b33..58f3856 100644
--- a/lib/ExtUtils/ParseXS/Utilities.pm
+++ b/lib/ExtUtils/ParseXS/Utilities.pm
@@ -5,7 +5,7 @@ use Exporter;
use File::Spec;
use ExtUtils::ParseXS::Constants ();
-our $VERSION = '3.39';
+our $VERSION = '3.40';
our (@ISA, @EXPORT_OK);
@ISA = qw(Exporter);
diff --git a/t/002-more.t b/t/002-more.t
index 4aaa3ab..e982290 100644
--- a/t/002-more.t
+++ b/t/002-more.t
@@ -9,7 +9,7 @@ use ExtUtils::CBuilder;
use attributes;
use overload;
-plan tests => 29;
+plan tests => 30;
my ($source_file, $obj_file, $lib_file);
@@ -48,7 +48,7 @@ SKIP: {
}
SKIP: {
- skip "no dynamic loading", 25
+ skip "no dynamic loading", 26
if !$b->have_compiler || !$Config{usedl};
my $module = 'XSMore';
$lib_file = $b->link( objects => $obj_file, module_name => $module );
@@ -92,6 +92,9 @@ SKIP: {
is_deeply [XSMore::outlist()], [ord('a'), ord('b')], 'the OUTLIST keyword';
+ # eval so compile-time sees any prototype
+ is_deeply [ eval 'XSMore::outlist()' ], [ord('a'), ord('b')], 'OUTLIST prototypes';
+
is XSMore::len("foo"), 3, 'the length keyword';
is XSMore::sum(5, 9), 14, 'the INCLUDE_COMMAND directive';
--
2.20.1

View File

@ -1,27 +1,27 @@
%global base_version 3.35
%global base_version 3.30
Name: perl-ExtUtils-ParseXS
# Epoch to compete with perl.spec
Epoch: 1
Version: 3.40
Release: 439%{?dist}
Version: 3.31
Release: 369%{?dist}
Summary: Module and a script for converting Perl XS code into C code
License: GPL+ or Artistic
URL: https://metacpan.org/release/ExtUtils-ParseXS
Source0: https://cpan.metacpan.org/authors/id/S/SM/SMUELLER/ExtUtils-ParseXS-%{base_version}.tar.gz
# Unbundled from perl 5.28.0-RC1
Patch0: ExtUtils-ParseXS-3.35-Upgrade-to-3.39.patch
# Unbundled from perl 5.29.10
# Fix generating Perl prototypes for XS functions with OUTLIST parameters,
# RT#133654
Patch1: ExtUtils-ParseXS-3.39-Upgrade-to-3.40.patch
Group: Development/Libraries
URL: http://search.cpan.org/dist/ExtUtils-ParseXS/
Source0: http://www.cpan.org/authors/id/S/SM/SMUELLER/ExtUtils-ParseXS-%{base_version}.tar.gz
# Unbundled from perl 5.24.0
Patch0: ExtUtils-ParseXS-3.30-Upgrade-to-3.31.patch
# Avoid loading optional modules from default . (CVE-2016-1238)
Patch1: ExtUtils-ParseXS-3.31-CVE-2016-1238-avoid-loading-optional-modules-from.patch
BuildArch: noarch
BuildRequires: coreutils
BuildRequires: findutils
BuildRequires: make
BuildRequires: perl
BuildRequires: perl-devel
BuildRequires: perl-generators
BuildRequires: perl-interpreter
BuildRequires: perl(Config)
BuildRequires: perl(ExtUtils::MakeMaker) >= 6.76
BuildRequires: perl(ExtUtils::MakeMaker) >= 6.46
BuildRequires: perl(File::Spec)
BuildRequires: perl(strict)
BuildRequires: perl(warnings)
@ -59,11 +59,12 @@ the glue necessary to let Perl access those functions.
%patch1 -p1
%build
perl Makefile.PL INSTALLDIRS=vendor NO_PACKLIST=1
perl Makefile.PL INSTALLDIRS=vendor
make %{?_smp_mflags}
%install
make pure_install DESTDIR=$RPM_BUILD_ROOT
find $RPM_BUILD_ROOT -type f -name .packlist -delete
%{_fixperms} $RPM_BUILD_ROOT/*
# Do not install xsubpp twice, RT#117289
rm $RPM_BUILD_ROOT%{perl_vendorlib}/ExtUtils/xsubpp
@ -80,45 +81,8 @@ make test
%{_mandir}/man3/*
%changelog
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.40-439
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Thu May 30 2019 Jitka Plesnikova <jplesnik@redhat.com> - 1:3.40-438
- Increase release to favour standalone package
* Thu May 02 2019 Jitka Plesnikova <jplesnik@redhat.com> - 1:3.40-1
- Upgrade to 3.40 as provided in perl-5.29.10
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.39-419
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Wed Dec 05 2018 Petr Pisar <ppisar@redhat.com> - 1:3.39-418
- Fix generating Perl prototypes for XS functions with OUTLIST parameters
(RT#133654)
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.39-417
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Wed Jun 27 2018 Jitka Plesnikova <jplesnik@redhat.com> - 1:3.39-416
- Increase release to favour standalone package
* Thu May 24 2018 Jitka Plesnikova <jplesnik@redhat.com> - 1:3.39-1
- Upgrade to 3.39 as provided in perl-5.28.0-RC1
* Thu Feb 08 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.35-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Tue Aug 01 2017 Petr Pisar <ppisar@redhat.com> - 1:3.35-1
- 3.35 bump
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.34-394
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Sat Jun 03 2017 Jitka Plesnikova <jplesnik@redhat.com> - 1:3.34-393
- Perl 5.26 rebuild
* Thu May 11 2017 Petr Pisar <ppisar@redhat.com> - 1:3.34-1
- Upgrade to 3.34 as provided in perl-5.25.12
* Fri Mar 29 2019 Jitka Plesnikova <jplesnik@redhat.com> - 1:3.31-369
- Rebuild with enable hardening (bug #1636329)
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.31-368
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild