move libperl.so and %{perl_vendorarm} modules under libperl package [release 5.16.3-2mamba;Sat Apr 12 2014]
This commit is contained in:
parent
ba0f1cf1a6
commit
a5496dd23d
@ -1,2 +1,9 @@
|
||||
# perl
|
||||
|
||||
Perl is a high-level programming language with roots in C, sed, awk and shell scripting.
|
||||
Perl is good at handling processes and files, and is especially good at handling text.
|
||||
Perl's hallmarks are practicality and efficiency.
|
||||
While it is used to do a lot of different things, Perl's most common applications (and what it excels at) are probably system administration utilities and web programming.
|
||||
A large proportion of the CGI scripts on the web are written in Perl.
|
||||
You need the perl package installed on your system so that your system can handle Perl scripts.
|
||||
|
||||
|
2435
perl-5.10.1-cross_compile.patch
Normal file
2435
perl-5.10.1-cross_compile.patch
Normal file
File diff suppressed because it is too large
Load Diff
12
perl-5.10.1-norootcheck.patch
Normal file
12
perl-5.10.1-norootcheck.patch
Normal file
@ -0,0 +1,12 @@
|
||||
diff -Nru perl-5.10.1.orig/installperl perl-5.10.1/installperl
|
||||
--- perl-5.10.1.orig/installperl 2009-08-14 00:40:10.000000000 +0200
|
||||
+++ perl-5.10.1/installperl 2009-09-11 12:30:00.000000000 +0200
|
||||
@@ -235,8 +235,6 @@
|
||||
|
||||
# Do some quick sanity checks.
|
||||
|
||||
-if (!$opts{notify} && $d_dosuid && $>) { die "You must run as root to install suidperl\n"; }
|
||||
-
|
||||
$installbin || die "No installbin directory in config.sh\n";
|
||||
-d $installbin || mkpath($installbin, $opts{verbose}, 0777);
|
||||
-d $installbin || $opts{notify} || die "$installbin is not a directory\n";
|
280
perl-5.8.7-can_2005_0448.patch
Normal file
280
perl-5.8.7-can_2005_0448.patch
Normal file
@ -0,0 +1,280 @@
|
||||
--- perl-5.8.7/lib/File/Path.pm 2005-05-05 18:00:32.000000000 +0200
|
||||
+++ perl-5.8.7-fix/lib/File/Path.pm 2005-06-06 11:19:45.000000000 +0200
|
||||
@@ -72,33 +72,17 @@
|
||||
|
||||
=item *
|
||||
|
||||
-a boolean value, which if TRUE will cause C<rmtree> to
|
||||
-skip any files to which you do not have delete access
|
||||
-(if running under VMS) or write access (if running
|
||||
-under another OS). This will change in the future when
|
||||
-a criterion for 'delete permission' under OSs other
|
||||
-than VMS is settled. (defaults to FALSE)
|
||||
+a boolean value, which if FALSE (the default for non-root users) will
|
||||
+cause C<rmtree> to adjust the mode of directories (if required) prior
|
||||
+to attempting to remove the contents. Note that on interruption or
|
||||
+failure of C<rmtree>, directories may be left with more permissive
|
||||
+modes for the owner.
|
||||
|
||||
=back
|
||||
|
||||
It returns the number of files successfully deleted. Symlinks are
|
||||
simply deleted and not followed.
|
||||
|
||||
-B<NOTE:> There are race conditions internal to the implementation of
|
||||
-C<rmtree> making it unsafe to use on directory trees which may be
|
||||
-altered or moved while C<rmtree> is running, and in particular on any
|
||||
-directory trees with any path components or subdirectories potentially
|
||||
-writable by untrusted users.
|
||||
-
|
||||
-Additionally, if the third parameter is not TRUE and C<rmtree> is
|
||||
-interrupted, it may leave files and directories with permissions altered
|
||||
-to allow deletion (and older versions of this module would even set
|
||||
-files and directories to world-read/writable!)
|
||||
-
|
||||
-Note also that the occurrence of errors in C<rmtree> can be determined I<only>
|
||||
-by trapping diagnostic messages using C<$SIG{__WARN__}>; it is not apparent
|
||||
-from the return value.
|
||||
-
|
||||
=head1 DIAGNOSTICS
|
||||
|
||||
=over 4
|
||||
@@ -124,6 +108,7 @@
|
||||
use Exporter ();
|
||||
use strict;
|
||||
use warnings;
|
||||
+use Cwd 'getcwd';
|
||||
|
||||
our $VERSION = "1.07";
|
||||
our @ISA = qw( Exporter );
|
||||
@@ -172,111 +157,128 @@
|
||||
@created;
|
||||
}
|
||||
|
||||
-sub rmtree {
|
||||
- my($roots, $verbose, $safe) = @_;
|
||||
- my(@files);
|
||||
- my($count) = 0;
|
||||
- $verbose ||= 0;
|
||||
- $safe ||= 0;
|
||||
-
|
||||
- if ( defined($roots) && length($roots) ) {
|
||||
- $roots = [$roots] unless ref $roots;
|
||||
- }
|
||||
- else {
|
||||
- carp "No root path(s) specified\n";
|
||||
- return 0;
|
||||
- }
|
||||
-
|
||||
- my($root);
|
||||
- foreach $root (@{$roots}) {
|
||||
- if ($Is_MacOS) {
|
||||
- $root = ":$root" if $root !~ /:/;
|
||||
- $root =~ s#([^:])\z#$1:#;
|
||||
- } else {
|
||||
- $root =~ s#/\z##;
|
||||
+sub _rmtree;
|
||||
+sub _rmtree
|
||||
+{
|
||||
+ my ($path, $prefix, $up, $up_dev, $up_ino, $verbose, $safe) = @_;
|
||||
+
|
||||
+ my ($dev, $ino) = lstat $path or return 0;
|
||||
+ unless (-d _)
|
||||
+ {
|
||||
+ print "unlink $prefix$path\n" if $verbose;
|
||||
+ unless (unlink $path)
|
||||
+ {
|
||||
+ carp "Can't remove file $prefix$path ($!)";
|
||||
+ return 0;
|
||||
}
|
||||
- (undef, undef, my $rp) = lstat $root or next;
|
||||
- $rp &= 07777; # don't forget setuid, setgid, sticky bits
|
||||
- if ( -d _ ) {
|
||||
- # notabene: 0700 is for making readable in the first place,
|
||||
- # it's also intended to change it to writable in case we have
|
||||
- # to recurse in which case we are better than rm -rf for
|
||||
- # subtrees with strange permissions
|
||||
- chmod($rp | 0700, ($Is_VMS ? VMS::Filespec::fileify($root) : $root))
|
||||
- or carp "Can't make directory $root read+writeable: $!"
|
||||
- unless $safe;
|
||||
-
|
||||
- if (opendir my $d, $root) {
|
||||
- no strict 'refs';
|
||||
- if (!defined ${"\cTAINT"} or ${"\cTAINT"}) {
|
||||
- # Blindly untaint dir names
|
||||
- @files = map { /^(.*)$/s ; $1 } readdir $d;
|
||||
- } else {
|
||||
- @files = readdir $d;
|
||||
- }
|
||||
- closedir $d;
|
||||
- }
|
||||
- else {
|
||||
- carp "Can't read $root: $!";
|
||||
- @files = ();
|
||||
- }
|
||||
+ return 1;
|
||||
+ }
|
||||
|
||||
- # Deleting large numbers of files from VMS Files-11 filesystems
|
||||
- # is faster if done in reverse ASCIIbetical order
|
||||
- @files = reverse @files if $Is_VMS;
|
||||
- ($root = VMS::Filespec::unixify($root)) =~ s#\.dir\z## if $Is_VMS;
|
||||
- if ($Is_MacOS) {
|
||||
- @files = map("$root$_", @files);
|
||||
- } else {
|
||||
- @files = map("$root/$_", grep $_!~/^\.{1,2}\z/s,@files);
|
||||
- }
|
||||
- $count += rmtree(\@files,$verbose,$safe);
|
||||
- if ($safe &&
|
||||
- ($Is_VMS ? !&VMS::Filespec::candelete($root) : !-w $root)) {
|
||||
- print "skipped $root\n" if $verbose;
|
||||
- next;
|
||||
- }
|
||||
- chmod $rp | 0700, $root
|
||||
- or carp "Can't make directory $root writeable: $!"
|
||||
- if $force_writeable;
|
||||
- print "rmdir $root\n" if $verbose;
|
||||
- if (rmdir $root) {
|
||||
- ++$count;
|
||||
- }
|
||||
- else {
|
||||
- carp "Can't remove directory $root: $!";
|
||||
- chmod($rp, ($Is_VMS ? VMS::Filespec::fileify($root) : $root))
|
||||
- or carp("and can't restore permissions to "
|
||||
- . sprintf("0%o",$rp) . "\n");
|
||||
- }
|
||||
- }
|
||||
- else {
|
||||
- if ($safe &&
|
||||
- ($Is_VMS ? !&VMS::Filespec::candelete($root)
|
||||
- : !(-l $root || -w $root)))
|
||||
- {
|
||||
- print "skipped $root\n" if $verbose;
|
||||
- next;
|
||||
- }
|
||||
- chmod $rp | 0600, $root
|
||||
- or carp "Can't make file $root writeable: $!"
|
||||
- if $force_writeable;
|
||||
- print "unlink $root\n" if $verbose;
|
||||
- # delete all versions under VMS
|
||||
- for (;;) {
|
||||
- unless (unlink $root) {
|
||||
- carp "Can't unlink file $root: $!";
|
||||
- if ($force_writeable) {
|
||||
- chmod $rp, $root
|
||||
- or carp("and can't restore permissions to "
|
||||
- . sprintf("0%o",$rp) . "\n");
|
||||
- }
|
||||
- last;
|
||||
- }
|
||||
- ++$count;
|
||||
- last unless $Is_VMS && lstat $root;
|
||||
- }
|
||||
+ unless (chdir $path)
|
||||
+ {
|
||||
+ carp "Can't chdir to $prefix$path ($!)";
|
||||
+ return 0;
|
||||
+ }
|
||||
+
|
||||
+ # avoid a race condition where a directory may be replaced by a
|
||||
+ # symlink between the lstat and the chdir
|
||||
+ my ($new_dev, $new_ino, $perm) = stat '.';
|
||||
+ unless ("$new_dev:$new_ino" eq "$dev:$ino")
|
||||
+ {
|
||||
+ croak "Directory $prefix$path changed before chdir, aborting";
|
||||
+ }
|
||||
+
|
||||
+ $perm &= 07777;
|
||||
+ my $nperm = $perm | 0700;
|
||||
+ unless ($safe or $nperm == $perm or chmod $nperm, '.')
|
||||
+ {
|
||||
+ carp "Can't make directory $prefix$path read+writeable ($!)";
|
||||
+ $nperm = $perm;
|
||||
+ }
|
||||
+
|
||||
+ my $count = 0;
|
||||
+ if (opendir my $dir, '.')
|
||||
+ {
|
||||
+ my $entry;
|
||||
+ while (defined ($entry = readdir $dir))
|
||||
+ {
|
||||
+ next if $entry =~ /^\.\.?$/;
|
||||
+ $entry =~ /^(.*)$/s; $entry = $1; # untaint
|
||||
+ $count += _rmtree $entry, "$prefix$path/", '..', $dev, $ino,
|
||||
+ $verbose, $safe;
|
||||
}
|
||||
+
|
||||
+ closedir $dir;
|
||||
+ }
|
||||
+
|
||||
+ # restore directory permissions if required (in case the rmdir
|
||||
+ # below fails) now, while we're still in the directory and may do
|
||||
+ # so without a race via '.'
|
||||
+ unless ($nperm == $perm or chmod $perm, '.')
|
||||
+ {
|
||||
+ carp "Can't restore permissions on directory $prefix$path ($!)";
|
||||
+ }
|
||||
+
|
||||
+ # don't leave the caller in an unexpected directory
|
||||
+ unless (chdir $up)
|
||||
+ {
|
||||
+ croak "Can't return to $up from $prefix$path ($!)";
|
||||
+ }
|
||||
+
|
||||
+ # ensure that a chdir .. didn't take us somewhere other than
|
||||
+ # where we expected (see CVE-2002-0435)
|
||||
+ unless (($new_dev, $new_ino) = stat '.'
|
||||
+ and "$new_dev:$new_ino" eq "$up_dev:$up_ino")
|
||||
+ {
|
||||
+ croak "Previous directory $up changed since entering $prefix$path";
|
||||
+ }
|
||||
+
|
||||
+ print "rmdir $prefix$path\n" if $verbose;
|
||||
+ if (rmdir $path)
|
||||
+ {
|
||||
+ $count++;
|
||||
+ }
|
||||
+ else
|
||||
+ {
|
||||
+ carp "Can't remove directory $prefix$path ($!)";
|
||||
+ }
|
||||
+
|
||||
+ return $count;
|
||||
+}
|
||||
+
|
||||
+sub rmtree
|
||||
+{
|
||||
+ my ($p, $verbose, $safe) = @_;
|
||||
+ $p = [] unless defined $p and length $p;
|
||||
+ $p = [ $p ] unless ref $p;
|
||||
+ my @paths = grep defined && length, @$p;
|
||||
+
|
||||
+ # default to "unsafe" for non-root (will chmod dirs)
|
||||
+ $safe = $> ? 0 : 1 unless defined $safe;
|
||||
+
|
||||
+ unless (@paths)
|
||||
+ {
|
||||
+ carp "No root path(s) specified";
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
+ my $oldpwd = getcwd or do {
|
||||
+ carp "Can't fetch initial working directory";
|
||||
+ return;
|
||||
+ };
|
||||
+
|
||||
+ my ($dev, $ino) = stat '.' or do {
|
||||
+ carp "Can't stat initial working directory";
|
||||
+ return;
|
||||
+ };
|
||||
+
|
||||
+ # untaint
|
||||
+ for ($oldpwd) { /^(.*)$/s; $_ = $1 }
|
||||
+
|
||||
+ my $count = 0;
|
||||
+ for my $path (@paths)
|
||||
+ {
|
||||
+ $count += _rmtree $path, '', $oldpwd, $dev, $ino, $verbose, $safe;
|
||||
}
|
||||
|
||||
$count;
|
14
perl-5.8.7-can_2005_3962.patch
Normal file
14
perl-5.8.7-can_2005_3962.patch
Normal file
@ -0,0 +1,14 @@
|
||||
--- perl-5.8.7/sv.c 2005-05-27 12:38:11.000000000 +0200
|
||||
+++ perl-5.8.7/sv.c_secfix 2006-01-17 09:22:10.000000000 +0100
|
||||
@@ -8519,7 +8519,10 @@
|
||||
if (EXPECT_NUMBER(q, width)) {
|
||||
if (*q == '$') {
|
||||
++q;
|
||||
- efix = width;
|
||||
+ if (width > INT_MAX)
|
||||
+ efix=INT_MAX;
|
||||
+ else
|
||||
+ efix = width;
|
||||
} else {
|
||||
goto gotwidth;
|
||||
}
|
59
perl-5.8.8-can_2007_5116.patch
Normal file
59
perl-5.8.8-can_2007_5116.patch
Normal file
@ -0,0 +1,59 @@
|
||||
--- perl-5.8.8/regcomp.c.orig 2007-11-07 09:45:20.000000000 +0100
|
||||
+++ perl-5.8.8/regcomp.c 2007-11-07 09:54:17.000000000 +0100
|
||||
@@ -135,7 +135,8 @@ typedef struct RExC_state_t {
|
||||
I32 extralen;
|
||||
I32 seen_zerolen;
|
||||
I32 seen_evals;
|
||||
- I32 utf8;
|
||||
+ I32 utf8; /* pattern is utf8 or not */
|
||||
+ I32 orig_utf8; /* pattern was originally utf8 */
|
||||
#if ADD_TO_REGEXEC
|
||||
char *starttry; /* -Dr: where regtry was called. */
|
||||
#define RExC_starttry (pRExC_state->starttry)
|
||||
@@ -161,6 +162,7 @@ typedef struct RExC_state_t {
|
||||
#define RExC_seen_zerolen (pRExC_state->seen_zerolen)
|
||||
#define RExC_seen_evals (pRExC_state->seen_evals)
|
||||
#define RExC_utf8 (pRExC_state->utf8)
|
||||
+#define RExC_orig_utf8 (pRExC_state->orig_utf8)
|
||||
|
||||
#define ISMULT1(c) ((c) == '*' || (c) == '+' || (c) == '?')
|
||||
#define ISMULT2(s) ((*s) == '*' || (*s) == '+' || (*s) == '?' || \
|
||||
@@ -1749,15 +1751,17 @@ Perl_pregcomp(pTHX_ char *exp, char *xen
|
||||
if (exp == NULL)
|
||||
FAIL("NULL regexp argument");
|
||||
|
||||
- RExC_utf8 = pm->op_pmdynflags & PMdf_CMP_UTF8;
|
||||
+ RExC_orig_utf8 = RExC_utf8 = pm->op_pmdynflags & PMdf_CMP_UTF8;
|
||||
|
||||
- RExC_precomp = exp;
|
||||
DEBUG_r({
|
||||
if (!PL_colorset) reginitcolors();
|
||||
PerlIO_printf(Perl_debug_log, "%sCompiling REx%s `%s%*s%s'\n",
|
||||
PL_colors[4],PL_colors[5],PL_colors[0],
|
||||
- (int)(xend - exp), RExC_precomp, PL_colors[1]);
|
||||
+ (int)(xend - exp), exp, PL_colors[1]);
|
||||
});
|
||||
+
|
||||
+redo_first_pass:
|
||||
+ RExC_precomp = exp;
|
||||
RExC_flags = pm->op_pmflags;
|
||||
RExC_sawback = 0;
|
||||
|
||||
@@ -1783,6 +1787,17 @@ Perl_pregcomp(pTHX_ char *exp, char *xen
|
||||
RExC_precomp = Nullch;
|
||||
return(NULL);
|
||||
}
|
||||
+ if (RExC_utf8 && !RExC_orig_utf8) {
|
||||
+ STRLEN len = xend-exp;
|
||||
+ DEBUG_r(PerlIO_printf(Perl_debug_log,
|
||||
+ "UTF8 mismatch! Converting to utf8 for resizing and compile\n"));
|
||||
+ exp = (char*)Perl_bytes_to_utf8(aTHX_ (U8*)exp, &len);
|
||||
+ xend = exp + len;
|
||||
+ RExC_orig_utf8 = RExC_utf8;
|
||||
+ SAVEFREEPV(exp);
|
||||
+ goto redo_first_pass;
|
||||
+ }
|
||||
+
|
||||
DEBUG_r(PerlIO_printf(Perl_debug_log, "size %"IVdf" ", (IV)RExC_size));
|
||||
|
||||
/* Small enough for pointer-storage convention?
|
12
perl-5.8.8-fix_makedepend.patch
Normal file
12
perl-5.8.8-fix_makedepend.patch
Normal file
@ -0,0 +1,12 @@
|
||||
diff -Nru perl-5.8.8.orig/makedepend.SH perl-5.8.8/makedepend.SH
|
||||
--- perl-5.8.8.orig/makedepend.SH 2003-06-05 20:11:10.000000000 +0200
|
||||
+++ perl-5.8.8/makedepend.SH 2007-06-29 04:06:56.000000000 +0200
|
||||
@@ -166,7 +166,7 @@
|
||||
-e '/^#.*<stdin>/d' \
|
||||
-e '/^#.*<builtin>/d' \
|
||||
-e '/^#.*<built-in>/d' \
|
||||
- -e '/^#.*<command line>/d' \
|
||||
+ -e '/^#.*<command-line>/d' \
|
||||
-e '/^#.*"-"/d' \
|
||||
-e '/: file path prefix .* never used$/d' \
|
||||
-e 's#\.[0-9][0-9]*\.c#'"$file.c#" \
|
452
perl.spec
Normal file
452
perl.spec
Normal file
@ -0,0 +1,452 @@
|
||||
%define threading 1
|
||||
%define MAJver %(echo %version | cut -d. -f1)
|
||||
|
||||
%if %threading
|
||||
%define thread_arch -thread-multi
|
||||
%else
|
||||
%define thread_arch %{nil}
|
||||
%endif
|
||||
|
||||
%if "%{_host_cpu}" == "i586"
|
||||
%define perl_host i386
|
||||
%else
|
||||
%define perl_host %{_host_cpu}
|
||||
%endif
|
||||
|
||||
%if "%{_build_cpu}" == "i586"
|
||||
%define perl_build i386
|
||||
%else
|
||||
%define perl_build %{_build_cpu}
|
||||
%endif
|
||||
|
||||
%define full_arch %{perl_host}-%{_os}%{thread_arch}
|
||||
# don't change to %{_libdir} as perl is clean and has arch-dependent subdirs
|
||||
%define perl_root %{_prefix}/lib/perl5
|
||||
|
||||
# Bootstrap build (no first stage deps):
|
||||
# rpm -ba --define='bootstrap 1' perl.spec
|
||||
|
||||
Name: perl
|
||||
Version: 5.16.3
|
||||
Release: 2mamba
|
||||
Epoch: 2
|
||||
Summary: Practical Extraction and Report Language
|
||||
Group: Development/Libraries/Perl
|
||||
Vendor: openmamba
|
||||
Distribution: openmamba
|
||||
Packager: Silvan Calarco <silvan.calarco@mambasoft.it>
|
||||
URL: http://www.perl.com
|
||||
Source: http://www.cpan.org/src/%{MAJver}.0/perl-%{version}.tar.gz
|
||||
Patch0: %{name}-5.10.1-norootcheck.patch
|
||||
Patch1: %{name}-5.8.7-can_2005_0448.patch
|
||||
Patch2: %{name}-5.8.7-can_2005_3962.patch
|
||||
Patch3: %{name}-5.8.8-fix_makedepend.patch
|
||||
Patch4: %{name}-5.8.8-can_2007_5116.patch
|
||||
Patch5: %{name}-5.10.1-cross_compile.patch
|
||||
License: GPL, Artistic
|
||||
## AUTOBUILDREQ-BEGIN
|
||||
BuildRequires: glibc-devel
|
||||
BuildRequires: libdb51-devel
|
||||
BuildRequires: libgdbm-devel
|
||||
## AUTOBUILDREQ-END
|
||||
BuildRequires: sed >= 4.1.4
|
||||
BuildRequires: man-db
|
||||
%if "%{?bootstrap}" != "1"
|
||||
BuildRequires: libgdbm-devel >= 1.8.3
|
||||
Requires: libgdbm >= 1.8.3
|
||||
%endif
|
||||
Provides: perl-base
|
||||
Provides: perl(getopts.pl)
|
||||
Provides: perl(ctime.pl)
|
||||
Provides: perl(flush.pl)
|
||||
Provides: perl(find.pl)
|
||||
Provides: perl(bigint.pl)
|
||||
Provides: perl(timelocal.pl)
|
||||
#Provides: perl(attributes)
|
||||
#Provides: perl(fields)
|
||||
#Provides: perl(locale)
|
||||
#Provides: perl(subs)
|
||||
Provides: perl(Carp::Heavy)
|
||||
Obsoletes: perl-Test-Builder-Tester
|
||||
Provides: perl-Archive-Tar
|
||||
Obsoletes: perl-Archive-Tar
|
||||
Provides: perl-Module-Build
|
||||
Obsoletes: perl-Module-Build
|
||||
Provides: perl-Pod-Escapes
|
||||
Obsoletes: perl-Pod-Escapes
|
||||
Provides: perl-Pod-Simple
|
||||
Obsoletes: perl-Pod-Simple
|
||||
Provides: perl-version
|
||||
Obsoletes: perl-version
|
||||
Provides: perl-ExtUtils-CBuilder
|
||||
Obsoletes: perl-ExtUtils-CBuilder
|
||||
Provides: perl-IO-Compress-Base
|
||||
Obsoletes: perl-IO-Compress-Base
|
||||
Provides: perl-Compress-Raw-Zlib
|
||||
Obsoletes: perl-Compress-Raw-Zlib
|
||||
Provides: perl-IO-Compress-Zlib
|
||||
Obsoletes: perl-IO-Compress-Zlib
|
||||
Provides: perl-Compress-Zlib
|
||||
Obsoletes: perl-Compress-Zlib
|
||||
Provides: perl-IO-Compress-Bzip2
|
||||
Obsoletes: perl-IO-Compress-Bzip2
|
||||
Provides: perl-Compress-Raw-Bzip2
|
||||
Obsoletes: perl-Compress-Raw-Bzip2
|
||||
Provides: perl-IO-Zlib
|
||||
Obsoletes: perl-IO-Zlib
|
||||
Provides: perl-Test-Builder-Tester
|
||||
Provides: perl-CGI
|
||||
Obsoletes: perl-CGI
|
||||
Requires: lib%{name} = %{?epoch:%epoch:}%{version}-%{release}
|
||||
BuildRoot: %{_tmppath}/perl-root
|
||||
|
||||
%description
|
||||
Perl is a high-level programming language with roots in C, sed, awk and shell scripting.
|
||||
Perl is good at handling processes and files, and is especially good at handling text.
|
||||
Perl's hallmarks are practicality and efficiency.
|
||||
While it is used to do a lot of different things, Perl's most common applications (and what it excels at) are probably system administration utilities and web programming.
|
||||
A large proportion of the CGI scripts on the web are written in Perl.
|
||||
You need the perl package installed on your system so that your system can handle Perl scripts.
|
||||
|
||||
%package -n lib%{name}
|
||||
Group: System/Libraries
|
||||
Summary: Shared library and architecture dependent modules for %{name}
|
||||
|
||||
%description -n lib%{name}
|
||||
This package contains shared library and architecture dependent modules for %{name}.
|
||||
|
||||
%package -n perl-devel
|
||||
Summary: Static libraries and header for %{name}
|
||||
Group: Development/Libraries/Perl
|
||||
Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release}
|
||||
|
||||
%description -n perl-devel
|
||||
Perl is a high-level programming language with roots in C, sed, awk and shell scripting.
|
||||
Perl is good at handling processes and files, and is especially good at handling text.
|
||||
Perl's hallmarks are practicality and efficiency.
|
||||
While it is used to do a lot of different things, Perl's most common applications (and what it excels at) are probably system administration utilities and web programming.
|
||||
A large proportion of the CGI scripts on the web are written in Perl.
|
||||
You need the perl package installed on your system so that your system can handle Perl scripts.
|
||||
|
||||
This is the devel package for perl.
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
#-D -T
|
||||
#:<< ___EOF
|
||||
#%patch0 -p1
|
||||
#%patch1 -p1 -b .can_2005_0448
|
||||
%patch2 -p1 -b .can_2005_3962
|
||||
#%patch3 -p1
|
||||
#%patch4 -p1 -b .can_2007_5116
|
||||
|
||||
# Warning: don't replace perl with %{name} below
|
||||
%define __perl_requires %{_builddir}/perl-%{version}/perl_requires.sh
|
||||
# don't require any perl module
|
||||
cat > perl_requires.sh << _EOF
|
||||
#! /bin/sh
|
||||
%{_prefix}/lib/rpm/find-requires %{buildroot} %{_target_cpu} | grep -v "perl"
|
||||
_EOF
|
||||
|
||||
chmod +x perl_requires.sh
|
||||
|
||||
%build
|
||||
#:<< ___EOF
|
||||
cd %{_builddir}/%{name}-%{version}
|
||||
#%if "%{_host}" != "%{_build}"
|
||||
## unrepoducible ugly hacks to cross-compile perl
|
||||
#%{_build}-gcc -DPERL_CORE -c -fexpensive-optimizations -fomit-frame-pointer -O2 -std=c89 -O2 \
|
||||
#-fomit-frame-pointer -pipe -Wall -ansi -W -Wextra -Wdeclaration-after-statement -Wendif-labels \
|
||||
#-Wc++-compat -o generate_uudmap.o -fexpensive-optimizations -fomit-frame-pointer -O2 generate_uudmap.c
|
||||
#cd Cross
|
||||
#make patch
|
||||
#make perl OS="%{_target_vendor}-%{_target_os}%{?_gnu}" HOSTCC="%{_build}-gcc" || {
|
||||
#cd ..
|
||||
##mv lib/auto/File/Glob/Glob.so lib/auto/File/Glob/Glob.so.arm
|
||||
#cp %{_libdir}/perl5/%{version}/%{perl_build}-linux-thread-multi/auto/File/Glob/Glob.so lib/auto/File/Glob/Glob.so
|
||||
#make more2 more3 more4
|
||||
#}
|
||||
#%else
|
||||
sh Configure -des \
|
||||
-Darchname=%{perl_host}-%{_os} \
|
||||
-Dcc='%{_host}-gcc' \
|
||||
-Doptimize="%{optflags}" \
|
||||
-Dprefix=%{_prefix} \
|
||||
-Dvendorprefix=%{_prefix} \
|
||||
-Dsiteprefix=%{_prefix} \
|
||||
-Dman3ext=3pm \
|
||||
-Dcf_by=openmamba \
|
||||
-Dmyhostname=localhost \
|
||||
-Dperladmin=root@localhost \
|
||||
-Ud_csh=undef \
|
||||
-Duseshrplib \
|
||||
-Dinstallprefix=%{buildroot}%{_prefix} \
|
||||
%if %threading
|
||||
-Dusethreads
|
||||
%endif
|
||||
# -Dinc_version_list="5.8.6 5.8.5 5.8.4 5.8.3 5.8.2 5.8.1 5.8.0"
|
||||
|
||||
make lib/Config.pm
|
||||
|
||||
./configure.gnu --prefix=%{_prefix}
|
||||
|
||||
make
|
||||
%if "%{_host}" == "%{build}"
|
||||
make test
|
||||
%endif
|
||||
|
||||
%install
|
||||
cd %{_builddir}/%{name}-%{version}
|
||||
[ "%{buildroot}" != / ] && rm -rf %{buildroot}
|
||||
#mv -f lib/Config.pm lib/Config.pm.orig
|
||||
#mv -f lib/Config.pm.4install lib/Config.pm
|
||||
|
||||
make install
|
||||
|
||||
#% if "%{_host}" != "%{_build}"
|
||||
#chmod +w %{buildroot}%{_libdir}/perl5/%{version}/%{perl_host}-linux-thread-multi/auto/File/Glob/Glob.so
|
||||
#cp lib/auto/File/Glob/Glob.so.%{perl_host} %{buildroot}%{_libdir}/perl5/%{version}/%{perl_host}-linux-thread-multi/auto/File/Glob/Glob.so
|
||||
#chmod -w %{buildroot}%{_libdir}/perl5/%{version}/%{perl_host}-linux-thread-multi/auto/File/Glob/Glob.so
|
||||
#% endif
|
||||
|
||||
find %{buildroot} -type f -name ".packlist" | xargs -r rm -f
|
||||
|
||||
#mv -f lib/Config.pm lib/Config.pm.4install
|
||||
#mv -f lib/Config.pm.orig lib/Config.pm
|
||||
cp -f lib/Config.pm %{buildroot}%{perl_root}/%{version}/%{full_arch}/Config.pm
|
||||
|
||||
(cd %{buildroot}
|
||||
find usr/ -type f -not -name *.h -and -not -name *.a -printf "/%p\n" | \
|
||||
grep 'perl5/' > %{_tmppath}/perl-mainpkg
|
||||
find usr/ -type f -name *.h -printf "/%p\n" -or -name *.a -printf "/%p\n" | \
|
||||
grep "perl5/" > %{_tmppath}/perl-develpkg
|
||||
)
|
||||
|
||||
# add libperl.so symlink in /usr/lib
|
||||
%ifarch x86_64
|
||||
install -d %{buildroot}%{_libdir}
|
||||
%endif
|
||||
ln -s %{perl_root}/%{version}/%{full_arch}/CORE/libperl.so %{buildroot}%{_libdir}
|
||||
|
||||
ln -sf perl5 %{buildroot}%{_bindir}/perl
|
||||
ln -sf perl%{version} %{buildroot}%{_bindir}/perl5
|
||||
|
||||
## added sperl link to sperl%{version}
|
||||
#ln -s /usr/bin/sperl%{version} %{buildroot}/usr/bin/sperl
|
||||
|
||||
# strip 'buildroot' paths from perl configuration files
|
||||
for f in Config.pm Config_heavy.pl CORE/config.h; do
|
||||
sed -i "s,%{buildroot},,g" \
|
||||
%{buildroot}/usr/lib/perl5/%{version}/%{perl_host}-%{_os}-thread-multi/$f
|
||||
done
|
||||
|
||||
%clean
|
||||
[ "%{buildroot}" != / ] && rm -rf %{buildroot}
|
||||
rm %{_tmppath}/{perl-mainpkg,perl-develpkg}
|
||||
|
||||
%post -n lib%{name} -p /sbin/ldconfig
|
||||
%postun -n lib%{name} -p /sbin/ldconfig
|
||||
|
||||
%files -f %{_tmppath}/perl-mainpkg
|
||||
%defattr(-,root,root)
|
||||
%{_bindir}/a2p
|
||||
%{_bindir}/config_data
|
||||
%{_bindir}/corelist
|
||||
%{_bindir}/cpan
|
||||
%{_bindir}/cpan2dist
|
||||
%{_bindir}/cpanp
|
||||
%{_bindir}/cpanp-run-perl
|
||||
%{_bindir}/find2perl
|
||||
%{_bindir}/instmodsh
|
||||
%{_bindir}/json_pp
|
||||
%{_bindir}/perl
|
||||
%{_bindir}/perl5
|
||||
%{_bindir}/perl%{version}
|
||||
%{_bindir}/perlbug
|
||||
%{_bindir}/perldoc
|
||||
%{_bindir}/perlivp
|
||||
%{_bindir}/perlthanks
|
||||
%{_bindir}/pod2html
|
||||
%{_bindir}/pod2latex
|
||||
%{_bindir}/pod2man
|
||||
%{_bindir}/pod2text
|
||||
%{_bindir}/prove
|
||||
%{_bindir}/psed
|
||||
%{_bindir}/ptar
|
||||
%{_bindir}/ptardiff
|
||||
%{_bindir}/ptargrep
|
||||
%{_bindir}/s2p
|
||||
%{_bindir}/shasum
|
||||
#%{_bindir}/sperl
|
||||
#%attr(4711,root,root) %{_bindir}/sperl%{version}
|
||||
%{_bindir}/splain
|
||||
%{_bindir}/zipdetails
|
||||
#%{_bindir}/suidperl
|
||||
%dir %{perl_root}
|
||||
#% if "%{_host_cpu}" == "%{_build_cpu}"
|
||||
%{_mandir}/man?/*
|
||||
#% endif
|
||||
%exclude %{_prefix}/lib/perl5/%{version}/%{perl_host}-%{_os}-thread-multi
|
||||
|
||||
%files -n libperl
|
||||
%defattr(-,root,root)
|
||||
%{_libdir}/libperl.so
|
||||
%dir %{_prefix}/lib/perl5/%{version}/%{perl_host}-%{_os}-thread-multi
|
||||
%{_prefix}/lib/perl5/%{version}/%{perl_host}-%{_os}-thread-multi/*
|
||||
%doc Artistic AUTHORS
|
||||
|
||||
%files -n perl-devel -f %{_tmppath}/perl-develpkg
|
||||
%defattr(-,root,root)
|
||||
%{_bindir}/c2ph
|
||||
#%{_bindir}/dprofpp
|
||||
%{_bindir}/enc2xs
|
||||
%{_bindir}/h2ph
|
||||
%{_bindir}/h2xs
|
||||
%{_bindir}/libnetcfg
|
||||
#%{_bindir}/perlcc
|
||||
%{_bindir}/piconv
|
||||
%{_bindir}/pl2pm
|
||||
%{_bindir}/pod2usage
|
||||
%{_bindir}/podchecker
|
||||
%{_bindir}/podselect
|
||||
%{_bindir}/pstruct
|
||||
%{_bindir}/xsubpp
|
||||
%doc Changes README
|
||||
|
||||
%changelog
|
||||
* Sat Apr 12 2014 Silvan Calarco <silvan.calarco@mambasoft.it> 5.16.3-2mamba
|
||||
- move libperl.so and %{perl_vendorarm} modules under libperl package
|
||||
|
||||
* Mon Mar 18 2013 Automatic Build System <autodist@mambasoft.it> 5.16.3-1mamba
|
||||
- update to 5.16.3
|
||||
|
||||
* Fri Nov 02 2012 Automatic Build System <autodist@mambasoft.it> 5.16.2-1mamba
|
||||
- automatic version update by autodist
|
||||
|
||||
* Thu Aug 09 2012 Automatic Build System <autodist@mambasoft.it> 5.16.1-1mamba
|
||||
- automatic version update by autodist
|
||||
|
||||
* Wed May 23 2012 Automatic Build System <autodist@mambasoft.it> 5.16.0-1mamba
|
||||
- automatic version update by autodist
|
||||
|
||||
* Tue Sep 27 2011 Automatic Build System <autodist@mambasoft.it> 5.14.2-1mamba
|
||||
- automatic version update by autodist
|
||||
|
||||
* Fri Jun 17 2011 Automatic Build System <autodist@mambasoft.it> 5.14.1-1mamba
|
||||
- automatic update by autodist
|
||||
|
||||
* Wed Jun 15 2011 Automatic Build System <autodist@mambasoft.it> 5.14.0-1mamba
|
||||
- automatic update by autodist
|
||||
|
||||
* Tue Jan 25 2011 Automatic Build System <autodist@mambasoft.it> 5.12.3-1mamba
|
||||
- automatic update by autodist
|
||||
|
||||
* Wed Sep 08 2010 Automatic Build System <autodist@mambasoft.it> 5.12.2-1mamba
|
||||
- automatic update to 5.12.2 by autodist
|
||||
|
||||
* Tue May 18 2010 Automatic Build System <autodist@mambasoft.it> 5.12.1-1mamba
|
||||
- automatic update to 5.12.1 by autodist
|
||||
|
||||
* Mon May 10 2010 Automatic Build System <autodist@mambasoft.it> 5.12.0-1mamba
|
||||
- automatic update to 5.12.0 by autodist
|
||||
|
||||
* Tue Feb 16 2010 Silvan Calarco <silvan.calarco@mambasoft.it> 5.10.1-3mamba
|
||||
- obsolete perl-CGI
|
||||
|
||||
* Thu Oct 01 2009 Silvan Calarco <silvan.calarco@mambasoft.it> 5.10.1-2mamba
|
||||
- obsolete perl-IO-Compress-Bzip2
|
||||
|
||||
* Sat Sep 26 2009 Automatic Build System <autodist@mambasoft.it> 5.10.1-1mamba
|
||||
- automatic update to 5.10.1 by autodist
|
||||
|
||||
* Thu Jun 11 2009 Automatic Build System <autodist@mambasoft.it> 5.10.0-4mamba
|
||||
- obsolete perl-IO-Zlib
|
||||
|
||||
* Wed Jun 10 2009 Automatic Build System <autodist@mambasoft.it> 5.10.0-3mamba
|
||||
- automatic rebuild by autodist
|
||||
|
||||
* Thu Oct 30 2008 Silvan Calarco <silvan.calarco@mambasoft.it> 5.10.0-2mamba
|
||||
- obsolete packages that have been integrated in this release
|
||||
|
||||
* Wed Oct 29 2008 Silvan Calarco <silvan.calarco@mambasoft.it> 5.10.0-1mamba
|
||||
- automatic update to 5.10.0 by autodist
|
||||
|
||||
* Wed Nov 07 2007 Aleph0 <aleph0@openmamba.org> 5.8.8-4mamba
|
||||
- security fix CVE-2007-5116
|
||||
|
||||
* Fri Jun 29 2007 Silvan Calarco <silvan.calarco@mambasoft.it> 5.8.8-3mamba
|
||||
- add provide for perl(timelocal.pl)
|
||||
|
||||
* Wed Mar 28 2007 Silvan Calarco <silvan.calarco@mambasoft.it> 5.8.8-2mamba
|
||||
- rebuilt with the openmamba toolchain
|
||||
|
||||
* Wed Apr 12 2006 Davide Madrisan <davide.madrisan@qilinux.it> 5.8.8-1qilnx
|
||||
- update to version 5.8.8 by autospec
|
||||
- obsoletes perl-Test-Builder-Tester
|
||||
|
||||
* Tue Jan 17 2006 Davide Madrisan <davide.madrisan@qilinux.it> 5.8.7-4qilnx
|
||||
- security fix: CAN-2005-3962 (qibug#86)
|
||||
|
||||
* Wed Jan 11 2006 Davide Madrisan <davide.madrisan@qilinux.it> 5.8.7-3qilnx
|
||||
- fixed requirement for the devel package
|
||||
- fixed license
|
||||
|
||||
* Tue Jun 07 2005 Davide Madrisan <davide.madrisan@qilinux.it> 5.8.7-2qilnx
|
||||
- fixed user/group for sperl binary
|
||||
- added license, readme and changelog files
|
||||
- don't require perl in specfile to allow bootstrap builds
|
||||
- fixes and cleanups for other archs build
|
||||
|
||||
* Mon Jun 06 2005 Davide Madrisan <davide.madrisan@qilinux.it> 5.8.7-1qilnx
|
||||
- update to version 5.8.7 by autospec
|
||||
- also solves a pair of exploits in suidperl involving debugging code
|
||||
- updated patch for security issue can-2005-0448
|
||||
- disable root check to let non-root packagers create perl rpms
|
||||
- strip 'buildroot' paths from 'Config_heavy.pl'
|
||||
|
||||
* Mon May 02 2005 Davide Madrisan <davide.madrisan@qilinux.it> 5.8.6-3qilnx
|
||||
- security fix QSA-2005-058 (CAN-2005-0448)
|
||||
- provides 'perl(find.pl)'
|
||||
- strip %%buildroot paths from perl configuration files
|
||||
- added sperl symlink
|
||||
|
||||
* Tue Jan 25 2005 Davide Madrisan <davide.madrisan@qilinux.it> 5.8.6-2qilnx
|
||||
- fix architecture compatilibity problems with previous release
|
||||
- removed `.packlist'
|
||||
|
||||
* Wed Jan 19 2005 Silvan Calarco <silvan.calarco@mambasoft.it> 5.8.6-1qilnx
|
||||
- update to version 5.8.6 by autospec
|
||||
- epoch set to 2, removed provides for perl = 0:5.008 and perl = 1:5
|
||||
- added libperl.so symlink in /usr/lib
|
||||
|
||||
* Mon Nov 22 2004 Silvan Calarco <silvan.calarco@mambasoft.it> 5.8.5-2qilnx
|
||||
- add manually provides for perl(Carp::Heavy)
|
||||
|
||||
* Mon Jul 26 2004 Davide Madrisan <davide.madrisan@qilinux.it> 5.8.5-1qilnx
|
||||
- update to 5.8.5
|
||||
|
||||
* Fri May 07 2004 Silvan Calarco <silvan.calarco@mambasoft.it> 5.8.3-2qilnx
|
||||
- db4 build requirement added
|
||||
|
||||
* Mon Apr 05 2004 Davide Madrisan <davide.madrisan@qilinux.it> 5.8.3-1qilnx
|
||||
- new version rebuild
|
||||
|
||||
* Wed Jan 07 2004 Davide Madrisan <davide.madrisan@qilinux.it> 5.8.2-1qilnx
|
||||
- rebuilt with Perl version 5.8.2
|
||||
- provides -- removed: getopts.pl
|
||||
- added: perl = 0:5.008, perl = 1:5 requirements
|
||||
|
||||
* Mon Apr 28 2003 Mirko Cortillaro <mirko.cortillaro@qinet.it>
|
||||
- added perl-base provide
|
||||
|
||||
* Wed Apr 17 2003 Mirko Cortillaro <mirko.cortillaro@qinet.it>
|
||||
- removed Prefix definition
|
||||
|
||||
* Wed Apr 16 2003 Mirko Cortillaro <mirko.cortillaro@qinet.it>
|
||||
- modified file list package perl-devel
|
||||
|
||||
* Mon Apr 14 2003 Mirko Cortillaro <mirko.cortillaro@qinet.it>
|
||||
- modified file list
|
||||
|
||||
* Thu Apr 10 2003 Mirko Cortillaro <mirko.cortillaro@qinet.it>
|
||||
- write a spec file for perl
|
Loading…
Reference in New Issue
Block a user