diff options
92 files changed, 1949 insertions, 8643 deletions
diff --git a/meta/recipes-devtools/perl/files/Configure-multilib.patch b/meta/recipes-devtools/perl/files/Configure-multilib.patch deleted file mode 100644 index 085a2ffe4e..0000000000 --- a/meta/recipes-devtools/perl/files/Configure-multilib.patch +++ /dev/null | |||
| @@ -1,17 +0,0 @@ | |||
| 1 | Upstream-Status: Inappropriate [embedded specific] | ||
| 2 | |||
| 3 | Index: perl-5.12.2/Configure | ||
| 4 | =================================================================== | ||
| 5 | --- perl-5.12.2.orig/Configure | ||
| 6 | +++ perl-5.12.2/Configure | ||
| 7 | @@ -1316,8 +1316,9 @@ loclibpth="/usr/local/lib /opt/local/lib | ||
| 8 | loclibpth="$loclibpth /opt/gnu/lib /usr/GNU/lib /opt/GNU/lib" | ||
| 9 | |||
| 10 | : general looking path for locating libraries | ||
| 11 | -glibpth="/lib /usr/lib $xlibpth" | ||
| 12 | +glibpth="/lib /usr/lib /lib64 /usr/lib64 $xlibpth" | ||
| 13 | glibpth="$glibpth /usr/ccs/lib /usr/ucblib /usr/local/lib" | ||
| 14 | +test -f /usr/lib/*-linux-gnu/libc.so && glibpth="/usr/lib/*-linux-gnu $glibpth" | ||
| 15 | test -f /usr/shlib/libc.so && glibpth="/usr/shlib $glibpth" | ||
| 16 | test -f /shlib/libc.so && glibpth="/shlib $glibpth" | ||
| 17 | test -d /usr/lib64 && glibpth="$glibpth /lib64 /usr/lib64 /usr/local/lib64" | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/cross-generate_uudmap.patch b/meta/recipes-devtools/perl/perl-5.12.3/cross-generate_uudmap.patch deleted file mode 100644 index d59ad8dae6..0000000000 --- a/meta/recipes-devtools/perl/perl-5.12.3/cross-generate_uudmap.patch +++ /dev/null | |||
| @@ -1,15 +0,0 @@ | |||
| 1 | Upstream-Status:Inappropriate [embedded specific] | ||
| 2 | |||
| 3 | Index: perl-5.10.1/Makefile.SH | ||
| 4 | =================================================================== | ||
| 5 | --- perl-5.10.1.orig/Makefile.SH 2010-02-12 19:06:17.000000000 +0300 | ||
| 6 | +++ perl-5.10.1/Makefile.SH 2010-02-12 19:10:13.000000000 +0300 | ||
| 7 | @@ -596,7 +596,7 @@ | ||
| 8 | \$(RUN) ./generate_uudmap\$(HOST_EXE_EXT) >uudmap.h | ||
| 9 | |||
| 10 | generate_uudmap\$(HOST_EXE_EXT): generate_uudmap\$(OBJ_EXT) | ||
| 11 | - \$(CC) -o generate_uudmap\$(EXE_EXT) \$(LDFLAGS) generate_uudmap\$(OBJ_EXT) \$(libs) | ||
| 12 | + \$(BUILD_CC) -o generate_uudmap\$(EXE_EXT) generate_uudmap.c | ||
| 13 | |||
| 14 | !GROK!THIS! | ||
| 15 | $spitshell >>$Makefile <<'!NO!SUBS!' | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/debian/arm_optim.diff b/meta/recipes-devtools/perl/perl-5.12.3/debian/arm_optim.diff deleted file mode 100644 index b5b952e838..0000000000 --- a/meta/recipes-devtools/perl/perl-5.12.3/debian/arm_optim.diff +++ /dev/null | |||
| @@ -1,34 +0,0 @@ | |||
| 1 | Upstream-Status:Inappropriate [debian patch] | ||
| 2 | |||
| 3 | From: Niko Tyni <ntyni@debian.org> | ||
| 4 | Description: Downgrade the optimization of sv.c on arm due to a gcc-4.4 bug | ||
| 5 | Bug-Debian: http://bugs.debian.org/580334 | ||
| 6 | |||
| 7 | Regression from gcc-4.3, not reported yet. | ||
| 8 | |||
| 9 | perl -e '"-2" =~ /(.+)/; @foo=(); push @foo, $_ for $1..undef; print @foo ? "ok\n" : "not ok\n"' | ||
| 10 | |||
| 11 | |||
| 12 | --- | ||
| 13 | cflags.SH | 6 +++++- | ||
| 14 | 1 files changed, 5 insertions(+), 1 deletions(-) | ||
| 15 | |||
| 16 | diff --git a/cflags.SH b/cflags.SH | ||
| 17 | index a5d71b9..6914ba6 100755 | ||
| 18 | --- a/cflags.SH | ||
| 19 | +++ b/cflags.SH | ||
| 20 | @@ -312,7 +312,11 @@ for file do | ||
| 21 | regexec) ;; | ||
| 22 | run) ;; | ||
| 23 | scope) ;; | ||
| 24 | - sv) ;; | ||
| 25 | + sv) | ||
| 26 | + case $archname in | ||
| 27 | + arm-*|armeb-*) | ||
| 28 | + optimize=-O0;; | ||
| 29 | + esac;; | ||
| 30 | taint) ;; | ||
| 31 | toke) ;; | ||
| 32 | universal) ;; | ||
| 33 | -- | ||
| 34 | tg: (a508b62..) debian/arm_optim (depends on: upstream) | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/debian/cpan_config_path.diff b/meta/recipes-devtools/perl/perl-5.12.3/debian/cpan_config_path.diff deleted file mode 100644 index 27b4a45440..0000000000 --- a/meta/recipes-devtools/perl/perl-5.12.3/debian/cpan_config_path.diff +++ /dev/null | |||
| @@ -1,24 +0,0 @@ | |||
| 1 | Upstream-Status:Inappropriate [debian patch] | ||
| 2 | |||
| 3 | Subject: Set location of CPAN::Config to /etc/perl as /usr may not be writable. | ||
| 4 | |||
| 5 | |||
| 6 | --- | ||
| 7 | cpan/CPAN/lib/CPAN/HandleConfig.pm | 2 +- | ||
| 8 | 1 files changed, 1 insertions(+), 1 deletions(-) | ||
| 9 | |||
| 10 | diff --git a/cpan/CPAN/lib/CPAN/HandleConfig.pm b/cpan/CPAN/lib/CPAN/HandleConfig.pm | ||
| 11 | index 76cd81e..65a3b27 100644 | ||
| 12 | --- a/cpan/CPAN/lib/CPAN/HandleConfig.pm | ||
| 13 | +++ b/cpan/CPAN/lib/CPAN/HandleConfig.pm | ||
| 14 | @@ -543,7 +543,7 @@ sub load { | ||
| 15 | $configpm = $INC{"CPAN/MyConfig.pm"}; | ||
| 16 | $redo++; | ||
| 17 | } else { | ||
| 18 | - my($path_to_cpan) = File::Basename::dirname($INC{"CPAN.pm"}); | ||
| 19 | + my($path_to_cpan) = '/etc/perl'; | ||
| 20 | my($configpmdir) = File::Spec->catdir($path_to_cpan,"CPAN"); | ||
| 21 | my($configpmtest) = File::Spec->catfile($configpmdir,"Config.pm"); | ||
| 22 | my $inc_key; | ||
| 23 | -- | ||
| 24 | tg: (a508b62..) debian/cpan_config_path (depends on: upstream) | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/debian/deprecate-with-apt.diff b/meta/recipes-devtools/perl/perl-5.12.3/debian/deprecate-with-apt.diff deleted file mode 100644 index ad0b0cfb86..0000000000 --- a/meta/recipes-devtools/perl/perl-5.12.3/debian/deprecate-with-apt.diff +++ /dev/null | |||
| @@ -1,61 +0,0 @@ | |||
| 1 | Upstream-Status:Inappropriate [debian patch] | ||
| 2 | |||
| 3 | From: Niko Tyni <ntyni@debian.org> | ||
| 4 | Subject: Point users to Debian packages of deprecated core modules | ||
| 5 | Bug-Debian: http://bugs.debian.org/580034 | ||
| 6 | |||
| 7 | Class::ISA, Switch, Pod::Plainer, and (partially) Shell were | ||
| 8 | deprecated from the Perl core in 5.12.0. | ||
| 9 | |||
| 10 | To get a clean transition, perl-modules is going to recommend the separate | ||
| 11 | Debian packages of these for one release cycle so that they will be | ||
| 12 | pulled in by default on upgrades. | ||
| 13 | |||
| 14 | However, on systems configured to ignore recommendations the deprecation | ||
| 15 | warnings will still be useful, so modify them slightly to point to the | ||
| 16 | separate packages instead. | ||
| 17 | |||
| 18 | --- | ||
| 19 | lib/deprecate.pm | 18 +++++++++++++++++- | ||
| 20 | 1 files changed, 17 insertions(+), 1 deletions(-) | ||
| 21 | |||
| 22 | diff --git a/lib/deprecate.pm b/lib/deprecate.pm | ||
| 23 | index 7b92e0b..9db7330 100644 | ||
| 24 | --- a/lib/deprecate.pm | ||
| 25 | +++ b/lib/deprecate.pm | ||
| 26 | @@ -7,6 +7,16 @@ our $VERSION = 0.01; | ||
| 27 | our %Config; | ||
| 28 | unless (%Config) { require Config; *Config = \%Config::Config; } | ||
| 29 | |||
| 30 | +# Debian-specific change: recommend the separate Debian packages of | ||
| 31 | +# deprecated modules where available | ||
| 32 | + | ||
| 33 | +my %DEBIAN_PACKAGES = ( | ||
| 34 | + "Class::ISA" => "libclass-isa-perl", | ||
| 35 | + "Pod::Plainer" => "libpod-plainer-perl", | ||
| 36 | + "Switch" => "libswitch-perl", | ||
| 37 | + "Shell" => "libshell-perl", | ||
| 38 | +); | ||
| 39 | + | ||
| 40 | sub import { | ||
| 41 | my ($package, $file, $line) = caller; | ||
| 42 | my $expect_leaf = "$package.pm"; | ||
| 43 | @@ -44,9 +54,15 @@ EOM | ||
| 44 | if (defined $callers_bitmask | ||
| 45 | && (vec($callers_bitmask, $warnings::Offsets{deprecated}, 1) | ||
| 46 | || vec($callers_bitmask, $warnings::Offsets{all}, 1))) { | ||
| 47 | - warn <<"EOM"; | ||
| 48 | + if (my $deb = $DEBIAN_PACKAGES{$package}) { | ||
| 49 | + warn <<"EOM"; | ||
| 50 | +$package will be removed from the Perl core distribution in the next major release. Please install the separate $deb package. It is being used at $call_file, line $call_line. | ||
| 51 | +EOM | ||
| 52 | + } else { | ||
| 53 | + warn <<"EOM"; | ||
| 54 | $package will be removed from the Perl core distribution in the next major release. Please install it from CPAN. It is being used at $call_file, line $call_line. | ||
| 55 | EOM | ||
| 56 | + } | ||
| 57 | } | ||
| 58 | return; | ||
| 59 | } | ||
| 60 | -- | ||
| 61 | tg: (a508b62..) debian/deprecate-with-apt (depends on: upstream) | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/debian/devel-ppport-ia64-optim.diff b/meta/recipes-devtools/perl/perl-5.12.3/debian/devel-ppport-ia64-optim.diff deleted file mode 100644 index e57a31577b..0000000000 --- a/meta/recipes-devtools/perl/perl-5.12.3/debian/devel-ppport-ia64-optim.diff +++ /dev/null | |||
| @@ -1,34 +0,0 @@ | |||
| 1 | Upstream-Status:Inappropriate [debian patch] | ||
| 2 | |||
| 3 | From: Niko Tyni <ntyni@debian.org> | ||
| 4 | Subject: Work around an ICE on ia64 | ||
| 5 | Closes: 548943 | ||
| 6 | |||
| 7 | Temporarily work around an internal compiler error in Devel::PPPort | ||
| 8 | on ia64+gcc-4.3. | ||
| 9 | |||
| 10 | |||
| 11 | --- | ||
| 12 | cpan/Devel-PPPort/Makefile.PL | 7 +++++++ | ||
| 13 | 1 files changed, 7 insertions(+), 0 deletions(-) | ||
| 14 | |||
| 15 | diff --git a/cpan/Devel-PPPort/Makefile.PL b/cpan/Devel-PPPort/Makefile.PL | ||
| 16 | index 67eebc1..f1ef7a2 100644 | ||
| 17 | --- a/cpan/Devel-PPPort/Makefile.PL | ||
| 18 | +++ b/cpan/Devel-PPPort/Makefile.PL | ||
| 19 | @@ -75,6 +75,13 @@ sub configure | ||
| 20 | push @moreopts, INSTALLDIRS => ($] >= 5.007003 ? 'perl' : 'site'); | ||
| 21 | } | ||
| 22 | |||
| 23 | + | ||
| 24 | + # temporary Debian hack, see http://bugs.debian.org/548943 | ||
| 25 | + require Config; | ||
| 26 | + if ($Config::Config{archname} =~ /^ia64/) { | ||
| 27 | + push @moreopts, OPTIMIZE => '-g -O0'; | ||
| 28 | + } | ||
| 29 | + | ||
| 30 | if ($opt{'apicheck'}) { | ||
| 31 | $PL_FILES{'apicheck_c.PL'} = 'apicheck.c'; | ||
| 32 | push @C_FILES, qw{ apicheck.c }; | ||
| 33 | -- | ||
| 34 | tg: (a508b62..) debian/devel-ppport-ia64-optim (depends on: upstream) | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/debian/extutils_hacks.diff b/meta/recipes-devtools/perl/perl-5.12.3/debian/extutils_hacks.diff deleted file mode 100644 index e1cbdb5658..0000000000 --- a/meta/recipes-devtools/perl/perl-5.12.3/debian/extutils_hacks.diff +++ /dev/null | |||
| @@ -1,315 +0,0 @@ | |||
| 1 | Upstream-Status:Inappropriate [debian patch] | ||
| 2 | |||
| 3 | Subject: Various debian-specific ExtUtils changes | ||
| 4 | |||
| 5 | * Respect umask during installation, and set as appropriate for each of | ||
| 6 | perl, vendor and site (policy requires group writable site dirs). | ||
| 7 | |||
| 8 | * Don't install .packlist or perllocal.pod for perl or vendor. | ||
| 9 | * Fiddle with *PREFIX and variables written to the makefile so that | ||
| 10 | install directories may be changed when make is run by passing | ||
| 11 | PREFIX= to the "make install" command (used when packaging | ||
| 12 | modules). | ||
| 13 | |||
| 14 | * Set location of libperl.a to /usr/lib. | ||
| 15 | * Note that libperl-dev package is required for embedded linking. | ||
| 16 | * Change install target dependencies to facilitate parallel makes. | ||
| 17 | |||
| 18 | |||
| 19 | --- | ||
| 20 | cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Any.pm | 12 +++--- | ||
| 21 | cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | 44 +++++----------------- | ||
| 22 | cpan/ExtUtils-MakeMaker/t/INST.t | 4 +-- | ||
| 23 | cpan/ExtUtils-MakeMaker/t/INST_PREFIX.t | 10 +++--- | ||
| 24 | dist/ExtUtils-Install/lib/ExtUtils/Install.pm | 18 +++++----- | ||
| 25 | lib/ExtUtils/Embed.pm | 3 ++ | ||
| 26 | 6 files changed, 34 insertions(+), 57 deletions(-) | ||
| 27 | |||
| 28 | diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Any.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Any.pm | ||
| 29 | index 4905aeb..a80ac20 100644 | ||
| 30 | --- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Any.pm | ||
| 31 | +++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Any.pm | ||
| 32 | @@ -701,8 +701,6 @@ all POD files in MAN1PODS and MAN3PODS. | ||
| 33 | sub manifypods_target { | ||
| 34 | my($self) = shift; | ||
| 35 | |||
| 36 | - my $man1pods = ''; | ||
| 37 | - my $man3pods = ''; | ||
| 38 | my $dependencies = ''; | ||
| 39 | |||
| 40 | # populate manXpods & dependencies: | ||
| 41 | @@ -718,7 +716,7 @@ END | ||
| 42 | foreach my $section (qw(1 3)) { | ||
| 43 | my $pods = $self->{"MAN${section}PODS"}; | ||
| 44 | push @man_cmds, $self->split_command(<<CMD, %$pods); | ||
| 45 | - \$(NOECHO) \$(POD2MAN) --section=$section --perm_rw=\$(PERM_RW) | ||
| 46 | + \$(NOECHO) \$(POD2MAN) --section=\$(MAN${section}EXT) --perm_rw=\$(PERM_RW) | ||
| 47 | CMD | ||
| 48 | } | ||
| 49 | |||
| 50 | @@ -1428,9 +1426,11 @@ sub init_INSTALL_from_PREFIX { | ||
| 51 | $self->{SITEPREFIX} ||= $sprefix; | ||
| 52 | $self->{VENDORPREFIX} ||= $vprefix; | ||
| 53 | |||
| 54 | - # Lots of MM extension authors like to use $(PREFIX) so we | ||
| 55 | - # put something sensible in there no matter what. | ||
| 56 | - $self->{PREFIX} = '$('.uc $self->{INSTALLDIRS}.'PREFIX)'; | ||
| 57 | + my $p = $self->{PREFIX} = $self->{PERLPREFIX}; | ||
| 58 | + for my $t (qw/PERL SITE VENDOR/) | ||
| 59 | + { | ||
| 60 | + $self->{"${t}PREFIX"} =~ s!^\Q$p\E(?=/|$)!\$(PREFIX)!; | ||
| 61 | + } | ||
| 62 | } | ||
| 63 | |||
| 64 | my $arch = $Config{archname}; | ||
| 65 | diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | ||
| 66 | index 239d6df..940de38 100644 | ||
| 67 | --- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | ||
| 68 | +++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | ||
| 69 | @@ -2046,9 +2046,7 @@ doc__install : doc_site_install | ||
| 70 | $(NOECHO) $(ECHO) INSTALLDIRS not defined, defaulting to INSTALLDIRS=site | ||
| 71 | |||
| 72 | pure_perl_install :: all | ||
| 73 | - $(NOECHO) $(MOD_INSTALL) \ | ||
| 74 | - read }.$self->catfile('$(PERL_ARCHLIB)','auto','$(FULLEXT)','.packlist').q{ \ | ||
| 75 | - write }.$self->catfile('$(DESTINSTALLARCHLIB)','auto','$(FULLEXT)','.packlist').q{ \ | ||
| 76 | + $(NOECHO) umask 022; $(MOD_INSTALL) \ | ||
| 77 | $(INST_LIB) $(DESTINSTALLPRIVLIB) \ | ||
| 78 | $(INST_ARCHLIB) $(DESTINSTALLARCHLIB) \ | ||
| 79 | $(INST_BIN) $(DESTINSTALLBIN) \ | ||
| 80 | @@ -2060,7 +2058,7 @@ pure_perl_install :: all | ||
| 81 | |||
| 82 | |||
| 83 | pure_site_install :: all | ||
| 84 | - $(NOECHO) $(MOD_INSTALL) \ | ||
| 85 | + $(NOECHO) umask 02; $(MOD_INSTALL) \ | ||
| 86 | read }.$self->catfile('$(SITEARCHEXP)','auto','$(FULLEXT)','.packlist').q{ \ | ||
| 87 | write }.$self->catfile('$(DESTINSTALLSITEARCH)','auto','$(FULLEXT)','.packlist').q{ \ | ||
| 88 | $(INST_LIB) $(DESTINSTALLSITELIB) \ | ||
| 89 | @@ -2073,9 +2071,7 @@ pure_site_install :: all | ||
| 90 | }.$self->catdir('$(PERL_ARCHLIB)','auto','$(FULLEXT)').q{ | ||
| 91 | |||
| 92 | pure_vendor_install :: all | ||
| 93 | - $(NOECHO) $(MOD_INSTALL) \ | ||
| 94 | - read }.$self->catfile('$(VENDORARCHEXP)','auto','$(FULLEXT)','.packlist').q{ \ | ||
| 95 | - write }.$self->catfile('$(DESTINSTALLVENDORARCH)','auto','$(FULLEXT)','.packlist').q{ \ | ||
| 96 | + $(NOECHO) umask 022; $(MOD_INSTALL) \ | ||
| 97 | $(INST_LIB) $(DESTINSTALLVENDORLIB) \ | ||
| 98 | $(INST_ARCHLIB) $(DESTINSTALLVENDORARCH) \ | ||
| 99 | $(INST_BIN) $(DESTINSTALLVENDORBIN) \ | ||
| 100 | @@ -2084,37 +2080,19 @@ pure_vendor_install :: all | ||
| 101 | $(INST_MAN3DIR) $(DESTINSTALLVENDORMAN3DIR) | ||
| 102 | |||
| 103 | doc_perl_install :: all | ||
| 104 | - $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod | ||
| 105 | - -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) | ||
| 106 | - -$(NOECHO) $(DOC_INSTALL) \ | ||
| 107 | - "Module" "$(NAME)" \ | ||
| 108 | - "installed into" "$(INSTALLPRIVLIB)" \ | ||
| 109 | - LINKTYPE "$(LINKTYPE)" \ | ||
| 110 | - VERSION "$(VERSION)" \ | ||
| 111 | - EXE_FILES "$(EXE_FILES)" \ | ||
| 112 | - >> }.$self->catfile('$(DESTINSTALLARCHLIB)','perllocal.pod').q{ | ||
| 113 | |||
| 114 | doc_site_install :: all | ||
| 115 | - $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod | ||
| 116 | - -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) | ||
| 117 | - -$(NOECHO) $(DOC_INSTALL) \ | ||
| 118 | + $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLSITEARCH)/perllocal.pod | ||
| 119 | + -$(NOECHO) umask 02; $(MKPATH) $(DESTINSTALLSITEARCH) | ||
| 120 | + -$(NOECHO) umask 02; $(DOC_INSTALL) \ | ||
| 121 | "Module" "$(NAME)" \ | ||
| 122 | "installed into" "$(INSTALLSITELIB)" \ | ||
| 123 | LINKTYPE "$(LINKTYPE)" \ | ||
| 124 | VERSION "$(VERSION)" \ | ||
| 125 | EXE_FILES "$(EXE_FILES)" \ | ||
| 126 | - >> }.$self->catfile('$(DESTINSTALLARCHLIB)','perllocal.pod').q{ | ||
| 127 | + >> }.$self->catfile('$(DESTINSTALLSITEARCH)','perllocal.pod').q{ | ||
| 128 | |||
| 129 | doc_vendor_install :: all | ||
| 130 | - $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod | ||
| 131 | - -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) | ||
| 132 | - -$(NOECHO) $(DOC_INSTALL) \ | ||
| 133 | - "Module" "$(NAME)" \ | ||
| 134 | - "installed into" "$(INSTALLVENDORLIB)" \ | ||
| 135 | - LINKTYPE "$(LINKTYPE)" \ | ||
| 136 | - VERSION "$(VERSION)" \ | ||
| 137 | - EXE_FILES "$(EXE_FILES)" \ | ||
| 138 | - >> }.$self->catfile('$(DESTINSTALLARCHLIB)','perllocal.pod').q{ | ||
| 139 | |||
| 140 | }; | ||
| 141 | |||
| 142 | @@ -2123,13 +2101,12 @@ uninstall :: uninstall_from_$(INSTALLDIRS)dirs | ||
| 143 | $(NOECHO) $(NOOP) | ||
| 144 | |||
| 145 | uninstall_from_perldirs :: | ||
| 146 | - $(NOECHO) $(UNINSTALL) }.$self->catfile('$(PERL_ARCHLIB)','auto','$(FULLEXT)','.packlist').q{ | ||
| 147 | |||
| 148 | uninstall_from_sitedirs :: | ||
| 149 | $(NOECHO) $(UNINSTALL) }.$self->catfile('$(SITEARCHEXP)','auto','$(FULLEXT)','.packlist').q{ | ||
| 150 | |||
| 151 | uninstall_from_vendordirs :: | ||
| 152 | - $(NOECHO) $(UNINSTALL) }.$self->catfile('$(VENDORARCHEXP)','auto','$(FULLEXT)','.packlist').q{ | ||
| 153 | + | ||
| 154 | }; | ||
| 155 | |||
| 156 | join("",@m); | ||
| 157 | @@ -2402,7 +2379,7 @@ MAP_PRELIBS = $Config{perllibs} $Config{cryptlib} | ||
| 158 | ($lperl = $libperl) =~ s/\$\(A\)/$self->{LIB_EXT}/; | ||
| 159 | } | ||
| 160 | unless ($libperl && -f $lperl) { # Ilya's code... | ||
| 161 | - my $dir = $self->{PERL_SRC} || "$self->{PERL_ARCHLIB}/CORE"; | ||
| 162 | + my $dir = $self->{PERL_SRC} || "/usr/lib"; | ||
| 163 | $dir = "$self->{PERL_ARCHLIB}/.." if $self->{UNINSTALLED_PERL}; | ||
| 164 | $libperl ||= "libperl$self->{LIB_EXT}"; | ||
| 165 | $libperl = "$dir/$libperl"; | ||
| 166 | @@ -2998,8 +2975,7 @@ sub prefixify { | ||
| 167 | print STDERR " prefixify $var => $path\n" if $Verbose >= 2; | ||
| 168 | print STDERR " from $sprefix to $rprefix\n" if $Verbose >= 2; | ||
| 169 | |||
| 170 | - if( $self->{ARGS}{PREFIX} && | ||
| 171 | - $path !~ s{^\Q$sprefix\E\b}{$rprefix}s ) | ||
| 172 | + if( $path !~ s{^\Q$sprefix\E\b}{$rprefix}s && $self->{ARGS}{PREFIX} ) | ||
| 173 | { | ||
| 174 | |||
| 175 | print STDERR " cannot prefix, using default.\n" if $Verbose >= 2; | ||
| 176 | diff --git a/cpan/ExtUtils-MakeMaker/t/INST.t b/cpan/ExtUtils-MakeMaker/t/INST.t | ||
| 177 | index 8a140eb..cf1410e 100755 | ||
| 178 | --- a/cpan/ExtUtils-MakeMaker/t/INST.t | ||
| 179 | +++ b/cpan/ExtUtils-MakeMaker/t/INST.t | ||
| 180 | @@ -59,9 +59,7 @@ isa_ok( $mm, 'ExtUtils::MakeMaker' ); | ||
| 181 | is( $mm->{NAME}, 'Big::Dummy', 'NAME' ); | ||
| 182 | is( $mm->{VERSION}, 0.01, 'VERSION' ); | ||
| 183 | |||
| 184 | -my $config_prefix = $Config{installprefixexp} || $Config{installprefix} || | ||
| 185 | - $Config{prefixexp} || $Config{prefix}; | ||
| 186 | -is( $mm->{PERLPREFIX}, $config_prefix, 'PERLPREFIX' ); | ||
| 187 | +is( $mm->{PERLPREFIX}, '$(PREFIX)', 'PERLPREFIX' ); | ||
| 188 | |||
| 189 | is( !!$mm->{PERL_CORE}, !!$ENV{PERL_CORE}, 'PERL_CORE' ); | ||
| 190 | |||
| 191 | diff --git a/cpan/ExtUtils-MakeMaker/t/INST_PREFIX.t b/cpan/ExtUtils-MakeMaker/t/INST_PREFIX.t | ||
| 192 | index 8bb9db8..316546d 100755 | ||
| 193 | --- a/cpan/ExtUtils-MakeMaker/t/INST_PREFIX.t | ||
| 194 | +++ b/cpan/ExtUtils-MakeMaker/t/INST_PREFIX.t | ||
| 195 | @@ -10,7 +10,7 @@ BEGIN { | ||
| 196 | } | ||
| 197 | |||
| 198 | use strict; | ||
| 199 | -use Test::More tests => 52; | ||
| 200 | +use Test::More tests => 47; | ||
| 201 | use MakeMaker::Test::Utils; | ||
| 202 | use MakeMaker::Test::Setup::BFD; | ||
| 203 | use ExtUtils::MakeMaker; | ||
| 204 | @@ -56,16 +56,16 @@ like( $stdout->read, qr{ | ||
| 205 | Writing\ $Makefile\ for\ Big::Dummy\n | ||
| 206 | }x ); | ||
| 207 | |||
| 208 | -is( $mm->{PREFIX}, '$(SITEPREFIX)', 'PREFIX set based on INSTALLDIRS' ); | ||
| 209 | +#is( $mm->{PREFIX}, '$(SITEPREFIX)', 'PREFIX set based on INSTALLDIRS' ); | ||
| 210 | |||
| 211 | isa_ok( $mm, 'ExtUtils::MakeMaker' ); | ||
| 212 | |||
| 213 | is( $mm->{NAME}, 'Big::Dummy', 'NAME' ); | ||
| 214 | is( $mm->{VERSION}, 0.01, 'VERSION' ); | ||
| 215 | |||
| 216 | -foreach my $prefix (qw(PREFIX PERLPREFIX SITEPREFIX VENDORPREFIX)) { | ||
| 217 | - unlike( $mm->{$prefix}, qr/\$\(PREFIX\)/ ); | ||
| 218 | -} | ||
| 219 | +#foreach my $prefix (qw(PREFIX PERLPREFIX SITEPREFIX VENDORPREFIX)) { | ||
| 220 | +# unlike( $mm->{$prefix}, qr/\$\(PREFIX\)/ ); | ||
| 221 | +#} | ||
| 222 | |||
| 223 | |||
| 224 | my $PREFIX = File::Spec->catdir('foo', 'bar'); | ||
| 225 | diff --git a/dist/ExtUtils-Install/lib/ExtUtils/Install.pm b/dist/ExtUtils-Install/lib/ExtUtils/Install.pm | ||
| 226 | index da58365..d6d5c11 100644 | ||
| 227 | --- a/dist/ExtUtils-Install/lib/ExtUtils/Install.pm | ||
| 228 | +++ b/dist/ExtUtils-Install/lib/ExtUtils/Install.pm | ||
| 229 | @@ -468,7 +468,7 @@ sub _can_write_dir { | ||
| 230 | |||
| 231 | =pod | ||
| 232 | |||
| 233 | -=item _mkpath($dir,$show,$mode,$verbose,$dry_run) | ||
| 234 | +=item _mkpath($dir,$show,$verbose,$dry_run) | ||
| 235 | |||
| 236 | Wrapper around File::Path::mkpath() to handle errors. | ||
| 237 | |||
| 238 | @@ -485,13 +485,13 @@ writable. | ||
| 239 | =cut | ||
| 240 | |||
| 241 | sub _mkpath { | ||
| 242 | - my ($dir,$show,$mode,$verbose,$dry_run)=@_; | ||
| 243 | + my ($dir,$show,$verbose,$dry_run)=@_; | ||
| 244 | if ( $verbose && $verbose > 1 && ! -d $dir) { | ||
| 245 | $show= 1; | ||
| 246 | - printf "mkpath(%s,%d,%#o)\n", $dir, $show, $mode; | ||
| 247 | + printf "mkpath(%s,%d)\n", $dir, $show; | ||
| 248 | } | ||
| 249 | if (!$dry_run) { | ||
| 250 | - if ( ! eval { File::Path::mkpath($dir,$show,$mode); 1 } ) { | ||
| 251 | + if ( ! eval { File::Path::mkpath($dir,$show); 1 } ) { | ||
| 252 | _choke("Can't create '$dir'","$@"); | ||
| 253 | } | ||
| 254 | |||
| 255 | @@ -796,7 +796,7 @@ sub install { #XXX OS-SPECIFIC | ||
| 256 | _chdir($cwd); | ||
| 257 | } | ||
| 258 | foreach my $targetdir (sort keys %check_dirs) { | ||
| 259 | - _mkpath( $targetdir, 0, 0755, $verbose, $dry_run ); | ||
| 260 | + _mkpath( $targetdir, 0, $verbose, $dry_run ); | ||
| 261 | } | ||
| 262 | foreach my $found (@found_files) { | ||
| 263 | my ($diff, $ffd, $origfile, $mode, $size, $atime, $mtime, | ||
| 264 | @@ -810,7 +810,7 @@ sub install { #XXX OS-SPECIFIC | ||
| 265 | $targetfile= _unlink_or_rename( $targetfile, 'tryhard', 'install' ) | ||
| 266 | unless $dry_run; | ||
| 267 | } elsif ( ! -d $targetdir ) { | ||
| 268 | - _mkpath( $targetdir, 0, 0755, $verbose, $dry_run ); | ||
| 269 | + _mkpath( $targetdir, 0, $verbose, $dry_run ); | ||
| 270 | } | ||
| 271 | print "Installing $targetfile\n"; | ||
| 272 | |||
| 273 | @@ -850,7 +850,7 @@ sub install { #XXX OS-SPECIFIC | ||
| 274 | |||
| 275 | if ($pack{'write'}) { | ||
| 276 | $dir = install_rooted_dir(dirname($pack{'write'})); | ||
| 277 | - _mkpath( $dir, 0, 0755, $verbose, $dry_run ); | ||
| 278 | + _mkpath( $dir, 0, $verbose, $dry_run ); | ||
| 279 | print "Writing $pack{'write'}\n" if $verbose; | ||
| 280 | $packlist->write(install_rooted_file($pack{'write'})) unless $dry_run; | ||
| 281 | } | ||
| 282 | @@ -1190,7 +1190,7 @@ be prepended as a directory to each installed file (and directory). | ||
| 283 | sub pm_to_blib { | ||
| 284 | my($fromto,$autodir,$pm_filter) = @_; | ||
| 285 | |||
| 286 | - _mkpath($autodir,0,0755); | ||
| 287 | + _mkpath($autodir,0); | ||
| 288 | while(my($from, $to) = each %$fromto) { | ||
| 289 | if( -f $to && -s $from == -s $to && -M $to < -M $from ) { | ||
| 290 | print "Skip $to (unchanged)\n"; | ||
| 291 | @@ -1213,7 +1213,7 @@ sub pm_to_blib { | ||
| 292 | # we wont try hard here. its too likely to mess things up. | ||
| 293 | forceunlink($to); | ||
| 294 | } else { | ||
| 295 | - _mkpath(dirname($to),0,0755); | ||
| 296 | + _mkpath(dirname($to),0); | ||
| 297 | } | ||
| 298 | if ($need_filtering) { | ||
| 299 | run_filter($pm_filter, $from, $to); | ||
| 300 | diff --git a/lib/ExtUtils/Embed.pm b/lib/ExtUtils/Embed.pm | ||
| 301 | index 24ae909..12d421d 100644 | ||
| 302 | --- a/lib/ExtUtils/Embed.pm | ||
| 303 | +++ b/lib/ExtUtils/Embed.pm | ||
| 304 | @@ -305,6 +305,9 @@ and extensions in your C/C++ applications. | ||
| 305 | Typically, an application B<Makefile> will invoke ExtUtils::Embed | ||
| 306 | functions while building your application. | ||
| 307 | |||
| 308 | +Note that on Debian systems the B<libperl-dev> package is required for | ||
| 309 | +compiling applications which embed an interpreter. | ||
| 310 | + | ||
| 311 | =head1 @EXPORT | ||
| 312 | |||
| 313 | ExtUtils::Embed exports the following functions: | ||
| 314 | -- | ||
| 315 | tg: (a508b62..) debian/extutils_hacks (depends on: upstream) | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/autodie-flock.diff b/meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/autodie-flock.diff deleted file mode 100644 index 375ae418f4..0000000000 --- a/meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/autodie-flock.diff +++ /dev/null | |||
| @@ -1,100 +0,0 @@ | |||
| 1 | Upstream-Status:Inappropriate [debian patch] | ||
| 2 | |||
| 3 | From: Niko Tyni <ntyni@debian.org> | ||
| 4 | Subject: Allow for flock returning EAGAIN instead of EWOULDBLOCK on linux/parisc | ||
| 5 | Bug-Debian: http://bugs.debian.org/543731 | ||
| 6 | Origin: upstream, http://github.com/pfenwick/autodie/commit/037738e11a6097734b0e1dabdd77b92e5fe35219 | ||
| 7 | |||
| 8 | |||
| 9 | --- | ||
| 10 | cpan/autodie/lib/Fatal.pm | 14 +++++++++++++- | ||
| 11 | cpan/autodie/t/flock.t | 12 ++++++++++-- | ||
| 12 | 2 files changed, 23 insertions(+), 3 deletions(-) | ||
| 13 | |||
| 14 | diff --git a/cpan/autodie/lib/Fatal.pm b/cpan/autodie/lib/Fatal.pm | ||
| 15 | old mode 100644 | ||
| 16 | new mode 100755 | ||
| 17 | index 18e71ed..c17a257 | ||
| 18 | --- a/cpan/autodie/lib/Fatal.pm | ||
| 19 | +++ b/cpan/autodie/lib/Fatal.pm | ||
| 20 | @@ -5,6 +5,7 @@ use Carp; | ||
| 21 | use strict; | ||
| 22 | use warnings; | ||
| 23 | use Tie::RefHash; # To cache subroutine refs | ||
| 24 | +use Config; | ||
| 25 | |||
| 26 | use constant PERL510 => ( $] >= 5.010 ); | ||
| 27 | |||
| 28 | @@ -52,6 +53,10 @@ our %_EWOULDBLOCK = ( | ||
| 29 | MSWin32 => 33, | ||
| 30 | ); | ||
| 31 | |||
| 32 | +# the linux parisc port has separate EAGAIN and EWOULDBLOCK, | ||
| 33 | +# and the kernel returns EAGAIN | ||
| 34 | +my $try_EAGAIN = ($^O eq 'linux' and $Config{archname} =~ /hppa|parisc/) ? 1 : 0; | ||
| 35 | + | ||
| 36 | # We have some tags that can be passed in for use with import. | ||
| 37 | # These are all assumed to be CORE:: | ||
| 38 | |||
| 39 | @@ -720,6 +725,11 @@ sub _one_invocation { | ||
| 40 | my $EWOULDBLOCK = eval { POSIX::EWOULDBLOCK(); } | ||
| 41 | || $_EWOULDBLOCK{$^O} | ||
| 42 | || _autocroak("Internal error - can't overload flock - EWOULDBLOCK not defined on this system."); | ||
| 43 | + my $EAGAIN = $EWOULDBLOCK; | ||
| 44 | + if ($try_EAGAIN) { | ||
| 45 | + $EAGAIN = eval { POSIX::EAGAIN(); } | ||
| 46 | + || _autocroak("Internal error - can't overload flock - EAGAIN not defined on this system."); | ||
| 47 | + } | ||
| 48 | |||
| 49 | require Fcntl; # For Fcntl::LOCK_NB | ||
| 50 | |||
| 51 | @@ -735,7 +745,9 @@ sub _one_invocation { | ||
| 52 | # If we failed, but we're using LOCK_NB and | ||
| 53 | # returned EWOULDBLOCK, it's not a real error. | ||
| 54 | |||
| 55 | - if (\$_[1] & Fcntl::LOCK_NB() and \$! == $EWOULDBLOCK ) { | ||
| 56 | + if (\$_[1] & Fcntl::LOCK_NB() and | ||
| 57 | + (\$! == $EWOULDBLOCK or | ||
| 58 | + ($try_EAGAIN and \$! == $EAGAIN ))) { | ||
| 59 | return \$retval; | ||
| 60 | } | ||
| 61 | |||
| 62 | diff --git a/cpan/autodie/t/flock.t b/cpan/autodie/t/flock.t | ||
| 63 | index a7550ba..6421a56 100755 | ||
| 64 | --- a/cpan/autodie/t/flock.t | ||
| 65 | +++ b/cpan/autodie/t/flock.t | ||
| 66 | @@ -2,7 +2,8 @@ | ||
| 67 | use strict; | ||
| 68 | use Test::More; | ||
| 69 | use Fcntl qw(:flock); | ||
| 70 | -use POSIX qw(EWOULDBLOCK); | ||
| 71 | +use POSIX qw(EWOULDBLOCK EAGAIN); | ||
| 72 | +use Config; | ||
| 73 | |||
| 74 | require Fatal; | ||
| 75 | |||
| 76 | @@ -10,6 +11,9 @@ my $EWOULDBLOCK = eval { EWOULDBLOCK() } | ||
| 77 | || $Fatal::_EWOULDBLOCK{$^O} | ||
| 78 | || plan skip_all => "EWOULDBLOCK not defined on this system"; | ||
| 79 | |||
| 80 | +my $try_EAGAIN = ($^O eq 'linux' and $Config{archname} =~ /hppa|parisc/) ? 1 : 0; | ||
| 81 | +my $EAGAIN = eval { EAGAIN() }; | ||
| 82 | + | ||
| 83 | my ($self_fh, $self_fh2); | ||
| 84 | |||
| 85 | eval { | ||
| 86 | @@ -55,7 +59,11 @@ eval { | ||
| 87 | $return = flock($self_fh2, LOCK_EX | LOCK_NB); | ||
| 88 | }; | ||
| 89 | |||
| 90 | -is($!+0, $EWOULDBLOCK, "Double-flocking should be EWOULDBLOCK"); | ||
| 91 | +if (!$try_EAGAIN) { | ||
| 92 | + is($!+0, $EWOULDBLOCK, "Double-flocking should be EWOULDBLOCK"); | ||
| 93 | +} else { | ||
| 94 | + ok($!+0 == $EWOULDBLOCK || $!+0 == $EAGAIN, "Double-flocking should be EWOULDBLOCK or EAGAIN"); | ||
| 95 | +} | ||
| 96 | ok(!$return, "flocking a file twice should fail"); | ||
| 97 | is($@, "", "Non-blocking flock should not fail on EWOULDBLOCK"); | ||
| 98 | |||
| 99 | -- | ||
| 100 | tg: (a508b62..) fixes/autodie-flock (depends on: upstream) | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/concat-stack-corruption.diff b/meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/concat-stack-corruption.diff deleted file mode 100644 index 40437f38ca..0000000000 --- a/meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/concat-stack-corruption.diff +++ /dev/null | |||
| @@ -1,39 +0,0 @@ | |||
| 1 | Upstream-Status:Inappropriate [debian patch] | ||
| 2 | |||
| 3 | From: Niko Tyni <ntyni@debian.org> | ||
| 4 | Subject: Fix stack pointer corruption in pp_concat() with 'use encoding' | ||
| 5 | Bug-Debian: http://bugs.debian.org/596105 | ||
| 6 | Bug: http://rt.perl.org/rt3/Ticket/Display.html?id=78674 | ||
| 7 | Origin: upstream, http://perl5.git.perl.org/perl.git/commit/e3393f51d48d8b790e26324eb0336fac9689fa46 | ||
| 8 | |||
| 9 | If the stack is reallocated during pp_concat() and 'use encoding' in | ||
| 10 | effect, the stack pointer gets corrupted, causing memory allocation bugs | ||
| 11 | and the like. | ||
| 12 | |||
| 13 | --- | ||
| 14 | pp_hot.c | 3 +++ | ||
| 15 | 1 files changed, 3 insertions(+), 0 deletions(-) | ||
| 16 | |||
| 17 | diff --git a/pp_hot.c b/pp_hot.c | ||
| 18 | index ee699ef..c5ed14e 100644 | ||
| 19 | --- a/pp_hot.c | ||
| 20 | +++ b/pp_hot.c | ||
| 21 | @@ -271,6 +271,8 @@ PP(pp_concat) | ||
| 22 | rbyte = !DO_UTF8(right); | ||
| 23 | } | ||
| 24 | if (lbyte != rbyte) { | ||
| 25 | + /* sv_utf8_upgrade_nomg() may reallocate the stack */ | ||
| 26 | + PUTBACK; | ||
| 27 | if (lbyte) | ||
| 28 | sv_utf8_upgrade_nomg(TARG); | ||
| 29 | else { | ||
| 30 | @@ -279,6 +281,7 @@ PP(pp_concat) | ||
| 31 | sv_utf8_upgrade_nomg(right); | ||
| 32 | rpv = SvPV_const(right, rlen); | ||
| 33 | } | ||
| 34 | + SPAGAIN; | ||
| 35 | } | ||
| 36 | sv_catpvn_nomg(TARG, rpv, rlen); | ||
| 37 | |||
| 38 | -- | ||
| 39 | tg: (a508b62..) fixes/concat-stack-corruption (depends on: upstream) | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/cpanplus-without-home.diff b/meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/cpanplus-without-home.diff deleted file mode 100644 index e7ff57c54f..0000000000 --- a/meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/cpanplus-without-home.diff +++ /dev/null | |||
| @@ -1,32 +0,0 @@ | |||
| 1 | Upstream-Status:Inappropriate [debian patch] | ||
| 2 | |||
| 3 | From: Niko Tyni <ntyni@debian.org> | ||
| 4 | Subject: Fix CPANPLUS test failures when HOME doesn't exist | ||
| 5 | Bug: http://rt.cpan.org/Public/Bug/Display.html?id=52988 | ||
| 6 | Bug-Debian: http://bugs.debian.org/577011 | ||
| 7 | Origin: upstream | ||
| 8 | |||
| 9 | The Debian autobuilders are configured with a non-existing $ENV{HOME}, | ||
| 10 | triggering a bug in CPANPLUS that causes test failures. | ||
| 11 | |||
| 12 | Fix from CPANPLUS-0.9001. | ||
| 13 | |||
| 14 | --- | ||
| 15 | cpan/CPANPLUS/lib/CPANPLUS/Internals/Utils.pm | 2 +- | ||
| 16 | 1 files changed, 1 insertions(+), 1 deletions(-) | ||
| 17 | |||
| 18 | diff --git a/cpan/CPANPLUS/lib/CPANPLUS/Internals/Utils.pm b/cpan/CPANPLUS/lib/CPANPLUS/Internals/Utils.pm | ||
| 19 | index 27d2abc..8475c36 100644 | ||
| 20 | --- a/cpan/CPANPLUS/lib/CPANPLUS/Internals/Utils.pm | ||
| 21 | +++ b/cpan/CPANPLUS/lib/CPANPLUS/Internals/Utils.pm | ||
| 22 | @@ -5,7 +5,7 @@ use strict; | ||
| 23 | use CPANPLUS::Error; | ||
| 24 | use CPANPLUS::Internals::Constants; | ||
| 25 | |||
| 26 | -use Cwd qw[chdir]; | ||
| 27 | +use Cwd qw[chdir cwd]; | ||
| 28 | use File::Copy; | ||
| 29 | use Params::Check qw[check]; | ||
| 30 | use Module::Load::Conditional qw[can_load]; | ||
| 31 | -- | ||
| 32 | tg: (a508b62..) fixes/cpanplus-without-home (depends on: upstream) | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/h2ph-gcc-4.5.diff b/meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/h2ph-gcc-4.5.diff deleted file mode 100644 index 9faab81f31..0000000000 --- a/meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/h2ph-gcc-4.5.diff +++ /dev/null | |||
| @@ -1,108 +0,0 @@ | |||
| 1 | Upstream-Status:Inappropriate [debian patch] | ||
| 2 | |||
| 3 | Author: Robin Barker <rmbarker@cpan.org> | ||
| 4 | Subject: h2ph fix for gcc 4.5 | ||
| 5 | Bug-Debian: http://bugs.debian.org/599933 | ||
| 6 | Origin: upstream, http://perl5.git.perl.org/perl.git/commit/8d66b3f930dc6d88b524d103e304308ae73a46e7 | ||
| 7 | |||
| 8 | Fix h2ph and test. Needed to build with GCC 4.5. | ||
| 9 | |||
| 10 | |||
| 11 | --- | ||
| 12 | lib/h2ph.t | 12 ++++++++++-- | ||
| 13 | utils/h2ph.PL | 28 +++++++++++++++++++++++----- | ||
| 14 | 2 files changed, 33 insertions(+), 7 deletions(-) | ||
| 15 | |||
| 16 | diff --git a/lib/h2ph.t b/lib/h2ph.t | ||
| 17 | index 27dd7b9..8d62d46 100755 | ||
| 18 | --- a/lib/h2ph.t | ||
| 19 | +++ b/lib/h2ph.t | ||
| 20 | @@ -18,7 +18,7 @@ if (!(-e $extracted_program)) { | ||
| 21 | exit 0; | ||
| 22 | } | ||
| 23 | |||
| 24 | -plan(4); | ||
| 25 | +plan(5); | ||
| 26 | |||
| 27 | # quickly compare two text files | ||
| 28 | sub txt_compare { | ||
| 29 | @@ -41,8 +41,16 @@ $result = runperl( progfile => 'lib/h2ph.pht', | ||
| 30 | stderr => 1 ); | ||
| 31 | like( $result, qr/syntax OK$/, "output compiles"); | ||
| 32 | |||
| 33 | +$result = runperl( progfile => '_h2ph_pre.ph', | ||
| 34 | + switches => ['-c'], | ||
| 35 | + stderr => 1 ); | ||
| 36 | +like( $result, qr/syntax OK$/, "preamble compiles"); | ||
| 37 | + | ||
| 38 | $result = runperl( switches => ["-w"], | ||
| 39 | - prog => '$SIG{__WARN__} = sub { die $_[0] }; require q(lib/h2ph.pht);'); | ||
| 40 | + stderr => 1, | ||
| 41 | + prog => <<'PROG' ); | ||
| 42 | +$SIG{__WARN__} = sub { die $_[0] }; require q(lib/h2ph.pht); | ||
| 43 | +PROG | ||
| 44 | is( $result, '', "output free of warnings" ); | ||
| 45 | |||
| 46 | # cleanup | ||
| 47 | diff --git a/utils/h2ph.PL b/utils/h2ph.PL | ||
| 48 | index 8f56db4..1255807 100644 | ||
| 49 | --- a/utils/h2ph.PL | ||
| 50 | +++ b/utils/h2ph.PL | ||
| 51 | @@ -401,7 +401,10 @@ if ($opt_e && (scalar(keys %bad_file) > 0)) { | ||
| 52 | exit $Exit; | ||
| 53 | |||
| 54 | sub expr { | ||
| 55 | - $new = '"(assembly code)"' and return if /\b__asm__\b/; # freak out. | ||
| 56 | + if (/\b__asm__\b/) { # freak out | ||
| 57 | + $new = '"(assembly code)"'; | ||
| 58 | + return | ||
| 59 | + } | ||
| 60 | my $joined_args; | ||
| 61 | if(keys(%curargs)) { | ||
| 62 | $joined_args = join('|', keys(%curargs)); | ||
| 63 | @@ -770,7 +773,7 @@ sub inc_dirs | ||
| 64 | sub build_preamble_if_necessary | ||
| 65 | { | ||
| 66 | # Increment $VERSION every time this function is modified: | ||
| 67 | - my $VERSION = 2; | ||
| 68 | + my $VERSION = 3; | ||
| 69 | my $preamble = "$Dest_dir/_h2ph_pre.ph"; | ||
| 70 | |||
| 71 | # Can we skip building the preamble file? | ||
| 72 | @@ -798,7 +801,16 @@ sub build_preamble_if_necessary | ||
| 73 | # parenthesized value: d=(v) | ||
| 74 | $define{$_} = $1; | ||
| 75 | } | ||
| 76 | - if ($define{$_} =~ /^([+-]?(\d+)?\.\d+([eE][+-]?\d+)?)[FL]?$/) { | ||
| 77 | + if (/^(\w+)\((\w)\)$/) { | ||
| 78 | + my($macro, $arg) = ($1, $2); | ||
| 79 | + my $def = $define{$_}; | ||
| 80 | + $def =~ s/$arg/\$\{$arg\}/g; | ||
| 81 | + print PREAMBLE <<DEFINE; | ||
| 82 | +unless (defined &$macro) { sub $macro(\$) { my (\$$arg) = \@_; \"$def\" } } | ||
| 83 | + | ||
| 84 | +DEFINE | ||
| 85 | + } elsif | ||
| 86 | + ($define{$_} =~ /^([+-]?(\d+)?\.\d+([eE][+-]?\d+)?)[FL]?$/) { | ||
| 87 | # float: | ||
| 88 | print PREAMBLE | ||
| 89 | "unless (defined &$_) { sub $_() { $1 } }\n\n"; | ||
| 90 | @@ -807,8 +819,14 @@ sub build_preamble_if_necessary | ||
| 91 | print PREAMBLE | ||
| 92 | "unless (defined &$_) { sub $_() { $1 } }\n\n"; | ||
| 93 | } elsif ($define{$_} =~ /^\w+$/) { | ||
| 94 | - print PREAMBLE | ||
| 95 | - "unless (defined &$_) { sub $_() { &$define{$_} } }\n\n"; | ||
| 96 | + my $def = $define{$_}; | ||
| 97 | + if ($isatype{$def}) { | ||
| 98 | + print PREAMBLE | ||
| 99 | + "unless (defined &$_) { sub $_() { \"$def\" } }\n\n"; | ||
| 100 | + } else { | ||
| 101 | + print PREAMBLE | ||
| 102 | + "unless (defined &$_) { sub $_() { &$def } }\n\n"; | ||
| 103 | + } | ||
| 104 | } else { | ||
| 105 | print PREAMBLE | ||
| 106 | "unless (defined &$_) { sub $_() { \"", | ||
| 107 | -- | ||
| 108 | tg: (a508b62..) fixes/h2ph-gcc-4.5 (depends on: upstream) | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/lc-numeric-docs.diff b/meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/lc-numeric-docs.diff deleted file mode 100644 index 67a55da427..0000000000 --- a/meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/lc-numeric-docs.diff +++ /dev/null | |||
| @@ -1,97 +0,0 @@ | |||
| 1 | Upstream-Status:Inappropriate [debian patch] | ||
| 2 | |||
| 3 | From: Niko Tyni <ntyni@debian.org> | ||
| 4 | Subject: LC_NUMERIC documentation fixes | ||
| 5 | Bug-Debian: http://bugs.debian.org/379329 | ||
| 6 | Bug: http://rt.perl.org/rt3/Ticket/Display.html?id=78452 | ||
| 7 | Origin: upstream, http://perl5.git.perl.org/perl.git/commit/903eb63f7d8d47a38971a8e9af7201b9927882cf | ||
| 8 | |||
| 9 | LC_NUMERIC documentation updates fixing two errors: | ||
| 10 | |||
| 11 | - the early parts of perllocale.pod still say printf() uses LC_NUMERIC | ||
| 12 | with just 'use locale' when actually a POSIX::setlocale() call is | ||
| 13 | also needed | ||
| 14 | |||
| 15 | - format() hasn't used LC_NUMERIC unconditionally since 5.005_03 | ||
| 16 | (commit 097ee67dff1c60f201bc09435bc6eaeeafcd8123). | ||
| 17 | |||
| 18 | Test cases from the upstream commit dropped for the sake of simplicity. | ||
| 19 | |||
| 20 | --- | ||
| 21 | pod/perlform.pod | 20 ++++++++------------ | ||
| 22 | pod/perllocale.pod | 15 ++++++--------- | ||
| 23 | 2 files changed, 14 insertions(+), 21 deletions(-) | ||
| 24 | |||
| 25 | diff --git a/pod/perlform.pod b/pod/perlform.pod | ||
| 26 | index 3cfa1b7..df0f0a1 100644 | ||
| 27 | --- a/pod/perlform.pod | ||
| 28 | +++ b/pod/perlform.pod | ||
| 29 | @@ -166,9 +166,9 @@ token on the first line. If an expression evaluates to a number with a | ||
| 30 | decimal part, and if the corresponding picture specifies that the decimal | ||
| 31 | part should appear in the output (that is, any picture except multiple "#" | ||
| 32 | characters B<without> an embedded "."), the character used for the decimal | ||
| 33 | -point is B<always> determined by the current LC_NUMERIC locale. This | ||
| 34 | -means that, if, for example, the run-time environment happens to specify a | ||
| 35 | -German locale, "," will be used instead of the default ".". See | ||
| 36 | +point is determined by the current LC_NUMERIC locale if C<use locale> is in | ||
| 37 | +effect. This means that, if, for example, the run-time environment happens | ||
| 38 | +to specify a German locale, "," will be used instead of the default ".". See | ||
| 39 | L<perllocale> and L<"WARNINGS"> for more information. | ||
| 40 | |||
| 41 | |||
| 42 | @@ -442,15 +442,11 @@ Lexical variables (declared with "my") are not visible within a | ||
| 43 | format unless the format is declared within the scope of the lexical | ||
| 44 | variable. (They weren't visible at all before version 5.001.) | ||
| 45 | |||
| 46 | -Formats are the only part of Perl that unconditionally use information | ||
| 47 | -from a program's locale; if a program's environment specifies an | ||
| 48 | -LC_NUMERIC locale, it is always used to specify the decimal point | ||
| 49 | -character in formatted output. Perl ignores all other aspects of locale | ||
| 50 | -handling unless the C<use locale> pragma is in effect. Formatted output | ||
| 51 | -cannot be controlled by C<use locale> because the pragma is tied to the | ||
| 52 | -block structure of the program, and, for historical reasons, formats | ||
| 53 | -exist outside that block structure. See L<perllocale> for further | ||
| 54 | -discussion of locale handling. | ||
| 55 | +If a program's environment specifies an LC_NUMERIC locale and C<use | ||
| 56 | +locale> is in effect when the format is declared, the locale is used | ||
| 57 | +to specify the decimal point character in formatted output. Formatted | ||
| 58 | +output cannot be controlled by C<use locale> at the time when write() | ||
| 59 | +is called. See L<perllocale> for further discussion of locale handling. | ||
| 60 | |||
| 61 | Within strings that are to be displayed in a fixed length text field, | ||
| 62 | each control character is substituted by a space. (But remember the | ||
| 63 | diff --git a/pod/perllocale.pod b/pod/perllocale.pod | ||
| 64 | index 0dbabe7..0bec423 100644 | ||
| 65 | --- a/pod/perllocale.pod | ||
| 66 | +++ b/pod/perllocale.pod | ||
| 67 | @@ -115,8 +115,7 @@ ucfirst(), and lcfirst()) use C<LC_CTYPE> | ||
| 68 | |||
| 69 | =item * | ||
| 70 | |||
| 71 | -B<The formatting functions> (printf(), sprintf() and write()) use | ||
| 72 | -C<LC_NUMERIC> | ||
| 73 | +B<Format declarations> (format()) use C<LC_NUMERIC> | ||
| 74 | |||
| 75 | =item * | ||
| 76 | |||
| 77 | @@ -967,13 +966,11 @@ system's implementation of the locale system than by Perl. | ||
| 78 | |||
| 79 | =head2 write() and LC_NUMERIC | ||
| 80 | |||
| 81 | -Formats are the only part of Perl that unconditionally use information | ||
| 82 | -from a program's locale; if a program's environment specifies an | ||
| 83 | -LC_NUMERIC locale, it is always used to specify the decimal point | ||
| 84 | -character in formatted output. Formatted output cannot be controlled by | ||
| 85 | -C<use locale> because the pragma is tied to the block structure of the | ||
| 86 | -program, and, for historical reasons, formats exist outside that block | ||
| 87 | -structure. | ||
| 88 | +If a program's environment specifies an LC_NUMERIC locale and C<use | ||
| 89 | +locale> is in effect when the format is declared, the locale is used | ||
| 90 | +to specify the decimal point character in formatted output. Formatted | ||
| 91 | +output cannot be controlled by C<use locale> at the time when write() | ||
| 92 | +is called. | ||
| 93 | |||
| 94 | =head2 Freely available locale definitions | ||
| 95 | |||
| 96 | -- | ||
| 97 | tg: (a508b62..) fixes/lc-numeric-docs (depends on: upstream) | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/lc-numeric-sprintf.diff b/meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/lc-numeric-sprintf.diff deleted file mode 100644 index 9fe07eb294..0000000000 --- a/meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/lc-numeric-sprintf.diff +++ /dev/null | |||
| @@ -1,31 +0,0 @@ | |||
| 1 | Upstream-Status:Inappropriate [debian patch] | ||
| 2 | |||
| 3 | From: Niko Tyni <ntyni@debian.org> | ||
| 4 | Subject: Fix sprintf not to ignore LC_NUMERIC with constants | ||
| 5 | Bug-Debian: http://bugs.debian.org/601549 | ||
| 6 | Bug: http://rt.perl.org/rt3/Ticket/Display.html?id=78632 | ||
| 7 | Origin: upstream, http://perl5.git.perl.org/perl.git/commit/b3fd61496ebc585b1115807e3195f17714662a09 | ||
| 8 | |||
| 9 | Don't fold constants in sprintf() if locales are used | ||
| 10 | |||
| 11 | An upstream regression in 5.10.1 made sprintf() ignore LC_NUMERIC for | ||
| 12 | numeric constants. | ||
| 13 | |||
| 14 | --- | ||
| 15 | op.c | 1 + | ||
| 16 | 1 files changed, 1 insertions(+), 0 deletions(-) | ||
| 17 | |||
| 18 | diff --git a/op.c b/op.c | ||
| 19 | index e94f158..3c6badb 100644 | ||
| 20 | --- a/op.c | ||
| 21 | +++ b/op.c | ||
| 22 | @@ -2503,6 +2503,7 @@ S_fold_constants(pTHX_ register OP *o) | ||
| 23 | case OP_SLE: | ||
| 24 | case OP_SGE: | ||
| 25 | case OP_SCMP: | ||
| 26 | + case OP_SPRINTF: | ||
| 27 | /* XXX what about the numeric ops? */ | ||
| 28 | if (PL_hints & HINT_LOCALE) | ||
| 29 | goto nope; | ||
| 30 | -- | ||
| 31 | tg: (a508b62..) fixes/lc-numeric-sprintf (depends on: upstream) | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/processPL.diff b/meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/processPL.diff deleted file mode 100644 index fa2d7c365a..0000000000 --- a/meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/processPL.diff +++ /dev/null | |||
| @@ -1,45 +0,0 @@ | |||
| 1 | Upstream-Status:Inappropriate [debian patch] | ||
| 2 | |||
| 3 | Subject: Always use PERLRUNINST when building perl modules. | ||
| 4 | Bug-Debian: http://bugs.debian.org/357264 | ||
| 5 | Bug: http://rt.cpan.org/Public/Bug/Display.html?id=17224 | ||
| 6 | |||
| 7 | Revert part of upstream change 24524 to always use PERLRUNINST when | ||
| 8 | building perl modules: Some PDL demos expect blib to be implicitly | ||
| 9 | searched. | ||
| 10 | |||
| 11 | |||
| 12 | --- | ||
| 13 | cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | 5 +---- | ||
| 14 | 1 files changed, 1 insertions(+), 4 deletions(-) | ||
| 15 | |||
| 16 | diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | ||
| 17 | index 239d6df..294d266 100644 | ||
| 18 | --- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | ||
| 19 | +++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | ||
| 20 | @@ -3043,14 +3043,11 @@ sub processPL { | ||
| 21 | # pm_to_blib depends on then it can't depend on pm_to_blib | ||
| 22 | # else we have a dependency loop. | ||
| 23 | my $pm_dep; | ||
| 24 | - my $perlrun; | ||
| 25 | if( defined $self->{PM}{$target} ) { | ||
| 26 | $pm_dep = ''; | ||
| 27 | - $perlrun = 'PERLRUN'; | ||
| 28 | } | ||
| 29 | else { | ||
| 30 | $pm_dep = 'pm_to_blib'; | ||
| 31 | - $perlrun = 'PERLRUNINST'; | ||
| 32 | } | ||
| 33 | |||
| 34 | $m .= <<MAKE_FRAG; | ||
| 35 | @@ -3059,7 +3056,7 @@ all :: $target | ||
| 36 | \$(NOECHO) \$(NOOP) | ||
| 37 | |||
| 38 | $target :: $plfile $pm_dep | ||
| 39 | - \$($perlrun) $plfile $target | ||
| 40 | + \$(PERLRUNINST) $plfile $target | ||
| 41 | MAKE_FRAG | ||
| 42 | |||
| 43 | } | ||
| 44 | -- | ||
| 45 | tg: (a508b62..) fixes/processPL (depends on: upstream) | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/debian/patchlevel b/meta/recipes-devtools/perl/perl-5.12.3/debian/patchlevel deleted file mode 100644 index 0839fbd031..0000000000 --- a/meta/recipes-devtools/perl/perl-5.12.3/debian/patchlevel +++ /dev/null | |||
| @@ -1,45 +0,0 @@ | |||
| 1 | Subject: List packaged patches for 5.12.3-2 in patchlevel.h | ||
| 2 | Origin: vendor | ||
| 3 | Bug-Debian: http://bugs.debian.org/567489 | ||
| 4 | |||
| 5 | The list can be refreshed from information in debian/patches by running | ||
| 6 | 'debian/rules refresh-patchlevel'. | ||
| 7 | |||
| 8 | |||
| 9 | --- perl/patchlevel.bak | ||
| 10 | +++ perl/patchlevel.h | ||
| 11 | @@ -133,0 +134,34 @@ | ||
| 12 | + ,"DEBPKG:debian/arm_thread_stress_timeout - http://bugs.debian.org/501970 Raise the timeout of ext/threads/shared/t/stress.t to accommodate slower build hosts" | ||
| 13 | + ,"DEBPKG:debian/cpan_config_path - Set location of CPAN::Config to /etc/perl as /usr may not be writable." | ||
| 14 | + ,"DEBPKG:debian/cpan_definstalldirs - Provide a sensible INSTALLDIRS default for modules installed from CPAN." | ||
| 15 | + ,"DEBPKG:debian/db_file_ver - http://bugs.debian.org/340047 Remove overly restrictive DB_File version check." | ||
| 16 | + ,"DEBPKG:debian/doc_info - Replace generic man(1) instructions with Debian-specific information." | ||
| 17 | + ,"DEBPKG:debian/enc2xs_inc - http://bugs.debian.org/290336 Tweak enc2xs to follow symlinks and ignore missing @INC directories." | ||
| 18 | + ,"DEBPKG:debian/errno_ver - http://bugs.debian.org/343351 Remove Errno version check due to upgrade problems with long-running processes." | ||
| 19 | + ,"DEBPKG:debian/extutils_hacks - Various debian-specific ExtUtils changes" | ||
| 20 | + ,"DEBPKG:debian/fakeroot - Postpone LD_LIBRARY_PATH evaluation to the binary targets." | ||
| 21 | + ,"DEBPKG:debian/instmodsh_doc - Debian policy doesn't install .packlist files for core or vendor." | ||
| 22 | + ,"DEBPKG:debian/ld_run_path - Remove standard libs from LD_RUN_PATH as per Debian policy." | ||
| 23 | + ,"DEBPKG:debian/libnet_config_path - Set location of libnet.cfg to /etc/perl/Net as /usr may not be writable." | ||
| 24 | + ,"DEBPKG:debian/m68k_thread_stress - http://bugs.debian.org/495826 Disable some threads tests on m68k for now due to missing TLS." | ||
| 25 | + ,"DEBPKG:debian/mod_paths - Tweak @INC ordering for Debian" | ||
| 26 | + ,"DEBPKG:debian/module_build_man_extensions - http://bugs.debian.org/479460 Adjust Module::Build manual page extensions for the Debian Perl policy" | ||
| 27 | + ,"DEBPKG:debian/prune_libs - http://bugs.debian.org/128355 Prune the list of libraries wanted to what we actually need." | ||
| 28 | + ,"DEBPKG:fixes/net_smtp_docs - http://bugs.debian.org/100195 [rt.cpan.org #36038] Document the Net::SMTP 'Port' option" | ||
| 29 | + ,"DEBPKG:fixes/processPL - http://bugs.debian.org/357264 [rt.cpan.org #17224] Always use PERLRUNINST when building perl modules." | ||
| 30 | + ,"DEBPKG:debian/perlivp - http://bugs.debian.org/510895 Make perlivp skip include directories in /usr/local" | ||
| 31 | + ,"DEBPKG:debian/disable-zlib-bundling - Disable zlib bundling in Compress::Raw::Zlib" | ||
| 32 | + ,"DEBPKG:debian/cpanplus_definstalldirs - http://bugs.debian.org/533707 Configure CPANPLUS to use the site directories by default." | ||
| 33 | + ,"DEBPKG:debian/cpanplus_config_path - Save local versions of CPANPLUS::Config::System into /etc/perl." | ||
| 34 | + ,"DEBPKG:fixes/autodie-flock - http://bugs.debian.org/543731 Allow for flock returning EAGAIN instead of EWOULDBLOCK on linux/parisc" | ||
| 35 | + ,"DEBPKG:debian/devel-ppport-ia64-optim - http://bugs.debian.org/548943 Work around an ICE on ia64" | ||
| 36 | + ,"DEBPKG:fixes/cpanplus-without-home - http://bugs.debian.org/577011 [rt.cpan.org #52988] Fix CPANPLUS test failures when HOME doesn't exist" | ||
| 37 | + ,"DEBPKG:debian/arm_optim - http://bugs.debian.org/580334 Downgrade the optimization of sv.c on arm due to a gcc-4.4 bug" | ||
| 38 | + ,"DEBPKG:debian/deprecate-with-apt - http://bugs.debian.org/580034 Point users to Debian packages of deprecated core modules" | ||
| 39 | + ,"DEBPKG:fixes/hurd-ccflags - http://bugs.debian.org/587901 Make hints/gnu.sh append to $ccflags rather than overriding them" | ||
| 40 | + ,"DEBPKG:debian/squelch-locale-warnings - http://bugs.debian.org/508764 Squelch locale warnings in Debian package maintainer scripts" | ||
| 41 | + ,"DEBPKG:fixes/lc-numeric-docs - http://bugs.debian.org/379329 [perl #78452] [903eb63] LC_NUMERIC documentation fixes" | ||
| 42 | + ,"DEBPKG:fixes/lc-numeric-sprintf - http://bugs.debian.org/601549 [perl #78632] [b3fd614] Fix sprintf not to ignore LC_NUMERIC with constants" | ||
| 43 | + ,"DEBPKG:fixes/concat-stack-corruption - http://bugs.debian.org/596105 [perl #78674] [e3393f5] Fix stack pointer corruption in pp_concat() with 'use encoding'" | ||
| 44 | + ,"DEBPKG:fixes/h2ph-gcc-4.5 - http://bugs.debian.org/599933 [8d66b3f] h2ph fix for gcc 4.5" | ||
| 45 | + ,"DEBPKG:patchlevel - http://bugs.debian.org/567489 List packaged patches for 5.12.3-2 in patchlevel.h" | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/debian/series b/meta/recipes-devtools/perl/perl-5.12.3/debian/series deleted file mode 100644 index 5425bc6323..0000000000 --- a/meta/recipes-devtools/perl/perl-5.12.3/debian/series +++ /dev/null | |||
| @@ -1,34 +0,0 @@ | |||
| 1 | debian/arm_thread_stress_timeout.diff -p1 | ||
| 2 | debian/cpan_config_path.diff -p1 | ||
| 3 | debian/cpan_definstalldirs.diff -p1 | ||
| 4 | debian/db_file_ver.diff -p1 | ||
| 5 | debian/doc_info.diff -p1 | ||
| 6 | debian/enc2xs_inc.diff -p1 | ||
| 7 | debian/errno_ver.diff -p1 | ||
| 8 | debian/extutils_hacks.diff -p1 | ||
| 9 | debian/fakeroot.diff -p1 | ||
| 10 | debian/instmodsh_doc.diff -p1 | ||
| 11 | debian/ld_run_path.diff -p1 | ||
| 12 | debian/libnet_config_path.diff -p1 | ||
| 13 | debian/m68k_thread_stress.diff -p1 | ||
| 14 | debian/mod_paths.diff -p1 | ||
| 15 | debian/module_build_man_extensions.diff -p1 | ||
| 16 | debian/prune_libs.diff -p1 | ||
| 17 | fixes/net_smtp_docs.diff -p1 | ||
| 18 | fixes/processPL.diff -p1 | ||
| 19 | debian/perlivp.diff -p1 | ||
| 20 | debian/disable-zlib-bundling.diff -p1 | ||
| 21 | debian/cpanplus_definstalldirs.diff -p1 | ||
| 22 | debian/cpanplus_config_path.diff -p1 | ||
| 23 | fixes/autodie-flock.diff -p1 | ||
| 24 | debian/devel-ppport-ia64-optim.diff -p1 | ||
| 25 | fixes/cpanplus-without-home.diff -p1 | ||
| 26 | debian/arm_optim.diff -p1 | ||
| 27 | debian/deprecate-with-apt.diff -p1 | ||
| 28 | fixes/hurd-ccflags.diff -p1 | ||
| 29 | debian/squelch-locale-warnings.diff -p1 | ||
| 30 | fixes/lc-numeric-docs.diff -p1 | ||
| 31 | fixes/lc-numeric-sprintf.diff -p1 | ||
| 32 | fixes/concat-stack-corruption.diff -p1 | ||
| 33 | fixes/h2ph-gcc-4.5.diff -p1 | ||
| 34 | patchlevel -p1 | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/parallel_build_fix_1.patch b/meta/recipes-devtools/perl/perl-5.12.3/parallel_build_fix_1.patch deleted file mode 100644 index d5a6295386..0000000000 --- a/meta/recipes-devtools/perl/perl-5.12.3/parallel_build_fix_1.patch +++ /dev/null | |||
| @@ -1,27 +0,0 @@ | |||
| 1 | Upstream-Status:Inappropriate [Backport] | ||
| 2 | |||
| 3 | Imported from perl git tree by Nitin A Kamble <nitin.a.kamble@intel.com> | ||
| 4 | 2011-02-23 | ||
| 5 | |||
| 6 | commit 6695a346c41138df5b2c0e26b9a49b1f96137da0 | ||
| 7 | Author: Tony Cook <tony@openbsd32.tony.develop-help.com> | ||
| 8 | Date: Thu Jul 22 09:54:13 2010 +1000 | ||
| 9 | |||
| 10 | make_ext.pl populates @INC correctly, don't override it badly | ||
| 11 | |||
| 12 | PERL5LIB is populated by make_ext.pl with paths to the modules we need | ||
| 13 | to run, don't override this with "../../lib" since that may not have | ||
| 14 | been populated yet in a parallel build. | ||
| 15 | |||
| 16 | diff --git a/ext/POSIX/Makefile.PL b/ext/POSIX/Makefile.PL | ||
| 17 | index 392b6fb..9e6d091 100644 | ||
| 18 | --- a/ext/POSIX/Makefile.PL | ||
| 19 | +++ b/ext/POSIX/Makefile.PL | ||
| 20 | @@ -1,7 +1,3 @@ | ||
| 21 | -# Explicitly avoid including '.' in @INC; autoloader gets confused since it | ||
| 22 | -# can find POSIX.pm, but can't find autosplit.ix. | ||
| 23 | -BEGIN { @INC = '../../lib';} | ||
| 24 | -# | ||
| 25 | use ExtUtils::MakeMaker; | ||
| 26 | use ExtUtils::Constant 0.11 'WriteConstants'; | ||
| 27 | use Config; | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/parallel_build_fix_2.patch b/meta/recipes-devtools/perl/perl-5.12.3/parallel_build_fix_2.patch deleted file mode 100644 index a3432ab430..0000000000 --- a/meta/recipes-devtools/perl/perl-5.12.3/parallel_build_fix_2.patch +++ /dev/null | |||
| @@ -1,24 +0,0 @@ | |||
| 1 | Upstream-Status:Inappropriate [Backport] | ||
| 2 | |||
| 3 | Imported from perl git tree by Nitin A Kamble <nitin.a.kamble@intel.com> | ||
| 4 | 2011-02-23 | ||
| 5 | |||
| 6 | commit 24e93d7838b346d2ed632075f3d824a325170616 | ||
| 7 | Author: Tony Cook <tony@develop-help.com> | ||
| 8 | Date: Sat Aug 14 00:21:29 2010 +1000 | ||
| 9 | |||
| 10 | POSIX/t/posix.t expects a certain start to Makefile.PL | ||
| 11 | |||
| 12 | 6695a346 changed the start of Makefile.PL, but t/posix.t reads that to | ||
| 13 | test its read() implementation, restore enough of the original for the | ||
| 14 | test to pass. | ||
| 15 | |||
| 16 | diff --git a/ext/POSIX/Makefile.PL b/ext/POSIX/Makefile.PL | ||
| 17 | index 9e6d091..292882c 100644 | ||
| 18 | --- a/ext/POSIX/Makefile.PL | ||
| 19 | +++ b/ext/POSIX/Makefile.PL | ||
| 20 | @@ -1,3 +1,4 @@ | ||
| 21 | +# Expect this line to be read by t/posix.t, don't change it | ||
| 22 | use ExtUtils::MakeMaker; | ||
| 23 | use ExtUtils::Constant 0.11 'WriteConstants'; | ||
| 24 | use Config; | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/parallel_build_fix_3.patch b/meta/recipes-devtools/perl/perl-5.12.3/parallel_build_fix_3.patch deleted file mode 100644 index 26af1f1d95..0000000000 --- a/meta/recipes-devtools/perl/perl-5.12.3/parallel_build_fix_3.patch +++ /dev/null | |||
| @@ -1,6585 +0,0 @@ | |||
| 1 | Upstream-Status:Inappropriate [Backport] | ||
| 2 | |||
| 3 | Imported from perl git tree by Nitin A Kamble <nitin.a.kamble@intel.com> | ||
| 4 | 2011-02-23 | ||
| 5 | |||
| 6 | commit 4feb80ac47a22e7de7d7c1c1d5dfb3d744a2a3a7 | ||
| 7 | Author: Jerry D. Hedden <jdhedden@cpan.org> | ||
| 8 | Date: Tue Aug 17 13:17:11 2010 -0400 | ||
| 9 | |||
| 10 | Move POSIX.pm to lib/POSIX.pm to fix autosplitter problem | ||
| 11 | |||
| 12 | diff --git a/MANIFEST b/MANIFEST | ||
| 13 | index 3036d73..faf8974 100644 | ||
| 14 | --- a/MANIFEST | ||
| 15 | +++ b/MANIFEST | ||
| 16 | @@ -3183,9 +3183,9 @@ ext/POSIX/hints/openbsd.pl Hint for POSIX for named architecture | ||
| 17 | ext/POSIX/hints/sunos_4.pl Hint for POSIX for named architecture | ||
| 18 | ext/POSIX/hints/svr4.pl Hint for POSIX for named architecture | ||
| 19 | ext/POSIX/hints/uts.pl Hint for POSIX for named architecture | ||
| 20 | +ext/POSIX/lib/POSIX.pm POSIX extension Perl module | ||
| 21 | +ext/POSIX/lib/POSIX.pod POSIX extension documentation | ||
| 22 | ext/POSIX/Makefile.PL POSIX extension makefile writer | ||
| 23 | -ext/POSIX/POSIX.pm POSIX extension Perl module | ||
| 24 | -ext/POSIX/POSIX.pod POSIX extension documentation | ||
| 25 | ext/POSIX/POSIX.xs POSIX extension external subroutines | ||
| 26 | ext/POSIX/t/is.t See if POSIX isxxx() work | ||
| 27 | ext/POSIX/t/math.t Basic math tests for POSIX | ||
| 28 | diff --git a/ext/POSIX/Makefile.PL b/ext/POSIX/Makefile.PL | ||
| 29 | index 292882c..07c3841 100644 | ||
| 30 | --- a/ext/POSIX/Makefile.PL | ||
| 31 | +++ b/ext/POSIX/Makefile.PL | ||
| 32 | @@ -18,7 +18,8 @@ WriteMakefile( | ||
| 33 | NAME => 'POSIX', | ||
| 34 | @libs, | ||
| 35 | XSPROTOARG => '-noprototypes', # XXX remove later? | ||
| 36 | - VERSION_FROM => 'POSIX.pm', | ||
| 37 | + VERSION_FROM => 'lib/POSIX.pm', | ||
| 38 | + ABSTRACT_FROM => 'lib/POSIX.pod', | ||
| 39 | realclean => {FILES=> 'const-c.inc const-xs.inc'}, | ||
| 40 | ); | ||
| 41 | |||
| 42 | diff --git a/ext/POSIX/POSIX.pm b/ext/POSIX/POSIX.pm | ||
| 43 | deleted file mode 100644 | ||
| 44 | index ffbd9de..0000000 | ||
| 45 | --- a/ext/POSIX/POSIX.pm | ||
| 46 | +++ /dev/null | ||
| 47 | @@ -1,1042 +0,0 @@ | ||
| 48 | -package POSIX; | ||
| 49 | -use strict; | ||
| 50 | -use warnings; | ||
| 51 | - | ||
| 52 | -our(@ISA, %EXPORT_TAGS, @EXPORT_OK, @EXPORT, $AUTOLOAD, %SIGRT) = (); | ||
| 53 | - | ||
| 54 | -our $VERSION = "1.19"; | ||
| 55 | - | ||
| 56 | -use AutoLoader; | ||
| 57 | - | ||
| 58 | -use XSLoader (); | ||
| 59 | - | ||
| 60 | -use Fcntl qw(FD_CLOEXEC F_DUPFD F_GETFD F_GETFL F_GETLK F_RDLCK F_SETFD | ||
| 61 | - F_SETFL F_SETLK F_SETLKW F_UNLCK F_WRLCK O_ACCMODE O_APPEND | ||
| 62 | - O_CREAT O_EXCL O_NOCTTY O_NONBLOCK O_RDONLY O_RDWR O_TRUNC | ||
| 63 | - O_WRONLY SEEK_CUR SEEK_END SEEK_SET | ||
| 64 | - S_ISBLK S_ISCHR S_ISDIR S_ISFIFO S_ISREG | ||
| 65 | - S_IRGRP S_IROTH S_IRUSR S_IRWXG S_IRWXO S_IRWXU S_ISGID S_ISUID | ||
| 66 | - S_IWGRP S_IWOTH S_IWUSR S_IXGRP S_IXOTH S_IXUSR); | ||
| 67 | - | ||
| 68 | -# Grandfather old foo_h form to new :foo_h form | ||
| 69 | -my $loaded; | ||
| 70 | - | ||
| 71 | -sub import { | ||
| 72 | - load_imports() unless $loaded++; | ||
| 73 | - my $this = shift; | ||
| 74 | - my @list = map { m/^\w+_h$/ ? ":$_" : $_ } @_; | ||
| 75 | - local $Exporter::ExportLevel = 1; | ||
| 76 | - Exporter::import($this,@list); | ||
| 77 | -} | ||
| 78 | - | ||
| 79 | -sub croak { require Carp; goto &Carp::croak } | ||
| 80 | -# declare usage to assist AutoLoad | ||
| 81 | -sub usage; | ||
| 82 | - | ||
| 83 | -XSLoader::load 'POSIX', $VERSION; | ||
| 84 | - | ||
| 85 | -sub AUTOLOAD { | ||
| 86 | - no strict; | ||
| 87 | - no warnings 'uninitialized'; | ||
| 88 | - if ($AUTOLOAD =~ /::(_?[a-z])/) { | ||
| 89 | - # require AutoLoader; | ||
| 90 | - $AutoLoader::AUTOLOAD = $AUTOLOAD; | ||
| 91 | - goto &AutoLoader::AUTOLOAD | ||
| 92 | - } | ||
| 93 | - local $! = 0; | ||
| 94 | - my $constname = $AUTOLOAD; | ||
| 95 | - $constname =~ s/.*:://; | ||
| 96 | - my ($error, $val) = constant($constname); | ||
| 97 | - croak $error if $error; | ||
| 98 | - *$AUTOLOAD = sub { $val }; | ||
| 99 | - | ||
| 100 | - goto &$AUTOLOAD; | ||
| 101 | -} | ||
| 102 | - | ||
| 103 | -package POSIX::SigAction; | ||
| 104 | - | ||
| 105 | -use AutoLoader 'AUTOLOAD'; | ||
| 106 | - | ||
| 107 | -package POSIX::SigRt; | ||
| 108 | - | ||
| 109 | -use AutoLoader 'AUTOLOAD'; | ||
| 110 | - | ||
| 111 | -use Tie::Hash; | ||
| 112 | - | ||
| 113 | -use vars qw($SIGACTION_FLAGS $_SIGRTMIN $_SIGRTMAX $_sigrtn @ISA); | ||
| 114 | -@POSIX::SigRt::ISA = qw(Tie::StdHash); | ||
| 115 | - | ||
| 116 | -$SIGACTION_FLAGS = 0; | ||
| 117 | - | ||
| 118 | -tie %POSIX::SIGRT, 'POSIX::SigRt'; | ||
| 119 | - | ||
| 120 | -sub DESTROY {}; | ||
| 121 | - | ||
| 122 | -package POSIX; | ||
| 123 | - | ||
| 124 | -1; | ||
| 125 | -__END__ | ||
| 126 | - | ||
| 127 | -sub usage { | ||
| 128 | - my ($mess) = @_; | ||
| 129 | - croak "Usage: POSIX::$mess"; | ||
| 130 | -} | ||
| 131 | - | ||
| 132 | -sub redef { | ||
| 133 | - my ($mess) = @_; | ||
| 134 | - croak "Use method $mess instead"; | ||
| 135 | -} | ||
| 136 | - | ||
| 137 | -sub unimpl { | ||
| 138 | - my ($mess) = @_; | ||
| 139 | - $mess =~ s/xxx//; | ||
| 140 | - croak "Unimplemented: POSIX::$mess"; | ||
| 141 | -} | ||
| 142 | - | ||
| 143 | -sub assert { | ||
| 144 | - usage "assert(expr)" if @_ != 1; | ||
| 145 | - if (!$_[0]) { | ||
| 146 | - croak "Assertion failed"; | ||
| 147 | - } | ||
| 148 | -} | ||
| 149 | - | ||
| 150 | -sub tolower { | ||
| 151 | - usage "tolower(string)" if @_ != 1; | ||
| 152 | - lc($_[0]); | ||
| 153 | -} | ||
| 154 | - | ||
| 155 | -sub toupper { | ||
| 156 | - usage "toupper(string)" if @_ != 1; | ||
| 157 | - uc($_[0]); | ||
| 158 | -} | ||
| 159 | - | ||
| 160 | -sub closedir { | ||
| 161 | - usage "closedir(dirhandle)" if @_ != 1; | ||
| 162 | - CORE::closedir($_[0]); | ||
| 163 | -} | ||
| 164 | - | ||
| 165 | -sub opendir { | ||
| 166 | - usage "opendir(directory)" if @_ != 1; | ||
| 167 | - my $dirhandle; | ||
| 168 | - CORE::opendir($dirhandle, $_[0]) | ||
| 169 | - ? $dirhandle | ||
| 170 | - : undef; | ||
| 171 | -} | ||
| 172 | - | ||
| 173 | -sub readdir { | ||
| 174 | - usage "readdir(dirhandle)" if @_ != 1; | ||
| 175 | - CORE::readdir($_[0]); | ||
| 176 | -} | ||
| 177 | - | ||
| 178 | -sub rewinddir { | ||
| 179 | - usage "rewinddir(dirhandle)" if @_ != 1; | ||
| 180 | - CORE::rewinddir($_[0]); | ||
| 181 | -} | ||
| 182 | - | ||
| 183 | -sub errno { | ||
| 184 | - usage "errno()" if @_ != 0; | ||
| 185 | - $! + 0; | ||
| 186 | -} | ||
| 187 | - | ||
| 188 | -sub creat { | ||
| 189 | - usage "creat(filename, mode)" if @_ != 2; | ||
| 190 | - &open($_[0], &O_WRONLY | &O_CREAT | &O_TRUNC, $_[1]); | ||
| 191 | -} | ||
| 192 | - | ||
| 193 | -sub fcntl { | ||
| 194 | - usage "fcntl(filehandle, cmd, arg)" if @_ != 3; | ||
| 195 | - CORE::fcntl($_[0], $_[1], $_[2]); | ||
| 196 | -} | ||
| 197 | - | ||
| 198 | -sub getgrgid { | ||
| 199 | - usage "getgrgid(gid)" if @_ != 1; | ||
| 200 | - CORE::getgrgid($_[0]); | ||
| 201 | -} | ||
| 202 | - | ||
| 203 | -sub getgrnam { | ||
| 204 | - usage "getgrnam(name)" if @_ != 1; | ||
| 205 | - CORE::getgrnam($_[0]); | ||
| 206 | -} | ||
| 207 | - | ||
| 208 | -sub atan2 { | ||
| 209 | - usage "atan2(x,y)" if @_ != 2; | ||
| 210 | - CORE::atan2($_[0], $_[1]); | ||
| 211 | -} | ||
| 212 | - | ||
| 213 | -sub cos { | ||
| 214 | - usage "cos(x)" if @_ != 1; | ||
| 215 | - CORE::cos($_[0]); | ||
| 216 | -} | ||
| 217 | - | ||
| 218 | -sub exp { | ||
| 219 | - usage "exp(x)" if @_ != 1; | ||
| 220 | - CORE::exp($_[0]); | ||
| 221 | -} | ||
| 222 | - | ||
| 223 | -sub fabs { | ||
| 224 | - usage "fabs(x)" if @_ != 1; | ||
| 225 | - CORE::abs($_[0]); | ||
| 226 | -} | ||
| 227 | - | ||
| 228 | -sub log { | ||
| 229 | - usage "log(x)" if @_ != 1; | ||
| 230 | - CORE::log($_[0]); | ||
| 231 | -} | ||
| 232 | - | ||
| 233 | -sub pow { | ||
| 234 | - usage "pow(x,exponent)" if @_ != 2; | ||
| 235 | - $_[0] ** $_[1]; | ||
| 236 | -} | ||
| 237 | - | ||
| 238 | -sub sin { | ||
| 239 | - usage "sin(x)" if @_ != 1; | ||
| 240 | - CORE::sin($_[0]); | ||
| 241 | -} | ||
| 242 | - | ||
| 243 | -sub sqrt { | ||
| 244 | - usage "sqrt(x)" if @_ != 1; | ||
| 245 | - CORE::sqrt($_[0]); | ||
| 246 | -} | ||
| 247 | - | ||
| 248 | -sub getpwnam { | ||
| 249 | - usage "getpwnam(name)" if @_ != 1; | ||
| 250 | - CORE::getpwnam($_[0]); | ||
| 251 | -} | ||
| 252 | - | ||
| 253 | -sub getpwuid { | ||
| 254 | - usage "getpwuid(uid)" if @_ != 1; | ||
| 255 | - CORE::getpwuid($_[0]); | ||
| 256 | -} | ||
| 257 | - | ||
| 258 | -sub longjmp { | ||
| 259 | - unimpl "longjmp() is C-specific: use die instead"; | ||
| 260 | -} | ||
| 261 | - | ||
| 262 | -sub setjmp { | ||
| 263 | - unimpl "setjmp() is C-specific: use eval {} instead"; | ||
| 264 | -} | ||
| 265 | - | ||
| 266 | -sub siglongjmp { | ||
| 267 | - unimpl "siglongjmp() is C-specific: use die instead"; | ||
| 268 | -} | ||
| 269 | - | ||
| 270 | -sub sigsetjmp { | ||
| 271 | - unimpl "sigsetjmp() is C-specific: use eval {} instead"; | ||
| 272 | -} | ||
| 273 | - | ||
| 274 | -sub kill { | ||
| 275 | - usage "kill(pid, sig)" if @_ != 2; | ||
| 276 | - CORE::kill $_[1], $_[0]; | ||
| 277 | -} | ||
| 278 | - | ||
| 279 | -sub raise { | ||
| 280 | - usage "raise(sig)" if @_ != 1; | ||
| 281 | - CORE::kill $_[0], $$; # Is this good enough? | ||
| 282 | -} | ||
| 283 | - | ||
| 284 | -sub offsetof { | ||
| 285 | - unimpl "offsetof() is C-specific, stopped"; | ||
| 286 | -} | ||
| 287 | - | ||
| 288 | -sub clearerr { | ||
| 289 | - redef "IO::Handle::clearerr()"; | ||
| 290 | -} | ||
| 291 | - | ||
| 292 | -sub fclose { | ||
| 293 | - redef "IO::Handle::close()"; | ||
| 294 | -} | ||
| 295 | - | ||
| 296 | -sub fdopen { | ||
| 297 | - redef "IO::Handle::new_from_fd()"; | ||
| 298 | -} | ||
| 299 | - | ||
| 300 | -sub feof { | ||
| 301 | - redef "IO::Handle::eof()"; | ||
| 302 | -} | ||
| 303 | - | ||
| 304 | -sub fgetc { | ||
| 305 | - redef "IO::Handle::getc()"; | ||
| 306 | -} | ||
| 307 | - | ||
| 308 | -sub fgets { | ||
| 309 | - redef "IO::Handle::gets()"; | ||
| 310 | -} | ||
| 311 | - | ||
| 312 | -sub fileno { | ||
| 313 | - redef "IO::Handle::fileno()"; | ||
| 314 | -} | ||
| 315 | - | ||
| 316 | -sub fopen { | ||
| 317 | - redef "IO::File::open()"; | ||
| 318 | -} | ||
| 319 | - | ||
| 320 | -sub fprintf { | ||
| 321 | - unimpl "fprintf() is C-specific--use printf instead"; | ||
| 322 | -} | ||
| 323 | - | ||
| 324 | -sub fputc { | ||
| 325 | - unimpl "fputc() is C-specific--use print instead"; | ||
| 326 | -} | ||
| 327 | - | ||
| 328 | -sub fputs { | ||
| 329 | - unimpl "fputs() is C-specific--use print instead"; | ||
| 330 | -} | ||
| 331 | - | ||
| 332 | -sub fread { | ||
| 333 | - unimpl "fread() is C-specific--use read instead"; | ||
| 334 | -} | ||
| 335 | - | ||
| 336 | -sub freopen { | ||
| 337 | - unimpl "freopen() is C-specific--use open instead"; | ||
| 338 | -} | ||
| 339 | - | ||
| 340 | -sub fscanf { | ||
| 341 | - unimpl "fscanf() is C-specific--use <> and regular expressions instead"; | ||
| 342 | -} | ||
| 343 | - | ||
| 344 | -sub fseek { | ||
| 345 | - redef "IO::Seekable::seek()"; | ||
| 346 | -} | ||
| 347 | - | ||
| 348 | -sub fsync { | ||
| 349 | - redef "IO::Handle::sync()"; | ||
| 350 | -} | ||
| 351 | - | ||
| 352 | -sub ferror { | ||
| 353 | - redef "IO::Handle::error()"; | ||
| 354 | -} | ||
| 355 | - | ||
| 356 | -sub fflush { | ||
| 357 | - redef "IO::Handle::flush()"; | ||
| 358 | -} | ||
| 359 | - | ||
| 360 | -sub fgetpos { | ||
| 361 | - redef "IO::Seekable::getpos()"; | ||
| 362 | -} | ||
| 363 | - | ||
| 364 | -sub fsetpos { | ||
| 365 | - redef "IO::Seekable::setpos()"; | ||
| 366 | -} | ||
| 367 | - | ||
| 368 | -sub ftell { | ||
| 369 | - redef "IO::Seekable::tell()"; | ||
| 370 | -} | ||
| 371 | - | ||
| 372 | -sub fwrite { | ||
| 373 | - unimpl "fwrite() is C-specific--use print instead"; | ||
| 374 | -} | ||
| 375 | - | ||
| 376 | -sub getc { | ||
| 377 | - usage "getc(handle)" if @_ != 1; | ||
| 378 | - CORE::getc($_[0]); | ||
| 379 | -} | ||
| 380 | - | ||
| 381 | -sub getchar { | ||
| 382 | - usage "getchar()" if @_ != 0; | ||
| 383 | - CORE::getc(STDIN); | ||
| 384 | -} | ||
| 385 | - | ||
| 386 | -sub gets { | ||
| 387 | - usage "gets()" if @_ != 0; | ||
| 388 | - scalar <STDIN>; | ||
| 389 | -} | ||
| 390 | - | ||
| 391 | -sub perror { | ||
| 392 | - print STDERR "@_: " if @_; | ||
| 393 | - print STDERR $!,"\n"; | ||
| 394 | -} | ||
| 395 | - | ||
| 396 | -sub printf { | ||
| 397 | - usage "printf(pattern, args...)" if @_ < 1; | ||
| 398 | - CORE::printf STDOUT @_; | ||
| 399 | -} | ||
| 400 | - | ||
| 401 | -sub putc { | ||
| 402 | - unimpl "putc() is C-specific--use print instead"; | ||
| 403 | -} | ||
| 404 | - | ||
| 405 | -sub putchar { | ||
| 406 | - unimpl "putchar() is C-specific--use print instead"; | ||
| 407 | -} | ||
| 408 | - | ||
| 409 | -sub puts { | ||
| 410 | - unimpl "puts() is C-specific--use print instead"; | ||
| 411 | -} | ||
| 412 | - | ||
| 413 | -sub remove { | ||
| 414 | - usage "remove(filename)" if @_ != 1; | ||
| 415 | - (-d $_[0]) ? CORE::rmdir($_[0]) : CORE::unlink($_[0]); | ||
| 416 | -} | ||
| 417 | - | ||
| 418 | -sub rename { | ||
| 419 | - usage "rename(oldfilename, newfilename)" if @_ != 2; | ||
| 420 | - CORE::rename($_[0], $_[1]); | ||
| 421 | -} | ||
| 422 | - | ||
| 423 | -sub rewind { | ||
| 424 | - usage "rewind(filehandle)" if @_ != 1; | ||
| 425 | - CORE::seek($_[0],0,0); | ||
| 426 | -} | ||
| 427 | - | ||
| 428 | -sub scanf { | ||
| 429 | - unimpl "scanf() is C-specific--use <> and regular expressions instead"; | ||
| 430 | -} | ||
| 431 | - | ||
| 432 | -sub sprintf { | ||
| 433 | - usage "sprintf(pattern,args)" if @_ == 0; | ||
| 434 | - CORE::sprintf(shift,@_); | ||
| 435 | -} | ||
| 436 | - | ||
| 437 | -sub sscanf { | ||
| 438 | - unimpl "sscanf() is C-specific--use regular expressions instead"; | ||
| 439 | -} | ||
| 440 | - | ||
| 441 | -sub tmpfile { | ||
| 442 | - redef "IO::File::new_tmpfile()"; | ||
| 443 | -} | ||
| 444 | - | ||
| 445 | -sub ungetc { | ||
| 446 | - redef "IO::Handle::ungetc()"; | ||
| 447 | -} | ||
| 448 | - | ||
| 449 | -sub vfprintf { | ||
| 450 | - unimpl "vfprintf() is C-specific"; | ||
| 451 | -} | ||
| 452 | - | ||
| 453 | -sub vprintf { | ||
| 454 | - unimpl "vprintf() is C-specific"; | ||
| 455 | -} | ||
| 456 | - | ||
| 457 | -sub vsprintf { | ||
| 458 | - unimpl "vsprintf() is C-specific"; | ||
| 459 | -} | ||
| 460 | - | ||
| 461 | -sub abs { | ||
| 462 | - usage "abs(x)" if @_ != 1; | ||
| 463 | - CORE::abs($_[0]); | ||
| 464 | -} | ||
| 465 | - | ||
| 466 | -sub atexit { | ||
| 467 | - unimpl "atexit() is C-specific: use END {} instead"; | ||
| 468 | -} | ||
| 469 | - | ||
| 470 | -sub atof { | ||
| 471 | - unimpl "atof() is C-specific, stopped"; | ||
| 472 | -} | ||
| 473 | - | ||
| 474 | -sub atoi { | ||
| 475 | - unimpl "atoi() is C-specific, stopped"; | ||
| 476 | -} | ||
| 477 | - | ||
| 478 | -sub atol { | ||
| 479 | - unimpl "atol() is C-specific, stopped"; | ||
| 480 | -} | ||
| 481 | - | ||
| 482 | -sub bsearch { | ||
| 483 | - unimpl "bsearch() not supplied"; | ||
| 484 | -} | ||
| 485 | - | ||
| 486 | -sub calloc { | ||
| 487 | - unimpl "calloc() is C-specific, stopped"; | ||
| 488 | -} | ||
| 489 | - | ||
| 490 | -sub div { | ||
| 491 | - unimpl "div() is C-specific, use /, % and int instead"; | ||
| 492 | -} | ||
| 493 | - | ||
| 494 | -sub exit { | ||
| 495 | - usage "exit(status)" if @_ != 1; | ||
| 496 | - CORE::exit($_[0]); | ||
| 497 | -} | ||
| 498 | - | ||
| 499 | -sub free { | ||
| 500 | - unimpl "free() is C-specific, stopped"; | ||
| 501 | -} | ||
| 502 | - | ||
| 503 | -sub getenv { | ||
| 504 | - usage "getenv(name)" if @_ != 1; | ||
| 505 | - $ENV{$_[0]}; | ||
| 506 | -} | ||
| 507 | - | ||
| 508 | -sub labs { | ||
| 509 | - unimpl "labs() is C-specific, use abs instead"; | ||
| 510 | -} | ||
| 511 | - | ||
| 512 | -sub ldiv { | ||
| 513 | - unimpl "ldiv() is C-specific, use /, % and int instead"; | ||
| 514 | -} | ||
| 515 | - | ||
| 516 | -sub malloc { | ||
| 517 | - unimpl "malloc() is C-specific, stopped"; | ||
| 518 | -} | ||
| 519 | - | ||
| 520 | -sub qsort { | ||
| 521 | - unimpl "qsort() is C-specific, use sort instead"; | ||
| 522 | -} | ||
| 523 | - | ||
| 524 | -sub rand { | ||
| 525 | - unimpl "rand() is non-portable, use Perl's rand instead"; | ||
| 526 | -} | ||
| 527 | - | ||
| 528 | -sub realloc { | ||
| 529 | - unimpl "realloc() is C-specific, stopped"; | ||
| 530 | -} | ||
| 531 | - | ||
| 532 | -sub srand { | ||
| 533 | - unimpl "srand()"; | ||
| 534 | -} | ||
| 535 | - | ||
| 536 | -sub system { | ||
| 537 | - usage "system(command)" if @_ != 1; | ||
| 538 | - CORE::system($_[0]); | ||
| 539 | -} | ||
| 540 | - | ||
| 541 | -sub memchr { | ||
| 542 | - unimpl "memchr() is C-specific, use index() instead"; | ||
| 543 | -} | ||
| 544 | - | ||
| 545 | -sub memcmp { | ||
| 546 | - unimpl "memcmp() is C-specific, use eq instead"; | ||
| 547 | -} | ||
| 548 | - | ||
| 549 | -sub memcpy { | ||
| 550 | - unimpl "memcpy() is C-specific, use = instead"; | ||
| 551 | -} | ||
| 552 | - | ||
| 553 | -sub memmove { | ||
| 554 | - unimpl "memmove() is C-specific, use = instead"; | ||
| 555 | -} | ||
| 556 | - | ||
| 557 | -sub memset { | ||
| 558 | - unimpl "memset() is C-specific, use x instead"; | ||
| 559 | -} | ||
| 560 | - | ||
| 561 | -sub strcat { | ||
| 562 | - unimpl "strcat() is C-specific, use .= instead"; | ||
| 563 | -} | ||
| 564 | - | ||
| 565 | -sub strchr { | ||
| 566 | - unimpl "strchr() is C-specific, use index() instead"; | ||
| 567 | -} | ||
| 568 | - | ||
| 569 | -sub strcmp { | ||
| 570 | - unimpl "strcmp() is C-specific, use eq instead"; | ||
| 571 | -} | ||
| 572 | - | ||
| 573 | -sub strcpy { | ||
| 574 | - unimpl "strcpy() is C-specific, use = instead"; | ||
| 575 | -} | ||
| 576 | - | ||
| 577 | -sub strcspn { | ||
| 578 | - unimpl "strcspn() is C-specific, use regular expressions instead"; | ||
| 579 | -} | ||
| 580 | - | ||
| 581 | -sub strerror { | ||
| 582 | - usage "strerror(errno)" if @_ != 1; | ||
| 583 | - local $! = $_[0]; | ||
| 584 | - $! . ""; | ||
| 585 | -} | ||
| 586 | - | ||
| 587 | -sub strlen { | ||
| 588 | - unimpl "strlen() is C-specific, use length instead"; | ||
| 589 | -} | ||
| 590 | - | ||
| 591 | -sub strncat { | ||
| 592 | - unimpl "strncat() is C-specific, use .= instead"; | ||
| 593 | -} | ||
| 594 | - | ||
| 595 | -sub strncmp { | ||
| 596 | - unimpl "strncmp() is C-specific, use eq instead"; | ||
| 597 | -} | ||
| 598 | - | ||
| 599 | -sub strncpy { | ||
| 600 | - unimpl "strncpy() is C-specific, use = instead"; | ||
| 601 | -} | ||
| 602 | - | ||
| 603 | -sub strpbrk { | ||
| 604 | - unimpl "strpbrk() is C-specific, stopped"; | ||
| 605 | -} | ||
| 606 | - | ||
| 607 | -sub strrchr { | ||
| 608 | - unimpl "strrchr() is C-specific, use rindex() instead"; | ||
| 609 | -} | ||
| 610 | - | ||
| 611 | -sub strspn { | ||
| 612 | - unimpl "strspn() is C-specific, stopped"; | ||
| 613 | -} | ||
| 614 | - | ||
| 615 | -sub strstr { | ||
| 616 | - usage "strstr(big, little)" if @_ != 2; | ||
| 617 | - CORE::index($_[0], $_[1]); | ||
| 618 | -} | ||
| 619 | - | ||
| 620 | -sub strtok { | ||
| 621 | - unimpl "strtok() is C-specific, stopped"; | ||
| 622 | -} | ||
| 623 | - | ||
| 624 | -sub chmod { | ||
| 625 | - usage "chmod(mode, filename)" if @_ != 2; | ||
| 626 | - CORE::chmod($_[0], $_[1]); | ||
| 627 | -} | ||
| 628 | - | ||
| 629 | -sub fstat { | ||
| 630 | - usage "fstat(fd)" if @_ != 1; | ||
| 631 | - local *TMP; | ||
| 632 | - CORE::open(TMP, "<&$_[0]"); # Gross. | ||
| 633 | - my @l = CORE::stat(TMP); | ||
| 634 | - CORE::close(TMP); | ||
| 635 | - @l; | ||
| 636 | -} | ||
| 637 | - | ||
| 638 | -sub mkdir { | ||
| 639 | - usage "mkdir(directoryname, mode)" if @_ != 2; | ||
| 640 | - CORE::mkdir($_[0], $_[1]); | ||
| 641 | -} | ||
| 642 | - | ||
| 643 | -sub stat { | ||
| 644 | - usage "stat(filename)" if @_ != 1; | ||
| 645 | - CORE::stat($_[0]); | ||
| 646 | -} | ||
| 647 | - | ||
| 648 | -sub umask { | ||
| 649 | - usage "umask(mask)" if @_ != 1; | ||
| 650 | - CORE::umask($_[0]); | ||
| 651 | -} | ||
| 652 | - | ||
| 653 | -sub wait { | ||
| 654 | - usage "wait()" if @_ != 0; | ||
| 655 | - CORE::wait(); | ||
| 656 | -} | ||
| 657 | - | ||
| 658 | -sub waitpid { | ||
| 659 | - usage "waitpid(pid, options)" if @_ != 2; | ||
| 660 | - CORE::waitpid($_[0], $_[1]); | ||
| 661 | -} | ||
| 662 | - | ||
| 663 | -sub gmtime { | ||
| 664 | - usage "gmtime(time)" if @_ != 1; | ||
| 665 | - CORE::gmtime($_[0]); | ||
| 666 | -} | ||
| 667 | - | ||
| 668 | -sub localtime { | ||
| 669 | - usage "localtime(time)" if @_ != 1; | ||
| 670 | - CORE::localtime($_[0]); | ||
| 671 | -} | ||
| 672 | - | ||
| 673 | -sub time { | ||
| 674 | - usage "time()" if @_ != 0; | ||
| 675 | - CORE::time; | ||
| 676 | -} | ||
| 677 | - | ||
| 678 | -sub alarm { | ||
| 679 | - usage "alarm(seconds)" if @_ != 1; | ||
| 680 | - CORE::alarm($_[0]); | ||
| 681 | -} | ||
| 682 | - | ||
| 683 | -sub chdir { | ||
| 684 | - usage "chdir(directory)" if @_ != 1; | ||
| 685 | - CORE::chdir($_[0]); | ||
| 686 | -} | ||
| 687 | - | ||
| 688 | -sub chown { | ||
| 689 | - usage "chown(uid, gid, filename)" if @_ != 3; | ||
| 690 | - CORE::chown($_[0], $_[1], $_[2]); | ||
| 691 | -} | ||
| 692 | - | ||
| 693 | -sub execl { | ||
| 694 | - unimpl "execl() is C-specific, stopped"; | ||
| 695 | -} | ||
| 696 | - | ||
| 697 | -sub execle { | ||
| 698 | - unimpl "execle() is C-specific, stopped"; | ||
| 699 | -} | ||
| 700 | - | ||
| 701 | -sub execlp { | ||
| 702 | - unimpl "execlp() is C-specific, stopped"; | ||
| 703 | -} | ||
| 704 | - | ||
| 705 | -sub execv { | ||
| 706 | - unimpl "execv() is C-specific, stopped"; | ||
| 707 | -} | ||
| 708 | - | ||
| 709 | -sub execve { | ||
| 710 | - unimpl "execve() is C-specific, stopped"; | ||
| 711 | -} | ||
| 712 | - | ||
| 713 | -sub execvp { | ||
| 714 | - unimpl "execvp() is C-specific, stopped"; | ||
| 715 | -} | ||
| 716 | - | ||
| 717 | -sub fork { | ||
| 718 | - usage "fork()" if @_ != 0; | ||
| 719 | - CORE::fork; | ||
| 720 | -} | ||
| 721 | - | ||
| 722 | -sub getegid { | ||
| 723 | - usage "getegid()" if @_ != 0; | ||
| 724 | - $) + 0; | ||
| 725 | -} | ||
| 726 | - | ||
| 727 | -sub geteuid { | ||
| 728 | - usage "geteuid()" if @_ != 0; | ||
| 729 | - $> + 0; | ||
| 730 | -} | ||
| 731 | - | ||
| 732 | -sub getgid { | ||
| 733 | - usage "getgid()" if @_ != 0; | ||
| 734 | - $( + 0; | ||
| 735 | -} | ||
| 736 | - | ||
| 737 | -sub getgroups { | ||
| 738 | - usage "getgroups()" if @_ != 0; | ||
| 739 | - my %seen; | ||
| 740 | - grep(!$seen{$_}++, split(' ', $) )); | ||
| 741 | -} | ||
| 742 | - | ||
| 743 | -sub getlogin { | ||
| 744 | - usage "getlogin()" if @_ != 0; | ||
| 745 | - CORE::getlogin(); | ||
| 746 | -} | ||
| 747 | - | ||
| 748 | -sub getpgrp { | ||
| 749 | - usage "getpgrp()" if @_ != 0; | ||
| 750 | - CORE::getpgrp; | ||
| 751 | -} | ||
| 752 | - | ||
| 753 | -sub getpid { | ||
| 754 | - usage "getpid()" if @_ != 0; | ||
| 755 | - $$; | ||
| 756 | -} | ||
| 757 | - | ||
| 758 | -sub getppid { | ||
| 759 | - usage "getppid()" if @_ != 0; | ||
| 760 | - CORE::getppid; | ||
| 761 | -} | ||
| 762 | - | ||
| 763 | -sub getuid { | ||
| 764 | - usage "getuid()" if @_ != 0; | ||
| 765 | - $<; | ||
| 766 | -} | ||
| 767 | - | ||
| 768 | -sub isatty { | ||
| 769 | - usage "isatty(filehandle)" if @_ != 1; | ||
| 770 | - -t $_[0]; | ||
| 771 | -} | ||
| 772 | - | ||
| 773 | -sub link { | ||
| 774 | - usage "link(oldfilename, newfilename)" if @_ != 2; | ||
| 775 | - CORE::link($_[0], $_[1]); | ||
| 776 | -} | ||
| 777 | - | ||
| 778 | -sub rmdir { | ||
| 779 | - usage "rmdir(directoryname)" if @_ != 1; | ||
| 780 | - CORE::rmdir($_[0]); | ||
| 781 | -} | ||
| 782 | - | ||
| 783 | -sub setbuf { | ||
| 784 | - redef "IO::Handle::setbuf()"; | ||
| 785 | -} | ||
| 786 | - | ||
| 787 | -sub setvbuf { | ||
| 788 | - redef "IO::Handle::setvbuf()"; | ||
| 789 | -} | ||
| 790 | - | ||
| 791 | -sub sleep { | ||
| 792 | - usage "sleep(seconds)" if @_ != 1; | ||
| 793 | - $_[0] - CORE::sleep($_[0]); | ||
| 794 | -} | ||
| 795 | - | ||
| 796 | -sub unlink { | ||
| 797 | - usage "unlink(filename)" if @_ != 1; | ||
| 798 | - CORE::unlink($_[0]); | ||
| 799 | -} | ||
| 800 | - | ||
| 801 | -sub utime { | ||
| 802 | - usage "utime(filename, atime, mtime)" if @_ != 3; | ||
| 803 | - CORE::utime($_[1], $_[2], $_[0]); | ||
| 804 | -} | ||
| 805 | - | ||
| 806 | -sub load_imports { | ||
| 807 | -%EXPORT_TAGS = ( | ||
| 808 | - | ||
| 809 | - assert_h => [qw(assert NDEBUG)], | ||
| 810 | - | ||
| 811 | - ctype_h => [qw(isalnum isalpha iscntrl isdigit isgraph islower | ||
| 812 | - isprint ispunct isspace isupper isxdigit tolower toupper)], | ||
| 813 | - | ||
| 814 | - dirent_h => [], | ||
| 815 | - | ||
| 816 | - errno_h => [qw(E2BIG EACCES EADDRINUSE EADDRNOTAVAIL EAFNOSUPPORT | ||
| 817 | - EAGAIN EALREADY EBADF EBUSY ECHILD ECONNABORTED | ||
| 818 | - ECONNREFUSED ECONNRESET EDEADLK EDESTADDRREQ EDOM EDQUOT | ||
| 819 | - EEXIST EFAULT EFBIG EHOSTDOWN EHOSTUNREACH EINPROGRESS | ||
| 820 | - EINTR EINVAL EIO EISCONN EISDIR ELOOP EMFILE EMLINK | ||
| 821 | - EMSGSIZE ENAMETOOLONG ENETDOWN ENETRESET ENETUNREACH | ||
| 822 | - ENFILE ENOBUFS ENODEV ENOENT ENOEXEC ENOLCK ENOMEM | ||
| 823 | - ENOPROTOOPT ENOSPC ENOSYS ENOTBLK ENOTCONN ENOTDIR | ||
| 824 | - ENOTEMPTY ENOTSOCK ENOTTY ENXIO EOPNOTSUPP EPERM | ||
| 825 | - EPFNOSUPPORT EPIPE EPROCLIM EPROTONOSUPPORT EPROTOTYPE | ||
| 826 | - ERANGE EREMOTE ERESTART EROFS ESHUTDOWN ESOCKTNOSUPPORT | ||
| 827 | - ESPIPE ESRCH ESTALE ETIMEDOUT ETOOMANYREFS ETXTBSY | ||
| 828 | - EUSERS EWOULDBLOCK EXDEV errno)], | ||
| 829 | - | ||
| 830 | - fcntl_h => [qw(FD_CLOEXEC F_DUPFD F_GETFD F_GETFL F_GETLK F_RDLCK | ||
| 831 | - F_SETFD F_SETFL F_SETLK F_SETLKW F_UNLCK F_WRLCK | ||
| 832 | - O_ACCMODE O_APPEND O_CREAT O_EXCL O_NOCTTY O_NONBLOCK | ||
| 833 | - O_RDONLY O_RDWR O_TRUNC O_WRONLY | ||
| 834 | - creat | ||
| 835 | - SEEK_CUR SEEK_END SEEK_SET | ||
| 836 | - S_IRGRP S_IROTH S_IRUSR S_IRWXG S_IRWXO S_IRWXU | ||
| 837 | - S_ISBLK S_ISCHR S_ISDIR S_ISFIFO S_ISGID S_ISREG S_ISUID | ||
| 838 | - S_IWGRP S_IWOTH S_IWUSR)], | ||
| 839 | - | ||
| 840 | - float_h => [qw(DBL_DIG DBL_EPSILON DBL_MANT_DIG | ||
| 841 | - DBL_MAX DBL_MAX_10_EXP DBL_MAX_EXP | ||
| 842 | - DBL_MIN DBL_MIN_10_EXP DBL_MIN_EXP | ||
| 843 | - FLT_DIG FLT_EPSILON FLT_MANT_DIG | ||
| 844 | - FLT_MAX FLT_MAX_10_EXP FLT_MAX_EXP | ||
| 845 | - FLT_MIN FLT_MIN_10_EXP FLT_MIN_EXP | ||
| 846 | - FLT_RADIX FLT_ROUNDS | ||
| 847 | - LDBL_DIG LDBL_EPSILON LDBL_MANT_DIG | ||
| 848 | - LDBL_MAX LDBL_MAX_10_EXP LDBL_MAX_EXP | ||
| 849 | - LDBL_MIN LDBL_MIN_10_EXP LDBL_MIN_EXP)], | ||
| 850 | - | ||
| 851 | - grp_h => [], | ||
| 852 | - | ||
| 853 | - limits_h => [qw( ARG_MAX CHAR_BIT CHAR_MAX CHAR_MIN CHILD_MAX | ||
| 854 | - INT_MAX INT_MIN LINK_MAX LONG_MAX LONG_MIN MAX_CANON | ||
| 855 | - MAX_INPUT MB_LEN_MAX NAME_MAX NGROUPS_MAX OPEN_MAX | ||
| 856 | - PATH_MAX PIPE_BUF SCHAR_MAX SCHAR_MIN SHRT_MAX SHRT_MIN | ||
| 857 | - SSIZE_MAX STREAM_MAX TZNAME_MAX UCHAR_MAX UINT_MAX | ||
| 858 | - ULONG_MAX USHRT_MAX _POSIX_ARG_MAX _POSIX_CHILD_MAX | ||
| 859 | - _POSIX_LINK_MAX _POSIX_MAX_CANON _POSIX_MAX_INPUT | ||
| 860 | - _POSIX_NAME_MAX _POSIX_NGROUPS_MAX _POSIX_OPEN_MAX | ||
| 861 | - _POSIX_PATH_MAX _POSIX_PIPE_BUF _POSIX_SSIZE_MAX | ||
| 862 | - _POSIX_STREAM_MAX _POSIX_TZNAME_MAX)], | ||
| 863 | - | ||
| 864 | - locale_h => [qw(LC_ALL LC_COLLATE LC_CTYPE LC_MESSAGES | ||
| 865 | - LC_MONETARY LC_NUMERIC LC_TIME NULL | ||
| 866 | - localeconv setlocale)], | ||
| 867 | - | ||
| 868 | - math_h => [qw(HUGE_VAL acos asin atan ceil cosh fabs floor fmod | ||
| 869 | - frexp ldexp log10 modf pow sinh tan tanh)], | ||
| 870 | - | ||
| 871 | - pwd_h => [], | ||
| 872 | - | ||
| 873 | - setjmp_h => [qw(longjmp setjmp siglongjmp sigsetjmp)], | ||
| 874 | - | ||
| 875 | - signal_h => [qw(SA_NOCLDSTOP SA_NOCLDWAIT SA_NODEFER SA_ONSTACK | ||
| 876 | - SA_RESETHAND SA_RESTART SA_SIGINFO SIGABRT SIGALRM | ||
| 877 | - SIGCHLD SIGCONT SIGFPE SIGHUP SIGILL SIGINT SIGKILL | ||
| 878 | - SIGPIPE %SIGRT SIGRTMIN SIGRTMAX SIGQUIT SIGSEGV SIGSTOP | ||
| 879 | - SIGTERM SIGTSTP SIGTTIN SIGTTOU SIGUSR1 SIGUSR2 | ||
| 880 | - SIG_BLOCK SIG_DFL SIG_ERR SIG_IGN SIG_SETMASK SIG_UNBLOCK | ||
| 881 | - raise sigaction signal sigpending sigprocmask sigsuspend)], | ||
| 882 | - | ||
| 883 | - stdarg_h => [], | ||
| 884 | - | ||
| 885 | - stddef_h => [qw(NULL offsetof)], | ||
| 886 | - | ||
| 887 | - stdio_h => [qw(BUFSIZ EOF FILENAME_MAX L_ctermid L_cuserid | ||
| 888 | - L_tmpname NULL SEEK_CUR SEEK_END SEEK_SET | ||
| 889 | - STREAM_MAX TMP_MAX stderr stdin stdout | ||
| 890 | - clearerr fclose fdopen feof ferror fflush fgetc fgetpos | ||
| 891 | - fgets fopen fprintf fputc fputs fread freopen | ||
| 892 | - fscanf fseek fsetpos ftell fwrite getchar gets | ||
| 893 | - perror putc putchar puts remove rewind | ||
| 894 | - scanf setbuf setvbuf sscanf tmpfile tmpnam | ||
| 895 | - ungetc vfprintf vprintf vsprintf)], | ||
| 896 | - | ||
| 897 | - stdlib_h => [qw(EXIT_FAILURE EXIT_SUCCESS MB_CUR_MAX NULL RAND_MAX | ||
| 898 | - abort atexit atof atoi atol bsearch calloc div | ||
| 899 | - free getenv labs ldiv malloc mblen mbstowcs mbtowc | ||
| 900 | - qsort realloc strtod strtol strtoul wcstombs wctomb)], | ||
| 901 | - | ||
| 902 | - string_h => [qw(NULL memchr memcmp memcpy memmove memset strcat | ||
| 903 | - strchr strcmp strcoll strcpy strcspn strerror strlen | ||
| 904 | - strncat strncmp strncpy strpbrk strrchr strspn strstr | ||
| 905 | - strtok strxfrm)], | ||
| 906 | - | ||
| 907 | - sys_stat_h => [qw(S_IRGRP S_IROTH S_IRUSR S_IRWXG S_IRWXO S_IRWXU | ||
| 908 | - S_ISBLK S_ISCHR S_ISDIR S_ISFIFO S_ISGID S_ISREG | ||
| 909 | - S_ISUID S_IWGRP S_IWOTH S_IWUSR S_IXGRP S_IXOTH S_IXUSR | ||
| 910 | - fstat mkfifo)], | ||
| 911 | - | ||
| 912 | - sys_times_h => [], | ||
| 913 | - | ||
| 914 | - sys_types_h => [], | ||
| 915 | - | ||
| 916 | - sys_utsname_h => [qw(uname)], | ||
| 917 | - | ||
| 918 | - sys_wait_h => [qw(WEXITSTATUS WIFEXITED WIFSIGNALED WIFSTOPPED | ||
| 919 | - WNOHANG WSTOPSIG WTERMSIG WUNTRACED)], | ||
| 920 | - | ||
| 921 | - termios_h => [qw( B0 B110 B1200 B134 B150 B1800 B19200 B200 B2400 | ||
| 922 | - B300 B38400 B4800 B50 B600 B75 B9600 BRKINT CLOCAL | ||
| 923 | - CREAD CS5 CS6 CS7 CS8 CSIZE CSTOPB ECHO ECHOE ECHOK | ||
| 924 | - ECHONL HUPCL ICANON ICRNL IEXTEN IGNBRK IGNCR IGNPAR | ||
| 925 | - INLCR INPCK ISIG ISTRIP IXOFF IXON NCCS NOFLSH OPOST | ||
| 926 | - PARENB PARMRK PARODD TCIFLUSH TCIOFF TCIOFLUSH TCION | ||
| 927 | - TCOFLUSH TCOOFF TCOON TCSADRAIN TCSAFLUSH TCSANOW | ||
| 928 | - TOSTOP VEOF VEOL VERASE VINTR VKILL VMIN VQUIT VSTART | ||
| 929 | - VSTOP VSUSP VTIME | ||
| 930 | - cfgetispeed cfgetospeed cfsetispeed cfsetospeed tcdrain | ||
| 931 | - tcflow tcflush tcgetattr tcsendbreak tcsetattr )], | ||
| 932 | - | ||
| 933 | - time_h => [qw(CLK_TCK CLOCKS_PER_SEC NULL asctime clock ctime | ||
| 934 | - difftime mktime strftime tzset tzname)], | ||
| 935 | - | ||
| 936 | - unistd_h => [qw(F_OK NULL R_OK SEEK_CUR SEEK_END SEEK_SET | ||
| 937 | - STDERR_FILENO STDIN_FILENO STDOUT_FILENO W_OK X_OK | ||
| 938 | - _PC_CHOWN_RESTRICTED _PC_LINK_MAX _PC_MAX_CANON | ||
| 939 | - _PC_MAX_INPUT _PC_NAME_MAX _PC_NO_TRUNC _PC_PATH_MAX | ||
| 940 | - _PC_PIPE_BUF _PC_VDISABLE _POSIX_CHOWN_RESTRICTED | ||
| 941 | - _POSIX_JOB_CONTROL _POSIX_NO_TRUNC _POSIX_SAVED_IDS | ||
| 942 | - _POSIX_VDISABLE _POSIX_VERSION _SC_ARG_MAX | ||
| 943 | - _SC_CHILD_MAX _SC_CLK_TCK _SC_JOB_CONTROL | ||
| 944 | - _SC_NGROUPS_MAX _SC_OPEN_MAX _SC_PAGESIZE _SC_SAVED_IDS | ||
| 945 | - _SC_STREAM_MAX _SC_TZNAME_MAX _SC_VERSION | ||
| 946 | - _exit access ctermid cuserid | ||
| 947 | - dup2 dup execl execle execlp execv execve execvp | ||
| 948 | - fpathconf fsync getcwd getegid geteuid getgid getgroups | ||
| 949 | - getpid getuid isatty lseek pathconf pause setgid setpgid | ||
| 950 | - setsid setuid sysconf tcgetpgrp tcsetpgrp ttyname)], | ||
| 951 | - | ||
| 952 | - utime_h => [], | ||
| 953 | - | ||
| 954 | -); | ||
| 955 | - | ||
| 956 | -# Exporter::export_tags(); | ||
| 957 | -{ | ||
| 958 | - # De-duplicate the export list: | ||
| 959 | - my %export; | ||
| 960 | - @export{map {@$_} values %EXPORT_TAGS} = (); | ||
| 961 | - # Doing the de-dup with a temporary hash has the advantage that the SVs in | ||
| 962 | - # @EXPORT are actually shared hash key sacalars, which will save some memory. | ||
| 963 | - push @EXPORT, keys %export; | ||
| 964 | -} | ||
| 965 | - | ||
| 966 | -@EXPORT_OK = qw( | ||
| 967 | - abs | ||
| 968 | - alarm | ||
| 969 | - atan2 | ||
| 970 | - chdir | ||
| 971 | - chmod | ||
| 972 | - chown | ||
| 973 | - close | ||
| 974 | - closedir | ||
| 975 | - cos | ||
| 976 | - exit | ||
| 977 | - exp | ||
| 978 | - fcntl | ||
| 979 | - fileno | ||
| 980 | - fork | ||
| 981 | - getc | ||
| 982 | - getgrgid | ||
| 983 | - getgrnam | ||
| 984 | - getlogin | ||
| 985 | - getpgrp | ||
| 986 | - getppid | ||
| 987 | - getpwnam | ||
| 988 | - getpwuid | ||
| 989 | - gmtime | ||
| 990 | - isatty | ||
| 991 | - kill | ||
| 992 | - lchown | ||
| 993 | - link | ||
| 994 | - localtime | ||
| 995 | - log | ||
| 996 | - mkdir | ||
| 997 | - nice | ||
| 998 | - open | ||
| 999 | - opendir | ||
| 1000 | - pipe | ||
| 1001 | - printf | ||
| 1002 | - rand | ||
| 1003 | - read | ||
| 1004 | - readdir | ||
| 1005 | - rename | ||
| 1006 | - rewinddir | ||
| 1007 | - rmdir | ||
| 1008 | - sin | ||
| 1009 | - sleep | ||
| 1010 | - sprintf | ||
| 1011 | - sqrt | ||
| 1012 | - srand | ||
| 1013 | - stat | ||
| 1014 | - system | ||
| 1015 | - time | ||
| 1016 | - times | ||
| 1017 | - umask | ||
| 1018 | - unlink | ||
| 1019 | - utime | ||
| 1020 | - wait | ||
| 1021 | - waitpid | ||
| 1022 | - write | ||
| 1023 | -); | ||
| 1024 | - | ||
| 1025 | -require Exporter; | ||
| 1026 | -} | ||
| 1027 | - | ||
| 1028 | -package POSIX::SigAction; | ||
| 1029 | - | ||
| 1030 | -sub new { bless {HANDLER => $_[1], MASK => $_[2], FLAGS => $_[3] || 0, SAFE => 0}, $_[0] } | ||
| 1031 | -sub handler { $_[0]->{HANDLER} = $_[1] if @_ > 1; $_[0]->{HANDLER} }; | ||
| 1032 | -sub mask { $_[0]->{MASK} = $_[1] if @_ > 1; $_[0]->{MASK} }; | ||
| 1033 | -sub flags { $_[0]->{FLAGS} = $_[1] if @_ > 1; $_[0]->{FLAGS} }; | ||
| 1034 | -sub safe { $_[0]->{SAFE} = $_[1] if @_ > 1; $_[0]->{SAFE} }; | ||
| 1035 | - | ||
| 1036 | -package POSIX::SigRt; | ||
| 1037 | - | ||
| 1038 | - | ||
| 1039 | -sub _init { | ||
| 1040 | - $_SIGRTMIN = &POSIX::SIGRTMIN; | ||
| 1041 | - $_SIGRTMAX = &POSIX::SIGRTMAX; | ||
| 1042 | - $_sigrtn = $_SIGRTMAX - $_SIGRTMIN; | ||
| 1043 | -} | ||
| 1044 | - | ||
| 1045 | -sub _croak { | ||
| 1046 | - &_init unless defined $_sigrtn; | ||
| 1047 | - die "POSIX::SigRt not available" unless defined $_sigrtn && $_sigrtn > 0; | ||
| 1048 | -} | ||
| 1049 | - | ||
| 1050 | -sub _getsig { | ||
| 1051 | - &_croak; | ||
| 1052 | - my $rtsig = $_[0]; | ||
| 1053 | - # Allow (SIGRT)?MIN( + n)?, a common idiom when doing these things in C. | ||
| 1054 | - $rtsig = $_SIGRTMIN + ($1 || 0) | ||
| 1055 | - if $rtsig =~ /^(?:(?:SIG)?RT)?MIN(\s*\+\s*(\d+))?$/; | ||
| 1056 | - return $rtsig; | ||
| 1057 | -} | ||
| 1058 | - | ||
| 1059 | -sub _exist { | ||
| 1060 | - my $rtsig = _getsig($_[1]); | ||
| 1061 | - my $ok = $rtsig >= $_SIGRTMIN && $rtsig <= $_SIGRTMAX; | ||
| 1062 | - ($rtsig, $ok); | ||
| 1063 | -} | ||
| 1064 | - | ||
| 1065 | -sub _check { | ||
| 1066 | - my ($rtsig, $ok) = &_exist; | ||
| 1067 | - die "No POSIX::SigRt signal $_[1] (valid range SIGRTMIN..SIGRTMAX, or $_SIGRTMIN..$_SIGRTMAX)" | ||
| 1068 | - unless $ok; | ||
| 1069 | - return $rtsig; | ||
| 1070 | -} | ||
| 1071 | - | ||
| 1072 | -sub new { | ||
| 1073 | - my ($rtsig, $handler, $flags) = @_; | ||
| 1074 | - my $sigset = POSIX::SigSet->new($rtsig); | ||
| 1075 | - my $sigact = POSIX::SigAction->new($handler, | ||
| 1076 | - $sigset, | ||
| 1077 | - $flags); | ||
| 1078 | - POSIX::sigaction($rtsig, $sigact); | ||
| 1079 | -} | ||
| 1080 | - | ||
| 1081 | -sub EXISTS { &_exist } | ||
| 1082 | -sub FETCH { my $rtsig = &_check; | ||
| 1083 | - my $oa = POSIX::SigAction->new(); | ||
| 1084 | - POSIX::sigaction($rtsig, undef, $oa); | ||
| 1085 | - return $oa->{HANDLER} } | ||
| 1086 | -sub STORE { my $rtsig = &_check; new($rtsig, $_[2], $SIGACTION_FLAGS) } | ||
| 1087 | -sub DELETE { delete $SIG{ &_check } } | ||
| 1088 | -sub CLEAR { &_exist; delete @SIG{ &POSIX::SIGRTMIN .. &POSIX::SIGRTMAX } } | ||
| 1089 | -sub SCALAR { &_croak; $_sigrtn + 1 } | ||
| 1090 | diff --git a/ext/POSIX/POSIX.pod b/ext/POSIX/POSIX.pod | ||
| 1091 | deleted file mode 100644 | ||
| 1092 | index 64852e9..0000000 | ||
| 1093 | --- a/ext/POSIX/POSIX.pod | ||
| 1094 | +++ /dev/null | ||
| 1095 | @@ -1,2218 +0,0 @@ | ||
| 1096 | -=head1 NAME | ||
| 1097 | - | ||
| 1098 | -POSIX - Perl interface to IEEE Std 1003.1 | ||
| 1099 | - | ||
| 1100 | -=head1 SYNOPSIS | ||
| 1101 | - | ||
| 1102 | - use POSIX; | ||
| 1103 | - use POSIX qw(setsid); | ||
| 1104 | - use POSIX qw(:errno_h :fcntl_h); | ||
| 1105 | - | ||
| 1106 | - printf "EINTR is %d\n", EINTR; | ||
| 1107 | - | ||
| 1108 | - $sess_id = POSIX::setsid(); | ||
| 1109 | - | ||
| 1110 | - $fd = POSIX::open($path, O_CREAT|O_EXCL|O_WRONLY, 0644); | ||
| 1111 | - # note: that's a filedescriptor, *NOT* a filehandle | ||
| 1112 | - | ||
| 1113 | -=head1 DESCRIPTION | ||
| 1114 | - | ||
| 1115 | -The POSIX module permits you to access all (or nearly all) the standard | ||
| 1116 | -POSIX 1003.1 identifiers. Many of these identifiers have been given Perl-ish | ||
| 1117 | -interfaces. | ||
| 1118 | - | ||
| 1119 | -I<Everything is exported by default> with the exception of any POSIX | ||
| 1120 | -functions with the same name as a built-in Perl function, such as | ||
| 1121 | -C<abs>, C<alarm>, C<rmdir>, C<write>, etc.., which will be exported | ||
| 1122 | -only if you ask for them explicitly. This is an unfortunate backwards | ||
| 1123 | -compatibility feature. You can stop the exporting by saying C<use | ||
| 1124 | -POSIX ()> and then use the fully qualified names (ie. C<POSIX::SEEK_END>). | ||
| 1125 | - | ||
| 1126 | -This document gives a condensed list of the features available in the POSIX | ||
| 1127 | -module. Consult your operating system's manpages for general information on | ||
| 1128 | -most features. Consult L<perlfunc> for functions which are noted as being | ||
| 1129 | -identical to Perl's builtin functions. | ||
| 1130 | - | ||
| 1131 | -The first section describes POSIX functions from the 1003.1 specification. | ||
| 1132 | -The second section describes some classes for signal objects, TTY objects, | ||
| 1133 | -and other miscellaneous objects. The remaining sections list various | ||
| 1134 | -constants and macros in an organization which roughly follows IEEE Std | ||
| 1135 | -1003.1b-1993. | ||
| 1136 | - | ||
| 1137 | -=head1 NOTE | ||
| 1138 | - | ||
| 1139 | -The POSIX module is probably the most complex Perl module supplied with | ||
| 1140 | -the standard distribution. It incorporates autoloading, namespace games, | ||
| 1141 | -and dynamic loading of code that's in Perl, C, or both. It's a great | ||
| 1142 | -source of wisdom. | ||
| 1143 | - | ||
| 1144 | -=head1 CAVEATS | ||
| 1145 | - | ||
| 1146 | -A few functions are not implemented because they are C specific. If you | ||
| 1147 | -attempt to call these, they will print a message telling you that they | ||
| 1148 | -aren't implemented, and suggest using the Perl equivalent should one | ||
| 1149 | -exist. For example, trying to access the setjmp() call will elicit the | ||
| 1150 | -message "setjmp() is C-specific: use eval {} instead". | ||
| 1151 | - | ||
| 1152 | -Furthermore, some evil vendors will claim 1003.1 compliance, but in fact | ||
| 1153 | -are not so: they will not pass the PCTS (POSIX Compliance Test Suites). | ||
| 1154 | -For example, one vendor may not define EDEADLK, or the semantics of the | ||
| 1155 | -errno values set by open(2) might not be quite right. Perl does not | ||
| 1156 | -attempt to verify POSIX compliance. That means you can currently | ||
| 1157 | -successfully say "use POSIX", and then later in your program you find | ||
| 1158 | -that your vendor has been lax and there's no usable ICANON macro after | ||
| 1159 | -all. This could be construed to be a bug. | ||
| 1160 | - | ||
| 1161 | -=head1 FUNCTIONS | ||
| 1162 | - | ||
| 1163 | -=over 8 | ||
| 1164 | - | ||
| 1165 | -=item _exit | ||
| 1166 | - | ||
| 1167 | -This is identical to the C function C<_exit()>. It exits the program | ||
| 1168 | -immediately which means among other things buffered I/O is B<not> flushed. | ||
| 1169 | - | ||
| 1170 | -Note that when using threads and in Linux this is B<not> a good way to | ||
| 1171 | -exit a thread because in Linux processes and threads are kind of the | ||
| 1172 | -same thing (Note: while this is the situation in early 2003 there are | ||
| 1173 | -projects under way to have threads with more POSIXly semantics in Linux). | ||
| 1174 | -If you want not to return from a thread, detach the thread. | ||
| 1175 | - | ||
| 1176 | -=item abort | ||
| 1177 | - | ||
| 1178 | -This is identical to the C function C<abort()>. It terminates the | ||
| 1179 | -process with a C<SIGABRT> signal unless caught by a signal handler or | ||
| 1180 | -if the handler does not return normally (it e.g. does a C<longjmp>). | ||
| 1181 | - | ||
| 1182 | -=item abs | ||
| 1183 | - | ||
| 1184 | -This is identical to Perl's builtin C<abs()> function, returning | ||
| 1185 | -the absolute value of its numerical argument. | ||
| 1186 | - | ||
| 1187 | -=item access | ||
| 1188 | - | ||
| 1189 | -Determines the accessibility of a file. | ||
| 1190 | - | ||
| 1191 | - if( POSIX::access( "/", &POSIX::R_OK ) ){ | ||
| 1192 | - print "have read permission\n"; | ||
| 1193 | - } | ||
| 1194 | - | ||
| 1195 | -Returns C<undef> on failure. Note: do not use C<access()> for | ||
| 1196 | -security purposes. Between the C<access()> call and the operation | ||
| 1197 | -you are preparing for the permissions might change: a classic | ||
| 1198 | -I<race condition>. | ||
| 1199 | - | ||
| 1200 | -=item acos | ||
| 1201 | - | ||
| 1202 | -This is identical to the C function C<acos()>, returning | ||
| 1203 | -the arcus cosine of its numerical argument. See also L<Math::Trig>. | ||
| 1204 | - | ||
| 1205 | -=item alarm | ||
| 1206 | - | ||
| 1207 | -This is identical to Perl's builtin C<alarm()> function, | ||
| 1208 | -either for arming or disarming the C<SIGARLM> timer. | ||
| 1209 | - | ||
| 1210 | -=item asctime | ||
| 1211 | - | ||
| 1212 | -This is identical to the C function C<asctime()>. It returns | ||
| 1213 | -a string of the form | ||
| 1214 | - | ||
| 1215 | - "Fri Jun 2 18:22:13 2000\n\0" | ||
| 1216 | - | ||
| 1217 | -and it is called thusly | ||
| 1218 | - | ||
| 1219 | - $asctime = asctime($sec, $min, $hour, $mday, $mon, $year, | ||
| 1220 | - $wday, $yday, $isdst); | ||
| 1221 | - | ||
| 1222 | -The C<$mon> is zero-based: January equals C<0>. The C<$year> is | ||
| 1223 | -1900-based: 2001 equals C<101>. C<$wday> and C<$yday> default to zero | ||
| 1224 | -(and are usually ignored anyway), and C<$isdst> defaults to -1. | ||
| 1225 | - | ||
| 1226 | -=item asin | ||
| 1227 | - | ||
| 1228 | -This is identical to the C function C<asin()>, returning | ||
| 1229 | -the arcus sine of its numerical argument. See also L<Math::Trig>. | ||
| 1230 | - | ||
| 1231 | -=item assert | ||
| 1232 | - | ||
| 1233 | -Unimplemented, but you can use L<perlfunc/die> and the L<Carp> module | ||
| 1234 | -to achieve similar things. | ||
| 1235 | - | ||
| 1236 | -=item atan | ||
| 1237 | - | ||
| 1238 | -This is identical to the C function C<atan()>, returning the | ||
| 1239 | -arcus tangent of its numerical argument. See also L<Math::Trig>. | ||
| 1240 | - | ||
| 1241 | -=item atan2 | ||
| 1242 | - | ||
| 1243 | -This is identical to Perl's builtin C<atan2()> function, returning | ||
| 1244 | -the arcus tangent defined by its two numerical arguments, the I<y> | ||
| 1245 | -coordinate and the I<x> coordinate. See also L<Math::Trig>. | ||
| 1246 | - | ||
| 1247 | -=item atexit | ||
| 1248 | - | ||
| 1249 | -atexit() is C-specific: use C<END {}> instead, see L<perlsub>. | ||
| 1250 | - | ||
| 1251 | -=item atof | ||
| 1252 | - | ||
| 1253 | -atof() is C-specific. Perl converts strings to numbers transparently. | ||
| 1254 | -If you need to force a scalar to a number, add a zero to it. | ||
| 1255 | - | ||
| 1256 | -=item atoi | ||
| 1257 | - | ||
| 1258 | -atoi() is C-specific. Perl converts strings to numbers transparently. | ||
| 1259 | -If you need to force a scalar to a number, add a zero to it. | ||
| 1260 | -If you need to have just the integer part, see L<perlfunc/int>. | ||
| 1261 | - | ||
| 1262 | -=item atol | ||
| 1263 | - | ||
| 1264 | -atol() is C-specific. Perl converts strings to numbers transparently. | ||
| 1265 | -If you need to force a scalar to a number, add a zero to it. | ||
| 1266 | -If you need to have just the integer part, see L<perlfunc/int>. | ||
| 1267 | - | ||
| 1268 | -=item bsearch | ||
| 1269 | - | ||
| 1270 | -bsearch() not supplied. For doing binary search on wordlists, | ||
| 1271 | -see L<Search::Dict>. | ||
| 1272 | - | ||
| 1273 | -=item calloc | ||
| 1274 | - | ||
| 1275 | -calloc() is C-specific. Perl does memory management transparently. | ||
| 1276 | - | ||
| 1277 | -=item ceil | ||
| 1278 | - | ||
| 1279 | -This is identical to the C function C<ceil()>, returning the smallest | ||
| 1280 | -integer value greater than or equal to the given numerical argument. | ||
| 1281 | - | ||
| 1282 | -=item chdir | ||
| 1283 | - | ||
| 1284 | -This is identical to Perl's builtin C<chdir()> function, allowing | ||
| 1285 | -one to change the working (default) directory, see L<perlfunc/chdir>. | ||
| 1286 | - | ||
| 1287 | -=item chmod | ||
| 1288 | - | ||
| 1289 | -This is identical to Perl's builtin C<chmod()> function, allowing | ||
| 1290 | -one to change file and directory permissions, see L<perlfunc/chmod>. | ||
| 1291 | - | ||
| 1292 | -=item chown | ||
| 1293 | - | ||
| 1294 | -This is identical to Perl's builtin C<chown()> function, allowing one | ||
| 1295 | -to change file and directory owners and groups, see L<perlfunc/chown>. | ||
| 1296 | - | ||
| 1297 | -=item clearerr | ||
| 1298 | - | ||
| 1299 | -Use the method C<IO::Handle::clearerr()> instead, to reset the error | ||
| 1300 | -state (if any) and EOF state (if any) of the given stream. | ||
| 1301 | - | ||
| 1302 | -=item clock | ||
| 1303 | - | ||
| 1304 | -This is identical to the C function C<clock()>, returning the | ||
| 1305 | -amount of spent processor time in microseconds. | ||
| 1306 | - | ||
| 1307 | -=item close | ||
| 1308 | - | ||
| 1309 | -Close the file. This uses file descriptors such as those obtained by calling | ||
| 1310 | -C<POSIX::open>. | ||
| 1311 | - | ||
| 1312 | - $fd = POSIX::open( "foo", &POSIX::O_RDONLY ); | ||
| 1313 | - POSIX::close( $fd ); | ||
| 1314 | - | ||
| 1315 | -Returns C<undef> on failure. | ||
| 1316 | - | ||
| 1317 | -See also L<perlfunc/close>. | ||
| 1318 | - | ||
| 1319 | -=item closedir | ||
| 1320 | - | ||
| 1321 | -This is identical to Perl's builtin C<closedir()> function for closing | ||
| 1322 | -a directory handle, see L<perlfunc/closedir>. | ||
| 1323 | - | ||
| 1324 | -=item cos | ||
| 1325 | - | ||
| 1326 | -This is identical to Perl's builtin C<cos()> function, for returning | ||
| 1327 | -the cosine of its numerical argument, see L<perlfunc/cos>. | ||
| 1328 | -See also L<Math::Trig>. | ||
| 1329 | - | ||
| 1330 | -=item cosh | ||
| 1331 | - | ||
| 1332 | -This is identical to the C function C<cosh()>, for returning | ||
| 1333 | -the hyperbolic cosine of its numeric argument. See also L<Math::Trig>. | ||
| 1334 | - | ||
| 1335 | -=item creat | ||
| 1336 | - | ||
| 1337 | -Create a new file. This returns a file descriptor like the ones returned by | ||
| 1338 | -C<POSIX::open>. Use C<POSIX::close> to close the file. | ||
| 1339 | - | ||
| 1340 | - $fd = POSIX::creat( "foo", 0611 ); | ||
| 1341 | - POSIX::close( $fd ); | ||
| 1342 | - | ||
| 1343 | -See also L<perlfunc/sysopen> and its C<O_CREAT> flag. | ||
| 1344 | - | ||
| 1345 | -=item ctermid | ||
| 1346 | - | ||
| 1347 | -Generates the path name for the controlling terminal. | ||
| 1348 | - | ||
| 1349 | - $path = POSIX::ctermid(); | ||
| 1350 | - | ||
| 1351 | -=item ctime | ||
| 1352 | - | ||
| 1353 | -This is identical to the C function C<ctime()> and equivalent | ||
| 1354 | -to C<asctime(localtime(...))>, see L</asctime> and L</localtime>. | ||
| 1355 | - | ||
| 1356 | -=item cuserid | ||
| 1357 | - | ||
| 1358 | -Get the login name of the owner of the current process. | ||
| 1359 | - | ||
| 1360 | - $name = POSIX::cuserid(); | ||
| 1361 | - | ||
| 1362 | -=item difftime | ||
| 1363 | - | ||
| 1364 | -This is identical to the C function C<difftime()>, for returning | ||
| 1365 | -the time difference (in seconds) between two times (as returned | ||
| 1366 | -by C<time()>), see L</time>. | ||
| 1367 | - | ||
| 1368 | -=item div | ||
| 1369 | - | ||
| 1370 | -div() is C-specific, use L<perlfunc/int> on the usual C</> division and | ||
| 1371 | -the modulus C<%>. | ||
| 1372 | - | ||
| 1373 | -=item dup | ||
| 1374 | - | ||
| 1375 | -This is similar to the C function C<dup()>, for duplicating a file | ||
| 1376 | -descriptor. | ||
| 1377 | - | ||
| 1378 | -This uses file descriptors such as those obtained by calling | ||
| 1379 | -C<POSIX::open>. | ||
| 1380 | - | ||
| 1381 | -Returns C<undef> on failure. | ||
| 1382 | - | ||
| 1383 | -=item dup2 | ||
| 1384 | - | ||
| 1385 | -This is similar to the C function C<dup2()>, for duplicating a file | ||
| 1386 | -descriptor to an another known file descriptor. | ||
| 1387 | - | ||
| 1388 | -This uses file descriptors such as those obtained by calling | ||
| 1389 | -C<POSIX::open>. | ||
| 1390 | - | ||
| 1391 | -Returns C<undef> on failure. | ||
| 1392 | - | ||
| 1393 | -=item errno | ||
| 1394 | - | ||
| 1395 | -Returns the value of errno. | ||
| 1396 | - | ||
| 1397 | - $errno = POSIX::errno(); | ||
| 1398 | - | ||
| 1399 | -This identical to the numerical values of the C<$!>, see L<perlvar/$ERRNO>. | ||
| 1400 | - | ||
| 1401 | -=item execl | ||
| 1402 | - | ||
| 1403 | -execl() is C-specific, see L<perlfunc/exec>. | ||
| 1404 | - | ||
| 1405 | -=item execle | ||
| 1406 | - | ||
| 1407 | -execle() is C-specific, see L<perlfunc/exec>. | ||
| 1408 | - | ||
| 1409 | -=item execlp | ||
| 1410 | - | ||
| 1411 | -execlp() is C-specific, see L<perlfunc/exec>. | ||
| 1412 | - | ||
| 1413 | -=item execv | ||
| 1414 | - | ||
| 1415 | -execv() is C-specific, see L<perlfunc/exec>. | ||
| 1416 | - | ||
| 1417 | -=item execve | ||
| 1418 | - | ||
| 1419 | -execve() is C-specific, see L<perlfunc/exec>. | ||
| 1420 | - | ||
| 1421 | -=item execvp | ||
| 1422 | - | ||
| 1423 | -execvp() is C-specific, see L<perlfunc/exec>. | ||
| 1424 | - | ||
| 1425 | -=item exit | ||
| 1426 | - | ||
| 1427 | -This is identical to Perl's builtin C<exit()> function for exiting the | ||
| 1428 | -program, see L<perlfunc/exit>. | ||
| 1429 | - | ||
| 1430 | -=item exp | ||
| 1431 | - | ||
| 1432 | -This is identical to Perl's builtin C<exp()> function for | ||
| 1433 | -returning the exponent (I<e>-based) of the numerical argument, | ||
| 1434 | -see L<perlfunc/exp>. | ||
| 1435 | - | ||
| 1436 | -=item fabs | ||
| 1437 | - | ||
| 1438 | -This is identical to Perl's builtin C<abs()> function for returning | ||
| 1439 | -the absolute value of the numerical argument, see L<perlfunc/abs>. | ||
| 1440 | - | ||
| 1441 | -=item fclose | ||
| 1442 | - | ||
| 1443 | -Use method C<IO::Handle::close()> instead, or see L<perlfunc/close>. | ||
| 1444 | - | ||
| 1445 | -=item fcntl | ||
| 1446 | - | ||
| 1447 | -This is identical to Perl's builtin C<fcntl()> function, | ||
| 1448 | -see L<perlfunc/fcntl>. | ||
| 1449 | - | ||
| 1450 | -=item fdopen | ||
| 1451 | - | ||
| 1452 | -Use method C<IO::Handle::new_from_fd()> instead, or see L<perlfunc/open>. | ||
| 1453 | - | ||
| 1454 | -=item feof | ||
| 1455 | - | ||
| 1456 | -Use method C<IO::Handle::eof()> instead, or see L<perlfunc/eof>. | ||
| 1457 | - | ||
| 1458 | -=item ferror | ||
| 1459 | - | ||
| 1460 | -Use method C<IO::Handle::error()> instead. | ||
| 1461 | - | ||
| 1462 | -=item fflush | ||
| 1463 | - | ||
| 1464 | -Use method C<IO::Handle::flush()> instead. | ||
| 1465 | -See also L<perlvar/$OUTPUT_AUTOFLUSH>. | ||
| 1466 | - | ||
| 1467 | -=item fgetc | ||
| 1468 | - | ||
| 1469 | -Use method C<IO::Handle::getc()> instead, or see L<perlfunc/read>. | ||
| 1470 | - | ||
| 1471 | -=item fgetpos | ||
| 1472 | - | ||
| 1473 | -Use method C<IO::Seekable::getpos()> instead, or see L<L/seek>. | ||
| 1474 | - | ||
| 1475 | -=item fgets | ||
| 1476 | - | ||
| 1477 | -Use method C<IO::Handle::gets()> instead. Similar to E<lt>E<gt>, also known | ||
| 1478 | -as L<perlfunc/readline>. | ||
| 1479 | - | ||
| 1480 | -=item fileno | ||
| 1481 | - | ||
| 1482 | -Use method C<IO::Handle::fileno()> instead, or see L<perlfunc/fileno>. | ||
| 1483 | - | ||
| 1484 | -=item floor | ||
| 1485 | - | ||
| 1486 | -This is identical to the C function C<floor()>, returning the largest | ||
| 1487 | -integer value less than or equal to the numerical argument. | ||
| 1488 | - | ||
| 1489 | -=item fmod | ||
| 1490 | - | ||
| 1491 | -This is identical to the C function C<fmod()>. | ||
| 1492 | - | ||
| 1493 | - $r = fmod($x, $y); | ||
| 1494 | - | ||
| 1495 | -It returns the remainder C<$r = $x - $n*$y>, where C<$n = trunc($x/$y)>. | ||
| 1496 | -The C<$r> has the same sign as C<$x> and magnitude (absolute value) | ||
| 1497 | -less than the magnitude of C<$y>. | ||
| 1498 | - | ||
| 1499 | -=item fopen | ||
| 1500 | - | ||
| 1501 | -Use method C<IO::File::open()> instead, or see L<perlfunc/open>. | ||
| 1502 | - | ||
| 1503 | -=item fork | ||
| 1504 | - | ||
| 1505 | -This is identical to Perl's builtin C<fork()> function | ||
| 1506 | -for duplicating the current process, see L<perlfunc/fork> | ||
| 1507 | -and L<perlfork> if you are in Windows. | ||
| 1508 | - | ||
| 1509 | -=item fpathconf | ||
| 1510 | - | ||
| 1511 | -Retrieves the value of a configurable limit on a file or directory. This | ||
| 1512 | -uses file descriptors such as those obtained by calling C<POSIX::open>. | ||
| 1513 | - | ||
| 1514 | -The following will determine the maximum length of the longest allowable | ||
| 1515 | -pathname on the filesystem which holds C</var/foo>. | ||
| 1516 | - | ||
| 1517 | - $fd = POSIX::open( "/var/foo", &POSIX::O_RDONLY ); | ||
| 1518 | - $path_max = POSIX::fpathconf( $fd, &POSIX::_PC_PATH_MAX ); | ||
| 1519 | - | ||
| 1520 | -Returns C<undef> on failure. | ||
| 1521 | - | ||
| 1522 | -=item fprintf | ||
| 1523 | - | ||
| 1524 | -fprintf() is C-specific, see L<perlfunc/printf> instead. | ||
| 1525 | - | ||
| 1526 | -=item fputc | ||
| 1527 | - | ||
| 1528 | -fputc() is C-specific, see L<perlfunc/print> instead. | ||
| 1529 | - | ||
| 1530 | -=item fputs | ||
| 1531 | - | ||
| 1532 | -fputs() is C-specific, see L<perlfunc/print> instead. | ||
| 1533 | - | ||
| 1534 | -=item fread | ||
| 1535 | - | ||
| 1536 | -fread() is C-specific, see L<perlfunc/read> instead. | ||
| 1537 | - | ||
| 1538 | -=item free | ||
| 1539 | - | ||
| 1540 | -free() is C-specific. Perl does memory management transparently. | ||
| 1541 | - | ||
| 1542 | -=item freopen | ||
| 1543 | - | ||
| 1544 | -freopen() is C-specific, see L<perlfunc/open> instead. | ||
| 1545 | - | ||
| 1546 | -=item frexp | ||
| 1547 | - | ||
| 1548 | -Return the mantissa and exponent of a floating-point number. | ||
| 1549 | - | ||
| 1550 | - ($mantissa, $exponent) = POSIX::frexp( 1.234e56 ); | ||
| 1551 | - | ||
| 1552 | -=item fscanf | ||
| 1553 | - | ||
| 1554 | -fscanf() is C-specific, use E<lt>E<gt> and regular expressions instead. | ||
| 1555 | - | ||
| 1556 | -=item fseek | ||
| 1557 | - | ||
| 1558 | -Use method C<IO::Seekable::seek()> instead, or see L<perlfunc/seek>. | ||
| 1559 | - | ||
| 1560 | -=item fsetpos | ||
| 1561 | - | ||
| 1562 | -Use method C<IO::Seekable::setpos()> instead, or seek L<perlfunc/seek>. | ||
| 1563 | - | ||
| 1564 | -=item fstat | ||
| 1565 | - | ||
| 1566 | -Get file status. This uses file descriptors such as those obtained by | ||
| 1567 | -calling C<POSIX::open>. The data returned is identical to the data from | ||
| 1568 | -Perl's builtin C<stat> function. | ||
| 1569 | - | ||
| 1570 | - $fd = POSIX::open( "foo", &POSIX::O_RDONLY ); | ||
| 1571 | - @stats = POSIX::fstat( $fd ); | ||
| 1572 | - | ||
| 1573 | -=item fsync | ||
| 1574 | - | ||
| 1575 | -Use method C<IO::Handle::sync()> instead. | ||
| 1576 | - | ||
| 1577 | -=item ftell | ||
| 1578 | - | ||
| 1579 | -Use method C<IO::Seekable::tell()> instead, or see L<perlfunc/tell>. | ||
| 1580 | - | ||
| 1581 | -=item fwrite | ||
| 1582 | - | ||
| 1583 | -fwrite() is C-specific, see L<perlfunc/print> instead. | ||
| 1584 | - | ||
| 1585 | -=item getc | ||
| 1586 | - | ||
| 1587 | -This is identical to Perl's builtin C<getc()> function, | ||
| 1588 | -see L<perlfunc/getc>. | ||
| 1589 | - | ||
| 1590 | -=item getchar | ||
| 1591 | - | ||
| 1592 | -Returns one character from STDIN. Identical to Perl's C<getc()>, | ||
| 1593 | -see L<perlfunc/getc>. | ||
| 1594 | - | ||
| 1595 | -=item getcwd | ||
| 1596 | - | ||
| 1597 | -Returns the name of the current working directory. | ||
| 1598 | -See also L<Cwd>. | ||
| 1599 | - | ||
| 1600 | -=item getegid | ||
| 1601 | - | ||
| 1602 | -Returns the effective group identifier. Similar to Perl' s builtin | ||
| 1603 | -variable C<$(>, see L<perlvar/$EGID>. | ||
| 1604 | - | ||
| 1605 | -=item getenv | ||
| 1606 | - | ||
| 1607 | -Returns the value of the specified environment variable. | ||
| 1608 | -The same information is available through the C<%ENV> array. | ||
| 1609 | - | ||
| 1610 | -=item geteuid | ||
| 1611 | - | ||
| 1612 | -Returns the effective user identifier. Identical to Perl's builtin C<$E<gt>> | ||
| 1613 | -variable, see L<perlvar/$EUID>. | ||
| 1614 | - | ||
| 1615 | -=item getgid | ||
| 1616 | - | ||
| 1617 | -Returns the user's real group identifier. Similar to Perl's builtin | ||
| 1618 | -variable C<$)>, see L<perlvar/$GID>. | ||
| 1619 | - | ||
| 1620 | -=item getgrgid | ||
| 1621 | - | ||
| 1622 | -This is identical to Perl's builtin C<getgrgid()> function for | ||
| 1623 | -returning group entries by group identifiers, see | ||
| 1624 | -L<perlfunc/getgrgid>. | ||
| 1625 | - | ||
| 1626 | -=item getgrnam | ||
| 1627 | - | ||
| 1628 | -This is identical to Perl's builtin C<getgrnam()> function for | ||
| 1629 | -returning group entries by group names, see L<perlfunc/getgrnam>. | ||
| 1630 | - | ||
| 1631 | -=item getgroups | ||
| 1632 | - | ||
| 1633 | -Returns the ids of the user's supplementary groups. Similar to Perl's | ||
| 1634 | -builtin variable C<$)>, see L<perlvar/$GID>. | ||
| 1635 | - | ||
| 1636 | -=item getlogin | ||
| 1637 | - | ||
| 1638 | -This is identical to Perl's builtin C<getlogin()> function for | ||
| 1639 | -returning the user name associated with the current session, see | ||
| 1640 | -L<perlfunc/getlogin>. | ||
| 1641 | - | ||
| 1642 | -=item getpgrp | ||
| 1643 | - | ||
| 1644 | -This is identical to Perl's builtin C<getpgrp()> function for | ||
| 1645 | -returning the process group identifier of the current process, see | ||
| 1646 | -L<perlfunc/getpgrp>. | ||
| 1647 | - | ||
| 1648 | -=item getpid | ||
| 1649 | - | ||
| 1650 | -Returns the process identifier. Identical to Perl's builtin | ||
| 1651 | -variable C<$$>, see L<perlvar/$PID>. | ||
| 1652 | - | ||
| 1653 | -=item getppid | ||
| 1654 | - | ||
| 1655 | -This is identical to Perl's builtin C<getppid()> function for | ||
| 1656 | -returning the process identifier of the parent process of the current | ||
| 1657 | -process , see L<perlfunc/getppid>. | ||
| 1658 | - | ||
| 1659 | -=item getpwnam | ||
| 1660 | - | ||
| 1661 | -This is identical to Perl's builtin C<getpwnam()> function for | ||
| 1662 | -returning user entries by user names, see L<perlfunc/getpwnam>. | ||
| 1663 | - | ||
| 1664 | -=item getpwuid | ||
| 1665 | - | ||
| 1666 | -This is identical to Perl's builtin C<getpwuid()> function for | ||
| 1667 | -returning user entries by user identifiers, see L<perlfunc/getpwuid>. | ||
| 1668 | - | ||
| 1669 | -=item gets | ||
| 1670 | - | ||
| 1671 | -Returns one line from C<STDIN>, similar to E<lt>E<gt>, also known | ||
| 1672 | -as the C<readline()> function, see L<perlfunc/readline>. | ||
| 1673 | - | ||
| 1674 | -B<NOTE>: if you have C programs that still use C<gets()>, be very | ||
| 1675 | -afraid. The C<gets()> function is a source of endless grief because | ||
| 1676 | -it has no buffer overrun checks. It should B<never> be used. The | ||
| 1677 | -C<fgets()> function should be preferred instead. | ||
| 1678 | - | ||
| 1679 | -=item getuid | ||
| 1680 | - | ||
| 1681 | -Returns the user's identifier. Identical to Perl's builtin C<$E<lt>> variable, | ||
| 1682 | -see L<perlvar/$UID>. | ||
| 1683 | - | ||
| 1684 | -=item gmtime | ||
| 1685 | - | ||
| 1686 | -This is identical to Perl's builtin C<gmtime()> function for | ||
| 1687 | -converting seconds since the epoch to a date in Greenwich Mean Time, | ||
| 1688 | -see L<perlfunc/gmtime>. | ||
| 1689 | - | ||
| 1690 | -=item isalnum | ||
| 1691 | - | ||
| 1692 | -This is identical to the C function, except that it can apply to a | ||
| 1693 | -single character or to a whole string. Note that locale settings may | ||
| 1694 | -affect what characters are considered C<isalnum>. Does not work on | ||
| 1695 | -Unicode characters code point 256 or higher. Consider using regular | ||
| 1696 | -expressions and the C</[[:alnum:]]/> construct instead, or possibly | ||
| 1697 | -the C</\w/> construct. | ||
| 1698 | - | ||
| 1699 | -=item isalpha | ||
| 1700 | - | ||
| 1701 | -This is identical to the C function, except that it can apply to | ||
| 1702 | -a single character or to a whole string. Note that locale settings | ||
| 1703 | -may affect what characters are considered C<isalpha>. Does not work | ||
| 1704 | -on Unicode characters code point 256 or higher. Consider using regular | ||
| 1705 | -expressions and the C</[[:alpha:]]/> construct instead. | ||
| 1706 | - | ||
| 1707 | -=item isatty | ||
| 1708 | - | ||
| 1709 | -Returns a boolean indicating whether the specified filehandle is connected | ||
| 1710 | -to a tty. Similar to the C<-t> operator, see L<perlfunc/-X>. | ||
| 1711 | - | ||
| 1712 | -=item iscntrl | ||
| 1713 | - | ||
| 1714 | -This is identical to the C function, except that it can apply to | ||
| 1715 | -a single character or to a whole string. Note that locale settings | ||
| 1716 | -may affect what characters are considered C<iscntrl>. Does not work | ||
| 1717 | -on Unicode characters code point 256 or higher. Consider using regular | ||
| 1718 | -expressions and the C</[[:cntrl:]]/> construct instead. | ||
| 1719 | - | ||
| 1720 | -=item isdigit | ||
| 1721 | - | ||
| 1722 | -This is identical to the C function, except that it can apply to | ||
| 1723 | -a single character or to a whole string. Note that locale settings | ||
| 1724 | -may affect what characters are considered C<isdigit> (unlikely, but | ||
| 1725 | -still possible). Does not work on Unicode characters code point 256 | ||
| 1726 | -or higher. Consider using regular expressions and the C</[[:digit:]]/> | ||
| 1727 | -construct instead, or the C</\d/> construct. | ||
| 1728 | - | ||
| 1729 | -=item isgraph | ||
| 1730 | - | ||
| 1731 | -This is identical to the C function, except that it can apply to | ||
| 1732 | -a single character or to a whole string. Note that locale settings | ||
| 1733 | -may affect what characters are considered C<isgraph>. Does not work | ||
| 1734 | -on Unicode characters code point 256 or higher. Consider using regular | ||
| 1735 | -expressions and the C</[[:graph:]]/> construct instead. | ||
| 1736 | - | ||
| 1737 | -=item islower | ||
| 1738 | - | ||
| 1739 | -This is identical to the C function, except that it can apply to | ||
| 1740 | -a single character or to a whole string. Note that locale settings | ||
| 1741 | -may affect what characters are considered C<islower>. Does not work | ||
| 1742 | -on Unicode characters code point 256 or higher. Consider using regular | ||
| 1743 | -expressions and the C</[[:lower:]]/> construct instead. Do B<not> use | ||
| 1744 | -C</[a-z]/>. | ||
| 1745 | - | ||
| 1746 | -=item isprint | ||
| 1747 | - | ||
| 1748 | -This is identical to the C function, except that it can apply to | ||
| 1749 | -a single character or to a whole string. Note that locale settings | ||
| 1750 | -may affect what characters are considered C<isprint>. Does not work | ||
| 1751 | -on Unicode characters code point 256 or higher. Consider using regular | ||
| 1752 | -expressions and the C</[[:print:]]/> construct instead. | ||
| 1753 | - | ||
| 1754 | -=item ispunct | ||
| 1755 | - | ||
| 1756 | -This is identical to the C function, except that it can apply to | ||
| 1757 | -a single character or to a whole string. Note that locale settings | ||
| 1758 | -may affect what characters are considered C<ispunct>. Does not work | ||
| 1759 | -on Unicode characters code point 256 or higher. Consider using regular | ||
| 1760 | -expressions and the C</[[:punct:]]/> construct instead. | ||
| 1761 | - | ||
| 1762 | -=item isspace | ||
| 1763 | - | ||
| 1764 | -This is identical to the C function, except that it can apply to | ||
| 1765 | -a single character or to a whole string. Note that locale settings | ||
| 1766 | -may affect what characters are considered C<isspace>. Does not work | ||
| 1767 | -on Unicode characters code point 256 or higher. Consider using regular | ||
| 1768 | -expressions and the C</[[:space:]]/> construct instead, or the C</\s/> | ||
| 1769 | -construct. (Note that C</\s/> and C</[[:space:]]/> are slightly | ||
| 1770 | -different in that C</[[:space:]]/> can normally match a vertical tab, | ||
| 1771 | -while C</\s/> does not.) | ||
| 1772 | - | ||
| 1773 | -=item isupper | ||
| 1774 | - | ||
| 1775 | -This is identical to the C function, except that it can apply to | ||
| 1776 | -a single character or to a whole string. Note that locale settings | ||
| 1777 | -may affect what characters are considered C<isupper>. Does not work | ||
| 1778 | -on Unicode characters code point 256 or higher. Consider using regular | ||
| 1779 | -expressions and the C</[[:upper:]]/> construct instead. Do B<not> use | ||
| 1780 | -C</[A-Z]/>. | ||
| 1781 | - | ||
| 1782 | -=item isxdigit | ||
| 1783 | - | ||
| 1784 | -This is identical to the C function, except that it can apply to a single | ||
| 1785 | -character or to a whole string. Note that locale settings may affect what | ||
| 1786 | -characters are considered C<isxdigit> (unlikely, but still possible). | ||
| 1787 | -Does not work on Unicode characters code point 256 or higher. | ||
| 1788 | -Consider using regular expressions and the C</[[:xdigit:]]/> | ||
| 1789 | -construct instead, or simply C</[0-9a-f]/i>. | ||
| 1790 | - | ||
| 1791 | -=item kill | ||
| 1792 | - | ||
| 1793 | -This is identical to Perl's builtin C<kill()> function for sending | ||
| 1794 | -signals to processes (often to terminate them), see L<perlfunc/kill>. | ||
| 1795 | - | ||
| 1796 | -=item labs | ||
| 1797 | - | ||
| 1798 | -(For returning absolute values of long integers.) | ||
| 1799 | -labs() is C-specific, see L<perlfunc/abs> instead. | ||
| 1800 | - | ||
| 1801 | -=item lchown | ||
| 1802 | - | ||
| 1803 | -This is identical to the C function, except the order of arguments is | ||
| 1804 | -consistent with Perl's builtin C<chown()> with the added restriction | ||
| 1805 | -of only one path, not an list of paths. Does the same thing as the | ||
| 1806 | -C<chown()> function but changes the owner of a symbolic link instead | ||
| 1807 | -of the file the symbolic link points to. | ||
| 1808 | - | ||
| 1809 | -=item ldexp | ||
| 1810 | - | ||
| 1811 | -This is identical to the C function C<ldexp()> | ||
| 1812 | -for multiplying floating point numbers with powers of two. | ||
| 1813 | - | ||
| 1814 | - $x_quadrupled = POSIX::ldexp($x, 2); | ||
| 1815 | - | ||
| 1816 | -=item ldiv | ||
| 1817 | - | ||
| 1818 | -(For computing dividends of long integers.) | ||
| 1819 | -ldiv() is C-specific, use C</> and C<int()> instead. | ||
| 1820 | - | ||
| 1821 | -=item link | ||
| 1822 | - | ||
| 1823 | -This is identical to Perl's builtin C<link()> function | ||
| 1824 | -for creating hard links into files, see L<perlfunc/link>. | ||
| 1825 | - | ||
| 1826 | -=item localeconv | ||
| 1827 | - | ||
| 1828 | -Get numeric formatting information. Returns a reference to a hash | ||
| 1829 | -containing the current locale formatting values. | ||
| 1830 | - | ||
| 1831 | -Here is how to query the database for the B<de> (Deutsch or German) locale. | ||
| 1832 | - | ||
| 1833 | - $loc = POSIX::setlocale( &POSIX::LC_ALL, "de" ); | ||
| 1834 | - print "Locale = $loc\n"; | ||
| 1835 | - $lconv = POSIX::localeconv(); | ||
| 1836 | - print "decimal_point = ", $lconv->{decimal_point}, "\n"; | ||
| 1837 | - print "thousands_sep = ", $lconv->{thousands_sep}, "\n"; | ||
| 1838 | - print "grouping = ", $lconv->{grouping}, "\n"; | ||
| 1839 | - print "int_curr_symbol = ", $lconv->{int_curr_symbol}, "\n"; | ||
| 1840 | - print "currency_symbol = ", $lconv->{currency_symbol}, "\n"; | ||
| 1841 | - print "mon_decimal_point = ", $lconv->{mon_decimal_point}, "\n"; | ||
| 1842 | - print "mon_thousands_sep = ", $lconv->{mon_thousands_sep}, "\n"; | ||
| 1843 | - print "mon_grouping = ", $lconv->{mon_grouping}, "\n"; | ||
| 1844 | - print "positive_sign = ", $lconv->{positive_sign}, "\n"; | ||
| 1845 | - print "negative_sign = ", $lconv->{negative_sign}, "\n"; | ||
| 1846 | - print "int_frac_digits = ", $lconv->{int_frac_digits}, "\n"; | ||
| 1847 | - print "frac_digits = ", $lconv->{frac_digits}, "\n"; | ||
| 1848 | - print "p_cs_precedes = ", $lconv->{p_cs_precedes}, "\n"; | ||
| 1849 | - print "p_sep_by_space = ", $lconv->{p_sep_by_space}, "\n"; | ||
| 1850 | - print "n_cs_precedes = ", $lconv->{n_cs_precedes}, "\n"; | ||
| 1851 | - print "n_sep_by_space = ", $lconv->{n_sep_by_space}, "\n"; | ||
| 1852 | - print "p_sign_posn = ", $lconv->{p_sign_posn}, "\n"; | ||
| 1853 | - print "n_sign_posn = ", $lconv->{n_sign_posn}, "\n"; | ||
| 1854 | - | ||
| 1855 | -=item localtime | ||
| 1856 | - | ||
| 1857 | -This is identical to Perl's builtin C<localtime()> function for | ||
| 1858 | -converting seconds since the epoch to a date see L<perlfunc/localtime>. | ||
| 1859 | - | ||
| 1860 | -=item log | ||
| 1861 | - | ||
| 1862 | -This is identical to Perl's builtin C<log()> function, | ||
| 1863 | -returning the natural (I<e>-based) logarithm of the numerical argument, | ||
| 1864 | -see L<perlfunc/log>. | ||
| 1865 | - | ||
| 1866 | -=item log10 | ||
| 1867 | - | ||
| 1868 | -This is identical to the C function C<log10()>, | ||
| 1869 | -returning the 10-base logarithm of the numerical argument. | ||
| 1870 | -You can also use | ||
| 1871 | - | ||
| 1872 | - sub log10 { log($_[0]) / log(10) } | ||
| 1873 | - | ||
| 1874 | -or | ||
| 1875 | - | ||
| 1876 | - sub log10 { log($_[0]) / 2.30258509299405 } | ||
| 1877 | - | ||
| 1878 | -or | ||
| 1879 | - | ||
| 1880 | - sub log10 { log($_[0]) * 0.434294481903252 } | ||
| 1881 | - | ||
| 1882 | -=item longjmp | ||
| 1883 | - | ||
| 1884 | -longjmp() is C-specific: use L<perlfunc/die> instead. | ||
| 1885 | - | ||
| 1886 | -=item lseek | ||
| 1887 | - | ||
| 1888 | -Move the file's read/write position. This uses file descriptors such as | ||
| 1889 | -those obtained by calling C<POSIX::open>. | ||
| 1890 | - | ||
| 1891 | - $fd = POSIX::open( "foo", &POSIX::O_RDONLY ); | ||
| 1892 | - $off_t = POSIX::lseek( $fd, 0, &POSIX::SEEK_SET ); | ||
| 1893 | - | ||
| 1894 | -Returns C<undef> on failure. | ||
| 1895 | - | ||
| 1896 | -=item malloc | ||
| 1897 | - | ||
| 1898 | -malloc() is C-specific. Perl does memory management transparently. | ||
| 1899 | - | ||
| 1900 | -=item mblen | ||
| 1901 | - | ||
| 1902 | -This is identical to the C function C<mblen()>. | ||
| 1903 | -Perl does not have any support for the wide and multibyte | ||
| 1904 | -characters of the C standards, so this might be a rather | ||
| 1905 | -useless function. | ||
| 1906 | - | ||
| 1907 | -=item mbstowcs | ||
| 1908 | - | ||
| 1909 | -This is identical to the C function C<mbstowcs()>. | ||
| 1910 | -Perl does not have any support for the wide and multibyte | ||
| 1911 | -characters of the C standards, so this might be a rather | ||
| 1912 | -useless function. | ||
| 1913 | - | ||
| 1914 | -=item mbtowc | ||
| 1915 | - | ||
| 1916 | -This is identical to the C function C<mbtowc()>. | ||
| 1917 | -Perl does not have any support for the wide and multibyte | ||
| 1918 | -characters of the C standards, so this might be a rather | ||
| 1919 | -useless function. | ||
| 1920 | - | ||
| 1921 | -=item memchr | ||
| 1922 | - | ||
| 1923 | -memchr() is C-specific, see L<perlfunc/index> instead. | ||
| 1924 | - | ||
| 1925 | -=item memcmp | ||
| 1926 | - | ||
| 1927 | -memcmp() is C-specific, use C<eq> instead, see L<perlop>. | ||
| 1928 | - | ||
| 1929 | -=item memcpy | ||
| 1930 | - | ||
| 1931 | -memcpy() is C-specific, use C<=>, see L<perlop>, or see L<perlfunc/substr>. | ||
| 1932 | - | ||
| 1933 | -=item memmove | ||
| 1934 | - | ||
| 1935 | -memmove() is C-specific, use C<=>, see L<perlop>, or see L<perlfunc/substr>. | ||
| 1936 | - | ||
| 1937 | -=item memset | ||
| 1938 | - | ||
| 1939 | -memset() is C-specific, use C<x> instead, see L<perlop>. | ||
| 1940 | - | ||
| 1941 | -=item mkdir | ||
| 1942 | - | ||
| 1943 | -This is identical to Perl's builtin C<mkdir()> function | ||
| 1944 | -for creating directories, see L<perlfunc/mkdir>. | ||
| 1945 | - | ||
| 1946 | -=item mkfifo | ||
| 1947 | - | ||
| 1948 | -This is similar to the C function C<mkfifo()> for creating | ||
| 1949 | -FIFO special files. | ||
| 1950 | - | ||
| 1951 | - if (mkfifo($path, $mode)) { .... | ||
| 1952 | - | ||
| 1953 | -Returns C<undef> on failure. The C<$mode> is similar to the | ||
| 1954 | -mode of C<mkdir()>, see L<perlfunc/mkdir>, though for C<mkfifo> | ||
| 1955 | -you B<must> specify the C<$mode>. | ||
| 1956 | - | ||
| 1957 | -=item mktime | ||
| 1958 | - | ||
| 1959 | -Convert date/time info to a calendar time. | ||
| 1960 | - | ||
| 1961 | -Synopsis: | ||
| 1962 | - | ||
| 1963 | - mktime(sec, min, hour, mday, mon, year, wday = 0, yday = 0, isdst = -1) | ||
| 1964 | - | ||
| 1965 | -The month (C<mon>), weekday (C<wday>), and yearday (C<yday>) begin at zero. | ||
| 1966 | -I.e. January is 0, not 1; Sunday is 0, not 1; January 1st is 0, not 1. The | ||
| 1967 | -year (C<year>) is given in years since 1900. I.e. The year 1995 is 95; the | ||
| 1968 | -year 2001 is 101. Consult your system's C<mktime()> manpage for details | ||
| 1969 | -about these and the other arguments. | ||
| 1970 | - | ||
| 1971 | -Calendar time for December 12, 1995, at 10:30 am. | ||
| 1972 | - | ||
| 1973 | - $time_t = POSIX::mktime( 0, 30, 10, 12, 11, 95 ); | ||
| 1974 | - print "Date = ", POSIX::ctime($time_t); | ||
| 1975 | - | ||
| 1976 | -Returns C<undef> on failure. | ||
| 1977 | - | ||
| 1978 | -=item modf | ||
| 1979 | - | ||
| 1980 | -Return the integral and fractional parts of a floating-point number. | ||
| 1981 | - | ||
| 1982 | - ($fractional, $integral) = POSIX::modf( 3.14 ); | ||
| 1983 | - | ||
| 1984 | -=item nice | ||
| 1985 | - | ||
| 1986 | -This is similar to the C function C<nice()>, for changing | ||
| 1987 | -the scheduling preference of the current process. Positive | ||
| 1988 | -arguments mean more polite process, negative values more | ||
| 1989 | -needy process. Normal user processes can only be more polite. | ||
| 1990 | - | ||
| 1991 | -Returns C<undef> on failure. | ||
| 1992 | - | ||
| 1993 | -=item offsetof | ||
| 1994 | - | ||
| 1995 | -offsetof() is C-specific, you probably want to see L<perlfunc/pack> instead. | ||
| 1996 | - | ||
| 1997 | -=item open | ||
| 1998 | - | ||
| 1999 | -Open a file for reading for writing. This returns file descriptors, not | ||
| 2000 | -Perl filehandles. Use C<POSIX::close> to close the file. | ||
| 2001 | - | ||
| 2002 | -Open a file read-only with mode 0666. | ||
| 2003 | - | ||
| 2004 | - $fd = POSIX::open( "foo" ); | ||
| 2005 | - | ||
| 2006 | -Open a file for read and write. | ||
| 2007 | - | ||
| 2008 | - $fd = POSIX::open( "foo", &POSIX::O_RDWR ); | ||
| 2009 | - | ||
| 2010 | -Open a file for write, with truncation. | ||
| 2011 | - | ||
| 2012 | - $fd = POSIX::open( "foo", &POSIX::O_WRONLY | &POSIX::O_TRUNC ); | ||
| 2013 | - | ||
| 2014 | -Create a new file with mode 0640. Set up the file for writing. | ||
| 2015 | - | ||
| 2016 | - $fd = POSIX::open( "foo", &POSIX::O_CREAT | &POSIX::O_WRONLY, 0640 ); | ||
| 2017 | - | ||
| 2018 | -Returns C<undef> on failure. | ||
| 2019 | - | ||
| 2020 | -See also L<perlfunc/sysopen>. | ||
| 2021 | - | ||
| 2022 | -=item opendir | ||
| 2023 | - | ||
| 2024 | -Open a directory for reading. | ||
| 2025 | - | ||
| 2026 | - $dir = POSIX::opendir( "/var" ); | ||
| 2027 | - @files = POSIX::readdir( $dir ); | ||
| 2028 | - POSIX::closedir( $dir ); | ||
| 2029 | - | ||
| 2030 | -Returns C<undef> on failure. | ||
| 2031 | - | ||
| 2032 | -=item pathconf | ||
| 2033 | - | ||
| 2034 | -Retrieves the value of a configurable limit on a file or directory. | ||
| 2035 | - | ||
| 2036 | -The following will determine the maximum length of the longest allowable | ||
| 2037 | -pathname on the filesystem which holds C</var>. | ||
| 2038 | - | ||
| 2039 | - $path_max = POSIX::pathconf( "/var", &POSIX::_PC_PATH_MAX ); | ||
| 2040 | - | ||
| 2041 | -Returns C<undef> on failure. | ||
| 2042 | - | ||
| 2043 | -=item pause | ||
| 2044 | - | ||
| 2045 | -This is similar to the C function C<pause()>, which suspends | ||
| 2046 | -the execution of the current process until a signal is received. | ||
| 2047 | - | ||
| 2048 | -Returns C<undef> on failure. | ||
| 2049 | - | ||
| 2050 | -=item perror | ||
| 2051 | - | ||
| 2052 | -This is identical to the C function C<perror()>, which outputs to the | ||
| 2053 | -standard error stream the specified message followed by ": " and the | ||
| 2054 | -current error string. Use the C<warn()> function and the C<$!> | ||
| 2055 | -variable instead, see L<perlfunc/warn> and L<perlvar/$ERRNO>. | ||
| 2056 | - | ||
| 2057 | -=item pipe | ||
| 2058 | - | ||
| 2059 | -Create an interprocess channel. This returns file descriptors like those | ||
| 2060 | -returned by C<POSIX::open>. | ||
| 2061 | - | ||
| 2062 | - my ($read, $write) = POSIX::pipe(); | ||
| 2063 | - POSIX::write( $write, "hello", 5 ); | ||
| 2064 | - POSIX::read( $read, $buf, 5 ); | ||
| 2065 | - | ||
| 2066 | -See also L<perlfunc/pipe>. | ||
| 2067 | - | ||
| 2068 | -=item pow | ||
| 2069 | - | ||
| 2070 | -Computes C<$x> raised to the power C<$exponent>. | ||
| 2071 | - | ||
| 2072 | - $ret = POSIX::pow( $x, $exponent ); | ||
| 2073 | - | ||
| 2074 | -You can also use the C<**> operator, see L<perlop>. | ||
| 2075 | - | ||
| 2076 | -=item printf | ||
| 2077 | - | ||
| 2078 | -Formats and prints the specified arguments to STDOUT. | ||
| 2079 | -See also L<perlfunc/printf>. | ||
| 2080 | - | ||
| 2081 | -=item putc | ||
| 2082 | - | ||
| 2083 | -putc() is C-specific, see L<perlfunc/print> instead. | ||
| 2084 | - | ||
| 2085 | -=item putchar | ||
| 2086 | - | ||
| 2087 | -putchar() is C-specific, see L<perlfunc/print> instead. | ||
| 2088 | - | ||
| 2089 | -=item puts | ||
| 2090 | - | ||
| 2091 | -puts() is C-specific, see L<perlfunc/print> instead. | ||
| 2092 | - | ||
| 2093 | -=item qsort | ||
| 2094 | - | ||
| 2095 | -qsort() is C-specific, see L<perlfunc/sort> instead. | ||
| 2096 | - | ||
| 2097 | -=item raise | ||
| 2098 | - | ||
| 2099 | -Sends the specified signal to the current process. | ||
| 2100 | -See also L<perlfunc/kill> and the C<$$> in L<perlvar/$PID>. | ||
| 2101 | - | ||
| 2102 | -=item rand | ||
| 2103 | - | ||
| 2104 | -C<rand()> is non-portable, see L<perlfunc/rand> instead. | ||
| 2105 | - | ||
| 2106 | -=item read | ||
| 2107 | - | ||
| 2108 | -Read from a file. This uses file descriptors such as those obtained by | ||
| 2109 | -calling C<POSIX::open>. If the buffer C<$buf> is not large enough for the | ||
| 2110 | -read then Perl will extend it to make room for the request. | ||
| 2111 | - | ||
| 2112 | - $fd = POSIX::open( "foo", &POSIX::O_RDONLY ); | ||
| 2113 | - $bytes = POSIX::read( $fd, $buf, 3 ); | ||
| 2114 | - | ||
| 2115 | -Returns C<undef> on failure. | ||
| 2116 | - | ||
| 2117 | -See also L<perlfunc/sysread>. | ||
| 2118 | - | ||
| 2119 | -=item readdir | ||
| 2120 | - | ||
| 2121 | -This is identical to Perl's builtin C<readdir()> function | ||
| 2122 | -for reading directory entries, see L<perlfunc/readdir>. | ||
| 2123 | - | ||
| 2124 | -=item realloc | ||
| 2125 | - | ||
| 2126 | -realloc() is C-specific. Perl does memory management transparently. | ||
| 2127 | - | ||
| 2128 | -=item remove | ||
| 2129 | - | ||
| 2130 | -This is identical to Perl's builtin C<unlink()> function | ||
| 2131 | -for removing files, see L<perlfunc/unlink>. | ||
| 2132 | - | ||
| 2133 | -=item rename | ||
| 2134 | - | ||
| 2135 | -This is identical to Perl's builtin C<rename()> function | ||
| 2136 | -for renaming files, see L<perlfunc/rename>. | ||
| 2137 | - | ||
| 2138 | -=item rewind | ||
| 2139 | - | ||
| 2140 | -Seeks to the beginning of the file. | ||
| 2141 | - | ||
| 2142 | -=item rewinddir | ||
| 2143 | - | ||
| 2144 | -This is identical to Perl's builtin C<rewinddir()> function for | ||
| 2145 | -rewinding directory entry streams, see L<perlfunc/rewinddir>. | ||
| 2146 | - | ||
| 2147 | -=item rmdir | ||
| 2148 | - | ||
| 2149 | -This is identical to Perl's builtin C<rmdir()> function | ||
| 2150 | -for removing (empty) directories, see L<perlfunc/rmdir>. | ||
| 2151 | - | ||
| 2152 | -=item scanf | ||
| 2153 | - | ||
| 2154 | -scanf() is C-specific, use E<lt>E<gt> and regular expressions instead, | ||
| 2155 | -see L<perlre>. | ||
| 2156 | - | ||
| 2157 | -=item setgid | ||
| 2158 | - | ||
| 2159 | -Sets the real group identifier and the effective group identifier for | ||
| 2160 | -this process. Similar to assigning a value to the Perl's builtin | ||
| 2161 | -C<$)> variable, see L<perlvar/$EGID>, except that the latter | ||
| 2162 | -will change only the real user identifier, and that the setgid() | ||
| 2163 | -uses only a single numeric argument, as opposed to a space-separated | ||
| 2164 | -list of numbers. | ||
| 2165 | - | ||
| 2166 | -=item setjmp | ||
| 2167 | - | ||
| 2168 | -C<setjmp()> is C-specific: use C<eval {}> instead, | ||
| 2169 | -see L<perlfunc/eval>. | ||
| 2170 | - | ||
| 2171 | -=item setlocale | ||
| 2172 | - | ||
| 2173 | -Modifies and queries program's locale. The following examples assume | ||
| 2174 | - | ||
| 2175 | - use POSIX qw(setlocale LC_ALL LC_CTYPE); | ||
| 2176 | - | ||
| 2177 | -has been issued. | ||
| 2178 | - | ||
| 2179 | -The following will set the traditional UNIX system locale behavior | ||
| 2180 | -(the second argument C<"C">). | ||
| 2181 | - | ||
| 2182 | - $loc = setlocale( LC_ALL, "C" ); | ||
| 2183 | - | ||
| 2184 | -The following will query the current LC_CTYPE category. (No second | ||
| 2185 | -argument means 'query'.) | ||
| 2186 | - | ||
| 2187 | - $loc = setlocale( LC_CTYPE ); | ||
| 2188 | - | ||
| 2189 | -The following will set the LC_CTYPE behaviour according to the locale | ||
| 2190 | -environment variables (the second argument C<"">). | ||
| 2191 | -Please see your systems C<setlocale(3)> documentation for the locale | ||
| 2192 | -environment variables' meaning or consult L<perllocale>. | ||
| 2193 | - | ||
| 2194 | - $loc = setlocale( LC_CTYPE, "" ); | ||
| 2195 | - | ||
| 2196 | -The following will set the LC_COLLATE behaviour to Argentinian | ||
| 2197 | -Spanish. B<NOTE>: The naming and availability of locales depends on | ||
| 2198 | -your operating system. Please consult L<perllocale> for how to find | ||
| 2199 | -out which locales are available in your system. | ||
| 2200 | - | ||
| 2201 | - $loc = setlocale( LC_COLLATE, "es_AR.ISO8859-1" ); | ||
| 2202 | - | ||
| 2203 | -=item setpgid | ||
| 2204 | - | ||
| 2205 | -This is similar to the C function C<setpgid()> for | ||
| 2206 | -setting the process group identifier of the current process. | ||
| 2207 | - | ||
| 2208 | -Returns C<undef> on failure. | ||
| 2209 | - | ||
| 2210 | -=item setsid | ||
| 2211 | - | ||
| 2212 | -This is identical to the C function C<setsid()> for | ||
| 2213 | -setting the session identifier of the current process. | ||
| 2214 | - | ||
| 2215 | -=item setuid | ||
| 2216 | - | ||
| 2217 | -Sets the real user identifier and the effective user identifier for | ||
| 2218 | -this process. Similar to assigning a value to the Perl's builtin | ||
| 2219 | -C<$E<lt>> variable, see L<perlvar/$UID>, except that the latter | ||
| 2220 | -will change only the real user identifier. | ||
| 2221 | - | ||
| 2222 | -=item sigaction | ||
| 2223 | - | ||
| 2224 | -Detailed signal management. This uses C<POSIX::SigAction> objects for | ||
| 2225 | -the C<action> and C<oldaction> arguments (the oldaction can also be | ||
| 2226 | -just a hash reference). Consult your system's C<sigaction> manpage | ||
| 2227 | -for details, see also C<POSIX::SigRt>. | ||
| 2228 | - | ||
| 2229 | -Synopsis: | ||
| 2230 | - | ||
| 2231 | - sigaction(signal, action, oldaction = 0) | ||
| 2232 | - | ||
| 2233 | -Returns C<undef> on failure. The C<signal> must be a number (like | ||
| 2234 | -SIGHUP), not a string (like "SIGHUP"), though Perl does try hard | ||
| 2235 | -to understand you. | ||
| 2236 | - | ||
| 2237 | -If you use the SA_SIGINFO flag, the signal handler will in addition to | ||
| 2238 | -the first argument, the signal name, also receive a second argument, a | ||
| 2239 | -hash reference, inside which are the following keys with the following | ||
| 2240 | -semantics, as defined by POSIX/SUSv3: | ||
| 2241 | - | ||
| 2242 | - signo the signal number | ||
| 2243 | - errno the error number | ||
| 2244 | - code if this is zero or less, the signal was sent by | ||
| 2245 | - a user process and the uid and pid make sense, | ||
| 2246 | - otherwise the signal was sent by the kernel | ||
| 2247 | - | ||
| 2248 | -The following are also defined by POSIX/SUSv3, but unfortunately | ||
| 2249 | -not very widely implemented: | ||
| 2250 | - | ||
| 2251 | - pid the process id generating the signal | ||
| 2252 | - uid the uid of the process id generating the signal | ||
| 2253 | - status exit value or signal for SIGCHLD | ||
| 2254 | - band band event for SIGPOLL | ||
| 2255 | - | ||
| 2256 | -A third argument is also passed to the handler, which contains a copy | ||
| 2257 | -of the raw binary contents of the siginfo structure: if a system has | ||
| 2258 | -some non-POSIX fields, this third argument is where to unpack() them | ||
| 2259 | -from. | ||
| 2260 | - | ||
| 2261 | -Note that not all siginfo values make sense simultaneously (some are | ||
| 2262 | -valid only for certain signals, for example), and not all values make | ||
| 2263 | -sense from Perl perspective, you should to consult your system's | ||
| 2264 | -C<sigaction> and possibly also C<siginfo> documentation. | ||
| 2265 | - | ||
| 2266 | -=item siglongjmp | ||
| 2267 | - | ||
| 2268 | -siglongjmp() is C-specific: use L<perlfunc/die> instead. | ||
| 2269 | - | ||
| 2270 | -=item sigpending | ||
| 2271 | - | ||
| 2272 | -Examine signals that are blocked and pending. This uses C<POSIX::SigSet> | ||
| 2273 | -objects for the C<sigset> argument. Consult your system's C<sigpending> | ||
| 2274 | -manpage for details. | ||
| 2275 | - | ||
| 2276 | -Synopsis: | ||
| 2277 | - | ||
| 2278 | - sigpending(sigset) | ||
| 2279 | - | ||
| 2280 | -Returns C<undef> on failure. | ||
| 2281 | - | ||
| 2282 | -=item sigprocmask | ||
| 2283 | - | ||
| 2284 | -Change and/or examine calling process's signal mask. This uses | ||
| 2285 | -C<POSIX::SigSet> objects for the C<sigset> and C<oldsigset> arguments. | ||
| 2286 | -Consult your system's C<sigprocmask> manpage for details. | ||
| 2287 | - | ||
| 2288 | -Synopsis: | ||
| 2289 | - | ||
| 2290 | - sigprocmask(how, sigset, oldsigset = 0) | ||
| 2291 | - | ||
| 2292 | -Returns C<undef> on failure. | ||
| 2293 | - | ||
| 2294 | -=item sigsetjmp | ||
| 2295 | - | ||
| 2296 | -C<sigsetjmp()> is C-specific: use C<eval {}> instead, | ||
| 2297 | -see L<perlfunc/eval>. | ||
| 2298 | - | ||
| 2299 | -=item sigsuspend | ||
| 2300 | - | ||
| 2301 | -Install a signal mask and suspend process until signal arrives. This uses | ||
| 2302 | -C<POSIX::SigSet> objects for the C<signal_mask> argument. Consult your | ||
| 2303 | -system's C<sigsuspend> manpage for details. | ||
| 2304 | - | ||
| 2305 | -Synopsis: | ||
| 2306 | - | ||
| 2307 | - sigsuspend(signal_mask) | ||
| 2308 | - | ||
| 2309 | -Returns C<undef> on failure. | ||
| 2310 | - | ||
| 2311 | -=item sin | ||
| 2312 | - | ||
| 2313 | -This is identical to Perl's builtin C<sin()> function | ||
| 2314 | -for returning the sine of the numerical argument, | ||
| 2315 | -see L<perlfunc/sin>. See also L<Math::Trig>. | ||
| 2316 | - | ||
| 2317 | -=item sinh | ||
| 2318 | - | ||
| 2319 | -This is identical to the C function C<sinh()> | ||
| 2320 | -for returning the hyperbolic sine of the numerical argument. | ||
| 2321 | -See also L<Math::Trig>. | ||
| 2322 | - | ||
| 2323 | -=item sleep | ||
| 2324 | - | ||
| 2325 | -This is functionally identical to Perl's builtin C<sleep()> function | ||
| 2326 | -for suspending the execution of the current for process for certain | ||
| 2327 | -number of seconds, see L<perlfunc/sleep>. There is one significant | ||
| 2328 | -difference, however: C<POSIX::sleep()> returns the number of | ||
| 2329 | -B<unslept> seconds, while the C<CORE::sleep()> returns the | ||
| 2330 | -number of slept seconds. | ||
| 2331 | - | ||
| 2332 | -=item sprintf | ||
| 2333 | - | ||
| 2334 | -This is similar to Perl's builtin C<sprintf()> function | ||
| 2335 | -for returning a string that has the arguments formatted as requested, | ||
| 2336 | -see L<perlfunc/sprintf>. | ||
| 2337 | - | ||
| 2338 | -=item sqrt | ||
| 2339 | - | ||
| 2340 | -This is identical to Perl's builtin C<sqrt()> function. | ||
| 2341 | -for returning the square root of the numerical argument, | ||
| 2342 | -see L<perlfunc/sqrt>. | ||
| 2343 | - | ||
| 2344 | -=item srand | ||
| 2345 | - | ||
| 2346 | -Give a seed the pseudorandom number generator, see L<perlfunc/srand>. | ||
| 2347 | - | ||
| 2348 | -=item sscanf | ||
| 2349 | - | ||
| 2350 | -sscanf() is C-specific, use regular expressions instead, | ||
| 2351 | -see L<perlre>. | ||
| 2352 | - | ||
| 2353 | -=item stat | ||
| 2354 | - | ||
| 2355 | -This is identical to Perl's builtin C<stat()> function | ||
| 2356 | -for returning information about files and directories. | ||
| 2357 | - | ||
| 2358 | -=item strcat | ||
| 2359 | - | ||
| 2360 | -strcat() is C-specific, use C<.=> instead, see L<perlop>. | ||
| 2361 | - | ||
| 2362 | -=item strchr | ||
| 2363 | - | ||
| 2364 | -strchr() is C-specific, see L<perlfunc/index> instead. | ||
| 2365 | - | ||
| 2366 | -=item strcmp | ||
| 2367 | - | ||
| 2368 | -strcmp() is C-specific, use C<eq> or C<cmp> instead, see L<perlop>. | ||
| 2369 | - | ||
| 2370 | -=item strcoll | ||
| 2371 | - | ||
| 2372 | -This is identical to the C function C<strcoll()> | ||
| 2373 | -for collating (comparing) strings transformed using | ||
| 2374 | -the C<strxfrm()> function. Not really needed since | ||
| 2375 | -Perl can do this transparently, see L<perllocale>. | ||
| 2376 | - | ||
| 2377 | -=item strcpy | ||
| 2378 | - | ||
| 2379 | -strcpy() is C-specific, use C<=> instead, see L<perlop>. | ||
| 2380 | - | ||
| 2381 | -=item strcspn | ||
| 2382 | - | ||
| 2383 | -strcspn() is C-specific, use regular expressions instead, | ||
| 2384 | -see L<perlre>. | ||
| 2385 | - | ||
| 2386 | -=item strerror | ||
| 2387 | - | ||
| 2388 | -Returns the error string for the specified errno. | ||
| 2389 | -Identical to the string form of the C<$!>, see L<perlvar/$ERRNO>. | ||
| 2390 | - | ||
| 2391 | -=item strftime | ||
| 2392 | - | ||
| 2393 | -Convert date and time information to string. Returns the string. | ||
| 2394 | - | ||
| 2395 | -Synopsis: | ||
| 2396 | - | ||
| 2397 | - strftime(fmt, sec, min, hour, mday, mon, year, wday = -1, yday = -1, isdst = -1) | ||
| 2398 | - | ||
| 2399 | -The month (C<mon>), weekday (C<wday>), and yearday (C<yday>) begin at zero. | ||
| 2400 | -I.e. January is 0, not 1; Sunday is 0, not 1; January 1st is 0, not 1. The | ||
| 2401 | -year (C<year>) is given in years since 1900. I.e., the year 1995 is 95; the | ||
| 2402 | -year 2001 is 101. Consult your system's C<strftime()> manpage for details | ||
| 2403 | -about these and the other arguments. | ||
| 2404 | - | ||
| 2405 | -If you want your code to be portable, your format (C<fmt>) argument | ||
| 2406 | -should use only the conversion specifiers defined by the ANSI C | ||
| 2407 | -standard (C89, to play safe). These are C<aAbBcdHIjmMpSUwWxXyYZ%>. | ||
| 2408 | -But even then, the B<results> of some of the conversion specifiers are | ||
| 2409 | -non-portable. For example, the specifiers C<aAbBcpZ> change according | ||
| 2410 | -to the locale settings of the user, and both how to set locales (the | ||
| 2411 | -locale names) and what output to expect are non-standard. | ||
| 2412 | -The specifier C<c> changes according to the timezone settings of the | ||
| 2413 | -user and the timezone computation rules of the operating system. | ||
| 2414 | -The C<Z> specifier is notoriously unportable since the names of | ||
| 2415 | -timezones are non-standard. Sticking to the numeric specifiers is the | ||
| 2416 | -safest route. | ||
| 2417 | - | ||
| 2418 | -The given arguments are made consistent as though by calling | ||
| 2419 | -C<mktime()> before calling your system's C<strftime()> function, | ||
| 2420 | -except that the C<isdst> value is not affected. | ||
| 2421 | - | ||
| 2422 | -The string for Tuesday, December 12, 1995. | ||
| 2423 | - | ||
| 2424 | - $str = POSIX::strftime( "%A, %B %d, %Y", 0, 0, 0, 12, 11, 95, 2 ); | ||
| 2425 | - print "$str\n"; | ||
| 2426 | - | ||
| 2427 | -=item strlen | ||
| 2428 | - | ||
| 2429 | -strlen() is C-specific, use C<length()> instead, see L<perlfunc/length>. | ||
| 2430 | - | ||
| 2431 | -=item strncat | ||
| 2432 | - | ||
| 2433 | -strncat() is C-specific, use C<.=> instead, see L<perlop>. | ||
| 2434 | - | ||
| 2435 | -=item strncmp | ||
| 2436 | - | ||
| 2437 | -strncmp() is C-specific, use C<eq> instead, see L<perlop>. | ||
| 2438 | - | ||
| 2439 | -=item strncpy | ||
| 2440 | - | ||
| 2441 | -strncpy() is C-specific, use C<=> instead, see L<perlop>. | ||
| 2442 | - | ||
| 2443 | -=item strpbrk | ||
| 2444 | - | ||
| 2445 | -strpbrk() is C-specific, use regular expressions instead, | ||
| 2446 | -see L<perlre>. | ||
| 2447 | - | ||
| 2448 | -=item strrchr | ||
| 2449 | - | ||
| 2450 | -strrchr() is C-specific, see L<perlfunc/rindex> instead. | ||
| 2451 | - | ||
| 2452 | -=item strspn | ||
| 2453 | - | ||
| 2454 | -strspn() is C-specific, use regular expressions instead, | ||
| 2455 | -see L<perlre>. | ||
| 2456 | - | ||
| 2457 | -=item strstr | ||
| 2458 | - | ||
| 2459 | -This is identical to Perl's builtin C<index()> function, | ||
| 2460 | -see L<perlfunc/index>. | ||
| 2461 | - | ||
| 2462 | -=item strtod | ||
| 2463 | - | ||
| 2464 | -String to double translation. Returns the parsed number and the number | ||
| 2465 | -of characters in the unparsed portion of the string. Truly | ||
| 2466 | -POSIX-compliant systems set $! ($ERRNO) to indicate a translation | ||
| 2467 | -error, so clear $! before calling strtod. However, non-POSIX systems | ||
| 2468 | -may not check for overflow, and therefore will never set $!. | ||
| 2469 | - | ||
| 2470 | -strtod should respect any POSIX I<setlocale()> settings. | ||
| 2471 | - | ||
| 2472 | -To parse a string $str as a floating point number use | ||
| 2473 | - | ||
| 2474 | - $! = 0; | ||
| 2475 | - ($num, $n_unparsed) = POSIX::strtod($str); | ||
| 2476 | - | ||
| 2477 | -The second returned item and $! can be used to check for valid input: | ||
| 2478 | - | ||
| 2479 | - if (($str eq '') || ($n_unparsed != 0) || $!) { | ||
| 2480 | - die "Non-numeric input $str" . ($! ? ": $!\n" : "\n"); | ||
| 2481 | - } | ||
| 2482 | - | ||
| 2483 | -When called in a scalar context strtod returns the parsed number. | ||
| 2484 | - | ||
| 2485 | -=item strtok | ||
| 2486 | - | ||
| 2487 | -strtok() is C-specific, use regular expressions instead, see | ||
| 2488 | -L<perlre>, or L<perlfunc/split>. | ||
| 2489 | - | ||
| 2490 | -=item strtol | ||
| 2491 | - | ||
| 2492 | -String to (long) integer translation. Returns the parsed number and | ||
| 2493 | -the number of characters in the unparsed portion of the string. Truly | ||
| 2494 | -POSIX-compliant systems set $! ($ERRNO) to indicate a translation | ||
| 2495 | -error, so clear $! before calling strtol. However, non-POSIX systems | ||
| 2496 | -may not check for overflow, and therefore will never set $!. | ||
| 2497 | - | ||
| 2498 | -strtol should respect any POSIX I<setlocale()> settings. | ||
| 2499 | - | ||
| 2500 | -To parse a string $str as a number in some base $base use | ||
| 2501 | - | ||
| 2502 | - $! = 0; | ||
| 2503 | - ($num, $n_unparsed) = POSIX::strtol($str, $base); | ||
| 2504 | - | ||
| 2505 | -The base should be zero or between 2 and 36, inclusive. When the base | ||
| 2506 | -is zero or omitted strtol will use the string itself to determine the | ||
| 2507 | -base: a leading "0x" or "0X" means hexadecimal; a leading "0" means | ||
| 2508 | -octal; any other leading characters mean decimal. Thus, "1234" is | ||
| 2509 | -parsed as a decimal number, "01234" as an octal number, and "0x1234" | ||
| 2510 | -as a hexadecimal number. | ||
| 2511 | - | ||
| 2512 | -The second returned item and $! can be used to check for valid input: | ||
| 2513 | - | ||
| 2514 | - if (($str eq '') || ($n_unparsed != 0) || !$!) { | ||
| 2515 | - die "Non-numeric input $str" . $! ? ": $!\n" : "\n"; | ||
| 2516 | - } | ||
| 2517 | - | ||
| 2518 | -When called in a scalar context strtol returns the parsed number. | ||
| 2519 | - | ||
| 2520 | -=item strtoul | ||
| 2521 | - | ||
| 2522 | -String to unsigned (long) integer translation. strtoul() is identical | ||
| 2523 | -to strtol() except that strtoul() only parses unsigned integers. See | ||
| 2524 | -L</strtol> for details. | ||
| 2525 | - | ||
| 2526 | -Note: Some vendors supply strtod() and strtol() but not strtoul(). | ||
| 2527 | -Other vendors that do supply strtoul() parse "-1" as a valid value. | ||
| 2528 | - | ||
| 2529 | -=item strxfrm | ||
| 2530 | - | ||
| 2531 | -String transformation. Returns the transformed string. | ||
| 2532 | - | ||
| 2533 | - $dst = POSIX::strxfrm( $src ); | ||
| 2534 | - | ||
| 2535 | -Used in conjunction with the C<strcoll()> function, see L</strcoll>. | ||
| 2536 | - | ||
| 2537 | -Not really needed since Perl can do this transparently, see | ||
| 2538 | -L<perllocale>. | ||
| 2539 | - | ||
| 2540 | -=item sysconf | ||
| 2541 | - | ||
| 2542 | -Retrieves values of system configurable variables. | ||
| 2543 | - | ||
| 2544 | -The following will get the machine's clock speed. | ||
| 2545 | - | ||
| 2546 | - $clock_ticks = POSIX::sysconf( &POSIX::_SC_CLK_TCK ); | ||
| 2547 | - | ||
| 2548 | -Returns C<undef> on failure. | ||
| 2549 | - | ||
| 2550 | -=item system | ||
| 2551 | - | ||
| 2552 | -This is identical to Perl's builtin C<system()> function, see | ||
| 2553 | -L<perlfunc/system>. | ||
| 2554 | - | ||
| 2555 | -=item tan | ||
| 2556 | - | ||
| 2557 | -This is identical to the C function C<tan()>, returning the | ||
| 2558 | -tangent of the numerical argument. See also L<Math::Trig>. | ||
| 2559 | - | ||
| 2560 | -=item tanh | ||
| 2561 | - | ||
| 2562 | -This is identical to the C function C<tanh()>, returning the | ||
| 2563 | -hyperbolic tangent of the numerical argument. See also L<Math::Trig>. | ||
| 2564 | - | ||
| 2565 | -=item tcdrain | ||
| 2566 | - | ||
| 2567 | -This is similar to the C function C<tcdrain()> for draining | ||
| 2568 | -the output queue of its argument stream. | ||
| 2569 | - | ||
| 2570 | -Returns C<undef> on failure. | ||
| 2571 | - | ||
| 2572 | -=item tcflow | ||
| 2573 | - | ||
| 2574 | -This is similar to the C function C<tcflow()> for controlling | ||
| 2575 | -the flow of its argument stream. | ||
| 2576 | - | ||
| 2577 | -Returns C<undef> on failure. | ||
| 2578 | - | ||
| 2579 | -=item tcflush | ||
| 2580 | - | ||
| 2581 | -This is similar to the C function C<tcflush()> for flushing | ||
| 2582 | -the I/O buffers of its argument stream. | ||
| 2583 | - | ||
| 2584 | -Returns C<undef> on failure. | ||
| 2585 | - | ||
| 2586 | -=item tcgetpgrp | ||
| 2587 | - | ||
| 2588 | -This is identical to the C function C<tcgetpgrp()> for returning the | ||
| 2589 | -process group identifier of the foreground process group of the controlling | ||
| 2590 | -terminal. | ||
| 2591 | - | ||
| 2592 | -=item tcsendbreak | ||
| 2593 | - | ||
| 2594 | -This is similar to the C function C<tcsendbreak()> for sending | ||
| 2595 | -a break on its argument stream. | ||
| 2596 | - | ||
| 2597 | -Returns C<undef> on failure. | ||
| 2598 | - | ||
| 2599 | -=item tcsetpgrp | ||
| 2600 | - | ||
| 2601 | -This is similar to the C function C<tcsetpgrp()> for setting the | ||
| 2602 | -process group identifier of the foreground process group of the controlling | ||
| 2603 | -terminal. | ||
| 2604 | - | ||
| 2605 | -Returns C<undef> on failure. | ||
| 2606 | - | ||
| 2607 | -=item time | ||
| 2608 | - | ||
| 2609 | -This is identical to Perl's builtin C<time()> function | ||
| 2610 | -for returning the number of seconds since the epoch | ||
| 2611 | -(whatever it is for the system), see L<perlfunc/time>. | ||
| 2612 | - | ||
| 2613 | -=item times | ||
| 2614 | - | ||
| 2615 | -The times() function returns elapsed realtime since some point in the past | ||
| 2616 | -(such as system startup), user and system times for this process, and user | ||
| 2617 | -and system times used by child processes. All times are returned in clock | ||
| 2618 | -ticks. | ||
| 2619 | - | ||
| 2620 | - ($realtime, $user, $system, $cuser, $csystem) = POSIX::times(); | ||
| 2621 | - | ||
| 2622 | -Note: Perl's builtin C<times()> function returns four values, measured in | ||
| 2623 | -seconds. | ||
| 2624 | - | ||
| 2625 | -=item tmpfile | ||
| 2626 | - | ||
| 2627 | -Use method C<IO::File::new_tmpfile()> instead, or see L<File::Temp>. | ||
| 2628 | - | ||
| 2629 | -=item tmpnam | ||
| 2630 | - | ||
| 2631 | -Returns a name for a temporary file. | ||
| 2632 | - | ||
| 2633 | - $tmpfile = POSIX::tmpnam(); | ||
| 2634 | - | ||
| 2635 | -For security reasons, which are probably detailed in your system's | ||
| 2636 | -documentation for the C library tmpnam() function, this interface | ||
| 2637 | -should not be used; instead see L<File::Temp>. | ||
| 2638 | - | ||
| 2639 | -=item tolower | ||
| 2640 | - | ||
| 2641 | -This is identical to the C function, except that it can apply to a single | ||
| 2642 | -character or to a whole string. Consider using the C<lc()> function, | ||
| 2643 | -see L<perlfunc/lc>, or the equivalent C<\L> operator inside doublequotish | ||
| 2644 | -strings. | ||
| 2645 | - | ||
| 2646 | -=item toupper | ||
| 2647 | - | ||
| 2648 | -This is identical to the C function, except that it can apply to a single | ||
| 2649 | -character or to a whole string. Consider using the C<uc()> function, | ||
| 2650 | -see L<perlfunc/uc>, or the equivalent C<\U> operator inside doublequotish | ||
| 2651 | -strings. | ||
| 2652 | - | ||
| 2653 | -=item ttyname | ||
| 2654 | - | ||
| 2655 | -This is identical to the C function C<ttyname()> for returning the | ||
| 2656 | -name of the current terminal. | ||
| 2657 | - | ||
| 2658 | -=item tzname | ||
| 2659 | - | ||
| 2660 | -Retrieves the time conversion information from the C<tzname> variable. | ||
| 2661 | - | ||
| 2662 | - POSIX::tzset(); | ||
| 2663 | - ($std, $dst) = POSIX::tzname(); | ||
| 2664 | - | ||
| 2665 | -=item tzset | ||
| 2666 | - | ||
| 2667 | -This is identical to the C function C<tzset()> for setting | ||
| 2668 | -the current timezone based on the environment variable C<TZ>, | ||
| 2669 | -to be used by C<ctime()>, C<localtime()>, C<mktime()>, and C<strftime()> | ||
| 2670 | -functions. | ||
| 2671 | - | ||
| 2672 | -=item umask | ||
| 2673 | - | ||
| 2674 | -This is identical to Perl's builtin C<umask()> function | ||
| 2675 | -for setting (and querying) the file creation permission mask, | ||
| 2676 | -see L<perlfunc/umask>. | ||
| 2677 | - | ||
| 2678 | -=item uname | ||
| 2679 | - | ||
| 2680 | -Get name of current operating system. | ||
| 2681 | - | ||
| 2682 | - ($sysname, $nodename, $release, $version, $machine) = POSIX::uname(); | ||
| 2683 | - | ||
| 2684 | -Note that the actual meanings of the various fields are not | ||
| 2685 | -that well standardized, do not expect any great portability. | ||
| 2686 | -The C<$sysname> might be the name of the operating system, | ||
| 2687 | -the C<$nodename> might be the name of the host, the C<$release> | ||
| 2688 | -might be the (major) release number of the operating system, | ||
| 2689 | -the C<$version> might be the (minor) release number of the | ||
| 2690 | -operating system, and the C<$machine> might be a hardware identifier. | ||
| 2691 | -Maybe. | ||
| 2692 | - | ||
| 2693 | -=item ungetc | ||
| 2694 | - | ||
| 2695 | -Use method C<IO::Handle::ungetc()> instead. | ||
| 2696 | - | ||
| 2697 | -=item unlink | ||
| 2698 | - | ||
| 2699 | -This is identical to Perl's builtin C<unlink()> function | ||
| 2700 | -for removing files, see L<perlfunc/unlink>. | ||
| 2701 | - | ||
| 2702 | -=item utime | ||
| 2703 | - | ||
| 2704 | -This is identical to Perl's builtin C<utime()> function | ||
| 2705 | -for changing the time stamps of files and directories, | ||
| 2706 | -see L<perlfunc/utime>. | ||
| 2707 | - | ||
| 2708 | -=item vfprintf | ||
| 2709 | - | ||
| 2710 | -vfprintf() is C-specific, see L<perlfunc/printf> instead. | ||
| 2711 | - | ||
| 2712 | -=item vprintf | ||
| 2713 | - | ||
| 2714 | -vprintf() is C-specific, see L<perlfunc/printf> instead. | ||
| 2715 | - | ||
| 2716 | -=item vsprintf | ||
| 2717 | - | ||
| 2718 | -vsprintf() is C-specific, see L<perlfunc/sprintf> instead. | ||
| 2719 | - | ||
| 2720 | -=item wait | ||
| 2721 | - | ||
| 2722 | -This is identical to Perl's builtin C<wait()> function, | ||
| 2723 | -see L<perlfunc/wait>. | ||
| 2724 | - | ||
| 2725 | -=item waitpid | ||
| 2726 | - | ||
| 2727 | -Wait for a child process to change state. This is identical to Perl's | ||
| 2728 | -builtin C<waitpid()> function, see L<perlfunc/waitpid>. | ||
| 2729 | - | ||
| 2730 | - $pid = POSIX::waitpid( -1, POSIX::WNOHANG ); | ||
| 2731 | - print "status = ", ($? / 256), "\n"; | ||
| 2732 | - | ||
| 2733 | -=item wcstombs | ||
| 2734 | - | ||
| 2735 | -This is identical to the C function C<wcstombs()>. | ||
| 2736 | -Perl does not have any support for the wide and multibyte | ||
| 2737 | -characters of the C standards, so this might be a rather | ||
| 2738 | -useless function. | ||
| 2739 | - | ||
| 2740 | -=item wctomb | ||
| 2741 | - | ||
| 2742 | -This is identical to the C function C<wctomb()>. | ||
| 2743 | -Perl does not have any support for the wide and multibyte | ||
| 2744 | -characters of the C standards, so this might be a rather | ||
| 2745 | -useless function. | ||
| 2746 | - | ||
| 2747 | -=item write | ||
| 2748 | - | ||
| 2749 | -Write to a file. This uses file descriptors such as those obtained by | ||
| 2750 | -calling C<POSIX::open>. | ||
| 2751 | - | ||
| 2752 | - $fd = POSIX::open( "foo", &POSIX::O_WRONLY ); | ||
| 2753 | - $buf = "hello"; | ||
| 2754 | - $bytes = POSIX::write( $fd, $buf, 5 ); | ||
| 2755 | - | ||
| 2756 | -Returns C<undef> on failure. | ||
| 2757 | - | ||
| 2758 | -See also L<perlfunc/syswrite>. | ||
| 2759 | - | ||
| 2760 | -=back | ||
| 2761 | - | ||
| 2762 | -=head1 CLASSES | ||
| 2763 | - | ||
| 2764 | -=head2 POSIX::SigAction | ||
| 2765 | - | ||
| 2766 | -=over 8 | ||
| 2767 | - | ||
| 2768 | -=item new | ||
| 2769 | - | ||
| 2770 | -Creates a new C<POSIX::SigAction> object which corresponds to the C | ||
| 2771 | -C<struct sigaction>. This object will be destroyed automatically when | ||
| 2772 | -it is no longer needed. The first parameter is the handler, a sub | ||
| 2773 | -reference. The second parameter is a C<POSIX::SigSet> object, it | ||
| 2774 | -defaults to the empty set. The third parameter contains the | ||
| 2775 | -C<sa_flags>, it defaults to 0. | ||
| 2776 | - | ||
| 2777 | - $sigset = POSIX::SigSet->new(SIGINT, SIGQUIT); | ||
| 2778 | - $sigaction = POSIX::SigAction->new( \&handler, $sigset, &POSIX::SA_NOCLDSTOP ); | ||
| 2779 | - | ||
| 2780 | -This C<POSIX::SigAction> object is intended for use with the C<POSIX::sigaction()> | ||
| 2781 | -function. | ||
| 2782 | - | ||
| 2783 | -=back | ||
| 2784 | - | ||
| 2785 | -=over 8 | ||
| 2786 | - | ||
| 2787 | -=item handler | ||
| 2788 | - | ||
| 2789 | -=item mask | ||
| 2790 | - | ||
| 2791 | -=item flags | ||
| 2792 | - | ||
| 2793 | -accessor functions to get/set the values of a SigAction object. | ||
| 2794 | - | ||
| 2795 | - $sigset = $sigaction->mask; | ||
| 2796 | - $sigaction->flags(&POSIX::SA_RESTART); | ||
| 2797 | - | ||
| 2798 | -=item safe | ||
| 2799 | - | ||
| 2800 | -accessor function for the "safe signals" flag of a SigAction object; see | ||
| 2801 | -L<perlipc> for general information on safe (a.k.a. "deferred") signals. If | ||
| 2802 | -you wish to handle a signal safely, use this accessor to set the "safe" flag | ||
| 2803 | -in the C<POSIX::SigAction> object: | ||
| 2804 | - | ||
| 2805 | - $sigaction->safe(1); | ||
| 2806 | - | ||
| 2807 | -You may also examine the "safe" flag on the output action object which is | ||
| 2808 | -filled in when given as the third parameter to C<POSIX::sigaction()>: | ||
| 2809 | - | ||
| 2810 | - sigaction(SIGINT, $new_action, $old_action); | ||
| 2811 | - if ($old_action->safe) { | ||
| 2812 | - # previous SIGINT handler used safe signals | ||
| 2813 | - } | ||
| 2814 | - | ||
| 2815 | -=back | ||
| 2816 | - | ||
| 2817 | -=head2 POSIX::SigRt | ||
| 2818 | - | ||
| 2819 | -=over 8 | ||
| 2820 | - | ||
| 2821 | -=item %SIGRT | ||
| 2822 | - | ||
| 2823 | -A hash of the POSIX realtime signal handlers. It is an extension of | ||
| 2824 | -the standard %SIG, the $POSIX::SIGRT{SIGRTMIN} is roughly equivalent | ||
| 2825 | -to $SIG{SIGRTMIN}, but the right POSIX moves (see below) are made with | ||
| 2826 | -the POSIX::SigSet and POSIX::sigaction instead of accessing the %SIG. | ||
| 2827 | - | ||
| 2828 | -You can set the %POSIX::SIGRT elements to set the POSIX realtime | ||
| 2829 | -signal handlers, use C<delete> and C<exists> on the elements, and use | ||
| 2830 | -C<scalar> on the C<%POSIX::SIGRT> to find out how many POSIX realtime | ||
| 2831 | -signals there are available (SIGRTMAX - SIGRTMIN + 1, the SIGRTMAX is | ||
| 2832 | -a valid POSIX realtime signal). | ||
| 2833 | - | ||
| 2834 | -Setting the %SIGRT elements is equivalent to calling this: | ||
| 2835 | - | ||
| 2836 | - sub new { | ||
| 2837 | - my ($rtsig, $handler, $flags) = @_; | ||
| 2838 | - my $sigset = POSIX::SigSet($rtsig); | ||
| 2839 | - my $sigact = POSIX::SigAction->new($handler, $sigset, $flags); | ||
| 2840 | - sigaction($rtsig, $sigact); | ||
| 2841 | - } | ||
| 2842 | - | ||
| 2843 | -The flags default to zero, if you want something different you can | ||
| 2844 | -either use C<local> on $POSIX::SigRt::SIGACTION_FLAGS, or you can | ||
| 2845 | -derive from POSIX::SigRt and define your own C<new()> (the tied hash | ||
| 2846 | -STORE method of the %SIGRT calls C<new($rtsig, $handler, $SIGACTION_FLAGS)>, | ||
| 2847 | -where the $rtsig ranges from zero to SIGRTMAX - SIGRTMIN + 1). | ||
| 2848 | - | ||
| 2849 | -Just as with any signal, you can use sigaction($rtsig, undef, $oa) to | ||
| 2850 | -retrieve the installed signal handler (or, rather, the signal action). | ||
| 2851 | - | ||
| 2852 | -B<NOTE:> whether POSIX realtime signals really work in your system, or | ||
| 2853 | -whether Perl has been compiled so that it works with them, is outside | ||
| 2854 | -of this discussion. | ||
| 2855 | - | ||
| 2856 | -=item SIGRTMIN | ||
| 2857 | - | ||
| 2858 | -Return the minimum POSIX realtime signal number available, or C<undef> | ||
| 2859 | -if no POSIX realtime signals are available. | ||
| 2860 | - | ||
| 2861 | -=item SIGRTMAX | ||
| 2862 | - | ||
| 2863 | -Return the maximum POSIX realtime signal number available, or C<undef> | ||
| 2864 | -if no POSIX realtime signals are available. | ||
| 2865 | - | ||
| 2866 | -=back | ||
| 2867 | - | ||
| 2868 | -=head2 POSIX::SigSet | ||
| 2869 | - | ||
| 2870 | -=over 8 | ||
| 2871 | - | ||
| 2872 | -=item new | ||
| 2873 | - | ||
| 2874 | -Create a new SigSet object. This object will be destroyed automatically | ||
| 2875 | -when it is no longer needed. Arguments may be supplied to initialize the | ||
| 2876 | -set. | ||
| 2877 | - | ||
| 2878 | -Create an empty set. | ||
| 2879 | - | ||
| 2880 | - $sigset = POSIX::SigSet->new; | ||
| 2881 | - | ||
| 2882 | -Create a set with SIGUSR1. | ||
| 2883 | - | ||
| 2884 | - $sigset = POSIX::SigSet->new( &POSIX::SIGUSR1 ); | ||
| 2885 | - | ||
| 2886 | -=item addset | ||
| 2887 | - | ||
| 2888 | -Add a signal to a SigSet object. | ||
| 2889 | - | ||
| 2890 | - $sigset->addset( &POSIX::SIGUSR2 ); | ||
| 2891 | - | ||
| 2892 | -Returns C<undef> on failure. | ||
| 2893 | - | ||
| 2894 | -=item delset | ||
| 2895 | - | ||
| 2896 | -Remove a signal from the SigSet object. | ||
| 2897 | - | ||
| 2898 | - $sigset->delset( &POSIX::SIGUSR2 ); | ||
| 2899 | - | ||
| 2900 | -Returns C<undef> on failure. | ||
| 2901 | - | ||
| 2902 | -=item emptyset | ||
| 2903 | - | ||
| 2904 | -Initialize the SigSet object to be empty. | ||
| 2905 | - | ||
| 2906 | - $sigset->emptyset(); | ||
| 2907 | - | ||
| 2908 | -Returns C<undef> on failure. | ||
| 2909 | - | ||
| 2910 | -=item fillset | ||
| 2911 | - | ||
| 2912 | -Initialize the SigSet object to include all signals. | ||
| 2913 | - | ||
| 2914 | - $sigset->fillset(); | ||
| 2915 | - | ||
| 2916 | -Returns C<undef> on failure. | ||
| 2917 | - | ||
| 2918 | -=item ismember | ||
| 2919 | - | ||
| 2920 | -Tests the SigSet object to see if it contains a specific signal. | ||
| 2921 | - | ||
| 2922 | - if( $sigset->ismember( &POSIX::SIGUSR1 ) ){ | ||
| 2923 | - print "contains SIGUSR1\n"; | ||
| 2924 | - } | ||
| 2925 | - | ||
| 2926 | -=back | ||
| 2927 | - | ||
| 2928 | -=head2 POSIX::Termios | ||
| 2929 | - | ||
| 2930 | -=over 8 | ||
| 2931 | - | ||
| 2932 | -=item new | ||
| 2933 | - | ||
| 2934 | -Create a new Termios object. This object will be destroyed automatically | ||
| 2935 | -when it is no longer needed. A Termios object corresponds to the termios | ||
| 2936 | -C struct. new() mallocs a new one, getattr() fills it from a file descriptor, | ||
| 2937 | -and setattr() sets a file descriptor's parameters to match Termios' contents. | ||
| 2938 | - | ||
| 2939 | - $termios = POSIX::Termios->new; | ||
| 2940 | - | ||
| 2941 | -=item getattr | ||
| 2942 | - | ||
| 2943 | -Get terminal control attributes. | ||
| 2944 | - | ||
| 2945 | -Obtain the attributes for stdin. | ||
| 2946 | - | ||
| 2947 | - $termios->getattr( 0 ) # Recommended for clarity. | ||
| 2948 | - $termios->getattr() | ||
| 2949 | - | ||
| 2950 | -Obtain the attributes for stdout. | ||
| 2951 | - | ||
| 2952 | - $termios->getattr( 1 ) | ||
| 2953 | - | ||
| 2954 | -Returns C<undef> on failure. | ||
| 2955 | - | ||
| 2956 | -=item getcc | ||
| 2957 | - | ||
| 2958 | -Retrieve a value from the c_cc field of a termios object. The c_cc field is | ||
| 2959 | -an array so an index must be specified. | ||
| 2960 | - | ||
| 2961 | - $c_cc[1] = $termios->getcc(1); | ||
| 2962 | - | ||
| 2963 | -=item getcflag | ||
| 2964 | - | ||
| 2965 | -Retrieve the c_cflag field of a termios object. | ||
| 2966 | - | ||
| 2967 | - $c_cflag = $termios->getcflag; | ||
| 2968 | - | ||
| 2969 | -=item getiflag | ||
| 2970 | - | ||
| 2971 | -Retrieve the c_iflag field of a termios object. | ||
| 2972 | - | ||
| 2973 | - $c_iflag = $termios->getiflag; | ||
| 2974 | - | ||
| 2975 | -=item getispeed | ||
| 2976 | - | ||
| 2977 | -Retrieve the input baud rate. | ||
| 2978 | - | ||
| 2979 | - $ispeed = $termios->getispeed; | ||
| 2980 | - | ||
| 2981 | -=item getlflag | ||
| 2982 | - | ||
| 2983 | -Retrieve the c_lflag field of a termios object. | ||
| 2984 | - | ||
| 2985 | - $c_lflag = $termios->getlflag; | ||
| 2986 | - | ||
| 2987 | -=item getoflag | ||
| 2988 | - | ||
| 2989 | -Retrieve the c_oflag field of a termios object. | ||
| 2990 | - | ||
| 2991 | - $c_oflag = $termios->getoflag; | ||
| 2992 | - | ||
| 2993 | -=item getospeed | ||
| 2994 | - | ||
| 2995 | -Retrieve the output baud rate. | ||
| 2996 | - | ||
| 2997 | - $ospeed = $termios->getospeed; | ||
| 2998 | - | ||
| 2999 | -=item setattr | ||
| 3000 | - | ||
| 3001 | -Set terminal control attributes. | ||
| 3002 | - | ||
| 3003 | -Set attributes immediately for stdout. | ||
| 3004 | - | ||
| 3005 | - $termios->setattr( 1, &POSIX::TCSANOW ); | ||
| 3006 | - | ||
| 3007 | -Returns C<undef> on failure. | ||
| 3008 | - | ||
| 3009 | -=item setcc | ||
| 3010 | - | ||
| 3011 | -Set a value in the c_cc field of a termios object. The c_cc field is an | ||
| 3012 | -array so an index must be specified. | ||
| 3013 | - | ||
| 3014 | - $termios->setcc( &POSIX::VEOF, 1 ); | ||
| 3015 | - | ||
| 3016 | -=item setcflag | ||
| 3017 | - | ||
| 3018 | -Set the c_cflag field of a termios object. | ||
| 3019 | - | ||
| 3020 | - $termios->setcflag( $c_cflag | &POSIX::CLOCAL ); | ||
| 3021 | - | ||
| 3022 | -=item setiflag | ||
| 3023 | - | ||
| 3024 | -Set the c_iflag field of a termios object. | ||
| 3025 | - | ||
| 3026 | - $termios->setiflag( $c_iflag | &POSIX::BRKINT ); | ||
| 3027 | - | ||
| 3028 | -=item setispeed | ||
| 3029 | - | ||
| 3030 | -Set the input baud rate. | ||
| 3031 | - | ||
| 3032 | - $termios->setispeed( &POSIX::B9600 ); | ||
| 3033 | - | ||
| 3034 | -Returns C<undef> on failure. | ||
| 3035 | - | ||
| 3036 | -=item setlflag | ||
| 3037 | - | ||
| 3038 | -Set the c_lflag field of a termios object. | ||
| 3039 | - | ||
| 3040 | - $termios->setlflag( $c_lflag | &POSIX::ECHO ); | ||
| 3041 | - | ||
| 3042 | -=item setoflag | ||
| 3043 | - | ||
| 3044 | -Set the c_oflag field of a termios object. | ||
| 3045 | - | ||
| 3046 | - $termios->setoflag( $c_oflag | &POSIX::OPOST ); | ||
| 3047 | - | ||
| 3048 | -=item setospeed | ||
| 3049 | - | ||
| 3050 | -Set the output baud rate. | ||
| 3051 | - | ||
| 3052 | - $termios->setospeed( &POSIX::B9600 ); | ||
| 3053 | - | ||
| 3054 | -Returns C<undef> on failure. | ||
| 3055 | - | ||
| 3056 | -=item Baud rate values | ||
| 3057 | - | ||
| 3058 | -B38400 B75 B200 B134 B300 B1800 B150 B0 B19200 B1200 B9600 B600 B4800 B50 B2400 B110 | ||
| 3059 | - | ||
| 3060 | -=item Terminal interface values | ||
| 3061 | - | ||
| 3062 | -TCSADRAIN TCSANOW TCOON TCIOFLUSH TCOFLUSH TCION TCIFLUSH TCSAFLUSH TCIOFF TCOOFF | ||
| 3063 | - | ||
| 3064 | -=item c_cc field values | ||
| 3065 | - | ||
| 3066 | -VEOF VEOL VERASE VINTR VKILL VQUIT VSUSP VSTART VSTOP VMIN VTIME NCCS | ||
| 3067 | - | ||
| 3068 | -=item c_cflag field values | ||
| 3069 | - | ||
| 3070 | -CLOCAL CREAD CSIZE CS5 CS6 CS7 CS8 CSTOPB HUPCL PARENB PARODD | ||
| 3071 | - | ||
| 3072 | -=item c_iflag field values | ||
| 3073 | - | ||
| 3074 | -BRKINT ICRNL IGNBRK IGNCR IGNPAR INLCR INPCK ISTRIP IXOFF IXON PARMRK | ||
| 3075 | - | ||
| 3076 | -=item c_lflag field values | ||
| 3077 | - | ||
| 3078 | -ECHO ECHOE ECHOK ECHONL ICANON IEXTEN ISIG NOFLSH TOSTOP | ||
| 3079 | - | ||
| 3080 | -=item c_oflag field values | ||
| 3081 | - | ||
| 3082 | -OPOST | ||
| 3083 | - | ||
| 3084 | -=back | ||
| 3085 | - | ||
| 3086 | -=head1 PATHNAME CONSTANTS | ||
| 3087 | - | ||
| 3088 | -=over 8 | ||
| 3089 | - | ||
| 3090 | -=item Constants | ||
| 3091 | - | ||
| 3092 | -_PC_CHOWN_RESTRICTED _PC_LINK_MAX _PC_MAX_CANON _PC_MAX_INPUT _PC_NAME_MAX _PC_NO_TRUNC _PC_PATH_MAX _PC_PIPE_BUF _PC_VDISABLE | ||
| 3093 | - | ||
| 3094 | -=back | ||
| 3095 | - | ||
| 3096 | -=head1 POSIX CONSTANTS | ||
| 3097 | - | ||
| 3098 | -=over 8 | ||
| 3099 | - | ||
| 3100 | -=item Constants | ||
| 3101 | - | ||
| 3102 | -_POSIX_ARG_MAX _POSIX_CHILD_MAX _POSIX_CHOWN_RESTRICTED _POSIX_JOB_CONTROL _POSIX_LINK_MAX _POSIX_MAX_CANON _POSIX_MAX_INPUT _POSIX_NAME_MAX _POSIX_NGROUPS_MAX _POSIX_NO_TRUNC _POSIX_OPEN_MAX _POSIX_PATH_MAX _POSIX_PIPE_BUF _POSIX_SAVED_IDS _POSIX_SSIZE_MAX _POSIX_STREAM_MAX _POSIX_TZNAME_MAX _POSIX_VDISABLE _POSIX_VERSION | ||
| 3103 | - | ||
| 3104 | -=back | ||
| 3105 | - | ||
| 3106 | -=head1 SYSTEM CONFIGURATION | ||
| 3107 | - | ||
| 3108 | -=over 8 | ||
| 3109 | - | ||
| 3110 | -=item Constants | ||
| 3111 | - | ||
| 3112 | -_SC_ARG_MAX _SC_CHILD_MAX _SC_CLK_TCK _SC_JOB_CONTROL _SC_NGROUPS_MAX _SC_OPEN_MAX _SC_PAGESIZE _SC_SAVED_IDS _SC_STREAM_MAX _SC_TZNAME_MAX _SC_VERSION | ||
| 3113 | - | ||
| 3114 | -=back | ||
| 3115 | - | ||
| 3116 | -=head1 ERRNO | ||
| 3117 | - | ||
| 3118 | -=over 8 | ||
| 3119 | - | ||
| 3120 | -=item Constants | ||
| 3121 | - | ||
| 3122 | -E2BIG EACCES EADDRINUSE EADDRNOTAVAIL EAFNOSUPPORT EAGAIN EALREADY EBADF | ||
| 3123 | -EBUSY ECHILD ECONNABORTED ECONNREFUSED ECONNRESET EDEADLK EDESTADDRREQ | ||
| 3124 | -EDOM EDQUOT EEXIST EFAULT EFBIG EHOSTDOWN EHOSTUNREACH EINPROGRESS EINTR | ||
| 3125 | -EINVAL EIO EISCONN EISDIR ELOOP EMFILE EMLINK EMSGSIZE ENAMETOOLONG | ||
| 3126 | -ENETDOWN ENETRESET ENETUNREACH ENFILE ENOBUFS ENODEV ENOENT ENOEXEC | ||
| 3127 | -ENOLCK ENOMEM ENOPROTOOPT ENOSPC ENOSYS ENOTBLK ENOTCONN ENOTDIR | ||
| 3128 | -ENOTEMPTY ENOTSOCK ENOTTY ENXIO EOPNOTSUPP EPERM EPFNOSUPPORT EPIPE | ||
| 3129 | -EPROCLIM EPROTONOSUPPORT EPROTOTYPE ERANGE EREMOTE ERESTART EROFS | ||
| 3130 | -ESHUTDOWN ESOCKTNOSUPPORT ESPIPE ESRCH ESTALE ETIMEDOUT ETOOMANYREFS | ||
| 3131 | -ETXTBSY EUSERS EWOULDBLOCK EXDEV | ||
| 3132 | - | ||
| 3133 | -=back | ||
| 3134 | - | ||
| 3135 | -=head1 FCNTL | ||
| 3136 | - | ||
| 3137 | -=over 8 | ||
| 3138 | - | ||
| 3139 | -=item Constants | ||
| 3140 | - | ||
| 3141 | -FD_CLOEXEC F_DUPFD F_GETFD F_GETFL F_GETLK F_OK F_RDLCK F_SETFD F_SETFL F_SETLK F_SETLKW F_UNLCK F_WRLCK O_ACCMODE O_APPEND O_CREAT O_EXCL O_NOCTTY O_NONBLOCK O_RDONLY O_RDWR O_TRUNC O_WRONLY | ||
| 3142 | - | ||
| 3143 | -=back | ||
| 3144 | - | ||
| 3145 | -=head1 FLOAT | ||
| 3146 | - | ||
| 3147 | -=over 8 | ||
| 3148 | - | ||
| 3149 | -=item Constants | ||
| 3150 | - | ||
| 3151 | -DBL_DIG DBL_EPSILON DBL_MANT_DIG DBL_MAX DBL_MAX_10_EXP DBL_MAX_EXP DBL_MIN DBL_MIN_10_EXP DBL_MIN_EXP FLT_DIG FLT_EPSILON FLT_MANT_DIG FLT_MAX FLT_MAX_10_EXP FLT_MAX_EXP FLT_MIN FLT_MIN_10_EXP FLT_MIN_EXP FLT_RADIX FLT_ROUNDS LDBL_DIG LDBL_EPSILON LDBL_MANT_DIG LDBL_MAX LDBL_MAX_10_EXP LDBL_MAX_EXP LDBL_MIN LDBL_MIN_10_EXP LDBL_MIN_EXP | ||
| 3152 | - | ||
| 3153 | -=back | ||
| 3154 | - | ||
| 3155 | -=head1 LIMITS | ||
| 3156 | - | ||
| 3157 | -=over 8 | ||
| 3158 | - | ||
| 3159 | -=item Constants | ||
| 3160 | - | ||
| 3161 | -ARG_MAX CHAR_BIT CHAR_MAX CHAR_MIN CHILD_MAX INT_MAX INT_MIN LINK_MAX LONG_MAX LONG_MIN MAX_CANON MAX_INPUT MB_LEN_MAX NAME_MAX NGROUPS_MAX OPEN_MAX PATH_MAX PIPE_BUF SCHAR_MAX SCHAR_MIN SHRT_MAX SHRT_MIN SSIZE_MAX STREAM_MAX TZNAME_MAX UCHAR_MAX UINT_MAX ULONG_MAX USHRT_MAX | ||
| 3162 | - | ||
| 3163 | -=back | ||
| 3164 | - | ||
| 3165 | -=head1 LOCALE | ||
| 3166 | - | ||
| 3167 | -=over 8 | ||
| 3168 | - | ||
| 3169 | -=item Constants | ||
| 3170 | - | ||
| 3171 | -LC_ALL LC_COLLATE LC_CTYPE LC_MONETARY LC_NUMERIC LC_TIME | ||
| 3172 | - | ||
| 3173 | -=back | ||
| 3174 | - | ||
| 3175 | -=head1 MATH | ||
| 3176 | - | ||
| 3177 | -=over 8 | ||
| 3178 | - | ||
| 3179 | -=item Constants | ||
| 3180 | - | ||
| 3181 | -HUGE_VAL | ||
| 3182 | - | ||
| 3183 | -=back | ||
| 3184 | - | ||
| 3185 | -=head1 SIGNAL | ||
| 3186 | - | ||
| 3187 | -=over 8 | ||
| 3188 | - | ||
| 3189 | -=item Constants | ||
| 3190 | - | ||
| 3191 | -SA_NOCLDSTOP SA_NOCLDWAIT SA_NODEFER SA_ONSTACK SA_RESETHAND SA_RESTART | ||
| 3192 | -SA_SIGINFO SIGABRT SIGALRM SIGCHLD SIGCONT SIGFPE SIGHUP SIGILL SIGINT | ||
| 3193 | -SIGKILL SIGPIPE SIGQUIT SIGSEGV SIGSTOP SIGTERM SIGTSTP SIGTTIN SIGTTOU | ||
| 3194 | -SIGUSR1 SIGUSR2 SIG_BLOCK SIG_DFL SIG_ERR SIG_IGN SIG_SETMASK | ||
| 3195 | -SIG_UNBLOCK | ||
| 3196 | - | ||
| 3197 | -=back | ||
| 3198 | - | ||
| 3199 | -=head1 STAT | ||
| 3200 | - | ||
| 3201 | -=over 8 | ||
| 3202 | - | ||
| 3203 | -=item Constants | ||
| 3204 | - | ||
| 3205 | -S_IRGRP S_IROTH S_IRUSR S_IRWXG S_IRWXO S_IRWXU S_ISGID S_ISUID S_IWGRP S_IWOTH S_IWUSR S_IXGRP S_IXOTH S_IXUSR | ||
| 3206 | - | ||
| 3207 | -=item Macros | ||
| 3208 | - | ||
| 3209 | -S_ISBLK S_ISCHR S_ISDIR S_ISFIFO S_ISREG | ||
| 3210 | - | ||
| 3211 | -=back | ||
| 3212 | - | ||
| 3213 | -=head1 STDLIB | ||
| 3214 | - | ||
| 3215 | -=over 8 | ||
| 3216 | - | ||
| 3217 | -=item Constants | ||
| 3218 | - | ||
| 3219 | -EXIT_FAILURE EXIT_SUCCESS MB_CUR_MAX RAND_MAX | ||
| 3220 | - | ||
| 3221 | -=back | ||
| 3222 | - | ||
| 3223 | -=head1 STDIO | ||
| 3224 | - | ||
| 3225 | -=over 8 | ||
| 3226 | - | ||
| 3227 | -=item Constants | ||
| 3228 | - | ||
| 3229 | -BUFSIZ EOF FILENAME_MAX L_ctermid L_cuserid L_tmpname TMP_MAX | ||
| 3230 | - | ||
| 3231 | -=back | ||
| 3232 | - | ||
| 3233 | -=head1 TIME | ||
| 3234 | - | ||
| 3235 | -=over 8 | ||
| 3236 | - | ||
| 3237 | -=item Constants | ||
| 3238 | - | ||
| 3239 | -CLK_TCK CLOCKS_PER_SEC | ||
| 3240 | - | ||
| 3241 | -=back | ||
| 3242 | - | ||
| 3243 | -=head1 UNISTD | ||
| 3244 | - | ||
| 3245 | -=over 8 | ||
| 3246 | - | ||
| 3247 | -=item Constants | ||
| 3248 | - | ||
| 3249 | -R_OK SEEK_CUR SEEK_END SEEK_SET STDIN_FILENO STDOUT_FILENO STDERR_FILENO W_OK X_OK | ||
| 3250 | - | ||
| 3251 | -=back | ||
| 3252 | - | ||
| 3253 | -=head1 WAIT | ||
| 3254 | - | ||
| 3255 | -=over 8 | ||
| 3256 | - | ||
| 3257 | -=item Constants | ||
| 3258 | - | ||
| 3259 | -WNOHANG WUNTRACED | ||
| 3260 | - | ||
| 3261 | -=over 16 | ||
| 3262 | - | ||
| 3263 | -=item WNOHANG | ||
| 3264 | - | ||
| 3265 | -Do not suspend the calling process until a child process | ||
| 3266 | -changes state but instead return immediately. | ||
| 3267 | - | ||
| 3268 | -=item WUNTRACED | ||
| 3269 | - | ||
| 3270 | -Catch stopped child processes. | ||
| 3271 | - | ||
| 3272 | -=back | ||
| 3273 | - | ||
| 3274 | -=item Macros | ||
| 3275 | - | ||
| 3276 | -WIFEXITED WEXITSTATUS WIFSIGNALED WTERMSIG WIFSTOPPED WSTOPSIG | ||
| 3277 | - | ||
| 3278 | -=over 16 | ||
| 3279 | - | ||
| 3280 | -=item WIFEXITED | ||
| 3281 | - | ||
| 3282 | -WIFEXITED($?) returns true if the child process exited normally | ||
| 3283 | -(C<exit()> or by falling off the end of C<main()>) | ||
| 3284 | - | ||
| 3285 | -=item WEXITSTATUS | ||
| 3286 | - | ||
| 3287 | -WEXITSTATUS($?) returns the normal exit status of the child process | ||
| 3288 | -(only meaningful if WIFEXITED($?) is true) | ||
| 3289 | - | ||
| 3290 | -=item WIFSIGNALED | ||
| 3291 | - | ||
| 3292 | -WIFSIGNALED($?) returns true if the child process terminated because | ||
| 3293 | -of a signal | ||
| 3294 | - | ||
| 3295 | -=item WTERMSIG | ||
| 3296 | - | ||
| 3297 | -WTERMSIG($?) returns the signal the child process terminated for | ||
| 3298 | -(only meaningful if WIFSIGNALED($?) is true) | ||
| 3299 | - | ||
| 3300 | -=item WIFSTOPPED | ||
| 3301 | - | ||
| 3302 | -WIFSTOPPED($?) returns true if the child process is currently stopped | ||
| 3303 | -(can happen only if you specified the WUNTRACED flag to waitpid()) | ||
| 3304 | - | ||
| 3305 | -=item WSTOPSIG | ||
| 3306 | - | ||
| 3307 | -WSTOPSIG($?) returns the signal the child process was stopped for | ||
| 3308 | -(only meaningful if WIFSTOPPED($?) is true) | ||
| 3309 | - | ||
| 3310 | -=back | ||
| 3311 | - | ||
| 3312 | -=back | ||
| 3313 | - | ||
| 3314 | diff --git a/ext/POSIX/lib/POSIX.pm b/ext/POSIX/lib/POSIX.pm | ||
| 3315 | new file mode 100644 | ||
| 3316 | index 0000000..ffbd9de | ||
| 3317 | --- /dev/null | ||
| 3318 | +++ b/ext/POSIX/lib/POSIX.pm | ||
| 3319 | @@ -0,0 +1,1042 @@ | ||
| 3320 | +package POSIX; | ||
| 3321 | +use strict; | ||
| 3322 | +use warnings; | ||
| 3323 | + | ||
| 3324 | +our(@ISA, %EXPORT_TAGS, @EXPORT_OK, @EXPORT, $AUTOLOAD, %SIGRT) = (); | ||
| 3325 | + | ||
| 3326 | +our $VERSION = "1.19"; | ||
| 3327 | + | ||
| 3328 | +use AutoLoader; | ||
| 3329 | + | ||
| 3330 | +use XSLoader (); | ||
| 3331 | + | ||
| 3332 | +use Fcntl qw(FD_CLOEXEC F_DUPFD F_GETFD F_GETFL F_GETLK F_RDLCK F_SETFD | ||
| 3333 | + F_SETFL F_SETLK F_SETLKW F_UNLCK F_WRLCK O_ACCMODE O_APPEND | ||
| 3334 | + O_CREAT O_EXCL O_NOCTTY O_NONBLOCK O_RDONLY O_RDWR O_TRUNC | ||
| 3335 | + O_WRONLY SEEK_CUR SEEK_END SEEK_SET | ||
| 3336 | + S_ISBLK S_ISCHR S_ISDIR S_ISFIFO S_ISREG | ||
| 3337 | + S_IRGRP S_IROTH S_IRUSR S_IRWXG S_IRWXO S_IRWXU S_ISGID S_ISUID | ||
| 3338 | + S_IWGRP S_IWOTH S_IWUSR S_IXGRP S_IXOTH S_IXUSR); | ||
| 3339 | + | ||
| 3340 | +# Grandfather old foo_h form to new :foo_h form | ||
| 3341 | +my $loaded; | ||
| 3342 | + | ||
| 3343 | +sub import { | ||
| 3344 | + load_imports() unless $loaded++; | ||
| 3345 | + my $this = shift; | ||
| 3346 | + my @list = map { m/^\w+_h$/ ? ":$_" : $_ } @_; | ||
| 3347 | + local $Exporter::ExportLevel = 1; | ||
| 3348 | + Exporter::import($this,@list); | ||
| 3349 | +} | ||
| 3350 | + | ||
| 3351 | +sub croak { require Carp; goto &Carp::croak } | ||
| 3352 | +# declare usage to assist AutoLoad | ||
| 3353 | +sub usage; | ||
| 3354 | + | ||
| 3355 | +XSLoader::load 'POSIX', $VERSION; | ||
| 3356 | + | ||
| 3357 | +sub AUTOLOAD { | ||
| 3358 | + no strict; | ||
| 3359 | + no warnings 'uninitialized'; | ||
| 3360 | + if ($AUTOLOAD =~ /::(_?[a-z])/) { | ||
| 3361 | + # require AutoLoader; | ||
| 3362 | + $AutoLoader::AUTOLOAD = $AUTOLOAD; | ||
| 3363 | + goto &AutoLoader::AUTOLOAD | ||
| 3364 | + } | ||
| 3365 | + local $! = 0; | ||
| 3366 | + my $constname = $AUTOLOAD; | ||
| 3367 | + $constname =~ s/.*:://; | ||
| 3368 | + my ($error, $val) = constant($constname); | ||
| 3369 | + croak $error if $error; | ||
| 3370 | + *$AUTOLOAD = sub { $val }; | ||
| 3371 | + | ||
| 3372 | + goto &$AUTOLOAD; | ||
| 3373 | +} | ||
| 3374 | + | ||
| 3375 | +package POSIX::SigAction; | ||
| 3376 | + | ||
| 3377 | +use AutoLoader 'AUTOLOAD'; | ||
| 3378 | + | ||
| 3379 | +package POSIX::SigRt; | ||
| 3380 | + | ||
| 3381 | +use AutoLoader 'AUTOLOAD'; | ||
| 3382 | + | ||
| 3383 | +use Tie::Hash; | ||
| 3384 | + | ||
| 3385 | +use vars qw($SIGACTION_FLAGS $_SIGRTMIN $_SIGRTMAX $_sigrtn @ISA); | ||
| 3386 | +@POSIX::SigRt::ISA = qw(Tie::StdHash); | ||
| 3387 | + | ||
| 3388 | +$SIGACTION_FLAGS = 0; | ||
| 3389 | + | ||
| 3390 | +tie %POSIX::SIGRT, 'POSIX::SigRt'; | ||
| 3391 | + | ||
| 3392 | +sub DESTROY {}; | ||
| 3393 | + | ||
| 3394 | +package POSIX; | ||
| 3395 | + | ||
| 3396 | +1; | ||
| 3397 | +__END__ | ||
| 3398 | + | ||
| 3399 | +sub usage { | ||
| 3400 | + my ($mess) = @_; | ||
| 3401 | + croak "Usage: POSIX::$mess"; | ||
| 3402 | +} | ||
| 3403 | + | ||
| 3404 | +sub redef { | ||
| 3405 | + my ($mess) = @_; | ||
| 3406 | + croak "Use method $mess instead"; | ||
| 3407 | +} | ||
| 3408 | + | ||
| 3409 | +sub unimpl { | ||
| 3410 | + my ($mess) = @_; | ||
| 3411 | + $mess =~ s/xxx//; | ||
| 3412 | + croak "Unimplemented: POSIX::$mess"; | ||
| 3413 | +} | ||
| 3414 | + | ||
| 3415 | +sub assert { | ||
| 3416 | + usage "assert(expr)" if @_ != 1; | ||
| 3417 | + if (!$_[0]) { | ||
| 3418 | + croak "Assertion failed"; | ||
| 3419 | + } | ||
| 3420 | +} | ||
| 3421 | + | ||
| 3422 | +sub tolower { | ||
| 3423 | + usage "tolower(string)" if @_ != 1; | ||
| 3424 | + lc($_[0]); | ||
| 3425 | +} | ||
| 3426 | + | ||
| 3427 | +sub toupper { | ||
| 3428 | + usage "toupper(string)" if @_ != 1; | ||
| 3429 | + uc($_[0]); | ||
| 3430 | +} | ||
| 3431 | + | ||
| 3432 | +sub closedir { | ||
| 3433 | + usage "closedir(dirhandle)" if @_ != 1; | ||
| 3434 | + CORE::closedir($_[0]); | ||
| 3435 | +} | ||
| 3436 | + | ||
| 3437 | +sub opendir { | ||
| 3438 | + usage "opendir(directory)" if @_ != 1; | ||
| 3439 | + my $dirhandle; | ||
| 3440 | + CORE::opendir($dirhandle, $_[0]) | ||
| 3441 | + ? $dirhandle | ||
| 3442 | + : undef; | ||
| 3443 | +} | ||
| 3444 | + | ||
| 3445 | +sub readdir { | ||
| 3446 | + usage "readdir(dirhandle)" if @_ != 1; | ||
| 3447 | + CORE::readdir($_[0]); | ||
| 3448 | +} | ||
| 3449 | + | ||
| 3450 | +sub rewinddir { | ||
| 3451 | + usage "rewinddir(dirhandle)" if @_ != 1; | ||
| 3452 | + CORE::rewinddir($_[0]); | ||
| 3453 | +} | ||
| 3454 | + | ||
| 3455 | +sub errno { | ||
| 3456 | + usage "errno()" if @_ != 0; | ||
| 3457 | + $! + 0; | ||
| 3458 | +} | ||
| 3459 | + | ||
| 3460 | +sub creat { | ||
| 3461 | + usage "creat(filename, mode)" if @_ != 2; | ||
| 3462 | + &open($_[0], &O_WRONLY | &O_CREAT | &O_TRUNC, $_[1]); | ||
| 3463 | +} | ||
| 3464 | + | ||
| 3465 | +sub fcntl { | ||
| 3466 | + usage "fcntl(filehandle, cmd, arg)" if @_ != 3; | ||
| 3467 | + CORE::fcntl($_[0], $_[1], $_[2]); | ||
| 3468 | +} | ||
| 3469 | + | ||
| 3470 | +sub getgrgid { | ||
| 3471 | + usage "getgrgid(gid)" if @_ != 1; | ||
| 3472 | + CORE::getgrgid($_[0]); | ||
| 3473 | +} | ||
| 3474 | + | ||
| 3475 | +sub getgrnam { | ||
| 3476 | + usage "getgrnam(name)" if @_ != 1; | ||
| 3477 | + CORE::getgrnam($_[0]); | ||
| 3478 | +} | ||
| 3479 | + | ||
| 3480 | +sub atan2 { | ||
| 3481 | + usage "atan2(x,y)" if @_ != 2; | ||
| 3482 | + CORE::atan2($_[0], $_[1]); | ||
| 3483 | +} | ||
| 3484 | + | ||
| 3485 | +sub cos { | ||
| 3486 | + usage "cos(x)" if @_ != 1; | ||
| 3487 | + CORE::cos($_[0]); | ||
| 3488 | +} | ||
| 3489 | + | ||
| 3490 | +sub exp { | ||
| 3491 | + usage "exp(x)" if @_ != 1; | ||
| 3492 | + CORE::exp($_[0]); | ||
| 3493 | +} | ||
| 3494 | + | ||
| 3495 | +sub fabs { | ||
| 3496 | + usage "fabs(x)" if @_ != 1; | ||
| 3497 | + CORE::abs($_[0]); | ||
| 3498 | +} | ||
| 3499 | + | ||
| 3500 | +sub log { | ||
| 3501 | + usage "log(x)" if @_ != 1; | ||
| 3502 | + CORE::log($_[0]); | ||
| 3503 | +} | ||
| 3504 | + | ||
| 3505 | +sub pow { | ||
| 3506 | + usage "pow(x,exponent)" if @_ != 2; | ||
| 3507 | + $_[0] ** $_[1]; | ||
| 3508 | +} | ||
| 3509 | + | ||
| 3510 | +sub sin { | ||
| 3511 | + usage "sin(x)" if @_ != 1; | ||
| 3512 | + CORE::sin($_[0]); | ||
| 3513 | +} | ||
| 3514 | + | ||
| 3515 | +sub sqrt { | ||
| 3516 | + usage "sqrt(x)" if @_ != 1; | ||
| 3517 | + CORE::sqrt($_[0]); | ||
| 3518 | +} | ||
| 3519 | + | ||
| 3520 | +sub getpwnam { | ||
| 3521 | + usage "getpwnam(name)" if @_ != 1; | ||
| 3522 | + CORE::getpwnam($_[0]); | ||
| 3523 | +} | ||
| 3524 | + | ||
| 3525 | +sub getpwuid { | ||
| 3526 | + usage "getpwuid(uid)" if @_ != 1; | ||
| 3527 | + CORE::getpwuid($_[0]); | ||
| 3528 | +} | ||
| 3529 | + | ||
| 3530 | +sub longjmp { | ||
| 3531 | + unimpl "longjmp() is C-specific: use die instead"; | ||
| 3532 | +} | ||
| 3533 | + | ||
| 3534 | +sub setjmp { | ||
| 3535 | + unimpl "setjmp() is C-specific: use eval {} instead"; | ||
| 3536 | +} | ||
| 3537 | + | ||
| 3538 | +sub siglongjmp { | ||
| 3539 | + unimpl "siglongjmp() is C-specific: use die instead"; | ||
| 3540 | +} | ||
| 3541 | + | ||
| 3542 | +sub sigsetjmp { | ||
| 3543 | + unimpl "sigsetjmp() is C-specific: use eval {} instead"; | ||
| 3544 | +} | ||
| 3545 | + | ||
| 3546 | +sub kill { | ||
| 3547 | + usage "kill(pid, sig)" if @_ != 2; | ||
| 3548 | + CORE::kill $_[1], $_[0]; | ||
| 3549 | +} | ||
| 3550 | + | ||
| 3551 | +sub raise { | ||
| 3552 | + usage "raise(sig)" if @_ != 1; | ||
| 3553 | + CORE::kill $_[0], $$; # Is this good enough? | ||
| 3554 | +} | ||
| 3555 | + | ||
| 3556 | +sub offsetof { | ||
| 3557 | + unimpl "offsetof() is C-specific, stopped"; | ||
| 3558 | +} | ||
| 3559 | + | ||
| 3560 | +sub clearerr { | ||
| 3561 | + redef "IO::Handle::clearerr()"; | ||
| 3562 | +} | ||
| 3563 | + | ||
| 3564 | +sub fclose { | ||
| 3565 | + redef "IO::Handle::close()"; | ||
| 3566 | +} | ||
| 3567 | + | ||
| 3568 | +sub fdopen { | ||
| 3569 | + redef "IO::Handle::new_from_fd()"; | ||
| 3570 | +} | ||
| 3571 | + | ||
| 3572 | +sub feof { | ||
| 3573 | + redef "IO::Handle::eof()"; | ||
| 3574 | +} | ||
| 3575 | + | ||
| 3576 | +sub fgetc { | ||
| 3577 | + redef "IO::Handle::getc()"; | ||
| 3578 | +} | ||
| 3579 | + | ||
| 3580 | +sub fgets { | ||
| 3581 | + redef "IO::Handle::gets()"; | ||
| 3582 | +} | ||
| 3583 | + | ||
| 3584 | +sub fileno { | ||
| 3585 | + redef "IO::Handle::fileno()"; | ||
| 3586 | +} | ||
| 3587 | + | ||
| 3588 | +sub fopen { | ||
| 3589 | + redef "IO::File::open()"; | ||
| 3590 | +} | ||
| 3591 | + | ||
| 3592 | +sub fprintf { | ||
| 3593 | + unimpl "fprintf() is C-specific--use printf instead"; | ||
| 3594 | +} | ||
| 3595 | + | ||
| 3596 | +sub fputc { | ||
| 3597 | + unimpl "fputc() is C-specific--use print instead"; | ||
| 3598 | +} | ||
| 3599 | + | ||
| 3600 | +sub fputs { | ||
| 3601 | + unimpl "fputs() is C-specific--use print instead"; | ||
| 3602 | +} | ||
| 3603 | + | ||
| 3604 | +sub fread { | ||
| 3605 | + unimpl "fread() is C-specific--use read instead"; | ||
| 3606 | +} | ||
| 3607 | + | ||
| 3608 | +sub freopen { | ||
| 3609 | + unimpl "freopen() is C-specific--use open instead"; | ||
| 3610 | +} | ||
| 3611 | + | ||
| 3612 | +sub fscanf { | ||
| 3613 | + unimpl "fscanf() is C-specific--use <> and regular expressions instead"; | ||
| 3614 | +} | ||
| 3615 | + | ||
| 3616 | +sub fseek { | ||
| 3617 | + redef "IO::Seekable::seek()"; | ||
| 3618 | +} | ||
| 3619 | + | ||
| 3620 | +sub fsync { | ||
| 3621 | + redef "IO::Handle::sync()"; | ||
| 3622 | +} | ||
| 3623 | + | ||
| 3624 | +sub ferror { | ||
| 3625 | + redef "IO::Handle::error()"; | ||
| 3626 | +} | ||
| 3627 | + | ||
| 3628 | +sub fflush { | ||
| 3629 | + redef "IO::Handle::flush()"; | ||
| 3630 | +} | ||
| 3631 | + | ||
| 3632 | +sub fgetpos { | ||
| 3633 | + redef "IO::Seekable::getpos()"; | ||
| 3634 | +} | ||
| 3635 | + | ||
| 3636 | +sub fsetpos { | ||
| 3637 | + redef "IO::Seekable::setpos()"; | ||
| 3638 | +} | ||
| 3639 | + | ||
| 3640 | +sub ftell { | ||
| 3641 | + redef "IO::Seekable::tell()"; | ||
| 3642 | +} | ||
| 3643 | + | ||
| 3644 | +sub fwrite { | ||
| 3645 | + unimpl "fwrite() is C-specific--use print instead"; | ||
| 3646 | +} | ||
| 3647 | + | ||
| 3648 | +sub getc { | ||
| 3649 | + usage "getc(handle)" if @_ != 1; | ||
| 3650 | + CORE::getc($_[0]); | ||
| 3651 | +} | ||
| 3652 | + | ||
| 3653 | +sub getchar { | ||
| 3654 | + usage "getchar()" if @_ != 0; | ||
| 3655 | + CORE::getc(STDIN); | ||
| 3656 | +} | ||
| 3657 | + | ||
| 3658 | +sub gets { | ||
| 3659 | + usage "gets()" if @_ != 0; | ||
| 3660 | + scalar <STDIN>; | ||
| 3661 | +} | ||
| 3662 | + | ||
| 3663 | +sub perror { | ||
| 3664 | + print STDERR "@_: " if @_; | ||
| 3665 | + print STDERR $!,"\n"; | ||
| 3666 | +} | ||
| 3667 | + | ||
| 3668 | +sub printf { | ||
| 3669 | + usage "printf(pattern, args...)" if @_ < 1; | ||
| 3670 | + CORE::printf STDOUT @_; | ||
| 3671 | +} | ||
| 3672 | + | ||
| 3673 | +sub putc { | ||
| 3674 | + unimpl "putc() is C-specific--use print instead"; | ||
| 3675 | +} | ||
| 3676 | + | ||
| 3677 | +sub putchar { | ||
| 3678 | + unimpl "putchar() is C-specific--use print instead"; | ||
| 3679 | +} | ||
| 3680 | + | ||
| 3681 | +sub puts { | ||
| 3682 | + unimpl "puts() is C-specific--use print instead"; | ||
| 3683 | +} | ||
| 3684 | + | ||
| 3685 | +sub remove { | ||
| 3686 | + usage "remove(filename)" if @_ != 1; | ||
| 3687 | + (-d $_[0]) ? CORE::rmdir($_[0]) : CORE::unlink($_[0]); | ||
| 3688 | +} | ||
| 3689 | + | ||
| 3690 | +sub rename { | ||
| 3691 | + usage "rename(oldfilename, newfilename)" if @_ != 2; | ||
| 3692 | + CORE::rename($_[0], $_[1]); | ||
| 3693 | +} | ||
| 3694 | + | ||
| 3695 | +sub rewind { | ||
| 3696 | + usage "rewind(filehandle)" if @_ != 1; | ||
| 3697 | + CORE::seek($_[0],0,0); | ||
| 3698 | +} | ||
| 3699 | + | ||
| 3700 | +sub scanf { | ||
| 3701 | + unimpl "scanf() is C-specific--use <> and regular expressions instead"; | ||
| 3702 | +} | ||
| 3703 | + | ||
| 3704 | +sub sprintf { | ||
| 3705 | + usage "sprintf(pattern,args)" if @_ == 0; | ||
| 3706 | + CORE::sprintf(shift,@_); | ||
| 3707 | +} | ||
| 3708 | + | ||
| 3709 | +sub sscanf { | ||
| 3710 | + unimpl "sscanf() is C-specific--use regular expressions instead"; | ||
| 3711 | +} | ||
| 3712 | + | ||
| 3713 | +sub tmpfile { | ||
| 3714 | + redef "IO::File::new_tmpfile()"; | ||
| 3715 | +} | ||
| 3716 | + | ||
| 3717 | +sub ungetc { | ||
| 3718 | + redef "IO::Handle::ungetc()"; | ||
| 3719 | +} | ||
| 3720 | + | ||
| 3721 | +sub vfprintf { | ||
| 3722 | + unimpl "vfprintf() is C-specific"; | ||
| 3723 | +} | ||
| 3724 | + | ||
| 3725 | +sub vprintf { | ||
| 3726 | + unimpl "vprintf() is C-specific"; | ||
| 3727 | +} | ||
| 3728 | + | ||
| 3729 | +sub vsprintf { | ||
| 3730 | + unimpl "vsprintf() is C-specific"; | ||
| 3731 | +} | ||
| 3732 | + | ||
| 3733 | +sub abs { | ||
| 3734 | + usage "abs(x)" if @_ != 1; | ||
| 3735 | + CORE::abs($_[0]); | ||
| 3736 | +} | ||
| 3737 | + | ||
| 3738 | +sub atexit { | ||
| 3739 | + unimpl "atexit() is C-specific: use END {} instead"; | ||
| 3740 | +} | ||
| 3741 | + | ||
| 3742 | +sub atof { | ||
| 3743 | + unimpl "atof() is C-specific, stopped"; | ||
| 3744 | +} | ||
| 3745 | + | ||
| 3746 | +sub atoi { | ||
| 3747 | + unimpl "atoi() is C-specific, stopped"; | ||
| 3748 | +} | ||
| 3749 | + | ||
| 3750 | +sub atol { | ||
| 3751 | + unimpl "atol() is C-specific, stopped"; | ||
| 3752 | +} | ||
| 3753 | + | ||
| 3754 | +sub bsearch { | ||
| 3755 | + unimpl "bsearch() not supplied"; | ||
| 3756 | +} | ||
| 3757 | + | ||
| 3758 | +sub calloc { | ||
| 3759 | + unimpl "calloc() is C-specific, stopped"; | ||
| 3760 | +} | ||
| 3761 | + | ||
| 3762 | +sub div { | ||
| 3763 | + unimpl "div() is C-specific, use /, % and int instead"; | ||
| 3764 | +} | ||
| 3765 | + | ||
| 3766 | +sub exit { | ||
| 3767 | + usage "exit(status)" if @_ != 1; | ||
| 3768 | + CORE::exit($_[0]); | ||
| 3769 | +} | ||
| 3770 | + | ||
| 3771 | +sub free { | ||
| 3772 | + unimpl "free() is C-specific, stopped"; | ||
| 3773 | +} | ||
| 3774 | + | ||
| 3775 | +sub getenv { | ||
| 3776 | + usage "getenv(name)" if @_ != 1; | ||
| 3777 | + $ENV{$_[0]}; | ||
| 3778 | +} | ||
| 3779 | + | ||
| 3780 | +sub labs { | ||
| 3781 | + unimpl "labs() is C-specific, use abs instead"; | ||
| 3782 | +} | ||
| 3783 | + | ||
| 3784 | +sub ldiv { | ||
| 3785 | + unimpl "ldiv() is C-specific, use /, % and int instead"; | ||
| 3786 | +} | ||
| 3787 | + | ||
| 3788 | +sub malloc { | ||
| 3789 | + unimpl "malloc() is C-specific, stopped"; | ||
| 3790 | +} | ||
| 3791 | + | ||
| 3792 | +sub qsort { | ||
| 3793 | + unimpl "qsort() is C-specific, use sort instead"; | ||
| 3794 | +} | ||
| 3795 | + | ||
| 3796 | +sub rand { | ||
| 3797 | + unimpl "rand() is non-portable, use Perl's rand instead"; | ||
| 3798 | +} | ||
| 3799 | + | ||
| 3800 | +sub realloc { | ||
| 3801 | + unimpl "realloc() is C-specific, stopped"; | ||
| 3802 | +} | ||
| 3803 | + | ||
| 3804 | +sub srand { | ||
| 3805 | + unimpl "srand()"; | ||
| 3806 | +} | ||
| 3807 | + | ||
| 3808 | +sub system { | ||
| 3809 | + usage "system(command)" if @_ != 1; | ||
| 3810 | + CORE::system($_[0]); | ||
| 3811 | +} | ||
| 3812 | + | ||
| 3813 | +sub memchr { | ||
| 3814 | + unimpl "memchr() is C-specific, use index() instead"; | ||
| 3815 | +} | ||
| 3816 | + | ||
| 3817 | +sub memcmp { | ||
| 3818 | + unimpl "memcmp() is C-specific, use eq instead"; | ||
| 3819 | +} | ||
| 3820 | + | ||
| 3821 | +sub memcpy { | ||
| 3822 | + unimpl "memcpy() is C-specific, use = instead"; | ||
| 3823 | +} | ||
| 3824 | + | ||
| 3825 | +sub memmove { | ||
| 3826 | + unimpl "memmove() is C-specific, use = instead"; | ||
| 3827 | +} | ||
| 3828 | + | ||
| 3829 | +sub memset { | ||
| 3830 | + unimpl "memset() is C-specific, use x instead"; | ||
| 3831 | +} | ||
| 3832 | + | ||
| 3833 | +sub strcat { | ||
| 3834 | + unimpl "strcat() is C-specific, use .= instead"; | ||
| 3835 | +} | ||
| 3836 | + | ||
| 3837 | +sub strchr { | ||
| 3838 | + unimpl "strchr() is C-specific, use index() instead"; | ||
| 3839 | +} | ||
| 3840 | + | ||
| 3841 | +sub strcmp { | ||
| 3842 | + unimpl "strcmp() is C-specific, use eq instead"; | ||
| 3843 | +} | ||
| 3844 | + | ||
| 3845 | +sub strcpy { | ||
| 3846 | + unimpl "strcpy() is C-specific, use = instead"; | ||
| 3847 | +} | ||
| 3848 | + | ||
| 3849 | +sub strcspn { | ||
| 3850 | + unimpl "strcspn() is C-specific, use regular expressions instead"; | ||
| 3851 | +} | ||
| 3852 | + | ||
| 3853 | +sub strerror { | ||
| 3854 | + usage "strerror(errno)" if @_ != 1; | ||
| 3855 | + local $! = $_[0]; | ||
| 3856 | + $! . ""; | ||
| 3857 | +} | ||
| 3858 | + | ||
| 3859 | +sub strlen { | ||
| 3860 | + unimpl "strlen() is C-specific, use length instead"; | ||
| 3861 | +} | ||
| 3862 | + | ||
| 3863 | +sub strncat { | ||
| 3864 | + unimpl "strncat() is C-specific, use .= instead"; | ||
| 3865 | +} | ||
| 3866 | + | ||
| 3867 | +sub strncmp { | ||
| 3868 | + unimpl "strncmp() is C-specific, use eq instead"; | ||
| 3869 | +} | ||
| 3870 | + | ||
| 3871 | +sub strncpy { | ||
| 3872 | + unimpl "strncpy() is C-specific, use = instead"; | ||
| 3873 | +} | ||
| 3874 | + | ||
| 3875 | +sub strpbrk { | ||
| 3876 | + unimpl "strpbrk() is C-specific, stopped"; | ||
| 3877 | +} | ||
| 3878 | + | ||
| 3879 | +sub strrchr { | ||
| 3880 | + unimpl "strrchr() is C-specific, use rindex() instead"; | ||
| 3881 | +} | ||
| 3882 | + | ||
| 3883 | +sub strspn { | ||
| 3884 | + unimpl "strspn() is C-specific, stopped"; | ||
| 3885 | +} | ||
| 3886 | + | ||
| 3887 | +sub strstr { | ||
| 3888 | + usage "strstr(big, little)" if @_ != 2; | ||
| 3889 | + CORE::index($_[0], $_[1]); | ||
| 3890 | +} | ||
| 3891 | + | ||
| 3892 | +sub strtok { | ||
| 3893 | + unimpl "strtok() is C-specific, stopped"; | ||
| 3894 | +} | ||
| 3895 | + | ||
| 3896 | +sub chmod { | ||
| 3897 | + usage "chmod(mode, filename)" if @_ != 2; | ||
| 3898 | + CORE::chmod($_[0], $_[1]); | ||
| 3899 | +} | ||
| 3900 | + | ||
| 3901 | +sub fstat { | ||
| 3902 | + usage "fstat(fd)" if @_ != 1; | ||
| 3903 | + local *TMP; | ||
| 3904 | + CORE::open(TMP, "<&$_[0]"); # Gross. | ||
| 3905 | + my @l = CORE::stat(TMP); | ||
| 3906 | + CORE::close(TMP); | ||
| 3907 | + @l; | ||
| 3908 | +} | ||
| 3909 | + | ||
| 3910 | +sub mkdir { | ||
| 3911 | + usage "mkdir(directoryname, mode)" if @_ != 2; | ||
| 3912 | + CORE::mkdir($_[0], $_[1]); | ||
| 3913 | +} | ||
| 3914 | + | ||
| 3915 | +sub stat { | ||
| 3916 | + usage "stat(filename)" if @_ != 1; | ||
| 3917 | + CORE::stat($_[0]); | ||
| 3918 | +} | ||
| 3919 | + | ||
| 3920 | +sub umask { | ||
| 3921 | + usage "umask(mask)" if @_ != 1; | ||
| 3922 | + CORE::umask($_[0]); | ||
| 3923 | +} | ||
| 3924 | + | ||
| 3925 | +sub wait { | ||
| 3926 | + usage "wait()" if @_ != 0; | ||
| 3927 | + CORE::wait(); | ||
| 3928 | +} | ||
| 3929 | + | ||
| 3930 | +sub waitpid { | ||
| 3931 | + usage "waitpid(pid, options)" if @_ != 2; | ||
| 3932 | + CORE::waitpid($_[0], $_[1]); | ||
| 3933 | +} | ||
| 3934 | + | ||
| 3935 | +sub gmtime { | ||
| 3936 | + usage "gmtime(time)" if @_ != 1; | ||
| 3937 | + CORE::gmtime($_[0]); | ||
| 3938 | +} | ||
| 3939 | + | ||
| 3940 | +sub localtime { | ||
| 3941 | + usage "localtime(time)" if @_ != 1; | ||
| 3942 | + CORE::localtime($_[0]); | ||
| 3943 | +} | ||
| 3944 | + | ||
| 3945 | +sub time { | ||
| 3946 | + usage "time()" if @_ != 0; | ||
| 3947 | + CORE::time; | ||
| 3948 | +} | ||
| 3949 | + | ||
| 3950 | +sub alarm { | ||
| 3951 | + usage "alarm(seconds)" if @_ != 1; | ||
| 3952 | + CORE::alarm($_[0]); | ||
| 3953 | +} | ||
| 3954 | + | ||
| 3955 | +sub chdir { | ||
| 3956 | + usage "chdir(directory)" if @_ != 1; | ||
| 3957 | + CORE::chdir($_[0]); | ||
| 3958 | +} | ||
| 3959 | + | ||
| 3960 | +sub chown { | ||
| 3961 | + usage "chown(uid, gid, filename)" if @_ != 3; | ||
| 3962 | + CORE::chown($_[0], $_[1], $_[2]); | ||
| 3963 | +} | ||
| 3964 | + | ||
| 3965 | +sub execl { | ||
| 3966 | + unimpl "execl() is C-specific, stopped"; | ||
| 3967 | +} | ||
| 3968 | + | ||
| 3969 | +sub execle { | ||
| 3970 | + unimpl "execle() is C-specific, stopped"; | ||
| 3971 | +} | ||
| 3972 | + | ||
| 3973 | +sub execlp { | ||
| 3974 | + unimpl "execlp() is C-specific, stopped"; | ||
| 3975 | +} | ||
| 3976 | + | ||
| 3977 | +sub execv { | ||
| 3978 | + unimpl "execv() is C-specific, stopped"; | ||
| 3979 | +} | ||
| 3980 | + | ||
| 3981 | +sub execve { | ||
| 3982 | + unimpl "execve() is C-specific, stopped"; | ||
| 3983 | +} | ||
| 3984 | + | ||
| 3985 | +sub execvp { | ||
| 3986 | + unimpl "execvp() is C-specific, stopped"; | ||
| 3987 | +} | ||
| 3988 | + | ||
| 3989 | +sub fork { | ||
| 3990 | + usage "fork()" if @_ != 0; | ||
| 3991 | + CORE::fork; | ||
| 3992 | +} | ||
| 3993 | + | ||
| 3994 | +sub getegid { | ||
| 3995 | + usage "getegid()" if @_ != 0; | ||
| 3996 | + $) + 0; | ||
| 3997 | +} | ||
| 3998 | + | ||
| 3999 | +sub geteuid { | ||
| 4000 | + usage "geteuid()" if @_ != 0; | ||
| 4001 | + $> + 0; | ||
| 4002 | +} | ||
| 4003 | + | ||
| 4004 | +sub getgid { | ||
| 4005 | + usage "getgid()" if @_ != 0; | ||
| 4006 | + $( + 0; | ||
| 4007 | +} | ||
| 4008 | + | ||
| 4009 | +sub getgroups { | ||
| 4010 | + usage "getgroups()" if @_ != 0; | ||
| 4011 | + my %seen; | ||
| 4012 | + grep(!$seen{$_}++, split(' ', $) )); | ||
| 4013 | +} | ||
| 4014 | + | ||
| 4015 | +sub getlogin { | ||
| 4016 | + usage "getlogin()" if @_ != 0; | ||
| 4017 | + CORE::getlogin(); | ||
| 4018 | +} | ||
| 4019 | + | ||
| 4020 | +sub getpgrp { | ||
| 4021 | + usage "getpgrp()" if @_ != 0; | ||
| 4022 | + CORE::getpgrp; | ||
| 4023 | +} | ||
| 4024 | + | ||
| 4025 | +sub getpid { | ||
| 4026 | + usage "getpid()" if @_ != 0; | ||
| 4027 | + $$; | ||
| 4028 | +} | ||
| 4029 | + | ||
| 4030 | +sub getppid { | ||
| 4031 | + usage "getppid()" if @_ != 0; | ||
| 4032 | + CORE::getppid; | ||
| 4033 | +} | ||
| 4034 | + | ||
| 4035 | +sub getuid { | ||
| 4036 | + usage "getuid()" if @_ != 0; | ||
| 4037 | + $<; | ||
| 4038 | +} | ||
| 4039 | + | ||
| 4040 | +sub isatty { | ||
| 4041 | + usage "isatty(filehandle)" if @_ != 1; | ||
| 4042 | + -t $_[0]; | ||
| 4043 | +} | ||
| 4044 | + | ||
| 4045 | +sub link { | ||
| 4046 | + usage "link(oldfilename, newfilename)" if @_ != 2; | ||
| 4047 | + CORE::link($_[0], $_[1]); | ||
| 4048 | +} | ||
| 4049 | + | ||
| 4050 | +sub rmdir { | ||
| 4051 | + usage "rmdir(directoryname)" if @_ != 1; | ||
| 4052 | + CORE::rmdir($_[0]); | ||
| 4053 | +} | ||
| 4054 | + | ||
| 4055 | +sub setbuf { | ||
| 4056 | + redef "IO::Handle::setbuf()"; | ||
| 4057 | +} | ||
| 4058 | + | ||
| 4059 | +sub setvbuf { | ||
| 4060 | + redef "IO::Handle::setvbuf()"; | ||
| 4061 | +} | ||
| 4062 | + | ||
| 4063 | +sub sleep { | ||
| 4064 | + usage "sleep(seconds)" if @_ != 1; | ||
| 4065 | + $_[0] - CORE::sleep($_[0]); | ||
| 4066 | +} | ||
| 4067 | + | ||
| 4068 | +sub unlink { | ||
| 4069 | + usage "unlink(filename)" if @_ != 1; | ||
| 4070 | + CORE::unlink($_[0]); | ||
| 4071 | +} | ||
| 4072 | + | ||
| 4073 | +sub utime { | ||
| 4074 | + usage "utime(filename, atime, mtime)" if @_ != 3; | ||
| 4075 | + CORE::utime($_[1], $_[2], $_[0]); | ||
| 4076 | +} | ||
| 4077 | + | ||
| 4078 | +sub load_imports { | ||
| 4079 | +%EXPORT_TAGS = ( | ||
| 4080 | + | ||
| 4081 | + assert_h => [qw(assert NDEBUG)], | ||
| 4082 | + | ||
| 4083 | + ctype_h => [qw(isalnum isalpha iscntrl isdigit isgraph islower | ||
| 4084 | + isprint ispunct isspace isupper isxdigit tolower toupper)], | ||
| 4085 | + | ||
| 4086 | + dirent_h => [], | ||
| 4087 | + | ||
| 4088 | + errno_h => [qw(E2BIG EACCES EADDRINUSE EADDRNOTAVAIL EAFNOSUPPORT | ||
| 4089 | + EAGAIN EALREADY EBADF EBUSY ECHILD ECONNABORTED | ||
| 4090 | + ECONNREFUSED ECONNRESET EDEADLK EDESTADDRREQ EDOM EDQUOT | ||
| 4091 | + EEXIST EFAULT EFBIG EHOSTDOWN EHOSTUNREACH EINPROGRESS | ||
| 4092 | + EINTR EINVAL EIO EISCONN EISDIR ELOOP EMFILE EMLINK | ||
| 4093 | + EMSGSIZE ENAMETOOLONG ENETDOWN ENETRESET ENETUNREACH | ||
| 4094 | + ENFILE ENOBUFS ENODEV ENOENT ENOEXEC ENOLCK ENOMEM | ||
| 4095 | + ENOPROTOOPT ENOSPC ENOSYS ENOTBLK ENOTCONN ENOTDIR | ||
| 4096 | + ENOTEMPTY ENOTSOCK ENOTTY ENXIO EOPNOTSUPP EPERM | ||
| 4097 | + EPFNOSUPPORT EPIPE EPROCLIM EPROTONOSUPPORT EPROTOTYPE | ||
| 4098 | + ERANGE EREMOTE ERESTART EROFS ESHUTDOWN ESOCKTNOSUPPORT | ||
| 4099 | + ESPIPE ESRCH ESTALE ETIMEDOUT ETOOMANYREFS ETXTBSY | ||
| 4100 | + EUSERS EWOULDBLOCK EXDEV errno)], | ||
| 4101 | + | ||
| 4102 | + fcntl_h => [qw(FD_CLOEXEC F_DUPFD F_GETFD F_GETFL F_GETLK F_RDLCK | ||
| 4103 | + F_SETFD F_SETFL F_SETLK F_SETLKW F_UNLCK F_WRLCK | ||
| 4104 | + O_ACCMODE O_APPEND O_CREAT O_EXCL O_NOCTTY O_NONBLOCK | ||
| 4105 | + O_RDONLY O_RDWR O_TRUNC O_WRONLY | ||
| 4106 | + creat | ||
| 4107 | + SEEK_CUR SEEK_END SEEK_SET | ||
| 4108 | + S_IRGRP S_IROTH S_IRUSR S_IRWXG S_IRWXO S_IRWXU | ||
| 4109 | + S_ISBLK S_ISCHR S_ISDIR S_ISFIFO S_ISGID S_ISREG S_ISUID | ||
| 4110 | + S_IWGRP S_IWOTH S_IWUSR)], | ||
| 4111 | + | ||
| 4112 | + float_h => [qw(DBL_DIG DBL_EPSILON DBL_MANT_DIG | ||
| 4113 | + DBL_MAX DBL_MAX_10_EXP DBL_MAX_EXP | ||
| 4114 | + DBL_MIN DBL_MIN_10_EXP DBL_MIN_EXP | ||
| 4115 | + FLT_DIG FLT_EPSILON FLT_MANT_DIG | ||
| 4116 | + FLT_MAX FLT_MAX_10_EXP FLT_MAX_EXP | ||
| 4117 | + FLT_MIN FLT_MIN_10_EXP FLT_MIN_EXP | ||
| 4118 | + FLT_RADIX FLT_ROUNDS | ||
| 4119 | + LDBL_DIG LDBL_EPSILON LDBL_MANT_DIG | ||
| 4120 | + LDBL_MAX LDBL_MAX_10_EXP LDBL_MAX_EXP | ||
| 4121 | + LDBL_MIN LDBL_MIN_10_EXP LDBL_MIN_EXP)], | ||
| 4122 | + | ||
| 4123 | + grp_h => [], | ||
| 4124 | + | ||
| 4125 | + limits_h => [qw( ARG_MAX CHAR_BIT CHAR_MAX CHAR_MIN CHILD_MAX | ||
| 4126 | + INT_MAX INT_MIN LINK_MAX LONG_MAX LONG_MIN MAX_CANON | ||
| 4127 | + MAX_INPUT MB_LEN_MAX NAME_MAX NGROUPS_MAX OPEN_MAX | ||
| 4128 | + PATH_MAX PIPE_BUF SCHAR_MAX SCHAR_MIN SHRT_MAX SHRT_MIN | ||
| 4129 | + SSIZE_MAX STREAM_MAX TZNAME_MAX UCHAR_MAX UINT_MAX | ||
| 4130 | + ULONG_MAX USHRT_MAX _POSIX_ARG_MAX _POSIX_CHILD_MAX | ||
| 4131 | + _POSIX_LINK_MAX _POSIX_MAX_CANON _POSIX_MAX_INPUT | ||
| 4132 | + _POSIX_NAME_MAX _POSIX_NGROUPS_MAX _POSIX_OPEN_MAX | ||
| 4133 | + _POSIX_PATH_MAX _POSIX_PIPE_BUF _POSIX_SSIZE_MAX | ||
| 4134 | + _POSIX_STREAM_MAX _POSIX_TZNAME_MAX)], | ||
| 4135 | + | ||
| 4136 | + locale_h => [qw(LC_ALL LC_COLLATE LC_CTYPE LC_MESSAGES | ||
| 4137 | + LC_MONETARY LC_NUMERIC LC_TIME NULL | ||
| 4138 | + localeconv setlocale)], | ||
| 4139 | + | ||
| 4140 | + math_h => [qw(HUGE_VAL acos asin atan ceil cosh fabs floor fmod | ||
| 4141 | + frexp ldexp log10 modf pow sinh tan tanh)], | ||
| 4142 | + | ||
| 4143 | + pwd_h => [], | ||
| 4144 | + | ||
| 4145 | + setjmp_h => [qw(longjmp setjmp siglongjmp sigsetjmp)], | ||
| 4146 | + | ||
| 4147 | + signal_h => [qw(SA_NOCLDSTOP SA_NOCLDWAIT SA_NODEFER SA_ONSTACK | ||
| 4148 | + SA_RESETHAND SA_RESTART SA_SIGINFO SIGABRT SIGALRM | ||
| 4149 | + SIGCHLD SIGCONT SIGFPE SIGHUP SIGILL SIGINT SIGKILL | ||
| 4150 | + SIGPIPE %SIGRT SIGRTMIN SIGRTMAX SIGQUIT SIGSEGV SIGSTOP | ||
| 4151 | + SIGTERM SIGTSTP SIGTTIN SIGTTOU SIGUSR1 SIGUSR2 | ||
| 4152 | + SIG_BLOCK SIG_DFL SIG_ERR SIG_IGN SIG_SETMASK SIG_UNBLOCK | ||
| 4153 | + raise sigaction signal sigpending sigprocmask sigsuspend)], | ||
| 4154 | + | ||
| 4155 | + stdarg_h => [], | ||
| 4156 | + | ||
| 4157 | + stddef_h => [qw(NULL offsetof)], | ||
| 4158 | + | ||
| 4159 | + stdio_h => [qw(BUFSIZ EOF FILENAME_MAX L_ctermid L_cuserid | ||
| 4160 | + L_tmpname NULL SEEK_CUR SEEK_END SEEK_SET | ||
| 4161 | + STREAM_MAX TMP_MAX stderr stdin stdout | ||
| 4162 | + clearerr fclose fdopen feof ferror fflush fgetc fgetpos | ||
| 4163 | + fgets fopen fprintf fputc fputs fread freopen | ||
| 4164 | + fscanf fseek fsetpos ftell fwrite getchar gets | ||
| 4165 | + perror putc putchar puts remove rewind | ||
| 4166 | + scanf setbuf setvbuf sscanf tmpfile tmpnam | ||
| 4167 | + ungetc vfprintf vprintf vsprintf)], | ||
| 4168 | + | ||
| 4169 | + stdlib_h => [qw(EXIT_FAILURE EXIT_SUCCESS MB_CUR_MAX NULL RAND_MAX | ||
| 4170 | + abort atexit atof atoi atol bsearch calloc div | ||
| 4171 | + free getenv labs ldiv malloc mblen mbstowcs mbtowc | ||
| 4172 | + qsort realloc strtod strtol strtoul wcstombs wctomb)], | ||
| 4173 | + | ||
| 4174 | + string_h => [qw(NULL memchr memcmp memcpy memmove memset strcat | ||
| 4175 | + strchr strcmp strcoll strcpy strcspn strerror strlen | ||
| 4176 | + strncat strncmp strncpy strpbrk strrchr strspn strstr | ||
| 4177 | + strtok strxfrm)], | ||
| 4178 | + | ||
| 4179 | + sys_stat_h => [qw(S_IRGRP S_IROTH S_IRUSR S_IRWXG S_IRWXO S_IRWXU | ||
| 4180 | + S_ISBLK S_ISCHR S_ISDIR S_ISFIFO S_ISGID S_ISREG | ||
| 4181 | + S_ISUID S_IWGRP S_IWOTH S_IWUSR S_IXGRP S_IXOTH S_IXUSR | ||
| 4182 | + fstat mkfifo)], | ||
| 4183 | + | ||
| 4184 | + sys_times_h => [], | ||
| 4185 | + | ||
| 4186 | + sys_types_h => [], | ||
| 4187 | + | ||
| 4188 | + sys_utsname_h => [qw(uname)], | ||
| 4189 | + | ||
| 4190 | + sys_wait_h => [qw(WEXITSTATUS WIFEXITED WIFSIGNALED WIFSTOPPED | ||
| 4191 | + WNOHANG WSTOPSIG WTERMSIG WUNTRACED)], | ||
| 4192 | + | ||
| 4193 | + termios_h => [qw( B0 B110 B1200 B134 B150 B1800 B19200 B200 B2400 | ||
| 4194 | + B300 B38400 B4800 B50 B600 B75 B9600 BRKINT CLOCAL | ||
| 4195 | + CREAD CS5 CS6 CS7 CS8 CSIZE CSTOPB ECHO ECHOE ECHOK | ||
| 4196 | + ECHONL HUPCL ICANON ICRNL IEXTEN IGNBRK IGNCR IGNPAR | ||
| 4197 | + INLCR INPCK ISIG ISTRIP IXOFF IXON NCCS NOFLSH OPOST | ||
| 4198 | + PARENB PARMRK PARODD TCIFLUSH TCIOFF TCIOFLUSH TCION | ||
| 4199 | + TCOFLUSH TCOOFF TCOON TCSADRAIN TCSAFLUSH TCSANOW | ||
| 4200 | + TOSTOP VEOF VEOL VERASE VINTR VKILL VMIN VQUIT VSTART | ||
| 4201 | + VSTOP VSUSP VTIME | ||
| 4202 | + cfgetispeed cfgetospeed cfsetispeed cfsetospeed tcdrain | ||
| 4203 | + tcflow tcflush tcgetattr tcsendbreak tcsetattr )], | ||
| 4204 | + | ||
| 4205 | + time_h => [qw(CLK_TCK CLOCKS_PER_SEC NULL asctime clock ctime | ||
| 4206 | + difftime mktime strftime tzset tzname)], | ||
| 4207 | + | ||
| 4208 | + unistd_h => [qw(F_OK NULL R_OK SEEK_CUR SEEK_END SEEK_SET | ||
| 4209 | + STDERR_FILENO STDIN_FILENO STDOUT_FILENO W_OK X_OK | ||
| 4210 | + _PC_CHOWN_RESTRICTED _PC_LINK_MAX _PC_MAX_CANON | ||
| 4211 | + _PC_MAX_INPUT _PC_NAME_MAX _PC_NO_TRUNC _PC_PATH_MAX | ||
| 4212 | + _PC_PIPE_BUF _PC_VDISABLE _POSIX_CHOWN_RESTRICTED | ||
| 4213 | + _POSIX_JOB_CONTROL _POSIX_NO_TRUNC _POSIX_SAVED_IDS | ||
| 4214 | + _POSIX_VDISABLE _POSIX_VERSION _SC_ARG_MAX | ||
| 4215 | + _SC_CHILD_MAX _SC_CLK_TCK _SC_JOB_CONTROL | ||
| 4216 | + _SC_NGROUPS_MAX _SC_OPEN_MAX _SC_PAGESIZE _SC_SAVED_IDS | ||
| 4217 | + _SC_STREAM_MAX _SC_TZNAME_MAX _SC_VERSION | ||
| 4218 | + _exit access ctermid cuserid | ||
| 4219 | + dup2 dup execl execle execlp execv execve execvp | ||
| 4220 | + fpathconf fsync getcwd getegid geteuid getgid getgroups | ||
| 4221 | + getpid getuid isatty lseek pathconf pause setgid setpgid | ||
| 4222 | + setsid setuid sysconf tcgetpgrp tcsetpgrp ttyname)], | ||
| 4223 | + | ||
| 4224 | + utime_h => [], | ||
| 4225 | + | ||
| 4226 | +); | ||
| 4227 | + | ||
| 4228 | +# Exporter::export_tags(); | ||
| 4229 | +{ | ||
| 4230 | + # De-duplicate the export list: | ||
| 4231 | + my %export; | ||
| 4232 | + @export{map {@$_} values %EXPORT_TAGS} = (); | ||
| 4233 | + # Doing the de-dup with a temporary hash has the advantage that the SVs in | ||
| 4234 | + # @EXPORT are actually shared hash key sacalars, which will save some memory. | ||
| 4235 | + push @EXPORT, keys %export; | ||
| 4236 | +} | ||
| 4237 | + | ||
| 4238 | +@EXPORT_OK = qw( | ||
| 4239 | + abs | ||
| 4240 | + alarm | ||
| 4241 | + atan2 | ||
| 4242 | + chdir | ||
| 4243 | + chmod | ||
| 4244 | + chown | ||
| 4245 | + close | ||
| 4246 | + closedir | ||
| 4247 | + cos | ||
| 4248 | + exit | ||
| 4249 | + exp | ||
| 4250 | + fcntl | ||
| 4251 | + fileno | ||
| 4252 | + fork | ||
| 4253 | + getc | ||
| 4254 | + getgrgid | ||
| 4255 | + getgrnam | ||
| 4256 | + getlogin | ||
| 4257 | + getpgrp | ||
| 4258 | + getppid | ||
| 4259 | + getpwnam | ||
| 4260 | + getpwuid | ||
| 4261 | + gmtime | ||
| 4262 | + isatty | ||
| 4263 | + kill | ||
| 4264 | + lchown | ||
| 4265 | + link | ||
| 4266 | + localtime | ||
| 4267 | + log | ||
| 4268 | + mkdir | ||
| 4269 | + nice | ||
| 4270 | + open | ||
| 4271 | + opendir | ||
| 4272 | + pipe | ||
| 4273 | + printf | ||
| 4274 | + rand | ||
| 4275 | + read | ||
| 4276 | + readdir | ||
| 4277 | + rename | ||
| 4278 | + rewinddir | ||
| 4279 | + rmdir | ||
| 4280 | + sin | ||
| 4281 | + sleep | ||
| 4282 | + sprintf | ||
| 4283 | + sqrt | ||
| 4284 | + srand | ||
| 4285 | + stat | ||
| 4286 | + system | ||
| 4287 | + time | ||
| 4288 | + times | ||
| 4289 | + umask | ||
| 4290 | + unlink | ||
| 4291 | + utime | ||
| 4292 | + wait | ||
| 4293 | + waitpid | ||
| 4294 | + write | ||
| 4295 | +); | ||
| 4296 | + | ||
| 4297 | +require Exporter; | ||
| 4298 | +} | ||
| 4299 | + | ||
| 4300 | +package POSIX::SigAction; | ||
| 4301 | + | ||
| 4302 | +sub new { bless {HANDLER => $_[1], MASK => $_[2], FLAGS => $_[3] || 0, SAFE => 0}, $_[0] } | ||
| 4303 | +sub handler { $_[0]->{HANDLER} = $_[1] if @_ > 1; $_[0]->{HANDLER} }; | ||
| 4304 | +sub mask { $_[0]->{MASK} = $_[1] if @_ > 1; $_[0]->{MASK} }; | ||
| 4305 | +sub flags { $_[0]->{FLAGS} = $_[1] if @_ > 1; $_[0]->{FLAGS} }; | ||
| 4306 | +sub safe { $_[0]->{SAFE} = $_[1] if @_ > 1; $_[0]->{SAFE} }; | ||
| 4307 | + | ||
| 4308 | +package POSIX::SigRt; | ||
| 4309 | + | ||
| 4310 | + | ||
| 4311 | +sub _init { | ||
| 4312 | + $_SIGRTMIN = &POSIX::SIGRTMIN; | ||
| 4313 | + $_SIGRTMAX = &POSIX::SIGRTMAX; | ||
| 4314 | + $_sigrtn = $_SIGRTMAX - $_SIGRTMIN; | ||
| 4315 | +} | ||
| 4316 | + | ||
| 4317 | +sub _croak { | ||
| 4318 | + &_init unless defined $_sigrtn; | ||
| 4319 | + die "POSIX::SigRt not available" unless defined $_sigrtn && $_sigrtn > 0; | ||
| 4320 | +} | ||
| 4321 | + | ||
| 4322 | +sub _getsig { | ||
| 4323 | + &_croak; | ||
| 4324 | + my $rtsig = $_[0]; | ||
| 4325 | + # Allow (SIGRT)?MIN( + n)?, a common idiom when doing these things in C. | ||
| 4326 | + $rtsig = $_SIGRTMIN + ($1 || 0) | ||
| 4327 | + if $rtsig =~ /^(?:(?:SIG)?RT)?MIN(\s*\+\s*(\d+))?$/; | ||
| 4328 | + return $rtsig; | ||
| 4329 | +} | ||
| 4330 | + | ||
| 4331 | +sub _exist { | ||
| 4332 | + my $rtsig = _getsig($_[1]); | ||
| 4333 | + my $ok = $rtsig >= $_SIGRTMIN && $rtsig <= $_SIGRTMAX; | ||
| 4334 | + ($rtsig, $ok); | ||
| 4335 | +} | ||
| 4336 | + | ||
| 4337 | +sub _check { | ||
| 4338 | + my ($rtsig, $ok) = &_exist; | ||
| 4339 | + die "No POSIX::SigRt signal $_[1] (valid range SIGRTMIN..SIGRTMAX, or $_SIGRTMIN..$_SIGRTMAX)" | ||
| 4340 | + unless $ok; | ||
| 4341 | + return $rtsig; | ||
| 4342 | +} | ||
| 4343 | + | ||
| 4344 | +sub new { | ||
| 4345 | + my ($rtsig, $handler, $flags) = @_; | ||
| 4346 | + my $sigset = POSIX::SigSet->new($rtsig); | ||
| 4347 | + my $sigact = POSIX::SigAction->new($handler, | ||
| 4348 | + $sigset, | ||
| 4349 | + $flags); | ||
| 4350 | + POSIX::sigaction($rtsig, $sigact); | ||
| 4351 | +} | ||
| 4352 | + | ||
| 4353 | +sub EXISTS { &_exist } | ||
| 4354 | +sub FETCH { my $rtsig = &_check; | ||
| 4355 | + my $oa = POSIX::SigAction->new(); | ||
| 4356 | + POSIX::sigaction($rtsig, undef, $oa); | ||
| 4357 | + return $oa->{HANDLER} } | ||
| 4358 | +sub STORE { my $rtsig = &_check; new($rtsig, $_[2], $SIGACTION_FLAGS) } | ||
| 4359 | +sub DELETE { delete $SIG{ &_check } } | ||
| 4360 | +sub CLEAR { &_exist; delete @SIG{ &POSIX::SIGRTMIN .. &POSIX::SIGRTMAX } } | ||
| 4361 | +sub SCALAR { &_croak; $_sigrtn + 1 } | ||
| 4362 | diff --git a/ext/POSIX/lib/POSIX.pod b/ext/POSIX/lib/POSIX.pod | ||
| 4363 | new file mode 100644 | ||
| 4364 | index 0000000..64852e9 | ||
| 4365 | --- /dev/null | ||
| 4366 | +++ b/ext/POSIX/lib/POSIX.pod | ||
| 4367 | @@ -0,0 +1,2218 @@ | ||
| 4368 | +=head1 NAME | ||
| 4369 | + | ||
| 4370 | +POSIX - Perl interface to IEEE Std 1003.1 | ||
| 4371 | + | ||
| 4372 | +=head1 SYNOPSIS | ||
| 4373 | + | ||
| 4374 | + use POSIX; | ||
| 4375 | + use POSIX qw(setsid); | ||
| 4376 | + use POSIX qw(:errno_h :fcntl_h); | ||
| 4377 | + | ||
| 4378 | + printf "EINTR is %d\n", EINTR; | ||
| 4379 | + | ||
| 4380 | + $sess_id = POSIX::setsid(); | ||
| 4381 | + | ||
| 4382 | + $fd = POSIX::open($path, O_CREAT|O_EXCL|O_WRONLY, 0644); | ||
| 4383 | + # note: that's a filedescriptor, *NOT* a filehandle | ||
| 4384 | + | ||
| 4385 | +=head1 DESCRIPTION | ||
| 4386 | + | ||
| 4387 | +The POSIX module permits you to access all (or nearly all) the standard | ||
| 4388 | +POSIX 1003.1 identifiers. Many of these identifiers have been given Perl-ish | ||
| 4389 | +interfaces. | ||
| 4390 | + | ||
| 4391 | +I<Everything is exported by default> with the exception of any POSIX | ||
| 4392 | +functions with the same name as a built-in Perl function, such as | ||
| 4393 | +C<abs>, C<alarm>, C<rmdir>, C<write>, etc.., which will be exported | ||
| 4394 | +only if you ask for them explicitly. This is an unfortunate backwards | ||
| 4395 | +compatibility feature. You can stop the exporting by saying C<use | ||
| 4396 | +POSIX ()> and then use the fully qualified names (ie. C<POSIX::SEEK_END>). | ||
| 4397 | + | ||
| 4398 | +This document gives a condensed list of the features available in the POSIX | ||
| 4399 | +module. Consult your operating system's manpages for general information on | ||
| 4400 | +most features. Consult L<perlfunc> for functions which are noted as being | ||
| 4401 | +identical to Perl's builtin functions. | ||
| 4402 | + | ||
| 4403 | +The first section describes POSIX functions from the 1003.1 specification. | ||
| 4404 | +The second section describes some classes for signal objects, TTY objects, | ||
| 4405 | +and other miscellaneous objects. The remaining sections list various | ||
| 4406 | +constants and macros in an organization which roughly follows IEEE Std | ||
| 4407 | +1003.1b-1993. | ||
| 4408 | + | ||
| 4409 | +=head1 NOTE | ||
| 4410 | + | ||
| 4411 | +The POSIX module is probably the most complex Perl module supplied with | ||
| 4412 | +the standard distribution. It incorporates autoloading, namespace games, | ||
| 4413 | +and dynamic loading of code that's in Perl, C, or both. It's a great | ||
| 4414 | +source of wisdom. | ||
| 4415 | + | ||
| 4416 | +=head1 CAVEATS | ||
| 4417 | + | ||
| 4418 | +A few functions are not implemented because they are C specific. If you | ||
| 4419 | +attempt to call these, they will print a message telling you that they | ||
| 4420 | +aren't implemented, and suggest using the Perl equivalent should one | ||
| 4421 | +exist. For example, trying to access the setjmp() call will elicit the | ||
| 4422 | +message "setjmp() is C-specific: use eval {} instead". | ||
| 4423 | + | ||
| 4424 | +Furthermore, some evil vendors will claim 1003.1 compliance, but in fact | ||
| 4425 | +are not so: they will not pass the PCTS (POSIX Compliance Test Suites). | ||
| 4426 | +For example, one vendor may not define EDEADLK, or the semantics of the | ||
| 4427 | +errno values set by open(2) might not be quite right. Perl does not | ||
| 4428 | +attempt to verify POSIX compliance. That means you can currently | ||
| 4429 | +successfully say "use POSIX", and then later in your program you find | ||
| 4430 | +that your vendor has been lax and there's no usable ICANON macro after | ||
| 4431 | +all. This could be construed to be a bug. | ||
| 4432 | + | ||
| 4433 | +=head1 FUNCTIONS | ||
| 4434 | + | ||
| 4435 | +=over 8 | ||
| 4436 | + | ||
| 4437 | +=item _exit | ||
| 4438 | + | ||
| 4439 | +This is identical to the C function C<_exit()>. It exits the program | ||
| 4440 | +immediately which means among other things buffered I/O is B<not> flushed. | ||
| 4441 | + | ||
| 4442 | +Note that when using threads and in Linux this is B<not> a good way to | ||
| 4443 | +exit a thread because in Linux processes and threads are kind of the | ||
| 4444 | +same thing (Note: while this is the situation in early 2003 there are | ||
| 4445 | +projects under way to have threads with more POSIXly semantics in Linux). | ||
| 4446 | +If you want not to return from a thread, detach the thread. | ||
| 4447 | + | ||
| 4448 | +=item abort | ||
| 4449 | + | ||
| 4450 | +This is identical to the C function C<abort()>. It terminates the | ||
| 4451 | +process with a C<SIGABRT> signal unless caught by a signal handler or | ||
| 4452 | +if the handler does not return normally (it e.g. does a C<longjmp>). | ||
| 4453 | + | ||
| 4454 | +=item abs | ||
| 4455 | + | ||
| 4456 | +This is identical to Perl's builtin C<abs()> function, returning | ||
| 4457 | +the absolute value of its numerical argument. | ||
| 4458 | + | ||
| 4459 | +=item access | ||
| 4460 | + | ||
| 4461 | +Determines the accessibility of a file. | ||
| 4462 | + | ||
| 4463 | + if( POSIX::access( "/", &POSIX::R_OK ) ){ | ||
| 4464 | + print "have read permission\n"; | ||
| 4465 | + } | ||
| 4466 | + | ||
| 4467 | +Returns C<undef> on failure. Note: do not use C<access()> for | ||
| 4468 | +security purposes. Between the C<access()> call and the operation | ||
| 4469 | +you are preparing for the permissions might change: a classic | ||
| 4470 | +I<race condition>. | ||
| 4471 | + | ||
| 4472 | +=item acos | ||
| 4473 | + | ||
| 4474 | +This is identical to the C function C<acos()>, returning | ||
| 4475 | +the arcus cosine of its numerical argument. See also L<Math::Trig>. | ||
| 4476 | + | ||
| 4477 | +=item alarm | ||
| 4478 | + | ||
| 4479 | +This is identical to Perl's builtin C<alarm()> function, | ||
| 4480 | +either for arming or disarming the C<SIGARLM> timer. | ||
| 4481 | + | ||
| 4482 | +=item asctime | ||
| 4483 | + | ||
| 4484 | +This is identical to the C function C<asctime()>. It returns | ||
| 4485 | +a string of the form | ||
| 4486 | + | ||
| 4487 | + "Fri Jun 2 18:22:13 2000\n\0" | ||
| 4488 | + | ||
| 4489 | +and it is called thusly | ||
| 4490 | + | ||
| 4491 | + $asctime = asctime($sec, $min, $hour, $mday, $mon, $year, | ||
| 4492 | + $wday, $yday, $isdst); | ||
| 4493 | + | ||
| 4494 | +The C<$mon> is zero-based: January equals C<0>. The C<$year> is | ||
| 4495 | +1900-based: 2001 equals C<101>. C<$wday> and C<$yday> default to zero | ||
| 4496 | +(and are usually ignored anyway), and C<$isdst> defaults to -1. | ||
| 4497 | + | ||
| 4498 | +=item asin | ||
| 4499 | + | ||
| 4500 | +This is identical to the C function C<asin()>, returning | ||
| 4501 | +the arcus sine of its numerical argument. See also L<Math::Trig>. | ||
| 4502 | + | ||
| 4503 | +=item assert | ||
| 4504 | + | ||
| 4505 | +Unimplemented, but you can use L<perlfunc/die> and the L<Carp> module | ||
| 4506 | +to achieve similar things. | ||
| 4507 | + | ||
| 4508 | +=item atan | ||
| 4509 | + | ||
| 4510 | +This is identical to the C function C<atan()>, returning the | ||
| 4511 | +arcus tangent of its numerical argument. See also L<Math::Trig>. | ||
| 4512 | + | ||
| 4513 | +=item atan2 | ||
| 4514 | + | ||
| 4515 | +This is identical to Perl's builtin C<atan2()> function, returning | ||
| 4516 | +the arcus tangent defined by its two numerical arguments, the I<y> | ||
| 4517 | +coordinate and the I<x> coordinate. See also L<Math::Trig>. | ||
| 4518 | + | ||
| 4519 | +=item atexit | ||
| 4520 | + | ||
| 4521 | +atexit() is C-specific: use C<END {}> instead, see L<perlsub>. | ||
| 4522 | + | ||
| 4523 | +=item atof | ||
| 4524 | + | ||
| 4525 | +atof() is C-specific. Perl converts strings to numbers transparently. | ||
| 4526 | +If you need to force a scalar to a number, add a zero to it. | ||
| 4527 | + | ||
| 4528 | +=item atoi | ||
| 4529 | + | ||
| 4530 | +atoi() is C-specific. Perl converts strings to numbers transparently. | ||
| 4531 | +If you need to force a scalar to a number, add a zero to it. | ||
| 4532 | +If you need to have just the integer part, see L<perlfunc/int>. | ||
| 4533 | + | ||
| 4534 | +=item atol | ||
| 4535 | + | ||
| 4536 | +atol() is C-specific. Perl converts strings to numbers transparently. | ||
| 4537 | +If you need to force a scalar to a number, add a zero to it. | ||
| 4538 | +If you need to have just the integer part, see L<perlfunc/int>. | ||
| 4539 | + | ||
| 4540 | +=item bsearch | ||
| 4541 | + | ||
| 4542 | +bsearch() not supplied. For doing binary search on wordlists, | ||
| 4543 | +see L<Search::Dict>. | ||
| 4544 | + | ||
| 4545 | +=item calloc | ||
| 4546 | + | ||
| 4547 | +calloc() is C-specific. Perl does memory management transparently. | ||
| 4548 | + | ||
| 4549 | +=item ceil | ||
| 4550 | + | ||
| 4551 | +This is identical to the C function C<ceil()>, returning the smallest | ||
| 4552 | +integer value greater than or equal to the given numerical argument. | ||
| 4553 | + | ||
| 4554 | +=item chdir | ||
| 4555 | + | ||
| 4556 | +This is identical to Perl's builtin C<chdir()> function, allowing | ||
| 4557 | +one to change the working (default) directory, see L<perlfunc/chdir>. | ||
| 4558 | + | ||
| 4559 | +=item chmod | ||
| 4560 | + | ||
| 4561 | +This is identical to Perl's builtin C<chmod()> function, allowing | ||
| 4562 | +one to change file and directory permissions, see L<perlfunc/chmod>. | ||
| 4563 | + | ||
| 4564 | +=item chown | ||
| 4565 | + | ||
| 4566 | +This is identical to Perl's builtin C<chown()> function, allowing one | ||
| 4567 | +to change file and directory owners and groups, see L<perlfunc/chown>. | ||
| 4568 | + | ||
| 4569 | +=item clearerr | ||
| 4570 | + | ||
| 4571 | +Use the method C<IO::Handle::clearerr()> instead, to reset the error | ||
| 4572 | +state (if any) and EOF state (if any) of the given stream. | ||
| 4573 | + | ||
| 4574 | +=item clock | ||
| 4575 | + | ||
| 4576 | +This is identical to the C function C<clock()>, returning the | ||
| 4577 | +amount of spent processor time in microseconds. | ||
| 4578 | + | ||
| 4579 | +=item close | ||
| 4580 | + | ||
| 4581 | +Close the file. This uses file descriptors such as those obtained by calling | ||
| 4582 | +C<POSIX::open>. | ||
| 4583 | + | ||
| 4584 | + $fd = POSIX::open( "foo", &POSIX::O_RDONLY ); | ||
| 4585 | + POSIX::close( $fd ); | ||
| 4586 | + | ||
| 4587 | +Returns C<undef> on failure. | ||
| 4588 | + | ||
| 4589 | +See also L<perlfunc/close>. | ||
| 4590 | + | ||
| 4591 | +=item closedir | ||
| 4592 | + | ||
| 4593 | +This is identical to Perl's builtin C<closedir()> function for closing | ||
| 4594 | +a directory handle, see L<perlfunc/closedir>. | ||
| 4595 | + | ||
| 4596 | +=item cos | ||
| 4597 | + | ||
| 4598 | +This is identical to Perl's builtin C<cos()> function, for returning | ||
| 4599 | +the cosine of its numerical argument, see L<perlfunc/cos>. | ||
| 4600 | +See also L<Math::Trig>. | ||
| 4601 | + | ||
| 4602 | +=item cosh | ||
| 4603 | + | ||
| 4604 | +This is identical to the C function C<cosh()>, for returning | ||
| 4605 | +the hyperbolic cosine of its numeric argument. See also L<Math::Trig>. | ||
| 4606 | + | ||
| 4607 | +=item creat | ||
| 4608 | + | ||
| 4609 | +Create a new file. This returns a file descriptor like the ones returned by | ||
| 4610 | +C<POSIX::open>. Use C<POSIX::close> to close the file. | ||
| 4611 | + | ||
| 4612 | + $fd = POSIX::creat( "foo", 0611 ); | ||
| 4613 | + POSIX::close( $fd ); | ||
| 4614 | + | ||
| 4615 | +See also L<perlfunc/sysopen> and its C<O_CREAT> flag. | ||
| 4616 | + | ||
| 4617 | +=item ctermid | ||
| 4618 | + | ||
| 4619 | +Generates the path name for the controlling terminal. | ||
| 4620 | + | ||
| 4621 | + $path = POSIX::ctermid(); | ||
| 4622 | + | ||
| 4623 | +=item ctime | ||
| 4624 | + | ||
| 4625 | +This is identical to the C function C<ctime()> and equivalent | ||
| 4626 | +to C<asctime(localtime(...))>, see L</asctime> and L</localtime>. | ||
| 4627 | + | ||
| 4628 | +=item cuserid | ||
| 4629 | + | ||
| 4630 | +Get the login name of the owner of the current process. | ||
| 4631 | + | ||
| 4632 | + $name = POSIX::cuserid(); | ||
| 4633 | + | ||
| 4634 | +=item difftime | ||
| 4635 | + | ||
| 4636 | +This is identical to the C function C<difftime()>, for returning | ||
| 4637 | +the time difference (in seconds) between two times (as returned | ||
| 4638 | +by C<time()>), see L</time>. | ||
| 4639 | + | ||
| 4640 | +=item div | ||
| 4641 | + | ||
| 4642 | +div() is C-specific, use L<perlfunc/int> on the usual C</> division and | ||
| 4643 | +the modulus C<%>. | ||
| 4644 | + | ||
| 4645 | +=item dup | ||
| 4646 | + | ||
| 4647 | +This is similar to the C function C<dup()>, for duplicating a file | ||
| 4648 | +descriptor. | ||
| 4649 | + | ||
| 4650 | +This uses file descriptors such as those obtained by calling | ||
| 4651 | +C<POSIX::open>. | ||
| 4652 | + | ||
| 4653 | +Returns C<undef> on failure. | ||
| 4654 | + | ||
| 4655 | +=item dup2 | ||
| 4656 | + | ||
| 4657 | +This is similar to the C function C<dup2()>, for duplicating a file | ||
| 4658 | +descriptor to an another known file descriptor. | ||
| 4659 | + | ||
| 4660 | +This uses file descriptors such as those obtained by calling | ||
| 4661 | +C<POSIX::open>. | ||
| 4662 | + | ||
| 4663 | +Returns C<undef> on failure. | ||
| 4664 | + | ||
| 4665 | +=item errno | ||
| 4666 | + | ||
| 4667 | +Returns the value of errno. | ||
| 4668 | + | ||
| 4669 | + $errno = POSIX::errno(); | ||
| 4670 | + | ||
| 4671 | +This identical to the numerical values of the C<$!>, see L<perlvar/$ERRNO>. | ||
| 4672 | + | ||
| 4673 | +=item execl | ||
| 4674 | + | ||
| 4675 | +execl() is C-specific, see L<perlfunc/exec>. | ||
| 4676 | + | ||
| 4677 | +=item execle | ||
| 4678 | + | ||
| 4679 | +execle() is C-specific, see L<perlfunc/exec>. | ||
| 4680 | + | ||
| 4681 | +=item execlp | ||
| 4682 | + | ||
| 4683 | +execlp() is C-specific, see L<perlfunc/exec>. | ||
| 4684 | + | ||
| 4685 | +=item execv | ||
| 4686 | + | ||
| 4687 | +execv() is C-specific, see L<perlfunc/exec>. | ||
| 4688 | + | ||
| 4689 | +=item execve | ||
| 4690 | + | ||
| 4691 | +execve() is C-specific, see L<perlfunc/exec>. | ||
| 4692 | + | ||
| 4693 | +=item execvp | ||
| 4694 | + | ||
| 4695 | +execvp() is C-specific, see L<perlfunc/exec>. | ||
| 4696 | + | ||
| 4697 | +=item exit | ||
| 4698 | + | ||
| 4699 | +This is identical to Perl's builtin C<exit()> function for exiting the | ||
| 4700 | +program, see L<perlfunc/exit>. | ||
| 4701 | + | ||
| 4702 | +=item exp | ||
| 4703 | + | ||
| 4704 | +This is identical to Perl's builtin C<exp()> function for | ||
| 4705 | +returning the exponent (I<e>-based) of the numerical argument, | ||
| 4706 | +see L<perlfunc/exp>. | ||
| 4707 | + | ||
| 4708 | +=item fabs | ||
| 4709 | + | ||
| 4710 | +This is identical to Perl's builtin C<abs()> function for returning | ||
| 4711 | +the absolute value of the numerical argument, see L<perlfunc/abs>. | ||
| 4712 | + | ||
| 4713 | +=item fclose | ||
| 4714 | + | ||
| 4715 | +Use method C<IO::Handle::close()> instead, or see L<perlfunc/close>. | ||
| 4716 | + | ||
| 4717 | +=item fcntl | ||
| 4718 | + | ||
| 4719 | +This is identical to Perl's builtin C<fcntl()> function, | ||
| 4720 | +see L<perlfunc/fcntl>. | ||
| 4721 | + | ||
| 4722 | +=item fdopen | ||
| 4723 | + | ||
| 4724 | +Use method C<IO::Handle::new_from_fd()> instead, or see L<perlfunc/open>. | ||
| 4725 | + | ||
| 4726 | +=item feof | ||
| 4727 | + | ||
| 4728 | +Use method C<IO::Handle::eof()> instead, or see L<perlfunc/eof>. | ||
| 4729 | + | ||
| 4730 | +=item ferror | ||
| 4731 | + | ||
| 4732 | +Use method C<IO::Handle::error()> instead. | ||
| 4733 | + | ||
| 4734 | +=item fflush | ||
| 4735 | + | ||
| 4736 | +Use method C<IO::Handle::flush()> instead. | ||
| 4737 | +See also L<perlvar/$OUTPUT_AUTOFLUSH>. | ||
| 4738 | + | ||
| 4739 | +=item fgetc | ||
| 4740 | + | ||
| 4741 | +Use method C<IO::Handle::getc()> instead, or see L<perlfunc/read>. | ||
| 4742 | + | ||
| 4743 | +=item fgetpos | ||
| 4744 | + | ||
| 4745 | +Use method C<IO::Seekable::getpos()> instead, or see L<L/seek>. | ||
| 4746 | + | ||
| 4747 | +=item fgets | ||
| 4748 | + | ||
| 4749 | +Use method C<IO::Handle::gets()> instead. Similar to E<lt>E<gt>, also known | ||
| 4750 | +as L<perlfunc/readline>. | ||
| 4751 | + | ||
| 4752 | +=item fileno | ||
| 4753 | + | ||
| 4754 | +Use method C<IO::Handle::fileno()> instead, or see L<perlfunc/fileno>. | ||
| 4755 | + | ||
| 4756 | +=item floor | ||
| 4757 | + | ||
| 4758 | +This is identical to the C function C<floor()>, returning the largest | ||
| 4759 | +integer value less than or equal to the numerical argument. | ||
| 4760 | + | ||
| 4761 | +=item fmod | ||
| 4762 | + | ||
| 4763 | +This is identical to the C function C<fmod()>. | ||
| 4764 | + | ||
| 4765 | + $r = fmod($x, $y); | ||
| 4766 | + | ||
| 4767 | +It returns the remainder C<$r = $x - $n*$y>, where C<$n = trunc($x/$y)>. | ||
| 4768 | +The C<$r> has the same sign as C<$x> and magnitude (absolute value) | ||
| 4769 | +less than the magnitude of C<$y>. | ||
| 4770 | + | ||
| 4771 | +=item fopen | ||
| 4772 | + | ||
| 4773 | +Use method C<IO::File::open()> instead, or see L<perlfunc/open>. | ||
| 4774 | + | ||
| 4775 | +=item fork | ||
| 4776 | + | ||
| 4777 | +This is identical to Perl's builtin C<fork()> function | ||
| 4778 | +for duplicating the current process, see L<perlfunc/fork> | ||
| 4779 | +and L<perlfork> if you are in Windows. | ||
| 4780 | + | ||
| 4781 | +=item fpathconf | ||
| 4782 | + | ||
| 4783 | +Retrieves the value of a configurable limit on a file or directory. This | ||
| 4784 | +uses file descriptors such as those obtained by calling C<POSIX::open>. | ||
| 4785 | + | ||
| 4786 | +The following will determine the maximum length of the longest allowable | ||
| 4787 | +pathname on the filesystem which holds C</var/foo>. | ||
| 4788 | + | ||
| 4789 | + $fd = POSIX::open( "/var/foo", &POSIX::O_RDONLY ); | ||
| 4790 | + $path_max = POSIX::fpathconf( $fd, &POSIX::_PC_PATH_MAX ); | ||
| 4791 | + | ||
| 4792 | +Returns C<undef> on failure. | ||
| 4793 | + | ||
| 4794 | +=item fprintf | ||
| 4795 | + | ||
| 4796 | +fprintf() is C-specific, see L<perlfunc/printf> instead. | ||
| 4797 | + | ||
| 4798 | +=item fputc | ||
| 4799 | + | ||
| 4800 | +fputc() is C-specific, see L<perlfunc/print> instead. | ||
| 4801 | + | ||
| 4802 | +=item fputs | ||
| 4803 | + | ||
| 4804 | +fputs() is C-specific, see L<perlfunc/print> instead. | ||
| 4805 | + | ||
| 4806 | +=item fread | ||
| 4807 | + | ||
| 4808 | +fread() is C-specific, see L<perlfunc/read> instead. | ||
| 4809 | + | ||
| 4810 | +=item free | ||
| 4811 | + | ||
| 4812 | +free() is C-specific. Perl does memory management transparently. | ||
| 4813 | + | ||
| 4814 | +=item freopen | ||
| 4815 | + | ||
| 4816 | +freopen() is C-specific, see L<perlfunc/open> instead. | ||
| 4817 | + | ||
| 4818 | +=item frexp | ||
| 4819 | + | ||
| 4820 | +Return the mantissa and exponent of a floating-point number. | ||
| 4821 | + | ||
| 4822 | + ($mantissa, $exponent) = POSIX::frexp( 1.234e56 ); | ||
| 4823 | + | ||
| 4824 | +=item fscanf | ||
| 4825 | + | ||
| 4826 | +fscanf() is C-specific, use E<lt>E<gt> and regular expressions instead. | ||
| 4827 | + | ||
| 4828 | +=item fseek | ||
| 4829 | + | ||
| 4830 | +Use method C<IO::Seekable::seek()> instead, or see L<perlfunc/seek>. | ||
| 4831 | + | ||
| 4832 | +=item fsetpos | ||
| 4833 | + | ||
| 4834 | +Use method C<IO::Seekable::setpos()> instead, or seek L<perlfunc/seek>. | ||
| 4835 | + | ||
| 4836 | +=item fstat | ||
| 4837 | + | ||
| 4838 | +Get file status. This uses file descriptors such as those obtained by | ||
| 4839 | +calling C<POSIX::open>. The data returned is identical to the data from | ||
| 4840 | +Perl's builtin C<stat> function. | ||
| 4841 | + | ||
| 4842 | + $fd = POSIX::open( "foo", &POSIX::O_RDONLY ); | ||
| 4843 | + @stats = POSIX::fstat( $fd ); | ||
| 4844 | + | ||
| 4845 | +=item fsync | ||
| 4846 | + | ||
| 4847 | +Use method C<IO::Handle::sync()> instead. | ||
| 4848 | + | ||
| 4849 | +=item ftell | ||
| 4850 | + | ||
| 4851 | +Use method C<IO::Seekable::tell()> instead, or see L<perlfunc/tell>. | ||
| 4852 | + | ||
| 4853 | +=item fwrite | ||
| 4854 | + | ||
| 4855 | +fwrite() is C-specific, see L<perlfunc/print> instead. | ||
| 4856 | + | ||
| 4857 | +=item getc | ||
| 4858 | + | ||
| 4859 | +This is identical to Perl's builtin C<getc()> function, | ||
| 4860 | +see L<perlfunc/getc>. | ||
| 4861 | + | ||
| 4862 | +=item getchar | ||
| 4863 | + | ||
| 4864 | +Returns one character from STDIN. Identical to Perl's C<getc()>, | ||
| 4865 | +see L<perlfunc/getc>. | ||
| 4866 | + | ||
| 4867 | +=item getcwd | ||
| 4868 | + | ||
| 4869 | +Returns the name of the current working directory. | ||
| 4870 | +See also L<Cwd>. | ||
| 4871 | + | ||
| 4872 | +=item getegid | ||
| 4873 | + | ||
| 4874 | +Returns the effective group identifier. Similar to Perl' s builtin | ||
| 4875 | +variable C<$(>, see L<perlvar/$EGID>. | ||
| 4876 | + | ||
| 4877 | +=item getenv | ||
| 4878 | + | ||
| 4879 | +Returns the value of the specified environment variable. | ||
| 4880 | +The same information is available through the C<%ENV> array. | ||
| 4881 | + | ||
| 4882 | +=item geteuid | ||
| 4883 | + | ||
| 4884 | +Returns the effective user identifier. Identical to Perl's builtin C<$E<gt>> | ||
| 4885 | +variable, see L<perlvar/$EUID>. | ||
| 4886 | + | ||
| 4887 | +=item getgid | ||
| 4888 | + | ||
| 4889 | +Returns the user's real group identifier. Similar to Perl's builtin | ||
| 4890 | +variable C<$)>, see L<perlvar/$GID>. | ||
| 4891 | + | ||
| 4892 | +=item getgrgid | ||
| 4893 | + | ||
| 4894 | +This is identical to Perl's builtin C<getgrgid()> function for | ||
| 4895 | +returning group entries by group identifiers, see | ||
| 4896 | +L<perlfunc/getgrgid>. | ||
| 4897 | + | ||
| 4898 | +=item getgrnam | ||
| 4899 | + | ||
| 4900 | +This is identical to Perl's builtin C<getgrnam()> function for | ||
| 4901 | +returning group entries by group names, see L<perlfunc/getgrnam>. | ||
| 4902 | + | ||
| 4903 | +=item getgroups | ||
| 4904 | + | ||
| 4905 | +Returns the ids of the user's supplementary groups. Similar to Perl's | ||
| 4906 | +builtin variable C<$)>, see L<perlvar/$GID>. | ||
| 4907 | + | ||
| 4908 | +=item getlogin | ||
| 4909 | + | ||
| 4910 | +This is identical to Perl's builtin C<getlogin()> function for | ||
| 4911 | +returning the user name associated with the current session, see | ||
| 4912 | +L<perlfunc/getlogin>. | ||
| 4913 | + | ||
| 4914 | +=item getpgrp | ||
| 4915 | + | ||
| 4916 | +This is identical to Perl's builtin C<getpgrp()> function for | ||
| 4917 | +returning the process group identifier of the current process, see | ||
| 4918 | +L<perlfunc/getpgrp>. | ||
| 4919 | + | ||
| 4920 | +=item getpid | ||
| 4921 | + | ||
| 4922 | +Returns the process identifier. Identical to Perl's builtin | ||
| 4923 | +variable C<$$>, see L<perlvar/$PID>. | ||
| 4924 | + | ||
| 4925 | +=item getppid | ||
| 4926 | + | ||
| 4927 | +This is identical to Perl's builtin C<getppid()> function for | ||
| 4928 | +returning the process identifier of the parent process of the current | ||
| 4929 | +process , see L<perlfunc/getppid>. | ||
| 4930 | + | ||
| 4931 | +=item getpwnam | ||
| 4932 | + | ||
| 4933 | +This is identical to Perl's builtin C<getpwnam()> function for | ||
| 4934 | +returning user entries by user names, see L<perlfunc/getpwnam>. | ||
| 4935 | + | ||
| 4936 | +=item getpwuid | ||
| 4937 | + | ||
| 4938 | +This is identical to Perl's builtin C<getpwuid()> function for | ||
| 4939 | +returning user entries by user identifiers, see L<perlfunc/getpwuid>. | ||
| 4940 | + | ||
| 4941 | +=item gets | ||
| 4942 | + | ||
| 4943 | +Returns one line from C<STDIN>, similar to E<lt>E<gt>, also known | ||
| 4944 | +as the C<readline()> function, see L<perlfunc/readline>. | ||
| 4945 | + | ||
| 4946 | +B<NOTE>: if you have C programs that still use C<gets()>, be very | ||
| 4947 | +afraid. The C<gets()> function is a source of endless grief because | ||
| 4948 | +it has no buffer overrun checks. It should B<never> be used. The | ||
| 4949 | +C<fgets()> function should be preferred instead. | ||
| 4950 | + | ||
| 4951 | +=item getuid | ||
| 4952 | + | ||
| 4953 | +Returns the user's identifier. Identical to Perl's builtin C<$E<lt>> variable, | ||
| 4954 | +see L<perlvar/$UID>. | ||
| 4955 | + | ||
| 4956 | +=item gmtime | ||
| 4957 | + | ||
| 4958 | +This is identical to Perl's builtin C<gmtime()> function for | ||
| 4959 | +converting seconds since the epoch to a date in Greenwich Mean Time, | ||
| 4960 | +see L<perlfunc/gmtime>. | ||
| 4961 | + | ||
| 4962 | +=item isalnum | ||
| 4963 | + | ||
| 4964 | +This is identical to the C function, except that it can apply to a | ||
| 4965 | +single character or to a whole string. Note that locale settings may | ||
| 4966 | +affect what characters are considered C<isalnum>. Does not work on | ||
| 4967 | +Unicode characters code point 256 or higher. Consider using regular | ||
| 4968 | +expressions and the C</[[:alnum:]]/> construct instead, or possibly | ||
| 4969 | +the C</\w/> construct. | ||
| 4970 | + | ||
| 4971 | +=item isalpha | ||
| 4972 | + | ||
| 4973 | +This is identical to the C function, except that it can apply to | ||
| 4974 | +a single character or to a whole string. Note that locale settings | ||
| 4975 | +may affect what characters are considered C<isalpha>. Does not work | ||
| 4976 | +on Unicode characters code point 256 or higher. Consider using regular | ||
| 4977 | +expressions and the C</[[:alpha:]]/> construct instead. | ||
| 4978 | + | ||
| 4979 | +=item isatty | ||
| 4980 | + | ||
| 4981 | +Returns a boolean indicating whether the specified filehandle is connected | ||
| 4982 | +to a tty. Similar to the C<-t> operator, see L<perlfunc/-X>. | ||
| 4983 | + | ||
| 4984 | +=item iscntrl | ||
| 4985 | + | ||
| 4986 | +This is identical to the C function, except that it can apply to | ||
| 4987 | +a single character or to a whole string. Note that locale settings | ||
| 4988 | +may affect what characters are considered C<iscntrl>. Does not work | ||
| 4989 | +on Unicode characters code point 256 or higher. Consider using regular | ||
| 4990 | +expressions and the C</[[:cntrl:]]/> construct instead. | ||
| 4991 | + | ||
| 4992 | +=item isdigit | ||
| 4993 | + | ||
| 4994 | +This is identical to the C function, except that it can apply to | ||
| 4995 | +a single character or to a whole string. Note that locale settings | ||
| 4996 | +may affect what characters are considered C<isdigit> (unlikely, but | ||
| 4997 | +still possible). Does not work on Unicode characters code point 256 | ||
| 4998 | +or higher. Consider using regular expressions and the C</[[:digit:]]/> | ||
| 4999 | +construct instead, or the C</\d/> construct. | ||
| 5000 | + | ||
| 5001 | +=item isgraph | ||
| 5002 | + | ||
| 5003 | +This is identical to the C function, except that it can apply to | ||
| 5004 | +a single character or to a whole string. Note that locale settings | ||
| 5005 | +may affect what characters are considered C<isgraph>. Does not work | ||
| 5006 | +on Unicode characters code point 256 or higher. Consider using regular | ||
| 5007 | +expressions and the C</[[:graph:]]/> construct instead. | ||
| 5008 | + | ||
| 5009 | +=item islower | ||
| 5010 | + | ||
| 5011 | +This is identical to the C function, except that it can apply to | ||
| 5012 | +a single character or to a whole string. Note that locale settings | ||
| 5013 | +may affect what characters are considered C<islower>. Does not work | ||
| 5014 | +on Unicode characters code point 256 or higher. Consider using regular | ||
| 5015 | +expressions and the C</[[:lower:]]/> construct instead. Do B<not> use | ||
| 5016 | +C</[a-z]/>. | ||
| 5017 | + | ||
| 5018 | +=item isprint | ||
| 5019 | + | ||
| 5020 | +This is identical to the C function, except that it can apply to | ||
| 5021 | +a single character or to a whole string. Note that locale settings | ||
| 5022 | +may affect what characters are considered C<isprint>. Does not work | ||
| 5023 | +on Unicode characters code point 256 or higher. Consider using regular | ||
| 5024 | +expressions and the C</[[:print:]]/> construct instead. | ||
| 5025 | + | ||
| 5026 | +=item ispunct | ||
| 5027 | + | ||
| 5028 | +This is identical to the C function, except that it can apply to | ||
| 5029 | +a single character or to a whole string. Note that locale settings | ||
| 5030 | +may affect what characters are considered C<ispunct>. Does not work | ||
| 5031 | +on Unicode characters code point 256 or higher. Consider using regular | ||
| 5032 | +expressions and the C</[[:punct:]]/> construct instead. | ||
| 5033 | + | ||
| 5034 | +=item isspace | ||
| 5035 | + | ||
| 5036 | +This is identical to the C function, except that it can apply to | ||
| 5037 | +a single character or to a whole string. Note that locale settings | ||
| 5038 | +may affect what characters are considered C<isspace>. Does not work | ||
| 5039 | +on Unicode characters code point 256 or higher. Consider using regular | ||
| 5040 | +expressions and the C</[[:space:]]/> construct instead, or the C</\s/> | ||
| 5041 | +construct. (Note that C</\s/> and C</[[:space:]]/> are slightly | ||
| 5042 | +different in that C</[[:space:]]/> can normally match a vertical tab, | ||
| 5043 | +while C</\s/> does not.) | ||
| 5044 | + | ||
| 5045 | +=item isupper | ||
| 5046 | + | ||
| 5047 | +This is identical to the C function, except that it can apply to | ||
| 5048 | +a single character or to a whole string. Note that locale settings | ||
| 5049 | +may affect what characters are considered C<isupper>. Does not work | ||
| 5050 | +on Unicode characters code point 256 or higher. Consider using regular | ||
| 5051 | +expressions and the C</[[:upper:]]/> construct instead. Do B<not> use | ||
| 5052 | +C</[A-Z]/>. | ||
| 5053 | + | ||
| 5054 | +=item isxdigit | ||
| 5055 | + | ||
| 5056 | +This is identical to the C function, except that it can apply to a single | ||
| 5057 | +character or to a whole string. Note that locale settings may affect what | ||
| 5058 | +characters are considered C<isxdigit> (unlikely, but still possible). | ||
| 5059 | +Does not work on Unicode characters code point 256 or higher. | ||
| 5060 | +Consider using regular expressions and the C</[[:xdigit:]]/> | ||
| 5061 | +construct instead, or simply C</[0-9a-f]/i>. | ||
| 5062 | + | ||
| 5063 | +=item kill | ||
| 5064 | + | ||
| 5065 | +This is identical to Perl's builtin C<kill()> function for sending | ||
| 5066 | +signals to processes (often to terminate them), see L<perlfunc/kill>. | ||
| 5067 | + | ||
| 5068 | +=item labs | ||
| 5069 | + | ||
| 5070 | +(For returning absolute values of long integers.) | ||
| 5071 | +labs() is C-specific, see L<perlfunc/abs> instead. | ||
| 5072 | + | ||
| 5073 | +=item lchown | ||
| 5074 | + | ||
| 5075 | +This is identical to the C function, except the order of arguments is | ||
| 5076 | +consistent with Perl's builtin C<chown()> with the added restriction | ||
| 5077 | +of only one path, not an list of paths. Does the same thing as the | ||
| 5078 | +C<chown()> function but changes the owner of a symbolic link instead | ||
| 5079 | +of the file the symbolic link points to. | ||
| 5080 | + | ||
| 5081 | +=item ldexp | ||
| 5082 | + | ||
| 5083 | +This is identical to the C function C<ldexp()> | ||
| 5084 | +for multiplying floating point numbers with powers of two. | ||
| 5085 | + | ||
| 5086 | + $x_quadrupled = POSIX::ldexp($x, 2); | ||
| 5087 | + | ||
| 5088 | +=item ldiv | ||
| 5089 | + | ||
| 5090 | +(For computing dividends of long integers.) | ||
| 5091 | +ldiv() is C-specific, use C</> and C<int()> instead. | ||
| 5092 | + | ||
| 5093 | +=item link | ||
| 5094 | + | ||
| 5095 | +This is identical to Perl's builtin C<link()> function | ||
| 5096 | +for creating hard links into files, see L<perlfunc/link>. | ||
| 5097 | + | ||
| 5098 | +=item localeconv | ||
| 5099 | + | ||
| 5100 | +Get numeric formatting information. Returns a reference to a hash | ||
| 5101 | +containing the current locale formatting values. | ||
| 5102 | + | ||
| 5103 | +Here is how to query the database for the B<de> (Deutsch or German) locale. | ||
| 5104 | + | ||
| 5105 | + $loc = POSIX::setlocale( &POSIX::LC_ALL, "de" ); | ||
| 5106 | + print "Locale = $loc\n"; | ||
| 5107 | + $lconv = POSIX::localeconv(); | ||
| 5108 | + print "decimal_point = ", $lconv->{decimal_point}, "\n"; | ||
| 5109 | + print "thousands_sep = ", $lconv->{thousands_sep}, "\n"; | ||
| 5110 | + print "grouping = ", $lconv->{grouping}, "\n"; | ||
| 5111 | + print "int_curr_symbol = ", $lconv->{int_curr_symbol}, "\n"; | ||
| 5112 | + print "currency_symbol = ", $lconv->{currency_symbol}, "\n"; | ||
| 5113 | + print "mon_decimal_point = ", $lconv->{mon_decimal_point}, "\n"; | ||
| 5114 | + print "mon_thousands_sep = ", $lconv->{mon_thousands_sep}, "\n"; | ||
| 5115 | + print "mon_grouping = ", $lconv->{mon_grouping}, "\n"; | ||
| 5116 | + print "positive_sign = ", $lconv->{positive_sign}, "\n"; | ||
| 5117 | + print "negative_sign = ", $lconv->{negative_sign}, "\n"; | ||
| 5118 | + print "int_frac_digits = ", $lconv->{int_frac_digits}, "\n"; | ||
| 5119 | + print "frac_digits = ", $lconv->{frac_digits}, "\n"; | ||
| 5120 | + print "p_cs_precedes = ", $lconv->{p_cs_precedes}, "\n"; | ||
| 5121 | + print "p_sep_by_space = ", $lconv->{p_sep_by_space}, "\n"; | ||
| 5122 | + print "n_cs_precedes = ", $lconv->{n_cs_precedes}, "\n"; | ||
| 5123 | + print "n_sep_by_space = ", $lconv->{n_sep_by_space}, "\n"; | ||
| 5124 | + print "p_sign_posn = ", $lconv->{p_sign_posn}, "\n"; | ||
| 5125 | + print "n_sign_posn = ", $lconv->{n_sign_posn}, "\n"; | ||
| 5126 | + | ||
| 5127 | +=item localtime | ||
| 5128 | + | ||
| 5129 | +This is identical to Perl's builtin C<localtime()> function for | ||
| 5130 | +converting seconds since the epoch to a date see L<perlfunc/localtime>. | ||
| 5131 | + | ||
| 5132 | +=item log | ||
| 5133 | + | ||
| 5134 | +This is identical to Perl's builtin C<log()> function, | ||
| 5135 | +returning the natural (I<e>-based) logarithm of the numerical argument, | ||
| 5136 | +see L<perlfunc/log>. | ||
| 5137 | + | ||
| 5138 | +=item log10 | ||
| 5139 | + | ||
| 5140 | +This is identical to the C function C<log10()>, | ||
| 5141 | +returning the 10-base logarithm of the numerical argument. | ||
| 5142 | +You can also use | ||
| 5143 | + | ||
| 5144 | + sub log10 { log($_[0]) / log(10) } | ||
| 5145 | + | ||
| 5146 | +or | ||
| 5147 | + | ||
| 5148 | + sub log10 { log($_[0]) / 2.30258509299405 } | ||
| 5149 | + | ||
| 5150 | +or | ||
| 5151 | + | ||
| 5152 | + sub log10 { log($_[0]) * 0.434294481903252 } | ||
| 5153 | + | ||
| 5154 | +=item longjmp | ||
| 5155 | + | ||
| 5156 | +longjmp() is C-specific: use L<perlfunc/die> instead. | ||
| 5157 | + | ||
| 5158 | +=item lseek | ||
| 5159 | + | ||
| 5160 | +Move the file's read/write position. This uses file descriptors such as | ||
| 5161 | +those obtained by calling C<POSIX::open>. | ||
| 5162 | + | ||
| 5163 | + $fd = POSIX::open( "foo", &POSIX::O_RDONLY ); | ||
| 5164 | + $off_t = POSIX::lseek( $fd, 0, &POSIX::SEEK_SET ); | ||
| 5165 | + | ||
| 5166 | +Returns C<undef> on failure. | ||
| 5167 | + | ||
| 5168 | +=item malloc | ||
| 5169 | + | ||
| 5170 | +malloc() is C-specific. Perl does memory management transparently. | ||
| 5171 | + | ||
| 5172 | +=item mblen | ||
| 5173 | + | ||
| 5174 | +This is identical to the C function C<mblen()>. | ||
| 5175 | +Perl does not have any support for the wide and multibyte | ||
| 5176 | +characters of the C standards, so this might be a rather | ||
| 5177 | +useless function. | ||
| 5178 | + | ||
| 5179 | +=item mbstowcs | ||
| 5180 | + | ||
| 5181 | +This is identical to the C function C<mbstowcs()>. | ||
| 5182 | +Perl does not have any support for the wide and multibyte | ||
| 5183 | +characters of the C standards, so this might be a rather | ||
| 5184 | +useless function. | ||
| 5185 | + | ||
| 5186 | +=item mbtowc | ||
| 5187 | + | ||
| 5188 | +This is identical to the C function C<mbtowc()>. | ||
| 5189 | +Perl does not have any support for the wide and multibyte | ||
| 5190 | +characters of the C standards, so this might be a rather | ||
| 5191 | +useless function. | ||
| 5192 | + | ||
| 5193 | +=item memchr | ||
| 5194 | + | ||
| 5195 | +memchr() is C-specific, see L<perlfunc/index> instead. | ||
| 5196 | + | ||
| 5197 | +=item memcmp | ||
| 5198 | + | ||
| 5199 | +memcmp() is C-specific, use C<eq> instead, see L<perlop>. | ||
| 5200 | + | ||
| 5201 | +=item memcpy | ||
| 5202 | + | ||
| 5203 | +memcpy() is C-specific, use C<=>, see L<perlop>, or see L<perlfunc/substr>. | ||
| 5204 | + | ||
| 5205 | +=item memmove | ||
| 5206 | + | ||
| 5207 | +memmove() is C-specific, use C<=>, see L<perlop>, or see L<perlfunc/substr>. | ||
| 5208 | + | ||
| 5209 | +=item memset | ||
| 5210 | + | ||
| 5211 | +memset() is C-specific, use C<x> instead, see L<perlop>. | ||
| 5212 | + | ||
| 5213 | +=item mkdir | ||
| 5214 | + | ||
| 5215 | +This is identical to Perl's builtin C<mkdir()> function | ||
| 5216 | +for creating directories, see L<perlfunc/mkdir>. | ||
| 5217 | + | ||
| 5218 | +=item mkfifo | ||
| 5219 | + | ||
| 5220 | +This is similar to the C function C<mkfifo()> for creating | ||
| 5221 | +FIFO special files. | ||
| 5222 | + | ||
| 5223 | + if (mkfifo($path, $mode)) { .... | ||
| 5224 | + | ||
| 5225 | +Returns C<undef> on failure. The C<$mode> is similar to the | ||
| 5226 | +mode of C<mkdir()>, see L<perlfunc/mkdir>, though for C<mkfifo> | ||
| 5227 | +you B<must> specify the C<$mode>. | ||
| 5228 | + | ||
| 5229 | +=item mktime | ||
| 5230 | + | ||
| 5231 | +Convert date/time info to a calendar time. | ||
| 5232 | + | ||
| 5233 | +Synopsis: | ||
| 5234 | + | ||
| 5235 | + mktime(sec, min, hour, mday, mon, year, wday = 0, yday = 0, isdst = -1) | ||
| 5236 | + | ||
| 5237 | +The month (C<mon>), weekday (C<wday>), and yearday (C<yday>) begin at zero. | ||
| 5238 | +I.e. January is 0, not 1; Sunday is 0, not 1; January 1st is 0, not 1. The | ||
| 5239 | +year (C<year>) is given in years since 1900. I.e. The year 1995 is 95; the | ||
| 5240 | +year 2001 is 101. Consult your system's C<mktime()> manpage for details | ||
| 5241 | +about these and the other arguments. | ||
| 5242 | + | ||
| 5243 | +Calendar time for December 12, 1995, at 10:30 am. | ||
| 5244 | + | ||
| 5245 | + $time_t = POSIX::mktime( 0, 30, 10, 12, 11, 95 ); | ||
| 5246 | + print "Date = ", POSIX::ctime($time_t); | ||
| 5247 | + | ||
| 5248 | +Returns C<undef> on failure. | ||
| 5249 | + | ||
| 5250 | +=item modf | ||
| 5251 | + | ||
| 5252 | +Return the integral and fractional parts of a floating-point number. | ||
| 5253 | + | ||
| 5254 | + ($fractional, $integral) = POSIX::modf( 3.14 ); | ||
| 5255 | + | ||
| 5256 | +=item nice | ||
| 5257 | + | ||
| 5258 | +This is similar to the C function C<nice()>, for changing | ||
| 5259 | +the scheduling preference of the current process. Positive | ||
| 5260 | +arguments mean more polite process, negative values more | ||
| 5261 | +needy process. Normal user processes can only be more polite. | ||
| 5262 | + | ||
| 5263 | +Returns C<undef> on failure. | ||
| 5264 | + | ||
| 5265 | +=item offsetof | ||
| 5266 | + | ||
| 5267 | +offsetof() is C-specific, you probably want to see L<perlfunc/pack> instead. | ||
| 5268 | + | ||
| 5269 | +=item open | ||
| 5270 | + | ||
| 5271 | +Open a file for reading for writing. This returns file descriptors, not | ||
| 5272 | +Perl filehandles. Use C<POSIX::close> to close the file. | ||
| 5273 | + | ||
| 5274 | +Open a file read-only with mode 0666. | ||
| 5275 | + | ||
| 5276 | + $fd = POSIX::open( "foo" ); | ||
| 5277 | + | ||
| 5278 | +Open a file for read and write. | ||
| 5279 | + | ||
| 5280 | + $fd = POSIX::open( "foo", &POSIX::O_RDWR ); | ||
| 5281 | + | ||
| 5282 | +Open a file for write, with truncation. | ||
| 5283 | + | ||
| 5284 | + $fd = POSIX::open( "foo", &POSIX::O_WRONLY | &POSIX::O_TRUNC ); | ||
| 5285 | + | ||
| 5286 | +Create a new file with mode 0640. Set up the file for writing. | ||
| 5287 | + | ||
| 5288 | + $fd = POSIX::open( "foo", &POSIX::O_CREAT | &POSIX::O_WRONLY, 0640 ); | ||
| 5289 | + | ||
| 5290 | +Returns C<undef> on failure. | ||
| 5291 | + | ||
| 5292 | +See also L<perlfunc/sysopen>. | ||
| 5293 | + | ||
| 5294 | +=item opendir | ||
| 5295 | + | ||
| 5296 | +Open a directory for reading. | ||
| 5297 | + | ||
| 5298 | + $dir = POSIX::opendir( "/var" ); | ||
| 5299 | + @files = POSIX::readdir( $dir ); | ||
| 5300 | + POSIX::closedir( $dir ); | ||
| 5301 | + | ||
| 5302 | +Returns C<undef> on failure. | ||
| 5303 | + | ||
| 5304 | +=item pathconf | ||
| 5305 | + | ||
| 5306 | +Retrieves the value of a configurable limit on a file or directory. | ||
| 5307 | + | ||
| 5308 | +The following will determine the maximum length of the longest allowable | ||
| 5309 | +pathname on the filesystem which holds C</var>. | ||
| 5310 | + | ||
| 5311 | + $path_max = POSIX::pathconf( "/var", &POSIX::_PC_PATH_MAX ); | ||
| 5312 | + | ||
| 5313 | +Returns C<undef> on failure. | ||
| 5314 | + | ||
| 5315 | +=item pause | ||
| 5316 | + | ||
| 5317 | +This is similar to the C function C<pause()>, which suspends | ||
| 5318 | +the execution of the current process until a signal is received. | ||
| 5319 | + | ||
| 5320 | +Returns C<undef> on failure. | ||
| 5321 | + | ||
| 5322 | +=item perror | ||
| 5323 | + | ||
| 5324 | +This is identical to the C function C<perror()>, which outputs to the | ||
| 5325 | +standard error stream the specified message followed by ": " and the | ||
| 5326 | +current error string. Use the C<warn()> function and the C<$!> | ||
| 5327 | +variable instead, see L<perlfunc/warn> and L<perlvar/$ERRNO>. | ||
| 5328 | + | ||
| 5329 | +=item pipe | ||
| 5330 | + | ||
| 5331 | +Create an interprocess channel. This returns file descriptors like those | ||
| 5332 | +returned by C<POSIX::open>. | ||
| 5333 | + | ||
| 5334 | + my ($read, $write) = POSIX::pipe(); | ||
| 5335 | + POSIX::write( $write, "hello", 5 ); | ||
| 5336 | + POSIX::read( $read, $buf, 5 ); | ||
| 5337 | + | ||
| 5338 | +See also L<perlfunc/pipe>. | ||
| 5339 | + | ||
| 5340 | +=item pow | ||
| 5341 | + | ||
| 5342 | +Computes C<$x> raised to the power C<$exponent>. | ||
| 5343 | + | ||
| 5344 | + $ret = POSIX::pow( $x, $exponent ); | ||
| 5345 | + | ||
| 5346 | +You can also use the C<**> operator, see L<perlop>. | ||
| 5347 | + | ||
| 5348 | +=item printf | ||
| 5349 | + | ||
| 5350 | +Formats and prints the specified arguments to STDOUT. | ||
| 5351 | +See also L<perlfunc/printf>. | ||
| 5352 | + | ||
| 5353 | +=item putc | ||
| 5354 | + | ||
| 5355 | +putc() is C-specific, see L<perlfunc/print> instead. | ||
| 5356 | + | ||
| 5357 | +=item putchar | ||
| 5358 | + | ||
| 5359 | +putchar() is C-specific, see L<perlfunc/print> instead. | ||
| 5360 | + | ||
| 5361 | +=item puts | ||
| 5362 | + | ||
| 5363 | +puts() is C-specific, see L<perlfunc/print> instead. | ||
| 5364 | + | ||
| 5365 | +=item qsort | ||
| 5366 | + | ||
| 5367 | +qsort() is C-specific, see L<perlfunc/sort> instead. | ||
| 5368 | + | ||
| 5369 | +=item raise | ||
| 5370 | + | ||
| 5371 | +Sends the specified signal to the current process. | ||
| 5372 | +See also L<perlfunc/kill> and the C<$$> in L<perlvar/$PID>. | ||
| 5373 | + | ||
| 5374 | +=item rand | ||
| 5375 | + | ||
| 5376 | +C<rand()> is non-portable, see L<perlfunc/rand> instead. | ||
| 5377 | + | ||
| 5378 | +=item read | ||
| 5379 | + | ||
| 5380 | +Read from a file. This uses file descriptors such as those obtained by | ||
| 5381 | +calling C<POSIX::open>. If the buffer C<$buf> is not large enough for the | ||
| 5382 | +read then Perl will extend it to make room for the request. | ||
| 5383 | + | ||
| 5384 | + $fd = POSIX::open( "foo", &POSIX::O_RDONLY ); | ||
| 5385 | + $bytes = POSIX::read( $fd, $buf, 3 ); | ||
| 5386 | + | ||
| 5387 | +Returns C<undef> on failure. | ||
| 5388 | + | ||
| 5389 | +See also L<perlfunc/sysread>. | ||
| 5390 | + | ||
| 5391 | +=item readdir | ||
| 5392 | + | ||
| 5393 | +This is identical to Perl's builtin C<readdir()> function | ||
| 5394 | +for reading directory entries, see L<perlfunc/readdir>. | ||
| 5395 | + | ||
| 5396 | +=item realloc | ||
| 5397 | + | ||
| 5398 | +realloc() is C-specific. Perl does memory management transparently. | ||
| 5399 | + | ||
| 5400 | +=item remove | ||
| 5401 | + | ||
| 5402 | +This is identical to Perl's builtin C<unlink()> function | ||
| 5403 | +for removing files, see L<perlfunc/unlink>. | ||
| 5404 | + | ||
| 5405 | +=item rename | ||
| 5406 | + | ||
| 5407 | +This is identical to Perl's builtin C<rename()> function | ||
| 5408 | +for renaming files, see L<perlfunc/rename>. | ||
| 5409 | + | ||
| 5410 | +=item rewind | ||
| 5411 | + | ||
| 5412 | +Seeks to the beginning of the file. | ||
| 5413 | + | ||
| 5414 | +=item rewinddir | ||
| 5415 | + | ||
| 5416 | +This is identical to Perl's builtin C<rewinddir()> function for | ||
| 5417 | +rewinding directory entry streams, see L<perlfunc/rewinddir>. | ||
| 5418 | + | ||
| 5419 | +=item rmdir | ||
| 5420 | + | ||
| 5421 | +This is identical to Perl's builtin C<rmdir()> function | ||
| 5422 | +for removing (empty) directories, see L<perlfunc/rmdir>. | ||
| 5423 | + | ||
| 5424 | +=item scanf | ||
| 5425 | + | ||
| 5426 | +scanf() is C-specific, use E<lt>E<gt> and regular expressions instead, | ||
| 5427 | +see L<perlre>. | ||
| 5428 | + | ||
| 5429 | +=item setgid | ||
| 5430 | + | ||
| 5431 | +Sets the real group identifier and the effective group identifier for | ||
| 5432 | +this process. Similar to assigning a value to the Perl's builtin | ||
| 5433 | +C<$)> variable, see L<perlvar/$EGID>, except that the latter | ||
| 5434 | +will change only the real user identifier, and that the setgid() | ||
| 5435 | +uses only a single numeric argument, as opposed to a space-separated | ||
| 5436 | +list of numbers. | ||
| 5437 | + | ||
| 5438 | +=item setjmp | ||
| 5439 | + | ||
| 5440 | +C<setjmp()> is C-specific: use C<eval {}> instead, | ||
| 5441 | +see L<perlfunc/eval>. | ||
| 5442 | + | ||
| 5443 | +=item setlocale | ||
| 5444 | + | ||
| 5445 | +Modifies and queries program's locale. The following examples assume | ||
| 5446 | + | ||
| 5447 | + use POSIX qw(setlocale LC_ALL LC_CTYPE); | ||
| 5448 | + | ||
| 5449 | +has been issued. | ||
| 5450 | + | ||
| 5451 | +The following will set the traditional UNIX system locale behavior | ||
| 5452 | +(the second argument C<"C">). | ||
| 5453 | + | ||
| 5454 | + $loc = setlocale( LC_ALL, "C" ); | ||
| 5455 | + | ||
| 5456 | +The following will query the current LC_CTYPE category. (No second | ||
| 5457 | +argument means 'query'.) | ||
| 5458 | + | ||
| 5459 | + $loc = setlocale( LC_CTYPE ); | ||
| 5460 | + | ||
| 5461 | +The following will set the LC_CTYPE behaviour according to the locale | ||
| 5462 | +environment variables (the second argument C<"">). | ||
| 5463 | +Please see your systems C<setlocale(3)> documentation for the locale | ||
| 5464 | +environment variables' meaning or consult L<perllocale>. | ||
| 5465 | + | ||
| 5466 | + $loc = setlocale( LC_CTYPE, "" ); | ||
| 5467 | + | ||
| 5468 | +The following will set the LC_COLLATE behaviour to Argentinian | ||
| 5469 | +Spanish. B<NOTE>: The naming and availability of locales depends on | ||
| 5470 | +your operating system. Please consult L<perllocale> for how to find | ||
| 5471 | +out which locales are available in your system. | ||
| 5472 | + | ||
| 5473 | + $loc = setlocale( LC_COLLATE, "es_AR.ISO8859-1" ); | ||
| 5474 | + | ||
| 5475 | +=item setpgid | ||
| 5476 | + | ||
| 5477 | +This is similar to the C function C<setpgid()> for | ||
| 5478 | +setting the process group identifier of the current process. | ||
| 5479 | + | ||
| 5480 | +Returns C<undef> on failure. | ||
| 5481 | + | ||
| 5482 | +=item setsid | ||
| 5483 | + | ||
| 5484 | +This is identical to the C function C<setsid()> for | ||
| 5485 | +setting the session identifier of the current process. | ||
| 5486 | + | ||
| 5487 | +=item setuid | ||
| 5488 | + | ||
| 5489 | +Sets the real user identifier and the effective user identifier for | ||
| 5490 | +this process. Similar to assigning a value to the Perl's builtin | ||
| 5491 | +C<$E<lt>> variable, see L<perlvar/$UID>, except that the latter | ||
| 5492 | +will change only the real user identifier. | ||
| 5493 | + | ||
| 5494 | +=item sigaction | ||
| 5495 | + | ||
| 5496 | +Detailed signal management. This uses C<POSIX::SigAction> objects for | ||
| 5497 | +the C<action> and C<oldaction> arguments (the oldaction can also be | ||
| 5498 | +just a hash reference). Consult your system's C<sigaction> manpage | ||
| 5499 | +for details, see also C<POSIX::SigRt>. | ||
| 5500 | + | ||
| 5501 | +Synopsis: | ||
| 5502 | + | ||
| 5503 | + sigaction(signal, action, oldaction = 0) | ||
| 5504 | + | ||
| 5505 | +Returns C<undef> on failure. The C<signal> must be a number (like | ||
| 5506 | +SIGHUP), not a string (like "SIGHUP"), though Perl does try hard | ||
| 5507 | +to understand you. | ||
| 5508 | + | ||
| 5509 | +If you use the SA_SIGINFO flag, the signal handler will in addition to | ||
| 5510 | +the first argument, the signal name, also receive a second argument, a | ||
| 5511 | +hash reference, inside which are the following keys with the following | ||
| 5512 | +semantics, as defined by POSIX/SUSv3: | ||
| 5513 | + | ||
| 5514 | + signo the signal number | ||
| 5515 | + errno the error number | ||
| 5516 | + code if this is zero or less, the signal was sent by | ||
| 5517 | + a user process and the uid and pid make sense, | ||
| 5518 | + otherwise the signal was sent by the kernel | ||
| 5519 | + | ||
| 5520 | +The following are also defined by POSIX/SUSv3, but unfortunately | ||
| 5521 | +not very widely implemented: | ||
| 5522 | + | ||
| 5523 | + pid the process id generating the signal | ||
| 5524 | + uid the uid of the process id generating the signal | ||
| 5525 | + status exit value or signal for SIGCHLD | ||
| 5526 | + band band event for SIGPOLL | ||
| 5527 | + | ||
| 5528 | +A third argument is also passed to the handler, which contains a copy | ||
| 5529 | +of the raw binary contents of the siginfo structure: if a system has | ||
| 5530 | +some non-POSIX fields, this third argument is where to unpack() them | ||
| 5531 | +from. | ||
| 5532 | + | ||
| 5533 | +Note that not all siginfo values make sense simultaneously (some are | ||
| 5534 | +valid only for certain signals, for example), and not all values make | ||
| 5535 | +sense from Perl perspective, you should to consult your system's | ||
| 5536 | +C<sigaction> and possibly also C<siginfo> documentation. | ||
| 5537 | + | ||
| 5538 | +=item siglongjmp | ||
| 5539 | + | ||
| 5540 | +siglongjmp() is C-specific: use L<perlfunc/die> instead. | ||
| 5541 | + | ||
| 5542 | +=item sigpending | ||
| 5543 | + | ||
| 5544 | +Examine signals that are blocked and pending. This uses C<POSIX::SigSet> | ||
| 5545 | +objects for the C<sigset> argument. Consult your system's C<sigpending> | ||
| 5546 | +manpage for details. | ||
| 5547 | + | ||
| 5548 | +Synopsis: | ||
| 5549 | + | ||
| 5550 | + sigpending(sigset) | ||
| 5551 | + | ||
| 5552 | +Returns C<undef> on failure. | ||
| 5553 | + | ||
| 5554 | +=item sigprocmask | ||
| 5555 | + | ||
| 5556 | +Change and/or examine calling process's signal mask. This uses | ||
| 5557 | +C<POSIX::SigSet> objects for the C<sigset> and C<oldsigset> arguments. | ||
| 5558 | +Consult your system's C<sigprocmask> manpage for details. | ||
| 5559 | + | ||
| 5560 | +Synopsis: | ||
| 5561 | + | ||
| 5562 | + sigprocmask(how, sigset, oldsigset = 0) | ||
| 5563 | + | ||
| 5564 | +Returns C<undef> on failure. | ||
| 5565 | + | ||
| 5566 | +=item sigsetjmp | ||
| 5567 | + | ||
| 5568 | +C<sigsetjmp()> is C-specific: use C<eval {}> instead, | ||
| 5569 | +see L<perlfunc/eval>. | ||
| 5570 | + | ||
| 5571 | +=item sigsuspend | ||
| 5572 | + | ||
| 5573 | +Install a signal mask and suspend process until signal arrives. This uses | ||
| 5574 | +C<POSIX::SigSet> objects for the C<signal_mask> argument. Consult your | ||
| 5575 | +system's C<sigsuspend> manpage for details. | ||
| 5576 | + | ||
| 5577 | +Synopsis: | ||
| 5578 | + | ||
| 5579 | + sigsuspend(signal_mask) | ||
| 5580 | + | ||
| 5581 | +Returns C<undef> on failure. | ||
| 5582 | + | ||
| 5583 | +=item sin | ||
| 5584 | + | ||
| 5585 | +This is identical to Perl's builtin C<sin()> function | ||
| 5586 | +for returning the sine of the numerical argument, | ||
| 5587 | +see L<perlfunc/sin>. See also L<Math::Trig>. | ||
| 5588 | + | ||
| 5589 | +=item sinh | ||
| 5590 | + | ||
| 5591 | +This is identical to the C function C<sinh()> | ||
| 5592 | +for returning the hyperbolic sine of the numerical argument. | ||
| 5593 | +See also L<Math::Trig>. | ||
| 5594 | + | ||
| 5595 | +=item sleep | ||
| 5596 | + | ||
| 5597 | +This is functionally identical to Perl's builtin C<sleep()> function | ||
| 5598 | +for suspending the execution of the current for process for certain | ||
| 5599 | +number of seconds, see L<perlfunc/sleep>. There is one significant | ||
| 5600 | +difference, however: C<POSIX::sleep()> returns the number of | ||
| 5601 | +B<unslept> seconds, while the C<CORE::sleep()> returns the | ||
| 5602 | +number of slept seconds. | ||
| 5603 | + | ||
| 5604 | +=item sprintf | ||
| 5605 | + | ||
| 5606 | +This is similar to Perl's builtin C<sprintf()> function | ||
| 5607 | +for returning a string that has the arguments formatted as requested, | ||
| 5608 | +see L<perlfunc/sprintf>. | ||
| 5609 | + | ||
| 5610 | +=item sqrt | ||
| 5611 | + | ||
| 5612 | +This is identical to Perl's builtin C<sqrt()> function. | ||
| 5613 | +for returning the square root of the numerical argument, | ||
| 5614 | +see L<perlfunc/sqrt>. | ||
| 5615 | + | ||
| 5616 | +=item srand | ||
| 5617 | + | ||
| 5618 | +Give a seed the pseudorandom number generator, see L<perlfunc/srand>. | ||
| 5619 | + | ||
| 5620 | +=item sscanf | ||
| 5621 | + | ||
| 5622 | +sscanf() is C-specific, use regular expressions instead, | ||
| 5623 | +see L<perlre>. | ||
| 5624 | + | ||
| 5625 | +=item stat | ||
| 5626 | + | ||
| 5627 | +This is identical to Perl's builtin C<stat()> function | ||
| 5628 | +for returning information about files and directories. | ||
| 5629 | + | ||
| 5630 | +=item strcat | ||
| 5631 | + | ||
| 5632 | +strcat() is C-specific, use C<.=> instead, see L<perlop>. | ||
| 5633 | + | ||
| 5634 | +=item strchr | ||
| 5635 | + | ||
| 5636 | +strchr() is C-specific, see L<perlfunc/index> instead. | ||
| 5637 | + | ||
| 5638 | +=item strcmp | ||
| 5639 | + | ||
| 5640 | +strcmp() is C-specific, use C<eq> or C<cmp> instead, see L<perlop>. | ||
| 5641 | + | ||
| 5642 | +=item strcoll | ||
| 5643 | + | ||
| 5644 | +This is identical to the C function C<strcoll()> | ||
| 5645 | +for collating (comparing) strings transformed using | ||
| 5646 | +the C<strxfrm()> function. Not really needed since | ||
| 5647 | +Perl can do this transparently, see L<perllocale>. | ||
| 5648 | + | ||
| 5649 | +=item strcpy | ||
| 5650 | + | ||
| 5651 | +strcpy() is C-specific, use C<=> instead, see L<perlop>. | ||
| 5652 | + | ||
| 5653 | +=item strcspn | ||
| 5654 | + | ||
| 5655 | +strcspn() is C-specific, use regular expressions instead, | ||
| 5656 | +see L<perlre>. | ||
| 5657 | + | ||
| 5658 | +=item strerror | ||
| 5659 | + | ||
| 5660 | +Returns the error string for the specified errno. | ||
| 5661 | +Identical to the string form of the C<$!>, see L<perlvar/$ERRNO>. | ||
| 5662 | + | ||
| 5663 | +=item strftime | ||
| 5664 | + | ||
| 5665 | +Convert date and time information to string. Returns the string. | ||
| 5666 | + | ||
| 5667 | +Synopsis: | ||
| 5668 | + | ||
| 5669 | + strftime(fmt, sec, min, hour, mday, mon, year, wday = -1, yday = -1, isdst = -1) | ||
| 5670 | + | ||
| 5671 | +The month (C<mon>), weekday (C<wday>), and yearday (C<yday>) begin at zero. | ||
| 5672 | +I.e. January is 0, not 1; Sunday is 0, not 1; January 1st is 0, not 1. The | ||
| 5673 | +year (C<year>) is given in years since 1900. I.e., the year 1995 is 95; the | ||
| 5674 | +year 2001 is 101. Consult your system's C<strftime()> manpage for details | ||
| 5675 | +about these and the other arguments. | ||
| 5676 | + | ||
| 5677 | +If you want your code to be portable, your format (C<fmt>) argument | ||
| 5678 | +should use only the conversion specifiers defined by the ANSI C | ||
| 5679 | +standard (C89, to play safe). These are C<aAbBcdHIjmMpSUwWxXyYZ%>. | ||
| 5680 | +But even then, the B<results> of some of the conversion specifiers are | ||
| 5681 | +non-portable. For example, the specifiers C<aAbBcpZ> change according | ||
| 5682 | +to the locale settings of the user, and both how to set locales (the | ||
| 5683 | +locale names) and what output to expect are non-standard. | ||
| 5684 | +The specifier C<c> changes according to the timezone settings of the | ||
| 5685 | +user and the timezone computation rules of the operating system. | ||
| 5686 | +The C<Z> specifier is notoriously unportable since the names of | ||
| 5687 | +timezones are non-standard. Sticking to the numeric specifiers is the | ||
| 5688 | +safest route. | ||
| 5689 | + | ||
| 5690 | +The given arguments are made consistent as though by calling | ||
| 5691 | +C<mktime()> before calling your system's C<strftime()> function, | ||
| 5692 | +except that the C<isdst> value is not affected. | ||
| 5693 | + | ||
| 5694 | +The string for Tuesday, December 12, 1995. | ||
| 5695 | + | ||
| 5696 | + $str = POSIX::strftime( "%A, %B %d, %Y", 0, 0, 0, 12, 11, 95, 2 ); | ||
| 5697 | + print "$str\n"; | ||
| 5698 | + | ||
| 5699 | +=item strlen | ||
| 5700 | + | ||
| 5701 | +strlen() is C-specific, use C<length()> instead, see L<perlfunc/length>. | ||
| 5702 | + | ||
| 5703 | +=item strncat | ||
| 5704 | + | ||
| 5705 | +strncat() is C-specific, use C<.=> instead, see L<perlop>. | ||
| 5706 | + | ||
| 5707 | +=item strncmp | ||
| 5708 | + | ||
| 5709 | +strncmp() is C-specific, use C<eq> instead, see L<perlop>. | ||
| 5710 | + | ||
| 5711 | +=item strncpy | ||
| 5712 | + | ||
| 5713 | +strncpy() is C-specific, use C<=> instead, see L<perlop>. | ||
| 5714 | + | ||
| 5715 | +=item strpbrk | ||
| 5716 | + | ||
| 5717 | +strpbrk() is C-specific, use regular expressions instead, | ||
| 5718 | +see L<perlre>. | ||
| 5719 | + | ||
| 5720 | +=item strrchr | ||
| 5721 | + | ||
| 5722 | +strrchr() is C-specific, see L<perlfunc/rindex> instead. | ||
| 5723 | + | ||
| 5724 | +=item strspn | ||
| 5725 | + | ||
| 5726 | +strspn() is C-specific, use regular expressions instead, | ||
| 5727 | +see L<perlre>. | ||
| 5728 | + | ||
| 5729 | +=item strstr | ||
| 5730 | + | ||
| 5731 | +This is identical to Perl's builtin C<index()> function, | ||
| 5732 | +see L<perlfunc/index>. | ||
| 5733 | + | ||
| 5734 | +=item strtod | ||
| 5735 | + | ||
| 5736 | +String to double translation. Returns the parsed number and the number | ||
| 5737 | +of characters in the unparsed portion of the string. Truly | ||
| 5738 | +POSIX-compliant systems set $! ($ERRNO) to indicate a translation | ||
| 5739 | +error, so clear $! before calling strtod. However, non-POSIX systems | ||
| 5740 | +may not check for overflow, and therefore will never set $!. | ||
| 5741 | + | ||
| 5742 | +strtod should respect any POSIX I<setlocale()> settings. | ||
| 5743 | + | ||
| 5744 | +To parse a string $str as a floating point number use | ||
| 5745 | + | ||
| 5746 | + $! = 0; | ||
| 5747 | + ($num, $n_unparsed) = POSIX::strtod($str); | ||
| 5748 | + | ||
| 5749 | +The second returned item and $! can be used to check for valid input: | ||
| 5750 | + | ||
| 5751 | + if (($str eq '') || ($n_unparsed != 0) || $!) { | ||
| 5752 | + die "Non-numeric input $str" . ($! ? ": $!\n" : "\n"); | ||
| 5753 | + } | ||
| 5754 | + | ||
| 5755 | +When called in a scalar context strtod returns the parsed number. | ||
| 5756 | + | ||
| 5757 | +=item strtok | ||
| 5758 | + | ||
| 5759 | +strtok() is C-specific, use regular expressions instead, see | ||
| 5760 | +L<perlre>, or L<perlfunc/split>. | ||
| 5761 | + | ||
| 5762 | +=item strtol | ||
| 5763 | + | ||
| 5764 | +String to (long) integer translation. Returns the parsed number and | ||
| 5765 | +the number of characters in the unparsed portion of the string. Truly | ||
| 5766 | +POSIX-compliant systems set $! ($ERRNO) to indicate a translation | ||
| 5767 | +error, so clear $! before calling strtol. However, non-POSIX systems | ||
| 5768 | +may not check for overflow, and therefore will never set $!. | ||
| 5769 | + | ||
| 5770 | +strtol should respect any POSIX I<setlocale()> settings. | ||
| 5771 | + | ||
| 5772 | +To parse a string $str as a number in some base $base use | ||
| 5773 | + | ||
| 5774 | + $! = 0; | ||
| 5775 | + ($num, $n_unparsed) = POSIX::strtol($str, $base); | ||
| 5776 | + | ||
| 5777 | +The base should be zero or between 2 and 36, inclusive. When the base | ||
| 5778 | +is zero or omitted strtol will use the string itself to determine the | ||
| 5779 | +base: a leading "0x" or "0X" means hexadecimal; a leading "0" means | ||
| 5780 | +octal; any other leading characters mean decimal. Thus, "1234" is | ||
| 5781 | +parsed as a decimal number, "01234" as an octal number, and "0x1234" | ||
| 5782 | +as a hexadecimal number. | ||
| 5783 | + | ||
| 5784 | +The second returned item and $! can be used to check for valid input: | ||
| 5785 | + | ||
| 5786 | + if (($str eq '') || ($n_unparsed != 0) || !$!) { | ||
| 5787 | + die "Non-numeric input $str" . $! ? ": $!\n" : "\n"; | ||
| 5788 | + } | ||
| 5789 | + | ||
| 5790 | +When called in a scalar context strtol returns the parsed number. | ||
| 5791 | + | ||
| 5792 | +=item strtoul | ||
| 5793 | + | ||
| 5794 | +String to unsigned (long) integer translation. strtoul() is identical | ||
| 5795 | +to strtol() except that strtoul() only parses unsigned integers. See | ||
| 5796 | +L</strtol> for details. | ||
| 5797 | + | ||
| 5798 | +Note: Some vendors supply strtod() and strtol() but not strtoul(). | ||
| 5799 | +Other vendors that do supply strtoul() parse "-1" as a valid value. | ||
| 5800 | + | ||
| 5801 | +=item strxfrm | ||
| 5802 | + | ||
| 5803 | +String transformation. Returns the transformed string. | ||
| 5804 | + | ||
| 5805 | + $dst = POSIX::strxfrm( $src ); | ||
| 5806 | + | ||
| 5807 | +Used in conjunction with the C<strcoll()> function, see L</strcoll>. | ||
| 5808 | + | ||
| 5809 | +Not really needed since Perl can do this transparently, see | ||
| 5810 | +L<perllocale>. | ||
| 5811 | + | ||
| 5812 | +=item sysconf | ||
| 5813 | + | ||
| 5814 | +Retrieves values of system configurable variables. | ||
| 5815 | + | ||
| 5816 | +The following will get the machine's clock speed. | ||
| 5817 | + | ||
| 5818 | + $clock_ticks = POSIX::sysconf( &POSIX::_SC_CLK_TCK ); | ||
| 5819 | + | ||
| 5820 | +Returns C<undef> on failure. | ||
| 5821 | + | ||
| 5822 | +=item system | ||
| 5823 | + | ||
| 5824 | +This is identical to Perl's builtin C<system()> function, see | ||
| 5825 | +L<perlfunc/system>. | ||
| 5826 | + | ||
| 5827 | +=item tan | ||
| 5828 | + | ||
| 5829 | +This is identical to the C function C<tan()>, returning the | ||
| 5830 | +tangent of the numerical argument. See also L<Math::Trig>. | ||
| 5831 | + | ||
| 5832 | +=item tanh | ||
| 5833 | + | ||
| 5834 | +This is identical to the C function C<tanh()>, returning the | ||
| 5835 | +hyperbolic tangent of the numerical argument. See also L<Math::Trig>. | ||
| 5836 | + | ||
| 5837 | +=item tcdrain | ||
| 5838 | + | ||
| 5839 | +This is similar to the C function C<tcdrain()> for draining | ||
| 5840 | +the output queue of its argument stream. | ||
| 5841 | + | ||
| 5842 | +Returns C<undef> on failure. | ||
| 5843 | + | ||
| 5844 | +=item tcflow | ||
| 5845 | + | ||
| 5846 | +This is similar to the C function C<tcflow()> for controlling | ||
| 5847 | +the flow of its argument stream. | ||
| 5848 | + | ||
| 5849 | +Returns C<undef> on failure. | ||
| 5850 | + | ||
| 5851 | +=item tcflush | ||
| 5852 | + | ||
| 5853 | +This is similar to the C function C<tcflush()> for flushing | ||
| 5854 | +the I/O buffers of its argument stream. | ||
| 5855 | + | ||
| 5856 | +Returns C<undef> on failure. | ||
| 5857 | + | ||
| 5858 | +=item tcgetpgrp | ||
| 5859 | + | ||
| 5860 | +This is identical to the C function C<tcgetpgrp()> for returning the | ||
| 5861 | +process group identifier of the foreground process group of the controlling | ||
| 5862 | +terminal. | ||
| 5863 | + | ||
| 5864 | +=item tcsendbreak | ||
| 5865 | + | ||
| 5866 | +This is similar to the C function C<tcsendbreak()> for sending | ||
| 5867 | +a break on its argument stream. | ||
| 5868 | + | ||
| 5869 | +Returns C<undef> on failure. | ||
| 5870 | + | ||
| 5871 | +=item tcsetpgrp | ||
| 5872 | + | ||
| 5873 | +This is similar to the C function C<tcsetpgrp()> for setting the | ||
| 5874 | +process group identifier of the foreground process group of the controlling | ||
| 5875 | +terminal. | ||
| 5876 | + | ||
| 5877 | +Returns C<undef> on failure. | ||
| 5878 | + | ||
| 5879 | +=item time | ||
| 5880 | + | ||
| 5881 | +This is identical to Perl's builtin C<time()> function | ||
| 5882 | +for returning the number of seconds since the epoch | ||
| 5883 | +(whatever it is for the system), see L<perlfunc/time>. | ||
| 5884 | + | ||
| 5885 | +=item times | ||
| 5886 | + | ||
| 5887 | +The times() function returns elapsed realtime since some point in the past | ||
| 5888 | +(such as system startup), user and system times for this process, and user | ||
| 5889 | +and system times used by child processes. All times are returned in clock | ||
| 5890 | +ticks. | ||
| 5891 | + | ||
| 5892 | + ($realtime, $user, $system, $cuser, $csystem) = POSIX::times(); | ||
| 5893 | + | ||
| 5894 | +Note: Perl's builtin C<times()> function returns four values, measured in | ||
| 5895 | +seconds. | ||
| 5896 | + | ||
| 5897 | +=item tmpfile | ||
| 5898 | + | ||
| 5899 | +Use method C<IO::File::new_tmpfile()> instead, or see L<File::Temp>. | ||
| 5900 | + | ||
| 5901 | +=item tmpnam | ||
| 5902 | + | ||
| 5903 | +Returns a name for a temporary file. | ||
| 5904 | + | ||
| 5905 | + $tmpfile = POSIX::tmpnam(); | ||
| 5906 | + | ||
| 5907 | +For security reasons, which are probably detailed in your system's | ||
| 5908 | +documentation for the C library tmpnam() function, this interface | ||
| 5909 | +should not be used; instead see L<File::Temp>. | ||
| 5910 | + | ||
| 5911 | +=item tolower | ||
| 5912 | + | ||
| 5913 | +This is identical to the C function, except that it can apply to a single | ||
| 5914 | +character or to a whole string. Consider using the C<lc()> function, | ||
| 5915 | +see L<perlfunc/lc>, or the equivalent C<\L> operator inside doublequotish | ||
| 5916 | +strings. | ||
| 5917 | + | ||
| 5918 | +=item toupper | ||
| 5919 | + | ||
| 5920 | +This is identical to the C function, except that it can apply to a single | ||
| 5921 | +character or to a whole string. Consider using the C<uc()> function, | ||
| 5922 | +see L<perlfunc/uc>, or the equivalent C<\U> operator inside doublequotish | ||
| 5923 | +strings. | ||
| 5924 | + | ||
| 5925 | +=item ttyname | ||
| 5926 | + | ||
| 5927 | +This is identical to the C function C<ttyname()> for returning the | ||
| 5928 | +name of the current terminal. | ||
| 5929 | + | ||
| 5930 | +=item tzname | ||
| 5931 | + | ||
| 5932 | +Retrieves the time conversion information from the C<tzname> variable. | ||
| 5933 | + | ||
| 5934 | + POSIX::tzset(); | ||
| 5935 | + ($std, $dst) = POSIX::tzname(); | ||
| 5936 | + | ||
| 5937 | +=item tzset | ||
| 5938 | + | ||
| 5939 | +This is identical to the C function C<tzset()> for setting | ||
| 5940 | +the current timezone based on the environment variable C<TZ>, | ||
| 5941 | +to be used by C<ctime()>, C<localtime()>, C<mktime()>, and C<strftime()> | ||
| 5942 | +functions. | ||
| 5943 | + | ||
| 5944 | +=item umask | ||
| 5945 | + | ||
| 5946 | +This is identical to Perl's builtin C<umask()> function | ||
| 5947 | +for setting (and querying) the file creation permission mask, | ||
| 5948 | +see L<perlfunc/umask>. | ||
| 5949 | + | ||
| 5950 | +=item uname | ||
| 5951 | + | ||
| 5952 | +Get name of current operating system. | ||
| 5953 | + | ||
| 5954 | + ($sysname, $nodename, $release, $version, $machine) = POSIX::uname(); | ||
| 5955 | + | ||
| 5956 | +Note that the actual meanings of the various fields are not | ||
| 5957 | +that well standardized, do not expect any great portability. | ||
| 5958 | +The C<$sysname> might be the name of the operating system, | ||
| 5959 | +the C<$nodename> might be the name of the host, the C<$release> | ||
| 5960 | +might be the (major) release number of the operating system, | ||
| 5961 | +the C<$version> might be the (minor) release number of the | ||
| 5962 | +operating system, and the C<$machine> might be a hardware identifier. | ||
| 5963 | +Maybe. | ||
| 5964 | + | ||
| 5965 | +=item ungetc | ||
| 5966 | + | ||
| 5967 | +Use method C<IO::Handle::ungetc()> instead. | ||
| 5968 | + | ||
| 5969 | +=item unlink | ||
| 5970 | + | ||
| 5971 | +This is identical to Perl's builtin C<unlink()> function | ||
| 5972 | +for removing files, see L<perlfunc/unlink>. | ||
| 5973 | + | ||
| 5974 | +=item utime | ||
| 5975 | + | ||
| 5976 | +This is identical to Perl's builtin C<utime()> function | ||
| 5977 | +for changing the time stamps of files and directories, | ||
| 5978 | +see L<perlfunc/utime>. | ||
| 5979 | + | ||
| 5980 | +=item vfprintf | ||
| 5981 | + | ||
| 5982 | +vfprintf() is C-specific, see L<perlfunc/printf> instead. | ||
| 5983 | + | ||
| 5984 | +=item vprintf | ||
| 5985 | + | ||
| 5986 | +vprintf() is C-specific, see L<perlfunc/printf> instead. | ||
| 5987 | + | ||
| 5988 | +=item vsprintf | ||
| 5989 | + | ||
| 5990 | +vsprintf() is C-specific, see L<perlfunc/sprintf> instead. | ||
| 5991 | + | ||
| 5992 | +=item wait | ||
| 5993 | + | ||
| 5994 | +This is identical to Perl's builtin C<wait()> function, | ||
| 5995 | +see L<perlfunc/wait>. | ||
| 5996 | + | ||
| 5997 | +=item waitpid | ||
| 5998 | + | ||
| 5999 | +Wait for a child process to change state. This is identical to Perl's | ||
| 6000 | +builtin C<waitpid()> function, see L<perlfunc/waitpid>. | ||
| 6001 | + | ||
| 6002 | + $pid = POSIX::waitpid( -1, POSIX::WNOHANG ); | ||
| 6003 | + print "status = ", ($? / 256), "\n"; | ||
| 6004 | + | ||
| 6005 | +=item wcstombs | ||
| 6006 | + | ||
| 6007 | +This is identical to the C function C<wcstombs()>. | ||
| 6008 | +Perl does not have any support for the wide and multibyte | ||
| 6009 | +characters of the C standards, so this might be a rather | ||
| 6010 | +useless function. | ||
| 6011 | + | ||
| 6012 | +=item wctomb | ||
| 6013 | + | ||
| 6014 | +This is identical to the C function C<wctomb()>. | ||
| 6015 | +Perl does not have any support for the wide and multibyte | ||
| 6016 | +characters of the C standards, so this might be a rather | ||
| 6017 | +useless function. | ||
| 6018 | + | ||
| 6019 | +=item write | ||
| 6020 | + | ||
| 6021 | +Write to a file. This uses file descriptors such as those obtained by | ||
| 6022 | +calling C<POSIX::open>. | ||
| 6023 | + | ||
| 6024 | + $fd = POSIX::open( "foo", &POSIX::O_WRONLY ); | ||
| 6025 | + $buf = "hello"; | ||
| 6026 | + $bytes = POSIX::write( $fd, $buf, 5 ); | ||
| 6027 | + | ||
| 6028 | +Returns C<undef> on failure. | ||
| 6029 | + | ||
| 6030 | +See also L<perlfunc/syswrite>. | ||
| 6031 | + | ||
| 6032 | +=back | ||
| 6033 | + | ||
| 6034 | +=head1 CLASSES | ||
| 6035 | + | ||
| 6036 | +=head2 POSIX::SigAction | ||
| 6037 | + | ||
| 6038 | +=over 8 | ||
| 6039 | + | ||
| 6040 | +=item new | ||
| 6041 | + | ||
| 6042 | +Creates a new C<POSIX::SigAction> object which corresponds to the C | ||
| 6043 | +C<struct sigaction>. This object will be destroyed automatically when | ||
| 6044 | +it is no longer needed. The first parameter is the handler, a sub | ||
| 6045 | +reference. The second parameter is a C<POSIX::SigSet> object, it | ||
| 6046 | +defaults to the empty set. The third parameter contains the | ||
| 6047 | +C<sa_flags>, it defaults to 0. | ||
| 6048 | + | ||
| 6049 | + $sigset = POSIX::SigSet->new(SIGINT, SIGQUIT); | ||
| 6050 | + $sigaction = POSIX::SigAction->new( \&handler, $sigset, &POSIX::SA_NOCLDSTOP ); | ||
| 6051 | + | ||
| 6052 | +This C<POSIX::SigAction> object is intended for use with the C<POSIX::sigaction()> | ||
| 6053 | +function. | ||
| 6054 | + | ||
| 6055 | +=back | ||
| 6056 | + | ||
| 6057 | +=over 8 | ||
| 6058 | + | ||
| 6059 | +=item handler | ||
| 6060 | + | ||
| 6061 | +=item mask | ||
| 6062 | + | ||
| 6063 | +=item flags | ||
| 6064 | + | ||
| 6065 | +accessor functions to get/set the values of a SigAction object. | ||
| 6066 | + | ||
| 6067 | + $sigset = $sigaction->mask; | ||
| 6068 | + $sigaction->flags(&POSIX::SA_RESTART); | ||
| 6069 | + | ||
| 6070 | +=item safe | ||
| 6071 | + | ||
| 6072 | +accessor function for the "safe signals" flag of a SigAction object; see | ||
| 6073 | +L<perlipc> for general information on safe (a.k.a. "deferred") signals. If | ||
| 6074 | +you wish to handle a signal safely, use this accessor to set the "safe" flag | ||
| 6075 | +in the C<POSIX::SigAction> object: | ||
| 6076 | + | ||
| 6077 | + $sigaction->safe(1); | ||
| 6078 | + | ||
| 6079 | +You may also examine the "safe" flag on the output action object which is | ||
| 6080 | +filled in when given as the third parameter to C<POSIX::sigaction()>: | ||
| 6081 | + | ||
| 6082 | + sigaction(SIGINT, $new_action, $old_action); | ||
| 6083 | + if ($old_action->safe) { | ||
| 6084 | + # previous SIGINT handler used safe signals | ||
| 6085 | + } | ||
| 6086 | + | ||
| 6087 | +=back | ||
| 6088 | + | ||
| 6089 | +=head2 POSIX::SigRt | ||
| 6090 | + | ||
| 6091 | +=over 8 | ||
| 6092 | + | ||
| 6093 | +=item %SIGRT | ||
| 6094 | + | ||
| 6095 | +A hash of the POSIX realtime signal handlers. It is an extension of | ||
| 6096 | +the standard %SIG, the $POSIX::SIGRT{SIGRTMIN} is roughly equivalent | ||
| 6097 | +to $SIG{SIGRTMIN}, but the right POSIX moves (see below) are made with | ||
| 6098 | +the POSIX::SigSet and POSIX::sigaction instead of accessing the %SIG. | ||
| 6099 | + | ||
| 6100 | +You can set the %POSIX::SIGRT elements to set the POSIX realtime | ||
| 6101 | +signal handlers, use C<delete> and C<exists> on the elements, and use | ||
| 6102 | +C<scalar> on the C<%POSIX::SIGRT> to find out how many POSIX realtime | ||
| 6103 | +signals there are available (SIGRTMAX - SIGRTMIN + 1, the SIGRTMAX is | ||
| 6104 | +a valid POSIX realtime signal). | ||
| 6105 | + | ||
| 6106 | +Setting the %SIGRT elements is equivalent to calling this: | ||
| 6107 | + | ||
| 6108 | + sub new { | ||
| 6109 | + my ($rtsig, $handler, $flags) = @_; | ||
| 6110 | + my $sigset = POSIX::SigSet($rtsig); | ||
| 6111 | + my $sigact = POSIX::SigAction->new($handler, $sigset, $flags); | ||
| 6112 | + sigaction($rtsig, $sigact); | ||
| 6113 | + } | ||
| 6114 | + | ||
| 6115 | +The flags default to zero, if you want something different you can | ||
| 6116 | +either use C<local> on $POSIX::SigRt::SIGACTION_FLAGS, or you can | ||
| 6117 | +derive from POSIX::SigRt and define your own C<new()> (the tied hash | ||
| 6118 | +STORE method of the %SIGRT calls C<new($rtsig, $handler, $SIGACTION_FLAGS)>, | ||
| 6119 | +where the $rtsig ranges from zero to SIGRTMAX - SIGRTMIN + 1). | ||
| 6120 | + | ||
| 6121 | +Just as with any signal, you can use sigaction($rtsig, undef, $oa) to | ||
| 6122 | +retrieve the installed signal handler (or, rather, the signal action). | ||
| 6123 | + | ||
| 6124 | +B<NOTE:> whether POSIX realtime signals really work in your system, or | ||
| 6125 | +whether Perl has been compiled so that it works with them, is outside | ||
| 6126 | +of this discussion. | ||
| 6127 | + | ||
| 6128 | +=item SIGRTMIN | ||
| 6129 | + | ||
| 6130 | +Return the minimum POSIX realtime signal number available, or C<undef> | ||
| 6131 | +if no POSIX realtime signals are available. | ||
| 6132 | + | ||
| 6133 | +=item SIGRTMAX | ||
| 6134 | + | ||
| 6135 | +Return the maximum POSIX realtime signal number available, or C<undef> | ||
| 6136 | +if no POSIX realtime signals are available. | ||
| 6137 | + | ||
| 6138 | +=back | ||
| 6139 | + | ||
| 6140 | +=head2 POSIX::SigSet | ||
| 6141 | + | ||
| 6142 | +=over 8 | ||
| 6143 | + | ||
| 6144 | +=item new | ||
| 6145 | + | ||
| 6146 | +Create a new SigSet object. This object will be destroyed automatically | ||
| 6147 | +when it is no longer needed. Arguments may be supplied to initialize the | ||
| 6148 | +set. | ||
| 6149 | + | ||
| 6150 | +Create an empty set. | ||
| 6151 | + | ||
| 6152 | + $sigset = POSIX::SigSet->new; | ||
| 6153 | + | ||
| 6154 | +Create a set with SIGUSR1. | ||
| 6155 | + | ||
| 6156 | + $sigset = POSIX::SigSet->new( &POSIX::SIGUSR1 ); | ||
| 6157 | + | ||
| 6158 | +=item addset | ||
| 6159 | + | ||
| 6160 | +Add a signal to a SigSet object. | ||
| 6161 | + | ||
| 6162 | + $sigset->addset( &POSIX::SIGUSR2 ); | ||
| 6163 | + | ||
| 6164 | +Returns C<undef> on failure. | ||
| 6165 | + | ||
| 6166 | +=item delset | ||
| 6167 | + | ||
| 6168 | +Remove a signal from the SigSet object. | ||
| 6169 | + | ||
| 6170 | + $sigset->delset( &POSIX::SIGUSR2 ); | ||
| 6171 | + | ||
| 6172 | +Returns C<undef> on failure. | ||
| 6173 | + | ||
| 6174 | +=item emptyset | ||
| 6175 | + | ||
| 6176 | +Initialize the SigSet object to be empty. | ||
| 6177 | + | ||
| 6178 | + $sigset->emptyset(); | ||
| 6179 | + | ||
| 6180 | +Returns C<undef> on failure. | ||
| 6181 | + | ||
| 6182 | +=item fillset | ||
| 6183 | + | ||
| 6184 | +Initialize the SigSet object to include all signals. | ||
| 6185 | + | ||
| 6186 | + $sigset->fillset(); | ||
| 6187 | + | ||
| 6188 | +Returns C<undef> on failure. | ||
| 6189 | + | ||
| 6190 | +=item ismember | ||
| 6191 | + | ||
| 6192 | +Tests the SigSet object to see if it contains a specific signal. | ||
| 6193 | + | ||
| 6194 | + if( $sigset->ismember( &POSIX::SIGUSR1 ) ){ | ||
| 6195 | + print "contains SIGUSR1\n"; | ||
| 6196 | + } | ||
| 6197 | + | ||
| 6198 | +=back | ||
| 6199 | + | ||
| 6200 | +=head2 POSIX::Termios | ||
| 6201 | + | ||
| 6202 | +=over 8 | ||
| 6203 | + | ||
| 6204 | +=item new | ||
| 6205 | + | ||
| 6206 | +Create a new Termios object. This object will be destroyed automatically | ||
| 6207 | +when it is no longer needed. A Termios object corresponds to the termios | ||
| 6208 | +C struct. new() mallocs a new one, getattr() fills it from a file descriptor, | ||
| 6209 | +and setattr() sets a file descriptor's parameters to match Termios' contents. | ||
| 6210 | + | ||
| 6211 | + $termios = POSIX::Termios->new; | ||
| 6212 | + | ||
| 6213 | +=item getattr | ||
| 6214 | + | ||
| 6215 | +Get terminal control attributes. | ||
| 6216 | + | ||
| 6217 | +Obtain the attributes for stdin. | ||
| 6218 | + | ||
| 6219 | + $termios->getattr( 0 ) # Recommended for clarity. | ||
| 6220 | + $termios->getattr() | ||
| 6221 | + | ||
| 6222 | +Obtain the attributes for stdout. | ||
| 6223 | + | ||
| 6224 | + $termios->getattr( 1 ) | ||
| 6225 | + | ||
| 6226 | +Returns C<undef> on failure. | ||
| 6227 | + | ||
| 6228 | +=item getcc | ||
| 6229 | + | ||
| 6230 | +Retrieve a value from the c_cc field of a termios object. The c_cc field is | ||
| 6231 | +an array so an index must be specified. | ||
| 6232 | + | ||
| 6233 | + $c_cc[1] = $termios->getcc(1); | ||
| 6234 | + | ||
| 6235 | +=item getcflag | ||
| 6236 | + | ||
| 6237 | +Retrieve the c_cflag field of a termios object. | ||
| 6238 | + | ||
| 6239 | + $c_cflag = $termios->getcflag; | ||
| 6240 | + | ||
| 6241 | +=item getiflag | ||
| 6242 | + | ||
| 6243 | +Retrieve the c_iflag field of a termios object. | ||
| 6244 | + | ||
| 6245 | + $c_iflag = $termios->getiflag; | ||
| 6246 | + | ||
| 6247 | +=item getispeed | ||
| 6248 | + | ||
| 6249 | +Retrieve the input baud rate. | ||
| 6250 | + | ||
| 6251 | + $ispeed = $termios->getispeed; | ||
| 6252 | + | ||
| 6253 | +=item getlflag | ||
| 6254 | + | ||
| 6255 | +Retrieve the c_lflag field of a termios object. | ||
| 6256 | + | ||
| 6257 | + $c_lflag = $termios->getlflag; | ||
| 6258 | + | ||
| 6259 | +=item getoflag | ||
| 6260 | + | ||
| 6261 | +Retrieve the c_oflag field of a termios object. | ||
| 6262 | + | ||
| 6263 | + $c_oflag = $termios->getoflag; | ||
| 6264 | + | ||
| 6265 | +=item getospeed | ||
| 6266 | + | ||
| 6267 | +Retrieve the output baud rate. | ||
| 6268 | + | ||
| 6269 | + $ospeed = $termios->getospeed; | ||
| 6270 | + | ||
| 6271 | +=item setattr | ||
| 6272 | + | ||
| 6273 | +Set terminal control attributes. | ||
| 6274 | + | ||
| 6275 | +Set attributes immediately for stdout. | ||
| 6276 | + | ||
| 6277 | + $termios->setattr( 1, &POSIX::TCSANOW ); | ||
| 6278 | + | ||
| 6279 | +Returns C<undef> on failure. | ||
| 6280 | + | ||
| 6281 | +=item setcc | ||
| 6282 | + | ||
| 6283 | +Set a value in the c_cc field of a termios object. The c_cc field is an | ||
| 6284 | +array so an index must be specified. | ||
| 6285 | + | ||
| 6286 | + $termios->setcc( &POSIX::VEOF, 1 ); | ||
| 6287 | + | ||
| 6288 | +=item setcflag | ||
| 6289 | + | ||
| 6290 | +Set the c_cflag field of a termios object. | ||
| 6291 | + | ||
| 6292 | + $termios->setcflag( $c_cflag | &POSIX::CLOCAL ); | ||
| 6293 | + | ||
| 6294 | +=item setiflag | ||
| 6295 | + | ||
| 6296 | +Set the c_iflag field of a termios object. | ||
| 6297 | + | ||
| 6298 | + $termios->setiflag( $c_iflag | &POSIX::BRKINT ); | ||
| 6299 | + | ||
| 6300 | +=item setispeed | ||
| 6301 | + | ||
| 6302 | +Set the input baud rate. | ||
| 6303 | + | ||
| 6304 | + $termios->setispeed( &POSIX::B9600 ); | ||
| 6305 | + | ||
| 6306 | +Returns C<undef> on failure. | ||
| 6307 | + | ||
| 6308 | +=item setlflag | ||
| 6309 | + | ||
| 6310 | +Set the c_lflag field of a termios object. | ||
| 6311 | + | ||
| 6312 | + $termios->setlflag( $c_lflag | &POSIX::ECHO ); | ||
| 6313 | + | ||
| 6314 | +=item setoflag | ||
| 6315 | + | ||
| 6316 | +Set the c_oflag field of a termios object. | ||
| 6317 | + | ||
| 6318 | + $termios->setoflag( $c_oflag | &POSIX::OPOST ); | ||
| 6319 | + | ||
| 6320 | +=item setospeed | ||
| 6321 | + | ||
| 6322 | +Set the output baud rate. | ||
| 6323 | + | ||
| 6324 | + $termios->setospeed( &POSIX::B9600 ); | ||
| 6325 | + | ||
| 6326 | +Returns C<undef> on failure. | ||
| 6327 | + | ||
| 6328 | +=item Baud rate values | ||
| 6329 | + | ||
| 6330 | +B38400 B75 B200 B134 B300 B1800 B150 B0 B19200 B1200 B9600 B600 B4800 B50 B2400 B110 | ||
| 6331 | + | ||
| 6332 | +=item Terminal interface values | ||
| 6333 | + | ||
| 6334 | +TCSADRAIN TCSANOW TCOON TCIOFLUSH TCOFLUSH TCION TCIFLUSH TCSAFLUSH TCIOFF TCOOFF | ||
| 6335 | + | ||
| 6336 | +=item c_cc field values | ||
| 6337 | + | ||
| 6338 | +VEOF VEOL VERASE VINTR VKILL VQUIT VSUSP VSTART VSTOP VMIN VTIME NCCS | ||
| 6339 | + | ||
| 6340 | +=item c_cflag field values | ||
| 6341 | + | ||
| 6342 | +CLOCAL CREAD CSIZE CS5 CS6 CS7 CS8 CSTOPB HUPCL PARENB PARODD | ||
| 6343 | + | ||
| 6344 | +=item c_iflag field values | ||
| 6345 | + | ||
| 6346 | +BRKINT ICRNL IGNBRK IGNCR IGNPAR INLCR INPCK ISTRIP IXOFF IXON PARMRK | ||
| 6347 | + | ||
| 6348 | +=item c_lflag field values | ||
| 6349 | + | ||
| 6350 | +ECHO ECHOE ECHOK ECHONL ICANON IEXTEN ISIG NOFLSH TOSTOP | ||
| 6351 | + | ||
| 6352 | +=item c_oflag field values | ||
| 6353 | + | ||
| 6354 | +OPOST | ||
| 6355 | + | ||
| 6356 | +=back | ||
| 6357 | + | ||
| 6358 | +=head1 PATHNAME CONSTANTS | ||
| 6359 | + | ||
| 6360 | +=over 8 | ||
| 6361 | + | ||
| 6362 | +=item Constants | ||
| 6363 | + | ||
| 6364 | +_PC_CHOWN_RESTRICTED _PC_LINK_MAX _PC_MAX_CANON _PC_MAX_INPUT _PC_NAME_MAX _PC_NO_TRUNC _PC_PATH_MAX _PC_PIPE_BUF _PC_VDISABLE | ||
| 6365 | + | ||
| 6366 | +=back | ||
| 6367 | + | ||
| 6368 | +=head1 POSIX CONSTANTS | ||
| 6369 | + | ||
| 6370 | +=over 8 | ||
| 6371 | + | ||
| 6372 | +=item Constants | ||
| 6373 | + | ||
| 6374 | +_POSIX_ARG_MAX _POSIX_CHILD_MAX _POSIX_CHOWN_RESTRICTED _POSIX_JOB_CONTROL _POSIX_LINK_MAX _POSIX_MAX_CANON _POSIX_MAX_INPUT _POSIX_NAME_MAX _POSIX_NGROUPS_MAX _POSIX_NO_TRUNC _POSIX_OPEN_MAX _POSIX_PATH_MAX _POSIX_PIPE_BUF _POSIX_SAVED_IDS _POSIX_SSIZE_MAX _POSIX_STREAM_MAX _POSIX_TZNAME_MAX _POSIX_VDISABLE _POSIX_VERSION | ||
| 6375 | + | ||
| 6376 | +=back | ||
| 6377 | + | ||
| 6378 | +=head1 SYSTEM CONFIGURATION | ||
| 6379 | + | ||
| 6380 | +=over 8 | ||
| 6381 | + | ||
| 6382 | +=item Constants | ||
| 6383 | + | ||
| 6384 | +_SC_ARG_MAX _SC_CHILD_MAX _SC_CLK_TCK _SC_JOB_CONTROL _SC_NGROUPS_MAX _SC_OPEN_MAX _SC_PAGESIZE _SC_SAVED_IDS _SC_STREAM_MAX _SC_TZNAME_MAX _SC_VERSION | ||
| 6385 | + | ||
| 6386 | +=back | ||
| 6387 | + | ||
| 6388 | +=head1 ERRNO | ||
| 6389 | + | ||
| 6390 | +=over 8 | ||
| 6391 | + | ||
| 6392 | +=item Constants | ||
| 6393 | + | ||
| 6394 | +E2BIG EACCES EADDRINUSE EADDRNOTAVAIL EAFNOSUPPORT EAGAIN EALREADY EBADF | ||
| 6395 | +EBUSY ECHILD ECONNABORTED ECONNREFUSED ECONNRESET EDEADLK EDESTADDRREQ | ||
| 6396 | +EDOM EDQUOT EEXIST EFAULT EFBIG EHOSTDOWN EHOSTUNREACH EINPROGRESS EINTR | ||
| 6397 | +EINVAL EIO EISCONN EISDIR ELOOP EMFILE EMLINK EMSGSIZE ENAMETOOLONG | ||
| 6398 | +ENETDOWN ENETRESET ENETUNREACH ENFILE ENOBUFS ENODEV ENOENT ENOEXEC | ||
| 6399 | +ENOLCK ENOMEM ENOPROTOOPT ENOSPC ENOSYS ENOTBLK ENOTCONN ENOTDIR | ||
| 6400 | +ENOTEMPTY ENOTSOCK ENOTTY ENXIO EOPNOTSUPP EPERM EPFNOSUPPORT EPIPE | ||
| 6401 | +EPROCLIM EPROTONOSUPPORT EPROTOTYPE ERANGE EREMOTE ERESTART EROFS | ||
| 6402 | +ESHUTDOWN ESOCKTNOSUPPORT ESPIPE ESRCH ESTALE ETIMEDOUT ETOOMANYREFS | ||
| 6403 | +ETXTBSY EUSERS EWOULDBLOCK EXDEV | ||
| 6404 | + | ||
| 6405 | +=back | ||
| 6406 | + | ||
| 6407 | +=head1 FCNTL | ||
| 6408 | + | ||
| 6409 | +=over 8 | ||
| 6410 | + | ||
| 6411 | +=item Constants | ||
| 6412 | + | ||
| 6413 | +FD_CLOEXEC F_DUPFD F_GETFD F_GETFL F_GETLK F_OK F_RDLCK F_SETFD F_SETFL F_SETLK F_SETLKW F_UNLCK F_WRLCK O_ACCMODE O_APPEND O_CREAT O_EXCL O_NOCTTY O_NONBLOCK O_RDONLY O_RDWR O_TRUNC O_WRONLY | ||
| 6414 | + | ||
| 6415 | +=back | ||
| 6416 | + | ||
| 6417 | +=head1 FLOAT | ||
| 6418 | + | ||
| 6419 | +=over 8 | ||
| 6420 | + | ||
| 6421 | +=item Constants | ||
| 6422 | + | ||
| 6423 | +DBL_DIG DBL_EPSILON DBL_MANT_DIG DBL_MAX DBL_MAX_10_EXP DBL_MAX_EXP DBL_MIN DBL_MIN_10_EXP DBL_MIN_EXP FLT_DIG FLT_EPSILON FLT_MANT_DIG FLT_MAX FLT_MAX_10_EXP FLT_MAX_EXP FLT_MIN FLT_MIN_10_EXP FLT_MIN_EXP FLT_RADIX FLT_ROUNDS LDBL_DIG LDBL_EPSILON LDBL_MANT_DIG LDBL_MAX LDBL_MAX_10_EXP LDBL_MAX_EXP LDBL_MIN LDBL_MIN_10_EXP LDBL_MIN_EXP | ||
| 6424 | + | ||
| 6425 | +=back | ||
| 6426 | + | ||
| 6427 | +=head1 LIMITS | ||
| 6428 | + | ||
| 6429 | +=over 8 | ||
| 6430 | + | ||
| 6431 | +=item Constants | ||
| 6432 | + | ||
| 6433 | +ARG_MAX CHAR_BIT CHAR_MAX CHAR_MIN CHILD_MAX INT_MAX INT_MIN LINK_MAX LONG_MAX LONG_MIN MAX_CANON MAX_INPUT MB_LEN_MAX NAME_MAX NGROUPS_MAX OPEN_MAX PATH_MAX PIPE_BUF SCHAR_MAX SCHAR_MIN SHRT_MAX SHRT_MIN SSIZE_MAX STREAM_MAX TZNAME_MAX UCHAR_MAX UINT_MAX ULONG_MAX USHRT_MAX | ||
| 6434 | + | ||
| 6435 | +=back | ||
| 6436 | + | ||
| 6437 | +=head1 LOCALE | ||
| 6438 | + | ||
| 6439 | +=over 8 | ||
| 6440 | + | ||
| 6441 | +=item Constants | ||
| 6442 | + | ||
| 6443 | +LC_ALL LC_COLLATE LC_CTYPE LC_MONETARY LC_NUMERIC LC_TIME | ||
| 6444 | + | ||
| 6445 | +=back | ||
| 6446 | + | ||
| 6447 | +=head1 MATH | ||
| 6448 | + | ||
| 6449 | +=over 8 | ||
| 6450 | + | ||
| 6451 | +=item Constants | ||
| 6452 | + | ||
| 6453 | +HUGE_VAL | ||
| 6454 | + | ||
| 6455 | +=back | ||
| 6456 | + | ||
| 6457 | +=head1 SIGNAL | ||
| 6458 | + | ||
| 6459 | +=over 8 | ||
| 6460 | + | ||
| 6461 | +=item Constants | ||
| 6462 | + | ||
| 6463 | +SA_NOCLDSTOP SA_NOCLDWAIT SA_NODEFER SA_ONSTACK SA_RESETHAND SA_RESTART | ||
| 6464 | +SA_SIGINFO SIGABRT SIGALRM SIGCHLD SIGCONT SIGFPE SIGHUP SIGILL SIGINT | ||
| 6465 | +SIGKILL SIGPIPE SIGQUIT SIGSEGV SIGSTOP SIGTERM SIGTSTP SIGTTIN SIGTTOU | ||
| 6466 | +SIGUSR1 SIGUSR2 SIG_BLOCK SIG_DFL SIG_ERR SIG_IGN SIG_SETMASK | ||
| 6467 | +SIG_UNBLOCK | ||
| 6468 | + | ||
| 6469 | +=back | ||
| 6470 | + | ||
| 6471 | +=head1 STAT | ||
| 6472 | + | ||
| 6473 | +=over 8 | ||
| 6474 | + | ||
| 6475 | +=item Constants | ||
| 6476 | + | ||
| 6477 | +S_IRGRP S_IROTH S_IRUSR S_IRWXG S_IRWXO S_IRWXU S_ISGID S_ISUID S_IWGRP S_IWOTH S_IWUSR S_IXGRP S_IXOTH S_IXUSR | ||
| 6478 | + | ||
| 6479 | +=item Macros | ||
| 6480 | + | ||
| 6481 | +S_ISBLK S_ISCHR S_ISDIR S_ISFIFO S_ISREG | ||
| 6482 | + | ||
| 6483 | +=back | ||
| 6484 | + | ||
| 6485 | +=head1 STDLIB | ||
| 6486 | + | ||
| 6487 | +=over 8 | ||
| 6488 | + | ||
| 6489 | +=item Constants | ||
| 6490 | + | ||
| 6491 | +EXIT_FAILURE EXIT_SUCCESS MB_CUR_MAX RAND_MAX | ||
| 6492 | + | ||
| 6493 | +=back | ||
| 6494 | + | ||
| 6495 | +=head1 STDIO | ||
| 6496 | + | ||
| 6497 | +=over 8 | ||
| 6498 | + | ||
| 6499 | +=item Constants | ||
| 6500 | + | ||
| 6501 | +BUFSIZ EOF FILENAME_MAX L_ctermid L_cuserid L_tmpname TMP_MAX | ||
| 6502 | + | ||
| 6503 | +=back | ||
| 6504 | + | ||
| 6505 | +=head1 TIME | ||
| 6506 | + | ||
| 6507 | +=over 8 | ||
| 6508 | + | ||
| 6509 | +=item Constants | ||
| 6510 | + | ||
| 6511 | +CLK_TCK CLOCKS_PER_SEC | ||
| 6512 | + | ||
| 6513 | +=back | ||
| 6514 | + | ||
| 6515 | +=head1 UNISTD | ||
| 6516 | + | ||
| 6517 | +=over 8 | ||
| 6518 | + | ||
| 6519 | +=item Constants | ||
| 6520 | + | ||
| 6521 | +R_OK SEEK_CUR SEEK_END SEEK_SET STDIN_FILENO STDOUT_FILENO STDERR_FILENO W_OK X_OK | ||
| 6522 | + | ||
| 6523 | +=back | ||
| 6524 | + | ||
| 6525 | +=head1 WAIT | ||
| 6526 | + | ||
| 6527 | +=over 8 | ||
| 6528 | + | ||
| 6529 | +=item Constants | ||
| 6530 | + | ||
| 6531 | +WNOHANG WUNTRACED | ||
| 6532 | + | ||
| 6533 | +=over 16 | ||
| 6534 | + | ||
| 6535 | +=item WNOHANG | ||
| 6536 | + | ||
| 6537 | +Do not suspend the calling process until a child process | ||
| 6538 | +changes state but instead return immediately. | ||
| 6539 | + | ||
| 6540 | +=item WUNTRACED | ||
| 6541 | + | ||
| 6542 | +Catch stopped child processes. | ||
| 6543 | + | ||
| 6544 | +=back | ||
| 6545 | + | ||
| 6546 | +=item Macros | ||
| 6547 | + | ||
| 6548 | +WIFEXITED WEXITSTATUS WIFSIGNALED WTERMSIG WIFSTOPPED WSTOPSIG | ||
| 6549 | + | ||
| 6550 | +=over 16 | ||
| 6551 | + | ||
| 6552 | +=item WIFEXITED | ||
| 6553 | + | ||
| 6554 | +WIFEXITED($?) returns true if the child process exited normally | ||
| 6555 | +(C<exit()> or by falling off the end of C<main()>) | ||
| 6556 | + | ||
| 6557 | +=item WEXITSTATUS | ||
| 6558 | + | ||
| 6559 | +WEXITSTATUS($?) returns the normal exit status of the child process | ||
| 6560 | +(only meaningful if WIFEXITED($?) is true) | ||
| 6561 | + | ||
| 6562 | +=item WIFSIGNALED | ||
| 6563 | + | ||
| 6564 | +WIFSIGNALED($?) returns true if the child process terminated because | ||
| 6565 | +of a signal | ||
| 6566 | + | ||
| 6567 | +=item WTERMSIG | ||
| 6568 | + | ||
| 6569 | +WTERMSIG($?) returns the signal the child process terminated for | ||
| 6570 | +(only meaningful if WIFSIGNALED($?) is true) | ||
| 6571 | + | ||
| 6572 | +=item WIFSTOPPED | ||
| 6573 | + | ||
| 6574 | +WIFSTOPPED($?) returns true if the child process is currently stopped | ||
| 6575 | +(can happen only if you specified the WUNTRACED flag to waitpid()) | ||
| 6576 | + | ||
| 6577 | +=item WSTOPSIG | ||
| 6578 | + | ||
| 6579 | +WSTOPSIG($?) returns the signal the child process was stopped for | ||
| 6580 | +(only meaningful if WIFSTOPPED($?) is true) | ||
| 6581 | + | ||
| 6582 | +=back | ||
| 6583 | + | ||
| 6584 | +=back | ||
| 6585 | + | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/parallel_build_fix_4.patch b/meta/recipes-devtools/perl/perl-5.12.3/parallel_build_fix_4.patch deleted file mode 100644 index 98bf0743fb..0000000000 --- a/meta/recipes-devtools/perl/perl-5.12.3/parallel_build_fix_4.patch +++ /dev/null | |||
| @@ -1,57 +0,0 @@ | |||
| 1 | Upstream-Status:Inappropriate [Backport] | ||
| 2 | |||
| 3 | commit 43c0c913165d6abe1bc0cb45a784eb1c32c3700b | ||
| 4 | Author: Nicholas Clark <nick@ccl4.org> | ||
| 5 | Date: Mon Feb 14 09:06:42 2011 +0000 | ||
| 6 | |||
| 7 | For miniperl, use the USE_SITECUSTOMIZE feature to load the build-time @INC | ||
| 8 | |||
| 9 | For miniperl (only), always enable USE_SITECUSTOMIZE, but change it to load | ||
| 10 | a buildcustomize.pl file from $INC[0], if present. The default @INC for | ||
| 11 | miniperl is '.', so by default this does nothing. | ||
| 12 | |||
| 13 | diff --git a/perl.c b/perl.c | ||
| 14 | index 8f8565d..6bb9f46 100644 | ||
| 15 | --- a/perl.c | ||
| 16 | +++ b/perl.c | ||
| 17 | @@ -24,6 +24,10 @@ | ||
| 18 | * function of the interpreter; that can be found in perlmain.c | ||
| 19 | */ | ||
| 20 | |||
| 21 | +#ifdef PERL_IS_MINIPERL | ||
| 22 | +# define USE_SITECUSTOMIZE | ||
| 23 | +#endif | ||
| 24 | + | ||
| 25 | #include "EXTERN.h" | ||
| 26 | #define PERL_IN_PERL_C | ||
| 27 | #include "perl.h" | ||
| 28 | @@ -1973,15 +1977,26 @@ S_parse_body(pTHX_ char **env, XSINIT_t xsinit) | ||
| 29 | } | ||
| 30 | } | ||
| 31 | |||
| 32 | -#if defined(USE_SITECUSTOMIZE) && !defined(PERL_IS_MINIPERL) | ||
| 33 | +#if defined(USE_SITECUSTOMIZE) | ||
| 34 | if (!minus_f) { | ||
| 35 | - /* SITELIB_EXP is a function call on Win32. | ||
| 36 | - The games with local $! are to avoid setting errno if there is no | ||
| 37 | + /* The games with local $! are to avoid setting errno if there is no | ||
| 38 | sitecustomize script. */ | ||
| 39 | +# ifdef PERL_IS_MINIPERL | ||
| 40 | + AV *const inc = GvAV(PL_incgv); | ||
| 41 | + SV **const inc0 = inc ? av_fetch(inc, 0, FALSE) : NULL; | ||
| 42 | + | ||
| 43 | + if (inc0) { | ||
| 44 | + (void)Perl_av_create_and_unshift_one(aTHX_ &PL_preambleav, | ||
| 45 | + Perl_newSVpvf(aTHX_ | ||
| 46 | + "BEGIN { do {local $!; -f '%"SVf"/buildcustomize.pl'} && do '%"SVf"/buildcustomize.pl' }", *inc0, *inc0)); | ||
| 47 | + } | ||
| 48 | +# else | ||
| 49 | + /* SITELIB_EXP is a function call on Win32. */ | ||
| 50 | const char *const sitelib = SITELIB_EXP; | ||
| 51 | (void)Perl_av_create_and_unshift_one(aTHX_ &PL_preambleav, | ||
| 52 | Perl_newSVpvf(aTHX_ | ||
| 53 | "BEGIN { do {local $!; -f '%s/sitecustomize.pl'} && do '%s/sitecustomize.pl' }", sitelib, sitelib)); | ||
| 54 | +# endif | ||
| 55 | } | ||
| 56 | #endif | ||
| 57 | |||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/parallel_build_fix_5.patch b/meta/recipes-devtools/perl/perl-5.12.3/parallel_build_fix_5.patch deleted file mode 100644 index 5891ee6a93..0000000000 --- a/meta/recipes-devtools/perl/perl-5.12.3/parallel_build_fix_5.patch +++ /dev/null | |||
| @@ -1,430 +0,0 @@ | |||
| 1 | Upstream-Status:Inappropriate [Backport] | ||
| 2 | |||
| 3 | Rebased by Nitin A Kamble <nitin.a.kamble@intel.com> on 3/11/2011 | ||
| 4 | |||
| 5 | commit 5e4c4c91bd52a48de59520d5e9b4e3478e49c613 | ||
| 6 | Author: Nicholas Clark <nick@ccl4.org> | ||
| 7 | Date: Mon Feb 14 10:14:18 2011 +0000 | ||
| 8 | |||
| 9 | Use a buildcustomize.pl to set @INC in miniperl when building extensions. | ||
| 10 | |||
| 11 | With the build tools now shipped in various subdirectories of cpan/ and dist/ | ||
| 12 | we need to add several paths to @INC when invoking MakeMaker (etc) to build | ||
| 13 | extensions. | ||
| 14 | |||
| 15 | The previous approach of using $ENV{PERL5LIB} was fragile, because: | ||
| 16 | a: It was hitting the length limit for %ENV variables on VMS | ||
| 17 | b: It was running the risk of race conditions in a parallel build - | ||
| 18 | ExtUtils::Makemaker "knows" to add -I../..lib, which puts lib at the *front* | ||
| 19 | of @INC, but if one parallel process happens to copy a module into lib/ | ||
| 20 | whilst another is searching for it, the second may get a partial read | ||
| 21 | c: Overwriting $ENV{PERL5LIB} breaks any system where any of the installed | ||
| 22 | build tools are actually implemented in Perl, if they are relying on | ||
| 23 | $ENV{PERL5LIB} for setup | ||
| 24 | |||
| 25 | This approach | ||
| 26 | |||
| 27 | a: Doesn't have %ENV length limits | ||
| 28 | b: Ensures that lib/ is last, so copy targets are always shadowing copy | ||
| 29 | sources | ||
| 30 | c: Only affects miniperl, and doesn't touch $ENV{PERL5LIB} | ||
| 31 | |||
| 32 | Approaches that turned out to have fatal flaws: | ||
| 33 | |||
| 34 | 1: Using $ENV{PERL5OPT} with a module fails because ExtUtils::MakeMaker | ||
| 35 | searches for the build perl without setting lib, and treats the error | ||
| 36 | caused by a failed -M as "not a valid perl 5 binary" | ||
| 37 | 2: Refactoring ExtUtils::MakeMaker to *not* use -I for lib, and instead rely | ||
| 38 | on $ENV{PERL5LIB} [which includes "../../lib"] fails because: | ||
| 39 | some extensions have subdirectories, and on these EU::MM correctly uses | ||
| 40 | -I../../../lib, where as $ENV{PERL5LIB} only has space for relative paths, | ||
| 41 | and only with two levels. | ||
| 42 | |||
| 43 | This approach actually takes advantage of ExtUtils::MakeMaker setting an -I | ||
| 44 | option correct for the depth of directory being built. | ||
| 45 | |||
| 46 | Index: perl-5.12.3/Cross/Makefile-cross-SH | ||
| 47 | =================================================================== | ||
| 48 | --- perl-5.12.3.orig/Cross/Makefile-cross-SH | ||
| 49 | +++ perl-5.12.3/Cross/Makefile-cross-SH | ||
| 50 | @@ -324,7 +324,7 @@ $spitshell >>$Makefile <<'!NO!SUBS!' | ||
| 51 | |||
| 52 | CONFIGPM = xlib/$(CROSS_NAME)/Config.pm | ||
| 53 | |||
| 54 | -private = preplibrary $(CONFIGPM) $(CROSS_LIB)/Config.pod | ||
| 55 | +private = preplibrary $(CONFIGPM) $(CROSS_LIB)/Config.pod lib/buildcustomize.pl | ||
| 56 | |||
| 57 | shextract = Makefile cflags config.h makeaperl makedepend \ | ||
| 58 | makedir myconfig writemain pod/Makefile | ||
| 59 | @@ -752,6 +752,9 @@ lib/lib.pm: miniperl $(CONFIGPM) | ||
| 60 | @-rm -f $@ | ||
| 61 | $(LDLIBPTH) ./miniperl -Ilib -MCross lib/lib_pm.PL | ||
| 62 | |||
| 63 | +lib/buildcustomize.pl: $(MINIPERL_EXE) write_buildcustomize.pl | ||
| 64 | + $(MINIPERL) write_buildcustomize.pl >lib/buildcustomize.pl | ||
| 65 | + | ||
| 66 | unidatafiles $(unidatafiles): uni.data | ||
| 67 | |||
| 68 | uni.data: miniperl$(EXE_EXT) $(CONFIGPM) lib/unicore/mktables | ||
| 69 | @@ -922,16 +925,16 @@ manicheck: FORCE | ||
| 70 | |||
| 71 | |||
| 72 | |||
| 73 | -$(DYNALOADER): preplibrary FORCE | ||
| 74 | +$(DYNALOADER): lib/buildcustomize.pl preplibrary FORCE | ||
| 75 | @$(LDLIBPTH) $(RUN) ./miniperl$(EXE_EXT) -Ilib make_ext.pl --cross $@ MAKE=$(MAKE) LIBPERL_A=$(LIBPERL) LINKTYPE=static $(STATIC_LDFLAGS) | ||
| 76 | |||
| 77 | -d_dummy $(dynamic_ext): miniperl$(EXE_EXT) preplibrary makeppport $(DYNALOADER) FORCE | ||
| 78 | +d_dummy $(dynamic_ext): miniperl$(EXE_EXT) lib/buildcustomize.pl preplibrary makeppport $(DYNALOADER) FORCE | ||
| 79 | @$(LDLIBPTH) $(RUN) ./miniperl$(EXE_EXT) -Ilib make_ext.pl --cross $@ MAKE=$(MAKE) LIBPERL_A=$(LIBPERL) LINKTYPE=dynamic | ||
| 80 | |||
| 81 | -s_dummy $(static_ext): miniperl$(EXE_EXT) preplibrary makeppport $(DYNALOADER) FORCE | ||
| 82 | +s_dummy $(static_ext): miniperl$(EXE_EXT) lib/buildcustomize.pl preplibrary makeppport $(DYNALOADER) FORCE | ||
| 83 | @$(LDLIBPTH) $(RUN) ./miniperl$(EXE_EXT) -Ilib make_ext.pl --cross $@ MAKE=$(MAKE) LIBPERL_A=$(LIBPERL) LINKTYPE=static $(STATIC_LDFLAGS) | ||
| 84 | |||
| 85 | -n_dummy $(nonxs_ext): miniperl$(EXE_EXT) preplibrary $(DYNALOADER) FORCE | ||
| 86 | +n_dummy $(nonxs_ext): miniperl$(EXE_EXT) lib/buildcustomize.pl preplibrary $(DYNALOADER) FORCE | ||
| 87 | @$(LDLIBPTH) $(RUN) ./miniperl$(EXE_EXT) -Ilib make_ext.pl --cross $@ MAKE=$(MAKE) LIBPERL_A=$(LIBPERL) | ||
| 88 | !NO!SUBS! | ||
| 89 | |||
| 90 | Index: perl-5.12.3/MANIFEST | ||
| 91 | =================================================================== | ||
| 92 | --- perl-5.12.3.orig/MANIFEST | ||
| 93 | +++ perl-5.12.3/MANIFEST | ||
| 94 | @@ -4747,6 +4747,7 @@ win32/wince.c WinCE port | ||
| 95 | win32/wince.h WinCE port | ||
| 96 | win32/wincesck.c WinCE port | ||
| 97 | writemain.SH Generate perlmain.c from miniperlmain.c+extensions | ||
| 98 | +write_buildcustomize.pl Generate lib/buildcustomize.pl | ||
| 99 | x2p/a2p.c Output of a2p.y run through byacc | ||
| 100 | x2p/a2p.h Global declarations | ||
| 101 | x2p/a2p.pod Pod for awk to perl translator | ||
| 102 | Index: perl-5.12.3/Makefile.SH | ||
| 103 | =================================================================== | ||
| 104 | --- perl-5.12.3.orig/Makefile.SH | ||
| 105 | +++ perl-5.12.3/Makefile.SH | ||
| 106 | @@ -428,7 +428,7 @@ esac | ||
| 107 | ## In the following dollars and backticks do not need the extra backslash. | ||
| 108 | $spitshell >>$Makefile <<'!NO!SUBS!' | ||
| 109 | |||
| 110 | -private = preplibrary $(CONFIGPM) $(CONFIGPOD) lib/ExtUtils/Miniperl.pm git_version.h | ||
| 111 | +private = preplibrary $(CONFIGPM) $(CONFIGPOD) lib/ExtUtils/Miniperl.pm git_version.h lib/buildcustomize.pl | ||
| 112 | |||
| 113 | # Files to be built with variable substitution before miniperl | ||
| 114 | # is available. | ||
| 115 | @@ -991,6 +991,9 @@ $(plextract): $(MINIPERL_EXE) $(CONFIGPM | ||
| 116 | x2p/s2p: $(MINIPERL_EXE) $(CONFIGPM) $(dynamic_ext) x2p/s2p.PL | ||
| 117 | cd x2p; $(LDLIBPTH) $(MAKE) s2p | ||
| 118 | |||
| 119 | +lib/buildcustomize.pl: $(MINIPERL_EXE) write_buildcustomize.pl | ||
| 120 | + $(MINIPERL) write_buildcustomize.pl >lib/buildcustomize.pl | ||
| 121 | + | ||
| 122 | unidatafiles $(unidatafiles) pod/perluniprops.pod: uni.data | ||
| 123 | |||
| 124 | uni.data: $(MINIPERL_EXE) $(CONFIGPM) lib/unicore/mktables $(nonxs_ext) | ||
| 125 | @@ -1160,16 +1163,16 @@ manicheck: FORCE | ||
| 126 | # | ||
| 127 | # DynaLoader may be needed for extensions that use Makefile.PL. | ||
| 128 | |||
| 129 | -$(DYNALOADER): $(MINIPERL_EXE) preplibrary FORCE $(nonxs_ext) | ||
| 130 | +$(DYNALOADER): $(MINIPERL_EXE) lib/buildcustomize.pl preplibrary FORCE $(nonxs_ext) | ||
| 131 | $(MINIPERL) make_ext.pl $@ MAKE=$(MAKE) LIBPERL_A=$(LIBPERL) LINKTYPE=static $(STATIC_LDFLAGS) | ||
| 132 | |||
| 133 | -d_dummy $(dynamic_ext): $(MINIPERL_EXE) preplibrary makeppport $(DYNALOADER) FORCE $(PERLEXPORT) | ||
| 134 | +d_dummy $(dynamic_ext): $(MINIPERL_EXE) lib/buildcustomize.pl preplibrary makeppport $(DYNALOADER) FORCE $(PERLEXPORT) | ||
| 135 | $(MINIPERL) make_ext.pl $@ MAKE=$(MAKE) LIBPERL_A=$(LIBPERL) LINKTYPE=dynamic | ||
| 136 | |||
| 137 | -s_dummy $(static_ext): $(MINIPERL_EXE) preplibrary makeppport $(DYNALOADER) FORCE | ||
| 138 | +s_dummy $(static_ext): $(MINIPERL_EXE) lib/buildcustomize.pl preplibrary makeppport $(DYNALOADER) FORCE | ||
| 139 | $(MINIPERL) make_ext.pl $@ MAKE=$(MAKE) LIBPERL_A=$(LIBPERL) LINKTYPE=static $(STATIC_LDFLAGS) | ||
| 140 | |||
| 141 | -n_dummy $(nonxs_ext): $(MINIPERL_EXE) preplibrary FORCE | ||
| 142 | +n_dummy $(nonxs_ext): $(MINIPERL_EXE) lib/buildcustomize.pl preplibrary FORCE | ||
| 143 | $(MINIPERL) make_ext.pl $@ MAKE=$(MAKE) LIBPERL_A=$(LIBPERL) | ||
| 144 | !NO!SUBS! | ||
| 145 | |||
| 146 | Index: perl-5.12.3/installperl | ||
| 147 | =================================================================== | ||
| 148 | --- perl-5.12.3.orig/installperl | ||
| 149 | +++ perl-5.12.3/installperl | ||
| 150 | @@ -714,6 +714,8 @@ sub installlib { | ||
| 151 | # ignore the test extensions | ||
| 152 | return if $dir =~ m{\bXS/(?:APItest|Typemap)\b}; | ||
| 153 | return if $name =~ m{\b(?:APItest|Typemap)\.pm$}; | ||
| 154 | + # ignore the build support code | ||
| 155 | + return if $name =~ /\bbuildcustomize\.pl$/; | ||
| 156 | # ignore the demo files | ||
| 157 | return if $dir =~ /\b(?:demos?|eg)\b/; | ||
| 158 | |||
| 159 | Index: perl-5.12.3/make_ext.pl | ||
| 160 | =================================================================== | ||
| 161 | --- perl-5.12.3.orig/make_ext.pl | ||
| 162 | +++ perl-5.12.3/make_ext.pl | ||
| 163 | @@ -4,11 +4,9 @@ use warnings; | ||
| 164 | use Config; | ||
| 165 | BEGIN { | ||
| 166 | if ($^O eq 'MSWin32') { | ||
| 167 | - unshift @INC, ('../cpan/Cwd', '../cpan/Cwd/lib'); | ||
| 168 | - require File::Spec::Functions; | ||
| 169 | + unshift @INC, '../cpan/Cwd'; | ||
| 170 | require FindExt; | ||
| 171 | - } | ||
| 172 | - else { | ||
| 173 | + } else { | ||
| 174 | unshift @INC, 'cpan/Cwd'; | ||
| 175 | } | ||
| 176 | } | ||
| 177 | @@ -18,27 +16,6 @@ my $is_Win32 = $^O eq 'MSWin32'; | ||
| 178 | my $is_VMS = $^O eq 'VMS'; | ||
| 179 | my $is_Unix = !$is_Win32 && !$is_VMS; | ||
| 180 | |||
| 181 | -# To clarify, this isn't the entire suite of modules considered "toolchain" | ||
| 182 | -# It's not even all modules needed to build ext/ | ||
| 183 | -# It's just the source paths of the (minimum complete set of) modules in ext/ | ||
| 184 | -# needed to build the nonxs modules | ||
| 185 | -# After which, all nonxs modules are in lib, which was always sufficient to | ||
| 186 | -# allow miniperl to build everything else. | ||
| 187 | - | ||
| 188 | -# This list cannot get any longer without overflowing the length limit for | ||
| 189 | -# environment variables on VMS | ||
| 190 | -my @toolchain = qw(cpan/AutoLoader/lib | ||
| 191 | - cpan/Cwd cpan/Cwd/lib | ||
| 192 | - cpan/ExtUtils-Command/lib | ||
| 193 | - dist/ExtUtils-Install/lib | ||
| 194 | - cpan/ExtUtils-MakeMaker/lib | ||
| 195 | - cpan/ExtUtils-Manifest/lib | ||
| 196 | - cpan/File-Path/lib | ||
| 197 | - ); | ||
| 198 | - | ||
| 199 | -# Used only in ExtUtils::Liblist::Kid::_win32_ext() | ||
| 200 | -push @toolchain, 'cpan/Text-ParseWords/lib' if $is_Win32; | ||
| 201 | - | ||
| 202 | my @ext_dirs = qw(cpan dist ext); | ||
| 203 | my $ext_dirs_re = '(?:' . join('|', @ext_dirs) . ')'; | ||
| 204 | |||
| 205 | @@ -295,16 +272,7 @@ sub build_extension { | ||
| 206 | $perl ||= "$up/miniperl"; | ||
| 207 | my $return_dir = $up; | ||
| 208 | my $lib_dir = "$up/lib"; | ||
| 209 | - # $lib_dir must be last, as we're copying files into it, and in a parallel | ||
| 210 | - # make there's a race condition if one process tries to open a module that | ||
| 211 | - # another process has half-written. | ||
| 212 | - my @new_inc = ((map {"$up/$_"} @toolchain), $lib_dir); | ||
| 213 | - if ($is_Win32) { | ||
| 214 | - @new_inc = map {File::Spec::Functions::rel2abs($_)} @new_inc; | ||
| 215 | - } | ||
| 216 | - $ENV{PERL5LIB} = join $Config{path_sep}, @new_inc; | ||
| 217 | $ENV{PERL_CORE} = 1; | ||
| 218 | - # warn $ENV{PERL5LIB}; | ||
| 219 | |||
| 220 | my $makefile; | ||
| 221 | if ($is_VMS) { | ||
| 222 | @@ -375,7 +343,7 @@ EOM | ||
| 223 | @cross = '-MCross'; | ||
| 224 | } | ||
| 225 | |||
| 226 | - my @args = (@cross, 'Makefile.PL'); | ||
| 227 | + my @args = ("-I$lib_dir", @cross, 'Makefile.PL'); | ||
| 228 | if ($is_VMS) { | ||
| 229 | my $libd = VMS::Filespec::vmspath($lib_dir); | ||
| 230 | push @args, "INST_LIB=$libd", "INST_ARCHLIB=$libd"; | ||
| 231 | Index: perl-5.12.3/vms/descrip_mms.template | ||
| 232 | =================================================================== | ||
| 233 | --- perl-5.12.3.orig/vms/descrip_mms.template | ||
| 234 | +++ perl-5.12.3/vms/descrip_mms.template | ||
| 235 | @@ -360,7 +360,7 @@ CRTLOPTS =,$(CRTL)/Options | ||
| 236 | unidatadirs = lib/unicore/To lib/unicore/lib | ||
| 237 | |||
| 238 | # Modules which must be installed before we can build extensions | ||
| 239 | -LIBPREREQ = $(ARCHDIR)Config.pm $(ARCHDIR)Config_heavy.pl [.lib.VMS]Filespec.pm $(ARCHDIR)vmspipe.com [.lib]re.pm | ||
| 240 | +LIBPREREQ = $(ARCHDIR)Config.pm $(ARCHDIR)Config_heavy.pl [.lib.VMS]Filespec.pm $(ARCHDIR)vmspipe.com [.lib]re.pm [.lib]buildcustomize.pl | ||
| 241 | |||
| 242 | utils1 = [.lib.pods]perldoc.com [.lib.ExtUtils]Miniperl.pm [.utils]c2ph.com [.utils]h2ph.com | ||
| 243 | utils2 = [.utils]h2xs.com [.utils]libnetcfg.com [.lib]perlbug.com [.utils]dprofpp.com | ||
| 244 | @@ -458,6 +458,9 @@ archcorefiles : $(ac) $(ARCHAUTO)time.st | ||
| 245 | [.lib]re.pm : [.ext.re]re.pm | ||
| 246 | Copy/NoConfirm/Log $(MMS$SOURCE) [.lib] | ||
| 247 | |||
| 248 | +[.lib]buildcustomize.pl : write_buildcustomize.pl $(MINIPERL_EXE) | ||
| 249 | + $(MINIPERL) write_buildcustomize.pl > [.lib]buildcustomize.pl | ||
| 250 | + | ||
| 251 | vmspipe.com : [.vms]vmspipe.com | ||
| 252 | Copy/NoConfirm/Log $(MMS$SOURCE) [] | ||
| 253 | |||
| 254 | @@ -561,7 +564,7 @@ unidatafiles.ts : $(MINIPERL_EXE) [.lib] | ||
| 255 | @ If F$Search("$(MMS$TARGET)").nes."" Then Delete/NoLog/NoConfirm $(MMS$TARGET);* | ||
| 256 | @ Copy/NoConfirm _NLA0: $(MMS$TARGET) | ||
| 257 | |||
| 258 | -DynaLoader$(O) : $(ARCHDIR)Config.pm $(MINIPERL_EXE) [.lib.VMS]Filespec.pm | ||
| 259 | +DynaLoader$(O) : [.lib]buildcustomize.pl $(ARCHDIR)Config.pm $(MINIPERL_EXE) [.lib.VMS]Filespec.pm | ||
| 260 | $(MINIPERL) make_ext.pl "MAKE=$(MMS)" "DynaLoader" | ||
| 261 | |||
| 262 | dynext : $(LIBPREREQ) $(DBG)perlshr$(E) unidatafiles.ts DynaLoader$(O) preplibrary makeppport $(MINIPERL_EXE) | ||
| 263 | @@ -1856,6 +1859,7 @@ tidy : cleanlis | ||
| 264 | - If F$Search("[.utils]*.com;-1").nes."" Then Purge/NoConfirm/Log [.utils]*.com | ||
| 265 | - If F$Search("[.x2p]*.com;-1").nes."" Then Purge/NoConfirm/Log [.x2p]*.com | ||
| 266 | - If F$Search("[.lib.pods]*.com;-1").nes."" Then Purge/NoConfirm/Log [.lib.pods]*.com | ||
| 267 | + - If F$Search("[.lib]buildcustomize.pl;-1").nes."" Then Purge/NoConfirm/Log [.lib]buildcustomize.pl | ||
| 268 | |||
| 269 | clean : tidy cleantest | ||
| 270 | - $(MINIPERL) make_ext.pl "MAKE=$(MMS)" "--all" "--target=clean" | ||
| 271 | Index: perl-5.12.3/win32/Makefile | ||
| 272 | =================================================================== | ||
| 273 | --- perl-5.12.3.orig/win32/Makefile | ||
| 274 | +++ perl-5.12.3/win32/Makefile | ||
| 275 | @@ -923,6 +923,9 @@ $(CONFIGPM) : $(MINIPERL) ..\config.sh c | ||
| 276 | -$(MINIPERL) -I..\lib $(ICWD) config_h.PL "INST_VER=$(INST_VER)" | ||
| 277 | if errorlevel 1 $(MAKE) /$(MAKEFLAGS) $(CONFIGPM) | ||
| 278 | |||
| 279 | +..\lib\buildcustomize.pl: $(MINIPERL) ..\write_buildcustomize.pl | ||
| 280 | + $(MINIPERL) -I..\lib ..\write_buildcustomize.pl .. >..\lib\buildcustomize.pl | ||
| 281 | + | ||
| 282 | $(MINIPERL) : $(MINIDIR) $(MINI_OBJ) | ||
| 283 | $(LINK32) -subsystem:console -out:$@ @<< | ||
| 284 | $(LINK_FLAGS) $(LIBFILES) $(MINI_OBJ) | ||
| 285 | @@ -1045,24 +1048,24 @@ MakePPPort: $(MINIPERL) $(CONFIGPM) Exte | ||
| 286 | #------------------------------------------------------------------------------- | ||
| 287 | # There's no direct way to mark a dependency on | ||
| 288 | # DynaLoader.pm, so this will have to do | ||
| 289 | -Extensions: ..\make_ext.pl $(PERLDEP) $(CONFIGPM) $(DYNALOADER) | ||
| 290 | +Extensions: ..\make_ext.pl ..\lib\buildcustomize.pl $(PERLDEP) $(CONFIGPM) $(DYNALOADER) | ||
| 291 | $(XCOPY) ..\*.h $(COREDIR)\*.* | ||
| 292 | $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --dynamic | ||
| 293 | |||
| 294 | -Extensions_reonly: ..\make_ext.pl $(PERLDEP) $(CONFIGPM) $(DYNALOADER) | ||
| 295 | +Extensions_reonly: ..\make_ext.pl ..\lib\buildcustomize.pl $(PERLDEP) $(CONFIGPM) $(DYNALOADER) | ||
| 296 | $(XCOPY) ..\*.h $(COREDIR)\*.* | ||
| 297 | $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --dynamic +re | ||
| 298 | |||
| 299 | -Extensions_static : ..\make_ext.pl list_static_libs.pl $(PERLDEP) $(CONFIGPM) | ||
| 300 | +Extensions_static : ..\make_ext.pl ..\lib\buildcustomize.pl list_static_libs.pl $(PERLDEP) $(CONFIGPM) | ||
| 301 | $(XCOPY) ..\*.h $(COREDIR)\*.* | ||
| 302 | $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --static | ||
| 303 | $(MINIPERL) -I..\lib list_static_libs.pl > Extensions_static | ||
| 304 | |||
| 305 | -Extensions_nonxs: ..\make_ext.pl $(PERLDEP) $(CONFIGPM) | ||
| 306 | +Extensions_nonxs: ..\make_ext.pl ..\lib\buildcustomize.pl $(PERLDEP) $(CONFIGPM) | ||
| 307 | $(XCOPY) ..\*.h $(COREDIR)\*.* | ||
| 308 | $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --nonxs | ||
| 309 | |||
| 310 | -$(DYNALOADER) : ..\make_ext.pl $(PERLDEP) $(CONFIGPM) Extensions_nonxs | ||
| 311 | +$(DYNALOADER) : ..\make_ext.pl ..\lib\buildcustomize.pl $(PERLDEP) $(CONFIGPM) Extensions_nonxs | ||
| 312 | $(XCOPY) ..\*.h $(COREDIR)\*.* | ||
| 313 | $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(EXTDIR) --dynaloader | ||
| 314 | |||
| 315 | @@ -1159,6 +1162,7 @@ distclean: realclean | ||
| 316 | -del /f $(LIBDIR)\Win32CORE.pm | ||
| 317 | -del /f $(LIBDIR)\Win32API\File.pm | ||
| 318 | -del /f $(LIBDIR)\Win32API\File\cFile.pc | ||
| 319 | + -del /f $(LIBDIR)\buildcustomize.pl | ||
| 320 | -del /f $(DISTDIR)\XSLoader\XSLoader.pm | ||
| 321 | -if exist $(LIBDIR)\App rmdir /s /q $(LIBDIR)\App | ||
| 322 | -if exist $(LIBDIR)\Archive rmdir /s /q $(LIBDIR)\Archive | ||
| 323 | Index: perl-5.12.3/win32/makefile.mk | ||
| 324 | =================================================================== | ||
| 325 | --- perl-5.12.3.orig/win32/makefile.mk | ||
| 326 | +++ perl-5.12.3/win32/makefile.mk | ||
| 327 | @@ -1215,6 +1215,10 @@ $(CONFIGPM) : $(MINIPERL) ..\config.sh c | ||
| 328 | $(MINIPERL) -I..\lib $(ICWD) config_h.PL "INST_VER=$(INST_VER)" \ | ||
| 329 | || $(MAKE) $(MAKEMACROS) $(CONFIGPM) $(MAKEFILE) | ||
| 330 | |||
| 331 | +..\lib\buildcustomize.pl: $(MINIPERL) ..\write_buildcustomize.pl | ||
| 332 | + $(MINIPERL) -I..\lib ..\write_buildcustomize.pl .. >..\lib\buildcustomize.pl | ||
| 333 | + | ||
| 334 | + | ||
| 335 | $(MINIPERL) : $(MINIDIR) $(MINI_OBJ) $(CRTIPMLIBS) | ||
| 336 | .IF "$(CCTYPE)" == "BORLAND" | ||
| 337 | if not exist $(CCLIBDIR)\PSDK\odbccp32.lib \ | ||
| 338 | @@ -1423,24 +1427,24 @@ MakePPPort: $(MINIPERL) $(CONFIGPM) Exte | ||
| 339 | #------------------------------------------------------------------------------- | ||
| 340 | # There's no direct way to mark a dependency on | ||
| 341 | # DynaLoader.pm, so this will have to do | ||
| 342 | -Extensions : ..\make_ext.pl $(PERLDEP) $(CONFIGPM) $(DYNALOADER) | ||
| 343 | +Extensions : ..\make_ext.pl ..\lib\buildcustomize.pl $(PERLDEP) $(CONFIGPM) $(DYNALOADER) | ||
| 344 | $(XCOPY) ..\*.h $(COREDIR)\*.* | ||
| 345 | $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --dynamic | ||
| 346 | |||
| 347 | -Extensions_reonly : ..\make_ext.pl $(PERLDEP) $(CONFIGPM) $(DYNALOADER) | ||
| 348 | +Extensions_reonly : ..\make_ext.pl ..\lib\buildcustomize.pl $(PERLDEP) $(CONFIGPM) $(DYNALOADER) | ||
| 349 | $(XCOPY) ..\*.h $(COREDIR)\*.* | ||
| 350 | $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --dynamic +re | ||
| 351 | |||
| 352 | -Extensions_static : ..\make_ext.pl list_static_libs.pl $(PERLDEP) $(CONFIGPM) | ||
| 353 | +Extensions_static : ..\make_ext.pl ..\lib\buildcustomize.pl list_static_libs.pl $(PERLDEP) $(CONFIGPM) | ||
| 354 | $(XCOPY) ..\*.h $(COREDIR)\*.* | ||
| 355 | $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --static | ||
| 356 | $(MINIPERL) -I..\lib list_static_libs.pl > Extensions_static | ||
| 357 | |||
| 358 | -Extensions_nonxs : ..\make_ext.pl $(PERLDEP) $(CONFIGPM) | ||
| 359 | +Extensions_nonxs : ..\make_ext.pl ..\lib\buildcustomize.pl $(PERLDEP) $(CONFIGPM) | ||
| 360 | $(XCOPY) ..\*.h $(COREDIR)\*.* | ||
| 361 | $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --nonxs | ||
| 362 | |||
| 363 | -$(DYNALOADER) : ..\make_ext.pl $(PERLDEP) $(CONFIGPM) Extensions_nonxs | ||
| 364 | +$(DYNALOADER) : ..\make_ext.pl ..\lib\buildcustomize.pl $(PERLDEP) $(CONFIGPM) Extensions_nonxs | ||
| 365 | $(XCOPY) ..\*.h $(COREDIR)\*.* | ||
| 366 | $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(EXTDIR) --dynaloader | ||
| 367 | |||
| 368 | @@ -1534,6 +1538,7 @@ distclean: realclean | ||
| 369 | -del /f $(LIBDIR)\Win32CORE.pm | ||
| 370 | -del /f $(LIBDIR)\Win32API\File.pm | ||
| 371 | -del /f $(LIBDIR)\Win32API\File\cFile.pc | ||
| 372 | + -del /f $(LIBDIR)\buildcustomize.pl | ||
| 373 | -del /f $(DISTDIR)\XSLoader\XSLoader.pm | ||
| 374 | -if exist $(LIBDIR)\App rmdir /s /q $(LIBDIR)\App | ||
| 375 | -if exist $(LIBDIR)\Archive rmdir /s /q $(LIBDIR)\Archive | ||
| 376 | Index: perl-5.12.3/write_buildcustomize.pl | ||
| 377 | =================================================================== | ||
| 378 | --- /dev/null | ||
| 379 | +++ perl-5.12.3/write_buildcustomize.pl | ||
| 380 | @@ -0,0 +1,50 @@ | ||
| 381 | +#!./miniperl -w | ||
| 382 | + | ||
| 383 | +use strict; | ||
| 384 | +if (@ARGV) { | ||
| 385 | + my $dir = shift; | ||
| 386 | + chdir $dir or die "Can't chdir '$dir': $!"; | ||
| 387 | + unshift @INC, 'lib'; | ||
| 388 | +} | ||
| 389 | + | ||
| 390 | +unshift @INC, ('cpan/Cwd', 'cpan/Cwd/lib'); | ||
| 391 | +require File::Spec::Functions; | ||
| 392 | + | ||
| 393 | +# To clarify, this isn't the entire suite of modules considered "toolchain" | ||
| 394 | +# It's not even all modules needed to build ext/ | ||
| 395 | +# It's just the source paths of the (minimum complete set of) modules in ext/ | ||
| 396 | +# needed to build the nonxs modules | ||
| 397 | +# After which, all nonxs modules are in lib, which was always sufficient to | ||
| 398 | +# allow miniperl to build everything else. | ||
| 399 | + | ||
| 400 | +my @toolchain = qw(cpan/AutoLoader/lib | ||
| 401 | + cpan/Cwd cpan/Cwd/lib | ||
| 402 | + cpan/ExtUtils-Command/lib | ||
| 403 | + dist/ExtUtils-Install/lib | ||
| 404 | + cpan/ExtUtils-MakeMaker/lib | ||
| 405 | + cpan/ExtUtils-Manifest/lib | ||
| 406 | + cpan/File-Path/lib | ||
| 407 | + ); | ||
| 408 | + | ||
| 409 | +# Used only in ExtUtils::Liblist::Kid::_win32_ext() | ||
| 410 | +push @toolchain, 'cpan/Text-ParseWords/lib' if $^O eq 'MSWin32'; | ||
| 411 | + | ||
| 412 | +# lib must be last, as the the toolchain modules write themselves into it | ||
| 413 | +# as they build, and it's important that @INC order ensures that the partially | ||
| 414 | +# written files are always masked by the complete versions. | ||
| 415 | + | ||
| 416 | +my $inc = join ",\n ", | ||
| 417 | + map { "q\0$_\0" } | ||
| 418 | + (map {File::Spec::Functions::rel2abs($_)} @toolchain, 'lib'), '.'; | ||
| 419 | + | ||
| 420 | +# If any of the system's build tools are written in Perl, then this module | ||
| 421 | +# may well be loaded by a much older version than we are building. So keep it | ||
| 422 | +# as backwards compatible as is easy. | ||
| 423 | +print <<"EOT"; | ||
| 424 | +#!perl | ||
| 425 | + | ||
| 426 | +# We are miniperl, building extensions | ||
| 427 | +# Reset \@INC completely, adding the directories we need, and removing the | ||
| 428 | +# installed directories (which we don't need to read, and may confuse us) | ||
| 429 | +\@INC = ($inc); | ||
| 430 | +EOT | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/parallel_build_fix_6.patch b/meta/recipes-devtools/perl/perl-5.12.3/parallel_build_fix_6.patch deleted file mode 100644 index 42677391de..0000000000 --- a/meta/recipes-devtools/perl/perl-5.12.3/parallel_build_fix_6.patch +++ /dev/null | |||
| @@ -1,158 +0,0 @@ | |||
| 1 | Upstream-Status:Inappropriate [Backport] | ||
| 2 | |||
| 3 | Rebased by Nitin A Kamble <nitin.a.kamble@intel.com> on 3/11/2011 | ||
| 4 | |||
| 5 | commit 7353f64c5bca6e7102582a1e0017c850930249c3 | ||
| 6 | Author: Nicholas Clark <nick@ccl4.org> | ||
| 7 | Date: Mon Feb 14 20:36:36 2011 +0000 | ||
| 8 | |||
| 9 | Add ext/re/re.pm to the @INC set for miniperl by lib/buildcustomize.pl | ||
| 10 | |||
| 11 | This avoids a build-time race condition where lib/re.pm might be read midway | ||
| 12 | through the *second* copy of it (when ext/re/Makefile is being run). It also | ||
| 13 | simplifies many [Mm]akefile* rules, which previously had a special case to | ||
| 14 | copy it early. | ||
| 15 | |||
| 16 | Index: perl-5.12.3/Cross/Makefile-cross-SH | ||
| 17 | =================================================================== | ||
| 18 | --- perl-5.12.3.orig/Cross/Makefile-cross-SH | ||
| 19 | +++ perl-5.12.3/Cross/Makefile-cross-SH | ||
| 20 | @@ -727,7 +727,7 @@ fi | ||
| 21 | $spitshell >>$Makefile <<'!NO!SUBS!' | ||
| 22 | |||
| 23 | .PHONY: preplibrary | ||
| 24 | -preplibrary: miniperl $(CONFIGPM) lib/lib.pm lib/re.pm $(PREPLIBRARY_LIBPERL) | ||
| 25 | +preplibrary: miniperl $(CONFIGPM) lib/lib.pm $(PREPLIBRARY_LIBPERL) | ||
| 26 | |||
| 27 | .PHONY: makeppport | ||
| 28 | makeppport: miniperl$(EXE_EXT) $(CONFIGPM) | ||
| 29 | @@ -748,10 +748,6 @@ $(plextract): miniperl $(CONFIGPM) x2p/s | ||
| 30 | @-rm -f $@ | ||
| 31 | $(LDLIBPTH) ./miniperl -I`pwd`/lib $@.PL | ||
| 32 | |||
| 33 | -lib/lib.pm: miniperl $(CONFIGPM) | ||
| 34 | - @-rm -f $@ | ||
| 35 | - $(LDLIBPTH) ./miniperl -Ilib -MCross lib/lib_pm.PL | ||
| 36 | - | ||
| 37 | lib/buildcustomize.pl: $(MINIPERL_EXE) write_buildcustomize.pl | ||
| 38 | $(MINIPERL) write_buildcustomize.pl >lib/buildcustomize.pl | ||
| 39 | |||
| 40 | @@ -1212,7 +1208,7 @@ minitest.prep: | ||
| 41 | |||
| 42 | # Can't depend on lib/Config.pm because that might be where miniperl | ||
| 43 | # is crashing. | ||
| 44 | -minitest: miniperl$(EXE_EXT) lib/re.pm minitest.prep | ||
| 45 | +minitest: miniperl$(EXE_EXT) minitest.prep | ||
| 46 | - cd t && (rm -f perl$(EXE_EXT); $(LNS) ../miniperl$(EXE_EXT) perl$(EXE_EXT)) \ | ||
| 47 | && $(LDLIBPTH) ./perl TEST -minitest base/*.t comp/*.t cmd/*.t run/*.t io/*.t op/*.t uni/*.t </dev/tty | ||
| 48 | |||
| 49 | Index: perl-5.12.3/Makefile.SH | ||
| 50 | =================================================================== | ||
| 51 | --- perl-5.12.3.orig/Makefile.SH | ||
| 52 | +++ perl-5.12.3/Makefile.SH | ||
| 53 | @@ -970,7 +970,7 @@ esac | ||
| 54 | $spitshell >>$Makefile <<'!NO!SUBS!' | ||
| 55 | |||
| 56 | .PHONY: preplibrary | ||
| 57 | -preplibrary: $(MINIPERL_EXE) $(CONFIGPM) lib/re.pm $(PREPLIBRARY_LIBPERL) | ||
| 58 | +preplibrary: $(MINIPERL_EXE) $(CONFIGPM) $(PREPLIBRARY_LIBPERL) | ||
| 59 | |||
| 60 | $(CONFIGPM_FROM_CONFIG_SH): $(CONFIGPOD) | ||
| 61 | |||
| 62 | @@ -980,10 +980,6 @@ $(CONFIGPOD): config.sh $(MINIPERL_EXE) | ||
| 63 | lib/ExtUtils/Miniperl.pm: miniperlmain.c $(MINIPERL_EXE) minimod.pl $(CONFIGPM) | ||
| 64 | $(MINIPERL) minimod.pl > lib/ExtUtils/Miniperl.pm | ||
| 65 | |||
| 66 | -lib/re.pm: ext/re/re.pm | ||
| 67 | - @-rm -f $@ | ||
| 68 | - cp ext/re/re.pm lib/re.pm | ||
| 69 | - | ||
| 70 | $(plextract): $(MINIPERL_EXE) $(CONFIGPM) x2p/s2p $(dynamic_ext) | ||
| 71 | @-rm -f $@ | ||
| 72 | $(MINIPERL) $@.PL | ||
| 73 | @@ -1267,7 +1263,7 @@ _cleaner2: | ||
| 74 | rm -f lib/.exists lib/*/.exists lib/*/*/.exists | ||
| 75 | rm -f h2ph.man pstruct | ||
| 76 | rm -rf .config | ||
| 77 | - rm -f preload lib/re.pm | ||
| 78 | + rm -f preload | ||
| 79 | rm -rf lib/Encode lib/Compress lib/Hash lib/re | ||
| 80 | rm -rf lib/TAP lib/Module/Pluggable lib/App | ||
| 81 | rm -rf lib/mro | ||
| 82 | @@ -1464,7 +1460,7 @@ minitest.prep: | ||
| 83 | |||
| 84 | # Can't depend on lib/Config.pm because that might be where miniperl | ||
| 85 | # is crashing. | ||
| 86 | -minitest: $(MINIPERL_EXE) lib/re.pm minitest.prep | ||
| 87 | +minitest: $(MINIPERL_EXE) minitest.prep | ||
| 88 | - cd t && (rm -f $(PERL_EXE); $(LNS) ../$(MINIPERL_EXE) $(PERL_EXE)) \ | ||
| 89 | && $(RUN_PERL) TEST -minitest base/*.t comp/*.t cmd/*.t run/*.t io/*.t re/*.t op/*.t uni/*.t </dev/tty | ||
| 90 | |||
| 91 | Index: perl-5.12.3/vms/descrip_mms.template | ||
| 92 | =================================================================== | ||
| 93 | --- perl-5.12.3.orig/vms/descrip_mms.template | ||
| 94 | +++ perl-5.12.3/vms/descrip_mms.template | ||
| 95 | @@ -360,7 +360,7 @@ CRTLOPTS =,$(CRTL)/Options | ||
| 96 | unidatadirs = lib/unicore/To lib/unicore/lib | ||
| 97 | |||
| 98 | # Modules which must be installed before we can build extensions | ||
| 99 | -LIBPREREQ = $(ARCHDIR)Config.pm $(ARCHDIR)Config_heavy.pl [.lib.VMS]Filespec.pm $(ARCHDIR)vmspipe.com [.lib]re.pm [.lib]buildcustomize.pl | ||
| 100 | +LIBPREREQ = $(ARCHDIR)Config.pm $(ARCHDIR)Config_heavy.pl [.lib.VMS]Filespec.pm $(ARCHDIR)vmspipe.com [.lib]buildcustomize.pl | ||
| 101 | |||
| 102 | utils1 = [.lib.pods]perldoc.com [.lib.ExtUtils]Miniperl.pm [.utils]c2ph.com [.utils]h2ph.com | ||
| 103 | utils2 = [.utils]h2xs.com [.utils]libnetcfg.com [.lib]perlbug.com [.utils]dprofpp.com | ||
| 104 | @@ -455,9 +455,6 @@ pod = $(pod0) $(pod1) $(pod2) $(pod3) $( | ||
| 105 | archcorefiles : $(ac) $(ARCHAUTO)time.stamp | ||
| 106 | @ $(NOOP) | ||
| 107 | |||
| 108 | -[.lib]re.pm : [.ext.re]re.pm | ||
| 109 | - Copy/NoConfirm/Log $(MMS$SOURCE) [.lib] | ||
| 110 | - | ||
| 111 | [.lib]buildcustomize.pl : write_buildcustomize.pl $(MINIPERL_EXE) | ||
| 112 | $(MINIPERL) write_buildcustomize.pl > [.lib]buildcustomize.pl | ||
| 113 | |||
| 114 | @@ -1487,7 +1484,7 @@ test_harness : all [.t.lib]vmsfspec.t | ||
| 115 | - @[.vms]test.com "$(E)" "$(__DEBUG__)" | ||
| 116 | @ $(MINIPERL) -e "print ""Ran tests"";" > [.t]rantests. | ||
| 117 | |||
| 118 | -minitest : $(MINITEST_EXE) [.lib]re.pm [.lib.VMS]Filespec.pm unidatafiles.ts | ||
| 119 | +minitest : $(MINITEST_EXE) [.lib.VMS]Filespec.pm unidatafiles.ts | ||
| 120 | @ PERL_TEST_DRIVER == "minitest" | ||
| 121 | - @[.vms]test.com "$(E)" "$(__DEBUG__)" | ||
| 122 | |||
| 123 | Index: perl-5.12.3/win32/Makefile | ||
| 124 | =================================================================== | ||
| 125 | --- perl-5.12.3.orig/win32/Makefile | ||
| 126 | +++ perl-5.12.3/win32/Makefile | ||
| 127 | @@ -918,7 +918,6 @@ $(CONFIGPM) : $(MINIPERL) ..\config.sh c | ||
| 128 | if exist lib\* $(RCOPY) lib\*.* ..\lib\$(NULL) | ||
| 129 | $(XCOPY) ..\*.h $(COREDIR)\*.* | ||
| 130 | $(XCOPY) *.h $(COREDIR)\*.* | ||
| 131 | - $(XCOPY) ..\ext\re\re.pm $(LIBDIR)\*.* | ||
| 132 | $(RCOPY) include $(COREDIR)\*.* | ||
| 133 | -$(MINIPERL) -I..\lib $(ICWD) config_h.PL "INST_VER=$(INST_VER)" | ||
| 134 | if errorlevel 1 $(MAKE) /$(MAKEFLAGS) $(CONFIGPM) | ||
| 135 | Index: perl-5.12.3/win32/makefile.mk | ||
| 136 | =================================================================== | ||
| 137 | --- perl-5.12.3.orig/win32/makefile.mk | ||
| 138 | +++ perl-5.12.3/win32/makefile.mk | ||
| 139 | @@ -1210,7 +1210,6 @@ $(CONFIGPM) : $(MINIPERL) ..\config.sh c | ||
| 140 | if exist lib\* $(RCOPY) lib\*.* ..\lib\$(NULL) | ||
| 141 | $(XCOPY) ..\*.h $(COREDIR)\*.* | ||
| 142 | $(XCOPY) *.h $(COREDIR)\*.* | ||
| 143 | - $(XCOPY) ..\ext\re\re.pm $(LIBDIR)\*.* | ||
| 144 | $(RCOPY) include $(COREDIR)\*.* | ||
| 145 | $(MINIPERL) -I..\lib $(ICWD) config_h.PL "INST_VER=$(INST_VER)" \ | ||
| 146 | || $(MAKE) $(MAKEMACROS) $(CONFIGPM) $(MAKEFILE) | ||
| 147 | Index: perl-5.12.3/write_buildcustomize.pl | ||
| 148 | =================================================================== | ||
| 149 | --- perl-5.12.3.orig/write_buildcustomize.pl | ||
| 150 | +++ perl-5.12.3/write_buildcustomize.pl | ||
| 151 | @@ -24,6 +24,7 @@ my @toolchain = qw(cpan/AutoLoader/lib | ||
| 152 | cpan/ExtUtils-MakeMaker/lib | ||
| 153 | dist/ExtUtils-Manifest/lib | ||
| 154 | cpan/File-Path/lib | ||
| 155 | + ext/re | ||
| 156 | ); | ||
| 157 | |||
| 158 | # Used only in ExtUtils::Liblist::Kid::_win32_ext() | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/09_fix_installperl.patch b/meta/recipes-devtools/perl/perl-5.14.2/09_fix_installperl.patch index a80d17c8b0..a80d17c8b0 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/09_fix_installperl.patch +++ b/meta/recipes-devtools/perl/perl-5.14.2/09_fix_installperl.patch | |||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/Configure-multilib.patch b/meta/recipes-devtools/perl/perl-5.14.2/Configure-multilib.patch index 9625b0b84e..9625b0b84e 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/Configure-multilib.patch +++ b/meta/recipes-devtools/perl/perl-5.14.2/Configure-multilib.patch | |||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/MM_Unix.pm.patch b/meta/recipes-devtools/perl/perl-5.14.2/MM_Unix.pm.patch index eb92ccb678..eb92ccb678 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/MM_Unix.pm.patch +++ b/meta/recipes-devtools/perl/perl-5.14.2/MM_Unix.pm.patch | |||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/Makefile.SH.patch b/meta/recipes-devtools/perl/perl-5.14.2/Makefile.SH.patch index 6371a3d5ab..c9fd5e27e7 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/Makefile.SH.patch +++ b/meta/recipes-devtools/perl/perl-5.14.2/Makefile.SH.patch | |||
| @@ -1,29 +1,19 @@ | |||
| 1 | Upstream-Status:Inappropriate [embedded specific] | 1 | Upstream-Status:Inappropriate [embedded specific] |
| 2 | 2 | ||
| 3 | Index: perl-5.12.3/Makefile.SH | 3 | Index: perl-5.14.2/Makefile.SH |
| 4 | =================================================================== | 4 | =================================================================== |
| 5 | --- perl-5.12.3.orig/Makefile.SH | 5 | --- perl-5.14.2.orig/Makefile.SH |
| 6 | +++ perl-5.12.3/Makefile.SH | 6 | +++ perl-5.14.2/Makefile.SH |
| 7 | @@ -50,12 +50,12 @@ case "$useshrplib" in | 7 | @@ -36,7 +36,7 @@ case "$useshrplib" in |
| 8 | true) | 8 | true) |
| 9 | # Prefix all runs of 'miniperl' and 'perl' with | 9 | # Prefix all runs of 'miniperl' and 'perl' with |
| 10 | # $ldlibpth so that ./perl finds *this* shared libperl. | 10 | # $ldlibpth so that ./perl finds *this* shared libperl. |
| 11 | - case "$LD_LIBRARY_PATH" in | 11 | - ldlibpth=LD_LIBRARY_PATH=`pwd`'$${LD_LIBRARY_PATH:+:}$$LD_LIBRARY_PATH' |
| 12 | - '') | 12 | + #ldlibpth=LD_LIBRARY_PATH=`pwd`'$${LD_LIBRARY_PATH:+:}$$LD_LIBRARY_PATH' |
| 13 | - ldlibpth="LD_LIBRARY_PATH=`pwd`";; | ||
| 14 | - *) | ||
| 15 | - ldlibpth="LD_LIBRARY_PATH=`pwd`:${LD_LIBRARY_PATH}";; | ||
| 16 | - esac | ||
| 17 | +# case "$LD_LIBRARY_PATH" in | ||
| 18 | +# '') | ||
| 19 | +# ldlibpth="LD_LIBRARY_PATH=`pwd`";; | ||
| 20 | +# *) | ||
| 21 | +# ldlibpth="LD_LIBRARY_PATH=`pwd`:${LD_LIBRARY_PATH}";; | ||
| 22 | +# esac | ||
| 23 | 13 | ||
| 24 | pldlflags="$cccdlflags" | 14 | pldlflags="$cccdlflags" |
| 25 | static_ldflags='' | 15 | static_ldflags='' |
| 26 | @@ -133,7 +133,8 @@ true) | 16 | @@ -114,7 +114,8 @@ true) |
| 27 | ldlibpth='' | 17 | ldlibpth='' |
| 28 | ;; | 18 | ;; |
| 29 | *) | 19 | *) |
| @@ -33,7 +23,7 @@ Index: perl-5.12.3/Makefile.SH | |||
| 33 | ;; | 23 | ;; |
| 34 | esac | 24 | esac |
| 35 | # Strip off any trailing :'s | 25 | # Strip off any trailing :'s |
| 36 | @@ -154,18 +155,7 @@ true) | 26 | @@ -135,18 +136,7 @@ true) |
| 37 | # INSTALL file, under "Building a shared perl library". | 27 | # INSTALL file, under "Building a shared perl library". |
| 38 | # If there is no pre-existing $libperl, we don't need | 28 | # If there is no pre-existing $libperl, we don't need |
| 39 | # to do anything further. | 29 | # to do anything further. |
| @@ -53,7 +43,7 @@ Index: perl-5.12.3/Makefile.SH | |||
| 53 | ;; | 43 | ;; |
| 54 | os390) test -f /bin/env && ldlibpth="/bin/env $ldlibpth" | 44 | os390) test -f /bin/env && ldlibpth="/bin/env $ldlibpth" |
| 55 | ;; | 45 | ;; |
| 56 | @@ -557,9 +547,19 @@ splintfiles = $(c1) | 46 | @@ -529,9 +519,19 @@ splintfiles = $(c1) |
| 57 | .c.s: | 47 | .c.s: |
| 58 | $(CCCMDSRC) -S $*.c | 48 | $(CCCMDSRC) -S $*.c |
| 59 | 49 | ||
| @@ -76,7 +66,7 @@ Index: perl-5.12.3/Makefile.SH | |||
| 76 | 66 | ||
| 77 | .PHONY: all translators utilities | 67 | .PHONY: all translators utilities |
| 78 | 68 | ||
| 79 | @@ -567,16 +567,16 @@ all: $(FIRSTMAKEFILE) $(MINIPERL_EXE) $( | 69 | @@ -539,7 +539,7 @@ all: $(FIRSTMAKEFILE) $(MINIPERL_EXE) $( |
| 80 | # by make_patchnum.pl. | 70 | # by make_patchnum.pl. |
| 81 | git_version.h: lib/Config_git.pl | 71 | git_version.h: lib/Config_git.pl |
| 82 | 72 | ||
| @@ -85,18 +75,45 @@ Index: perl-5.12.3/Makefile.SH | |||
| 85 | $(MINIPERL) make_patchnum.pl | 75 | $(MINIPERL) make_patchnum.pl |
| 86 | 76 | ||
| 87 | # make sure that we recompile perl.c if the git version changes | 77 | # make sure that we recompile perl.c if the git version changes |
| 88 | perl$(OBJ_EXT): git_version.h | 78 | @@ -552,8 +552,8 @@ perl$(OBJ_EXT): git_version.h |
| 89 | 79 | # loading, we need to build perl first. | |
| 90 | -translators: $(MINIPERL_EXE) $(CONFIGPM) $(dynamic_ext) FORCE | 80 | case "$usedl" in |
| 91 | +translators: $(CONFIGPM) $(dynamic_ext) FORCE | 81 | define) |
| 92 | @echo " "; echo " Making x2p stuff"; cd x2p; $(LDLIBPTH) $(MAKE) all | 82 | - util_deps='$(MINIPERL_EXE) $(CONFIGPM) lib/auto/Cwd/Cwd$(DLSUFFIX) FORCE' |
| 83 | - x2p_deps='$(MINIPERL_EXE) $(CONFIGPM) $(dynamic_ext) FORCE' | ||
| 84 | + util_deps='$(CONFIGPM) lib/auto/Cwd/Cwd$(DLSUFFIX) FORCE' | ||
| 85 | + x2p_deps='$(CONFIGPM) $(dynamic_ext) FORCE' | ||
| 86 | ;; | ||
| 87 | *) util_deps='$(PERL_EXE) $(CONFIGPM) FORCE' | ||
| 88 | x2p_deps='$(PERL_EXE) $(CONFIGPM) FORCE' | ||
| 89 | @@ -627,7 +627,7 @@ generate_uudmap$(HOST_EXE_EXT): generate | ||
| 90 | miniperlmain$(OBJ_EXT): miniperlmain.c patchlevel.h | ||
| 91 | $(CCCMD) $(PLDLFLAGS) $*.c | ||
| 92 | |||
| 93 | -perlmain.c: $(MINIPERL_EXE) lib/ExtUtils/Miniperl.pm | ||
| 94 | +perlmain.c: lib/ExtUtils/Miniperl.pm | ||
| 95 | $(MINIPERL) -Ilib -MExtUtils::Miniperl -e 'writemain(@ARGV)' DynaLoader $(static_ext) > perlmain.c | ||
| 96 | |||
| 97 | perlmain$(OBJ_EXT): perlmain.c | ||
| 98 | @@ -691,7 +691,7 @@ PERLEXPORT = perl.exp | ||
| 99 | ;; | ||
| 100 | esac | ||
| 101 | $spitshell >>$Makefile <<'!NO!SUBS!' | ||
| 102 | -perl.exp: $(MINIPERLEXP) makedef.pl config.sh $(SYM) $(SYMH) | ||
| 103 | +perl.exp: makedef.pl config.sh $(SYM) $(SYMH) | ||
| 104 | ./$(MINIPERLEXP) makedef.pl PLATFORM=aix CC_FLAGS="$(OPTIMIZE)" | sort -u | sort -f > perl.exp | ||
| 93 | 105 | ||
| 94 | -utilities: $(MINIPERL_EXE) $(CONFIGPM) $(plextract) FORCE | 106 | !NO!SUBS! |
| 95 | +utilities: $(CONFIGPM) $(plextract) FORCE | 107 | @@ -700,7 +700,7 @@ os2) |
| 96 | @echo " "; echo " Making utilities"; cd utils; $(LDLIBPTH) $(MAKE) all | 108 | $spitshell >>$Makefile <<'!NO!SUBS!' |
| 109 | MINIPERLEXP = miniperl | ||
| 97 | 110 | ||
| 111 | -perl5.def: $(MINIPERLEXP) makedef.pl config.sh $(SYM) $(SYMH) miniperl.map | ||
| 112 | +perl5.def: makedef.pl config.sh $(SYM) $(SYMH) miniperl.map | ||
| 113 | ./$(MINIPERLEXP) makedef.pl PLATFORM=os2 -DPERL_DLL=$(PERL_DLL) CC_FLAGS="$(OPTIMIZE)" > perl5.def | ||
| 98 | 114 | ||
| 99 | @@ -754,7 +754,7 @@ $(LIBPERL): $& $(obj) $(DYNALOADER) $(LI | 115 | !NO!SUBS! |
| 116 | @@ -757,7 +757,7 @@ $(LIBPERL): $& $(obj) $(DYNALOADER) $(LI | ||
| 100 | true) | 117 | true) |
| 101 | $spitshell >>$Makefile <<'!NO!SUBS!' | 118 | $spitshell >>$Makefile <<'!NO!SUBS!' |
| 102 | rm -f $@ | 119 | rm -f $@ |
| @@ -105,7 +122,7 @@ Index: perl-5.12.3/Makefile.SH | |||
| 105 | !NO!SUBS! | 122 | !NO!SUBS! |
| 106 | case "$osname" in | 123 | case "$osname" in |
| 107 | aix) | 124 | aix) |
| 108 | @@ -795,7 +795,9 @@ $(MINIPERL_EXE): $& miniperlmain$(OBJ_EX | 125 | @@ -798,7 +798,9 @@ $(MINIPERL_EXE): $& miniperlmain$(OBJ_EX |
| 109 | $(CC) -o $(MINIPERL_EXE) $(CLDFLAGS) \ | 126 | $(CC) -o $(MINIPERL_EXE) $(CLDFLAGS) \ |
| 110 | $(mini_obj) \ | 127 | $(mini_obj) \ |
| 111 | miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) perlmini$(OBJ_EXT) $(libs) | 128 | miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) perlmini$(OBJ_EXT) $(libs) |
| @@ -116,7 +133,7 @@ Index: perl-5.12.3/Makefile.SH | |||
| 116 | !NO!SUBS! | 133 | !NO!SUBS! |
| 117 | ;; | 134 | ;; |
| 118 | next4*) | 135 | next4*) |
| 119 | @@ -803,7 +805,9 @@ $(MINIPERL_EXE): $& miniperlmain$(OBJ_EX | 136 | @@ -806,7 +808,9 @@ $(MINIPERL_EXE): $& miniperlmain$(OBJ_EX |
| 120 | $(MINIPERL_EXE): $& miniperlmain$(OBJ_EXT) $(mini_obj) perlmini$(OBJ_EXT) opmini$(OBJ_EXT) | 137 | $(MINIPERL_EXE): $& miniperlmain$(OBJ_EXT) $(mini_obj) perlmini$(OBJ_EXT) opmini$(OBJ_EXT) |
| 121 | $(CC) -o $(MINIPERL_EXE) $(mini_obj) \ | 138 | $(CC) -o $(MINIPERL_EXE) $(mini_obj) \ |
| 122 | miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) perlmini$(OBJ_EXT) $(libs) | 139 | miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) perlmini$(OBJ_EXT) $(libs) |
| @@ -127,7 +144,7 @@ Index: perl-5.12.3/Makefile.SH | |||
| 127 | !NO!SUBS! | 144 | !NO!SUBS! |
| 128 | ;; | 145 | ;; |
| 129 | darwin*) | 146 | darwin*) |
| 130 | @@ -825,7 +829,9 @@ $(MINIPERL_EXE): $& miniperlmain$(OBJ_EX | 147 | @@ -828,7 +832,9 @@ $(MINIPERL_EXE): $& miniperlmain$(OBJ_EX |
| 131 | $(CC) $(CLDFLAGS) $(NAMESPACEFLAGS) -o $(MINIPERL_EXE) \ | 148 | $(CC) $(CLDFLAGS) $(NAMESPACEFLAGS) -o $(MINIPERL_EXE) \ |
| 132 | $(mini_obj) \ | 149 | $(mini_obj) \ |
| 133 | miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) perlmini$(OBJ_EXT) $(libs) | 150 | miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) perlmini$(OBJ_EXT) $(libs) |
| @@ -138,7 +155,7 @@ Index: perl-5.12.3/Makefile.SH | |||
| 138 | !NO!SUBS! | 155 | !NO!SUBS! |
| 139 | ;; | 156 | ;; |
| 140 | *) | 157 | *) |
| 141 | @@ -835,7 +841,10 @@ $(MINIPERL_EXE): $& miniperlmain$(OBJ_EX | 158 | @@ -838,7 +844,10 @@ $(MINIPERL_EXE): $& miniperlmain$(OBJ_EX |
| 142 | $(LDLIBPTH) $(CC) $(CLDFLAGS) -o $(MINIPERL_EXE) \ | 159 | $(LDLIBPTH) $(CC) $(CLDFLAGS) -o $(MINIPERL_EXE) \ |
| 143 | $(mini_obj) \ | 160 | $(mini_obj) \ |
| 144 | miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) perlmini$(OBJ_EXT) $(libs) | 161 | miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) perlmini$(OBJ_EXT) $(libs) |
| @@ -150,7 +167,7 @@ Index: perl-5.12.3/Makefile.SH | |||
| 150 | !NO!SUBS! | 167 | !NO!SUBS! |
| 151 | ;; | 168 | ;; |
| 152 | esac | 169 | esac |
| 153 | @@ -957,7 +966,7 @@ case "${osname}" in | 170 | @@ -960,7 +969,7 @@ case "${osname}" in |
| 154 | catamount) | 171 | catamount) |
| 155 | $spitshell >>$Makefile <<!GROK!THIS! | 172 | $spitshell >>$Makefile <<!GROK!THIS! |
| 156 | .PHONY: makeppport | 173 | .PHONY: makeppport |
| @@ -159,7 +176,7 @@ Index: perl-5.12.3/Makefile.SH | |||
| 159 | -@for f in Makefile.PL PPPort_pm.PL PPPort_xs.PL ppport_h.PL; do \ | 176 | -@for f in Makefile.PL PPPort_pm.PL PPPort_xs.PL ppport_h.PL; do \ |
| 160 | (cd ext/Devel-PPPort && `pwd`/run.sh ../../$(MINIPERL_EXE) -I../../lib \$\$f); \ | 177 | (cd ext/Devel-PPPort && `pwd`/run.sh ../../$(MINIPERL_EXE) -I../../lib \$\$f); \ |
| 161 | done | 178 | done |
| 162 | @@ -967,7 +976,7 @@ makeppport: \$(MINIPERL_EXE) \$(CONFIGPM | 179 | @@ -970,7 +979,7 @@ makeppport: \$(MINIPERL_EXE) \$(CONFIGPM |
| 163 | *) | 180 | *) |
| 164 | $spitshell >>$Makefile <<'!NO!SUBS!' | 181 | $spitshell >>$Makefile <<'!NO!SUBS!' |
| 165 | .PHONY: makeppport | 182 | .PHONY: makeppport |
| @@ -168,7 +185,7 @@ Index: perl-5.12.3/Makefile.SH | |||
| 168 | $(MINIPERL) $(Icwd) mkppport | 185 | $(MINIPERL) $(Icwd) mkppport |
| 169 | 186 | ||
| 170 | !NO!SUBS! | 187 | !NO!SUBS! |
| 171 | @@ -977,29 +986,29 @@ esac | 188 | @@ -980,22 +989,22 @@ esac |
| 172 | $spitshell >>$Makefile <<'!NO!SUBS!' | 189 | $spitshell >>$Makefile <<'!NO!SUBS!' |
| 173 | 190 | ||
| 174 | .PHONY: preplibrary | 191 | .PHONY: preplibrary |
| @@ -185,15 +202,6 @@ Index: perl-5.12.3/Makefile.SH | |||
| 185 | +lib/ExtUtils/Miniperl.pm: miniperlmain.c minimod.pl $(CONFIGPM) | 202 | +lib/ExtUtils/Miniperl.pm: miniperlmain.c minimod.pl $(CONFIGPM) |
| 186 | $(MINIPERL) minimod.pl > lib/ExtUtils/Miniperl.pm | 203 | $(MINIPERL) minimod.pl > lib/ExtUtils/Miniperl.pm |
| 187 | 204 | ||
| 188 | -$(plextract): $(MINIPERL_EXE) $(CONFIGPM) x2p/s2p $(dynamic_ext) | ||
| 189 | +$(plextract): $(CONFIGPM) x2p/s2p $(dynamic_ext) | ||
| 190 | @-rm -f $@ | ||
| 191 | $(MINIPERL) $@.PL | ||
| 192 | |||
| 193 | -x2p/s2p: $(MINIPERL_EXE) $(CONFIGPM) $(dynamic_ext) x2p/s2p.PL | ||
| 194 | +x2p/s2p: $(CONFIGPM) $(dynamic_ext) x2p/s2p.PL | ||
| 195 | cd x2p; $(LDLIBPTH) $(MAKE) s2p | ||
| 196 | |||
| 197 | -lib/buildcustomize.pl: $(MINIPERL_EXE) write_buildcustomize.pl | 205 | -lib/buildcustomize.pl: $(MINIPERL_EXE) write_buildcustomize.pl |
| 198 | +lib/buildcustomize.pl: write_buildcustomize.pl | 206 | +lib/buildcustomize.pl: write_buildcustomize.pl |
| 199 | $(MINIPERL) write_buildcustomize.pl >lib/buildcustomize.pl | 207 | $(MINIPERL) write_buildcustomize.pl >lib/buildcustomize.pl |
| @@ -205,13 +213,13 @@ Index: perl-5.12.3/Makefile.SH | |||
| 205 | $(MINIPERL) $(Icwd) lib/unicore/mktables -C lib/unicore -P pod -maketest -makelist -p | 213 | $(MINIPERL) $(Icwd) lib/unicore/mktables -C lib/unicore -P pod -maketest -makelist -p |
| 206 | # Commented out so always runs, mktables looks at far more files than we | 214 | # Commented out so always runs, mktables looks at far more files than we |
| 207 | # can in this makefile to decide if needs to run or not | 215 | # can in this makefile to decide if needs to run or not |
| 208 | @@ -1008,21 +1017,21 @@ uni.data: $(MINIPERL_EXE) $(CONFIGPM) li | 216 | @@ -1004,21 +1013,21 @@ uni.data: $(MINIPERL_EXE) $(CONFIGPM) li |
| 209 | # $(PERL_EXE) and ext because buildtoc uses Text::Wrap uses re | 217 | # $(PERL_EXE) and ext because buildtoc uses Text::Wrap uses re |
| 210 | # But also this ensures that all extensions are built before we try to scan | 218 | # But also this ensures that all extensions are built before we try to scan |
| 211 | # them, which picks up Devel::PPPort's documentation. | 219 | # them, which picks up Devel::PPPort's documentation. |
| 212 | -pod/perltoc.pod: $(perltoc_pod_prereqs) $(PERL_EXE) $(ext) pod/buildtoc | 220 | -pod/perltoc.pod: $(perltoc_pod_prereqs) $(PERL_EXE) $(ext) pod/buildtoc |
| 213 | - $(RUN_PERL) -f -Ilib pod/buildtoc --build-toc -q | 221 | - $(RUN_PERL) -f -Ilib pod/buildtoc --build-toc -q |
| 214 | +pod/perltoc.pod: $(perltoc_pod_prereqs) $(ext) pod/buildtoc | 222 | +pod/perltoc.pod: $(perltoc_pod_prereqs) $(ext) pod/buildtoc |
| 215 | + $(MINIPERL) -f -Ilib pod/buildtoc --build-toc -q | 223 | + $(MINIPERL) -f -Ilib pod/buildtoc --build-toc -q |
| 216 | 224 | ||
| 217 | pod/perlapi.pod: pod/perlintern.pod | 225 | pod/perlapi.pod: pod/perlintern.pod |
| @@ -224,15 +232,15 @@ Index: perl-5.12.3/Makefile.SH | |||
| 224 | +pod/perlmodlib.pod: pod/perlmodlib.PL MANIFEST | 232 | +pod/perlmodlib.pod: pod/perlmodlib.PL MANIFEST |
| 225 | $(MINIPERL) $(Icwd) pod/perlmodlib.PL -q | 233 | $(MINIPERL) $(Icwd) pod/perlmodlib.PL -q |
| 226 | 234 | ||
| 227 | pod/perldelta.pod: pod/perl5123delta.pod | 235 | pod/perl5142delta.pod: pod/perldelta.pod |
| 228 | $(LNS) perl5123delta.pod pod/perldelta.pod | 236 | $(LNS) perldelta.pod pod/perl5142delta.pod |
| 229 | 237 | ||
| 230 | -extra.pods: $(MINIPERL_EXE) | 238 | -extra.pods: $(MINIPERL_EXE) |
| 231 | +extra.pods: | 239 | +extra.pods: |
| 232 | -@test ! -f extra.pods || rm -f `cat extra.pods` | 240 | -@test ! -f extra.pods || rm -f `cat extra.pods` |
| 233 | -@rm -f extra.pods | 241 | -@rm -f extra.pods |
| 234 | -@for x in `grep -l '^=[a-z]' README.* | grep -v README.vms` ; do \ | 242 | -@for x in `grep -l '^=[a-z]' README.* | grep -v README.vms` ; do \ |
| 235 | @@ -1065,11 +1074,7 @@ no-install: | 243 | @@ -1058,11 +1067,7 @@ no-install: |
| 236 | INSTALL_DEPENDENCE = all | 244 | INSTALL_DEPENDENCE = all |
| 237 | 245 | ||
| 238 | install.perl: $(INSTALL_DEPENDENCE) installperl | 246 | install.perl: $(INSTALL_DEPENDENCE) installperl |
| @@ -245,7 +253,7 @@ Index: perl-5.12.3/Makefile.SH | |||
| 245 | 253 | ||
| 246 | # XXX Experimental. Hardwired values, but useful for testing. | 254 | # XXX Experimental. Hardwired values, but useful for testing. |
| 247 | # Eventually Configure could ask for some of these values. | 255 | # Eventually Configure could ask for some of these values. |
| 248 | @@ -1166,16 +1171,16 @@ manicheck: FORCE | 256 | @@ -1161,16 +1166,16 @@ manicheck: FORCE |
| 249 | # | 257 | # |
| 250 | # DynaLoader may be needed for extensions that use Makefile.PL. | 258 | # DynaLoader may be needed for extensions that use Makefile.PL. |
| 251 | 259 | ||
| @@ -266,12 +274,12 @@ Index: perl-5.12.3/Makefile.SH | |||
| 266 | $(MINIPERL) make_ext.pl $@ MAKE=$(MAKE) LIBPERL_A=$(LIBPERL) | 274 | $(MINIPERL) make_ext.pl $@ MAKE=$(MAKE) LIBPERL_A=$(LIBPERL) |
| 267 | !NO!SUBS! | 275 | !NO!SUBS! |
| 268 | 276 | ||
| 269 | @@ -1373,10 +1378,10 @@ _test: | 277 | @@ -1365,10 +1370,10 @@ _test: |
| 270 | 278 | ||
| 271 | test_prep_pre: preplibrary utilities $(nonxs_ext) | 279 | test_prep_pre: preplibrary utilities $(nonxs_ext) |
| 272 | 280 | ||
| 273 | -test_prep: test_prep_pre $(MINIPERL_EXE) $(unidatafiles) $(PERL_EXE) $(dynamic_ext) $(TEST_PERL_DLL) runtests | 281 | -test_prep: test_prep_pre $(MINIPERL_EXE) $(unidatafiles) $(PERL_EXE) $(dynamic_ext) $(TEST_PERL_DLL) runtests x2p/s2p $(generated_pods) |
| 274 | +test_prep: test_prep_pre $(unidatafiles) $(PERL_EXE) $(dynamic_ext) $(TEST_PERL_DLL) runtests | 282 | +test_prep: test_prep_pre $(unidatafiles) $(PERL_EXE) $(dynamic_ext) $(TEST_PERL_DLL) runtests x2p/s2p $(generated_pods) |
| 275 | cd t && (rm -f $(PERL_EXE); $(LNS) ../$(PERL_EXE) $(PERL_EXE)) | 283 | cd t && (rm -f $(PERL_EXE); $(LNS) ../$(PERL_EXE) $(PERL_EXE)) |
| 276 | 284 | ||
| 277 | -test_prep_reonly: $(MINIPERL_EXE) $(PERL_EXE) $(dynamic_ext_re) $(TEST_PERL_DLL) | 285 | -test_prep_reonly: $(MINIPERL_EXE) $(PERL_EXE) $(dynamic_ext_re) $(TEST_PERL_DLL) |
| @@ -279,12 +287,12 @@ Index: perl-5.12.3/Makefile.SH | |||
| 279 | $(MINIPERL) make_ext.pl $(dynamic_ext_re) MAKE=$(MAKE) LIBPERL_A=$(LIBPERL) LINKTYPE=dynamic | 287 | $(MINIPERL) make_ext.pl $(dynamic_ext_re) MAKE=$(MAKE) LIBPERL_A=$(LIBPERL) LINKTYPE=dynamic |
| 280 | cd t && (rm -f $(PERL_EXE); $(LNS) ../$(PERL_EXE) $(PERL_EXE)) | 288 | cd t && (rm -f $(PERL_EXE); $(LNS) ../$(PERL_EXE) $(PERL_EXE)) |
| 281 | 289 | ||
| 282 | @@ -1467,7 +1472,7 @@ minitest.prep: | 290 | @@ -1459,7 +1464,7 @@ minitest.prep: |
| 283 | 291 | ||
| 284 | # Can't depend on lib/Config.pm because that might be where miniperl | 292 | # Can't depend on lib/Config.pm because that might be where miniperl |
| 285 | # is crashing. | 293 | # is crashing. |
| 286 | -minitest: $(MINIPERL_EXE) minitest.prep | 294 | -minitest: $(MINIPERL_EXE) minitest.prep |
| 287 | +minitest: minitest.prep | 295 | +minitest: minitest.prep |
| 288 | - cd t && (rm -f $(PERL_EXE); $(LNS) ../$(MINIPERL_EXE) $(PERL_EXE)) \ | 296 | - cd t && (rm -f $(PERL_EXE); $(LNS) ../$(MINIPERL_EXE) $(PERL_EXE)) \ |
| 289 | && $(RUN_PERL) TEST -minitest base/*.t comp/*.t cmd/*.t run/*.t io/*.t re/*.t op/*.t uni/*.t </dev/tty | 297 | && $(RUN_PERL) TEST base/*.t comp/*.t cmd/*.t run/*.t io/*.t re/*.t op/*.t uni/*.t </dev/tty |
| 290 | 298 | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/Makefile.patch b/meta/recipes-devtools/perl/perl-5.14.2/Makefile.patch index 8a279a5262..858e2e10fb 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/Makefile.patch +++ b/meta/recipes-devtools/perl/perl-5.14.2/Makefile.patch | |||
| @@ -1,12 +1,11 @@ | |||
| 1 | Upstream-Status:Inappropriate [embedded specific] | 1 | Upstream-Status:Inappropriate [embedded specific] |
| 2 | 2 | ||
| 3 | Index: perl-5.12.3/Cross/Makefile | 3 | Index: perl-5.14.2/Cross/Makefile |
| 4 | =================================================================== | 4 | =================================================================== |
| 5 | --- perl-5.12.3.orig/Cross/Makefile | 5 | --- perl-5.14.2.orig/Cross/Makefile |
| 6 | +++ perl-5.12.3/Cross/Makefile | 6 | +++ perl-5.14.2/Cross/Makefile |
| 7 | @@ -2,7 +2,8 @@ | 7 | @@ -1,6 +1,7 @@ |
| 8 | # | 8 | ## Toplevel Makefile for cross-compilation of perl |
| 9 | ## $Id: Makefile,v 1.5 2003/12/12 00:48:19 red Exp red $ | ||
| 10 | 9 | ||
| 11 | -export TOPDIR=${shell pwd} | 10 | -export TOPDIR=${shell pwd} |
| 12 | +override TOPDIR=${shell pwd} | 11 | +override TOPDIR=${shell pwd} |
| @@ -14,7 +13,7 @@ Index: perl-5.12.3/Cross/Makefile | |||
| 14 | include $(TOPDIR)/config | 13 | include $(TOPDIR)/config |
| 15 | export CFLAGS | 14 | export CFLAGS |
| 16 | export SYS=$(ARCH)-$(OS) | 15 | export SYS=$(ARCH)-$(OS) |
| 17 | @@ -12,7 +13,7 @@ export OPTIMIZATION = -O2 | 16 | @@ -10,7 +11,7 @@ export OPTIMIZATION = -O2 |
| 18 | 17 | ||
| 19 | export CC = $(CROSS)gcc | 18 | export CC = $(CROSS)gcc |
| 20 | export CXX = $(CROSS)g++ | 19 | export CXX = $(CROSS)g++ |
| @@ -23,7 +22,7 @@ Index: perl-5.12.3/Cross/Makefile | |||
| 23 | export STRIP = $(CROSS)strip | 22 | export STRIP = $(CROSS)strip |
| 24 | export AR = $(CROSS)ar | 23 | export AR = $(CROSS)ar |
| 25 | export RANLIB = $(CROSS)ranlib | 24 | export RANLIB = $(CROSS)ranlib |
| 26 | @@ -34,17 +35,6 @@ CFLAGS+=$(FULL_OPTIMIZATION) | 25 | @@ -32,17 +33,6 @@ CFLAGS+=$(FULL_OPTIMIZATION) |
| 27 | all: | 26 | all: |
| 28 | @echo Please read the README file before doing anything else. | 27 | @echo Please read the README file before doing anything else. |
| 29 | 28 | ||
| @@ -41,7 +40,7 @@ Index: perl-5.12.3/Cross/Makefile | |||
| 41 | perl: | 40 | perl: |
| 42 | @echo Perl cross-build directory is $(TOPDIR) | 41 | @echo Perl cross-build directory is $(TOPDIR) |
| 43 | @echo Target arch is $(SYS) | 42 | @echo Target arch is $(SYS) |
| 44 | @@ -54,11 +44,11 @@ perl: | 43 | @@ -52,11 +42,11 @@ perl: |
| 45 | $(TOPDIR)/generate_config_sh config.sh-$(SYS) > $(TOPDIR)/../config.sh | 44 | $(TOPDIR)/generate_config_sh config.sh-$(SYS) > $(TOPDIR)/../config.sh |
| 46 | cd $(TOPDIR)/.. ; ./Configure -S ; make depend ; make ; make more | 45 | cd $(TOPDIR)/.. ; ./Configure -S ; make depend ; make ; make more |
| 47 | cd $(TOPDIR)/.. ; mkdir -p fake_config_library ; cp lib/Config.pm lib/Config_heavy.pl fake_config_library | 46 | cd $(TOPDIR)/.. ; mkdir -p fake_config_library ; cp lib/Config.pm lib/Config_heavy.pl fake_config_library |
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/asm-pageh-fix.patch b/meta/recipes-devtools/perl/perl-5.14.2/asm-pageh-fix.patch index c65b1a1fe3..c65b1a1fe3 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/asm-pageh-fix.patch +++ b/meta/recipes-devtools/perl/perl-5.14.2/asm-pageh-fix.patch | |||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/config.sh b/meta/recipes-devtools/perl/perl-5.14.2/config.sh index f1c5001bfb..b3e2d432c4 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/config.sh +++ b/meta/recipes-devtools/perl/perl-5.14.2/config.sh | |||
| @@ -14,7 +14,7 @@ | |||
| 14 | 14 | ||
| 15 | : Configure command line arguments. | 15 | : Configure command line arguments. |
| 16 | config_arg0='Configure' | 16 | config_arg0='Configure' |
| 17 | config_args='-des -Doptimize=-O2 -Dmyhostname=localhost -Dperladmin=root@localhost -Dcc=gcc -Dcf_by=Open Embedded -Dinstallprefix=@DESTDIR@ -Dprefix=/usr -Dvendorprefix=/usr -Dsiteprefix=/usr -Dotherlibdirs=/usr/lib/perl5/5.12.3 -Duseshrplib -Dusethreads -Duseithreads -Duselargefiles -Ud_dosuid -Dd_semctl_semun -Ui_db -Ui_ndbm -Ui_gdbm -Di_shadow -Di_syslog -Dman3ext=3pm -Duseperlio -Dinstallusrbinperl -Ubincompat5005 -Uversiononly -Dpager=/usr/bin/less -isr' | 17 | config_args='-des -Doptimize=-O2 -Dmyhostname=localhost -Dperladmin=root@localhost -Dcc=gcc -Dcf_by=Open Embedded -Dinstallprefix=@DESTDIR@ -Dprefix=/usr -Dvendorprefix=/usr -Dsiteprefix=/usr -Dotherlibdirs=/usr/lib/perl5/5.14.2 -Duseshrplib -Dusethreads -Duseithreads -Duselargefiles -Ud_dosuid -Dd_semctl_semun -Ui_db -Ui_ndbm -Ui_gdbm -Di_shadow -Di_syslog -Dman3ext=3pm -Duseperlio -Dinstallusrbinperl -Ubincompat5005 -Uversiononly -Dpager=/usr/bin/less -isr' |
| 18 | config_argc=28 | 18 | config_argc=28 |
| 19 | config_arg1='-des' | 19 | config_arg1='-des' |
| 20 | config_arg2='-Doptimize=-O2' | 20 | config_arg2='-Doptimize=-O2' |
| @@ -26,7 +26,7 @@ config_arg7='-Dinstallprefix=@DESTDIR@' | |||
| 26 | config_arg8='-Dprefix=/usr' | 26 | config_arg8='-Dprefix=/usr' |
| 27 | config_arg9='-Dvendorprefix=/usr' | 27 | config_arg9='-Dvendorprefix=/usr' |
| 28 | config_arg10='-Dsiteprefix=/usr' | 28 | config_arg10='-Dsiteprefix=/usr' |
| 29 | config_arg11='-Dotherlibdirs=/usr/lib/perl5/5.12.3' | 29 | config_arg11='-Dotherlibdirs=/usr/lib/perl5/5.14.2' |
| 30 | config_arg12='-Duseshrplib' | 30 | config_arg12='-Duseshrplib' |
| 31 | config_arg13='-Dusethreads' | 31 | config_arg13='-Dusethreads' |
| 32 | config_arg14='-Duseithreads' | 32 | config_arg14='-Duseithreads' |
| @@ -64,11 +64,11 @@ ansi2knr='' | |||
| 64 | aphostname='' | 64 | aphostname='' |
| 65 | api_revision='5' | 65 | api_revision='5' |
| 66 | api_subversion='0' | 66 | api_subversion='0' |
| 67 | api_version='12' | 67 | api_version='14' |
| 68 | api_versionstring='5.12.0' | 68 | api_versionstring='5.14.0' |
| 69 | ar='ar' | 69 | ar='ar' |
| 70 | archlib='/usr/lib/perl5/5.12.3/@ARCH@-thread-multi' | 70 | archlib='/usr/lib/perl5/5.14.2/@ARCH@-thread-multi' |
| 71 | archlibexp='/usr/lib/perl5/5.12.3/@ARCH@-thread-multi' | 71 | archlibexp='/usr/lib/perl5/5.14.2/@ARCH@-thread-multi' |
| 72 | archname64='' | 72 | archname64='' |
| 73 | archname='@ARCH@-thread-multi' | 73 | archname='@ARCH@-thread-multi' |
| 74 | archobjs='' | 74 | archobjs='' |
| @@ -86,7 +86,7 @@ castflags='0' | |||
| 86 | cat='cat' | 86 | cat='cat' |
| 87 | cc='gcc' | 87 | cc='gcc' |
| 88 | cccdlflags='-fPIC' | 88 | cccdlflags='-fPIC' |
| 89 | ccdlflags='-Wl,-E -Wl,-rpath,/usr/lib/perl5/5.12.3/@ARCH@-thread-multi/CORE' | 89 | ccdlflags='-Wl,-E -Wl,-rpath,/usr/lib/perl5/5.14.2/@ARCH@-thread-multi/CORE' |
| 90 | ccflags='-D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -fstack-protector -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' | 90 | ccflags='-D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -fstack-protector -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' |
| 91 | ccflags_uselargefiles='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' | 91 | ccflags_uselargefiles='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' |
| 92 | ccname='gcc' | 92 | ccname='gcc' |
| @@ -746,7 +746,7 @@ inc_version_list_init='0' | |||
| 746 | incpath='' | 746 | incpath='' |
| 747 | inews='' | 747 | inews='' |
| 748 | initialinstalllocation='/usr/bin' | 748 | initialinstalllocation='/usr/bin' |
| 749 | installarchlib='@DESTDIR@/lib/perl5/5.12.3/@ARCH@-thread-multi' | 749 | installarchlib='@DESTDIR@/lib/perl5/5.14.2/@ARCH@-thread-multi' |
| 750 | installbin='@DESTDIR@/bin' | 750 | installbin='@DESTDIR@/bin' |
| 751 | installhtml1dir='' | 751 | installhtml1dir='' |
| 752 | installhtml3dir='' | 752 | installhtml3dir='' |
| @@ -754,23 +754,23 @@ installman1dir='' | |||
| 754 | installman3dir='' | 754 | installman3dir='' |
| 755 | installprefix='@DESTDIR@' | 755 | installprefix='@DESTDIR@' |
| 756 | installprefixexp='@DESTDIR@' | 756 | installprefixexp='@DESTDIR@' |
| 757 | installprivlib='@DESTDIR@/lib/perl5/5.12.3' | 757 | installprivlib='@DESTDIR@/lib/perl5/5.14.2' |
| 758 | installscript='@DESTDIR@/bin' | 758 | installscript='@DESTDIR@/bin' |
| 759 | installsitearch='@DESTDIR@/lib/perl5/site_perl/5.12.3/@ARCH@-thread-multi' | 759 | installsitearch='@DESTDIR@/lib/perl5/site_perl/5.14.2/@ARCH@-thread-multi' |
| 760 | installsitebin='@DESTDIR@/bin' | 760 | installsitebin='@DESTDIR@/bin' |
| 761 | installsitehtml1dir='' | 761 | installsitehtml1dir='' |
| 762 | installsitehtml3dir='' | 762 | installsitehtml3dir='' |
| 763 | installsitelib='@DESTDIR@/lib/perl5/site_perl/5.12.3' | 763 | installsitelib='@DESTDIR@/lib/perl5/site_perl/5.14.2' |
| 764 | installsiteman1dir='' | 764 | installsiteman1dir='' |
| 765 | installsiteman3dir='' | 765 | installsiteman3dir='' |
| 766 | installsitescript='@DESTDIR@/bin' | 766 | installsitescript='@DESTDIR@/bin' |
| 767 | installstyle='lib/perl5' | 767 | installstyle='lib/perl5' |
| 768 | installusrbinperl='define' | 768 | installusrbinperl='define' |
| 769 | installvendorarch='@DESTDIR@/lib/perl5/vendor_perl/5.12.3/@ARCH@-thread-multi' | 769 | installvendorarch='@DESTDIR@/lib/perl5/vendor_perl/5.14.2/@ARCH@-thread-multi' |
| 770 | installvendorbin='@DESTDIR@/bin' | 770 | installvendorbin='@DESTDIR@/bin' |
| 771 | installvendorhtml1dir='' | 771 | installvendorhtml1dir='' |
| 772 | installvendorhtml3dir='' | 772 | installvendorhtml3dir='' |
| 773 | installvendorlib='@DESTDIR@/lib/perl5/vendor_perl/5.12.3' | 773 | installvendorlib='@DESTDIR@/lib/perl5/vendor_perl/5.14.2' |
| 774 | installvendorman1dir='' | 774 | installvendorman1dir='' |
| 775 | installvendorman3dir='' | 775 | installvendorman3dir='' |
| 776 | installvendorscript='@DESTDIR@/bin' | 776 | installvendorscript='@DESTDIR@/bin' |
| @@ -864,11 +864,11 @@ optimize='-O2' | |||
| 864 | orderlib='false' | 864 | orderlib='false' |
| 865 | osname='linux' | 865 | osname='linux' |
| 866 | osvers='2.6.37-rc5-yocto-standard+' | 866 | osvers='2.6.37-rc5-yocto-standard+' |
| 867 | otherlibdirs='/usr/lib/perl5/5.12.3' | 867 | otherlibdirs='/usr/lib/perl5/5.14.2' |
| 868 | package='perl5' | 868 | package='perl5' |
| 869 | pager='/usr/bin/less -isr' | 869 | pager='/usr/bin/less -isr' |
| 870 | passcat='cat /etc/passwd' | 870 | passcat='cat /etc/passwd' |
| 871 | patchlevel='12' | 871 | patchlevel='14' |
| 872 | path_sep=':' | 872 | path_sep=':' |
| 873 | perl5='/usr/bin/perl' | 873 | perl5='/usr/bin/perl' |
| 874 | perl='' | 874 | perl='' |
| @@ -884,8 +884,8 @@ pmake='' | |||
| 884 | pr='' | 884 | pr='' |
| 885 | prefix='/usr' | 885 | prefix='/usr' |
| 886 | prefixexp='/usr' | 886 | prefixexp='/usr' |
| 887 | privlib='/usr/lib/perl5/5.12.3' | 887 | privlib='/usr/lib/perl5/5.14.2' |
| 888 | privlibexp='/usr/lib/perl5/5.12.3' | 888 | privlibexp='/usr/lib/perl5/5.14.2' |
| 889 | procselfexe='"/proc/self/exe"' | 889 | procselfexe='"/proc/self/exe"' |
| 890 | prototype='define' | 890 | prototype='define' |
| 891 | randbits='48' | 891 | randbits='48' |
| @@ -937,17 +937,17 @@ sig_num='0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | |||
| 937 | sig_num_init='0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 6, 17, 29, 31, 0' | 937 | sig_num_init='0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 6, 17, 29, 31, 0' |
| 938 | sig_size='69' | 938 | sig_size='69' |
| 939 | signal_t='void' | 939 | signal_t='void' |
| 940 | sitearch='/usr/lib/perl5/site_perl/5.12.3/@ARCH@-thread-multi' | 940 | sitearch='/usr/lib/perl5/site_perl/5.14.2/@ARCH@-thread-multi' |
| 941 | sitearchexp='/usr/lib/perl5/site_perl/5.12.3/@ARCH@-thread-multi' | 941 | sitearchexp='/usr/lib/perl5/site_perl/5.14.2/@ARCH@-thread-multi' |
| 942 | sitebin='/usr/bin' | 942 | sitebin='/usr/bin' |
| 943 | sitebinexp='/usr/bin' | 943 | sitebinexp='/usr/bin' |
| 944 | sitehtml1dir='' | 944 | sitehtml1dir='' |
| 945 | sitehtml1direxp='' | 945 | sitehtml1direxp='' |
| 946 | sitehtml3dir='' | 946 | sitehtml3dir='' |
| 947 | sitehtml3direxp='' | 947 | sitehtml3direxp='' |
| 948 | sitelib='/usr/lib/perl5/site_perl/5.12.3' | 948 | sitelib='/usr/lib/perl5/site_perl/5.14.2' |
| 949 | sitelib_stem='/usr/lib/perl5/site_perl' | 949 | sitelib_stem='/usr/lib/perl5/site_perl' |
| 950 | sitelibexp='/usr/lib/perl5/site_perl/5.12.3' | 950 | sitelibexp='/usr/lib/perl5/site_perl/5.14.2' |
| 951 | siteman1dir='' | 951 | siteman1dir='' |
| 952 | siteman1direxp='' | 952 | siteman1direxp='' |
| 953 | siteman3dir='' | 953 | siteman3dir='' |
| @@ -1045,17 +1045,17 @@ uvtype='unsigned long' | |||
| 1045 | uvuformat='"lu"' | 1045 | uvuformat='"lu"' |
| 1046 | uvxformat='"lx"' | 1046 | uvxformat='"lx"' |
| 1047 | vaproto='define' | 1047 | vaproto='define' |
| 1048 | vendorarch='/usr/lib/perl5/vendor_perl/5.12.3/@ARCH@-thread-multi' | 1048 | vendorarch='/usr/lib/perl5/vendor_perl/5.14.2/@ARCH@-thread-multi' |
| 1049 | vendorarchexp='/usr/lib/perl5/vendor_perl/5.12.3/@ARCH@-thread-multi' | 1049 | vendorarchexp='/usr/lib/perl5/vendor_perl/5.14.2/@ARCH@-thread-multi' |
| 1050 | vendorbin='/usr/bin' | 1050 | vendorbin='/usr/bin' |
| 1051 | vendorbinexp='/usr/bin' | 1051 | vendorbinexp='/usr/bin' |
| 1052 | vendorhtml1dir=' ' | 1052 | vendorhtml1dir=' ' |
| 1053 | vendorhtml1direxp='' | 1053 | vendorhtml1direxp='' |
| 1054 | vendorhtml3dir=' ' | 1054 | vendorhtml3dir=' ' |
| 1055 | vendorhtml3direxp='' | 1055 | vendorhtml3direxp='' |
| 1056 | vendorlib='/usr/lib/perl5/vendor_perl/5.12.3' | 1056 | vendorlib='/usr/lib/perl5/vendor_perl/5.14.2' |
| 1057 | vendorlib_stem='/usr/lib/perl5/vendor_perl' | 1057 | vendorlib_stem='/usr/lib/perl5/vendor_perl' |
| 1058 | vendorlibexp='/usr/lib/perl5/vendor_perl/5.12.3' | 1058 | vendorlibexp='/usr/lib/perl5/vendor_perl/5.14.2' |
| 1059 | vendorman1dir=' ' | 1059 | vendorman1dir=' ' |
| 1060 | vendorman1direxp='' | 1060 | vendorman1direxp='' |
| 1061 | vendorman3dir=' ' | 1061 | vendorman3dir=' ' |
| @@ -1064,8 +1064,8 @@ vendorprefix='/usr' | |||
| 1064 | vendorprefixexp='/usr' | 1064 | vendorprefixexp='/usr' |
| 1065 | vendorscript='/usr/bin' | 1065 | vendorscript='/usr/bin' |
| 1066 | vendorscriptexp='/usr/bin' | 1066 | vendorscriptexp='/usr/bin' |
| 1067 | version='5.12.3' | 1067 | version='5.14.2' |
| 1068 | version_patchlevel_string='version 12 subversion 2' | 1068 | version_patchlevel_string='version 14 subversion 2' |
| 1069 | versiononly='undef' | 1069 | versiononly='undef' |
| 1070 | vi='' | 1070 | vi='' |
| 1071 | voidflags='15' | 1071 | voidflags='15' |
| @@ -1075,12 +1075,19 @@ yaccflags='' | |||
| 1075 | zcat='' | 1075 | zcat='' |
| 1076 | zip='zip' | 1076 | zip='zip' |
| 1077 | PERL_REVISION=5 | 1077 | PERL_REVISION=5 |
| 1078 | PERL_VERSION=12 | 1078 | PERL_VERSION=14 |
| 1079 | PERL_SUBVERSION=2 | 1079 | PERL_SUBVERSION=2 |
| 1080 | PERL_API_REVISION=5 | 1080 | PERL_API_REVISION=5 |
| 1081 | PERL_API_VERSION=12 | 1081 | PERL_API_VERSION=14 |
| 1082 | PERL_API_SUBVERSION=0 | 1082 | PERL_API_SUBVERSION=0 |
| 1083 | PERL_PATCHLEVEL='' | 1083 | PERL_PATCHLEVEL='' |
| 1084 | PERL_CONFIG_SH=true | 1084 | PERL_CONFIG_SH=true |
| 1085 | : Variables propagated from previous config.sh file. | 1085 | : Variables propagated from previous config.sh file. |
| 1086 | libdb_needs_pthread='N' | 1086 | libdb_needs_pthread='N' |
| 1087 | |||
| 1088 | d_static_inline='define' | ||
| 1089 | d_sockaddr_sa_len='undef' | ||
| 1090 | d_sin6_scope_id='define' | ||
| 1091 | d_prctl='define' | ||
| 1092 | d_prctl_set_name='define' | ||
| 1093 | perl_static_inline='static __inline__' | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/config.sh-32 b/meta/recipes-devtools/perl/perl-5.14.2/config.sh-32 index 7259a0c6ae..7259a0c6ae 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/config.sh-32 +++ b/meta/recipes-devtools/perl/perl-5.14.2/config.sh-32 | |||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/config.sh-32-be b/meta/recipes-devtools/perl/perl-5.14.2/config.sh-32-be index a59a9abb5e..a59a9abb5e 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/config.sh-32-be +++ b/meta/recipes-devtools/perl/perl-5.14.2/config.sh-32-be | |||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/config.sh-32-le b/meta/recipes-devtools/perl/perl-5.14.2/config.sh-32-le index 10e4226567..10e4226567 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/config.sh-32-le +++ b/meta/recipes-devtools/perl/perl-5.14.2/config.sh-32-le | |||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/config.sh-64 b/meta/recipes-devtools/perl/perl-5.14.2/config.sh-64 index 6929d3a09d..6929d3a09d 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/config.sh-64 +++ b/meta/recipes-devtools/perl/perl-5.14.2/config.sh-64 | |||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/config.sh-64-be b/meta/recipes-devtools/perl/perl-5.14.2/config.sh-64-be index c08ce3c431..c08ce3c431 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/config.sh-64-be +++ b/meta/recipes-devtools/perl/perl-5.14.2/config.sh-64-be | |||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/config.sh-64-le b/meta/recipes-devtools/perl/perl-5.14.2/config.sh-64-le index 277d2a9bee..277d2a9bee 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/config.sh-64-le +++ b/meta/recipes-devtools/perl/perl-5.14.2/config.sh-64-le | |||
diff --git a/meta/recipes-devtools/perl/perl-5.14.2/cross-generate_uudmap.patch b/meta/recipes-devtools/perl/perl-5.14.2/cross-generate_uudmap.patch new file mode 100644 index 0000000000..a00ad61d90 --- /dev/null +++ b/meta/recipes-devtools/perl/perl-5.14.2/cross-generate_uudmap.patch | |||
| @@ -0,0 +1,15 @@ | |||
| 1 | Upstream-Status:Inappropriate [embedded specific] | ||
| 2 | |||
| 3 | Index: perl-5.14.2/Makefile.SH | ||
| 4 | =================================================================== | ||
| 5 | --- perl-5.14.2.orig/Makefile.SH | ||
| 6 | +++ perl-5.14.2/Makefile.SH | ||
| 7 | @@ -622,7 +622,7 @@ bitcount.h: generate_uudmap$(HOST_EXE_EX | ||
| 8 | $(RUN) ./generate_uudmap$(HOST_EXE_EXT) uudmap.h bitcount.h | ||
| 9 | |||
| 10 | generate_uudmap$(HOST_EXE_EXT): generate_uudmap$(OBJ_EXT) | ||
| 11 | - $(CC) -o generate_uudmap$(EXE_EXT) $(LDFLAGS) generate_uudmap$(OBJ_EXT) $(libs) | ||
| 12 | + $(BUILD_CC) -o generate_uudmap$(EXE_EXT) generate_uudmap.c | ||
| 13 | |||
| 14 | miniperlmain$(OBJ_EXT): miniperlmain.c patchlevel.h | ||
| 15 | $(CCCMD) $(PLDLFLAGS) $*.c | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/debian/arm_thread_stress_timeout.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/arm_thread_stress_timeout.diff index 700b344ed3..1d80e954f6 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/debian/arm_thread_stress_timeout.diff +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/arm_thread_stress_timeout.diff | |||
| @@ -1,15 +1,18 @@ | |||
| 1 | Upstream-Status:Inappropriate [debian patch] | 1 | From f624a9f1206cdd44fde99c40d82e2f326db485dd Mon Sep 17 00:00:00 2001 |
| 2 | From: Niko Tyni <ntyni@debian.org> | ||
| 3 | Date: Sat, 1 Nov 2008 15:10:16 +0200 | ||
| 4 | Subject: Raise the timeout of ext/threads/shared/t/stress.t to accommodate | ||
| 5 | slower build hosts | ||
| 2 | 6 | ||
| 3 | Subject: Raise the timeout of ext/threads/shared/t/stress.t to accommodate slower build hosts | ||
| 4 | Bug-Debian: http://bugs.debian.org/501970 | 7 | Bug-Debian: http://bugs.debian.org/501970 |
| 5 | 8 | ||
| 6 | 9 | Patch-Name: debian/arm_thread_stress_timeout.diff | |
| 7 | --- | 10 | --- |
| 8 | dist/threads-shared/t/stress.t | 2 +- | 11 | dist/threads-shared/t/stress.t | 2 +- |
| 9 | 1 files changed, 1 insertions(+), 1 deletions(-) | 12 | 1 files changed, 1 insertions(+), 1 deletions(-) |
| 10 | 13 | ||
| 11 | diff --git a/dist/threads-shared/t/stress.t b/dist/threads-shared/t/stress.t | 14 | diff --git a/dist/threads-shared/t/stress.t b/dist/threads-shared/t/stress.t |
| 12 | index adfd1ed..652a3e6 100755 | 15 | index adfd1ed..652a3e6 100644 |
| 13 | --- a/dist/threads-shared/t/stress.t | 16 | --- a/dist/threads-shared/t/stress.t |
| 14 | +++ b/dist/threads-shared/t/stress.t | 17 | +++ b/dist/threads-shared/t/stress.t |
| 15 | @@ -34,7 +34,7 @@ use threads::shared; | 18 | @@ -34,7 +34,7 @@ use threads::shared; |
| @@ -21,5 +24,3 @@ index adfd1ed..652a3e6 100755 | |||
| 21 | 24 | ||
| 22 | my $mutex = 1; | 25 | my $mutex = 1; |
| 23 | share($mutex); | 26 | share($mutex); |
| 24 | -- | ||
| 25 | tg: (a508b62..) debian/arm_thread_stress_timeout (depends on: upstream) | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/debian/cpan_definstalldirs.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/cpan_definstalldirs.diff index 3931c2d357..9fa937819e 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/debian/cpan_definstalldirs.diff +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/cpan_definstalldirs.diff | |||
| @@ -1,21 +1,23 @@ | |||
| 1 | Upstream-Status:Inappropriate [debian patch] | 1 | From 4b63b9a433661cd13cfb1448dbfb90c5f53a53be Mon Sep 17 00:00:00 2001 |
| 2 | 2 | From: Brendan O'Dea <bod@debian.org> | |
| 3 | Subject: Provide a sensible INSTALLDIRS default for modules installed from CPAN. | 3 | Date: Tue, 8 Mar 2005 19:30:38 +1100 |
| 4 | Subject: Provide a sensible INSTALLDIRS default for modules installed from | ||
| 5 | CPAN. | ||
| 4 | 6 | ||
| 5 | Some modules which are included in core set INSTALLDIRS => 'perl' | 7 | Some modules which are included in core set INSTALLDIRS => 'perl' |
| 6 | explicitly in Makefile.PL or Build.PL. This makes sense for the normal @INC | 8 | explicitly in Makefile.PL or Build.PL. This makes sense for the normal @INC |
| 7 | ordering, but not ours. | 9 | ordering, but not ours. |
| 8 | 10 | ||
| 9 | 11 | Patch-Name: debian/cpan_definstalldirs.diff | |
| 10 | --- | 12 | --- |
| 11 | cpan/CPAN/lib/CPAN/FirstTime.pm | 4 ++-- | 13 | cpan/CPAN/lib/CPAN/FirstTime.pm | 4 ++-- |
| 12 | 1 files changed, 2 insertions(+), 2 deletions(-) | 14 | 1 files changed, 2 insertions(+), 2 deletions(-) |
| 13 | 15 | ||
| 14 | diff --git a/cpan/CPAN/lib/CPAN/FirstTime.pm b/cpan/CPAN/lib/CPAN/FirstTime.pm | 16 | diff --git a/cpan/CPAN/lib/CPAN/FirstTime.pm b/cpan/CPAN/lib/CPAN/FirstTime.pm |
| 15 | index 53ffbf1..53976ff 100644 | 17 | index 667bdca..c38c890 100644 |
| 16 | --- a/cpan/CPAN/lib/CPAN/FirstTime.pm | 18 | --- a/cpan/CPAN/lib/CPAN/FirstTime.pm |
| 17 | +++ b/cpan/CPAN/lib/CPAN/FirstTime.pm | 19 | +++ b/cpan/CPAN/lib/CPAN/FirstTime.pm |
| 18 | @@ -947,7 +947,7 @@ sub init { | 20 | @@ -990,7 +990,7 @@ sub init { |
| 19 | my_prompt_loop(prefer_installer => 'MB', $matcher, 'MB|EUMM|RAND'); | 21 | my_prompt_loop(prefer_installer => 'MB', $matcher, 'MB|EUMM|RAND'); |
| 20 | 22 | ||
| 21 | if (!$matcher or 'makepl_arg make_arg' =~ /$matcher/) { | 23 | if (!$matcher or 'makepl_arg make_arg' =~ /$matcher/) { |
| @@ -24,7 +26,7 @@ index 53ffbf1..53976ff 100644 | |||
| 24 | my_dflt_prompt(make_arg => "", $matcher); | 26 | my_dflt_prompt(make_arg => "", $matcher); |
| 25 | if ( $CPAN::Config->{makepl_arg} =~ /LIBS=|INC=/ ) { | 27 | if ( $CPAN::Config->{makepl_arg} =~ /LIBS=|INC=/ ) { |
| 26 | $CPAN::Frontend->mywarn( | 28 | $CPAN::Frontend->mywarn( |
| 27 | @@ -969,7 +969,7 @@ sub init { | 29 | @@ -1022,7 +1022,7 @@ sub init { |
| 28 | my_dflt_prompt(make_install_arg => $CPAN::Config->{make_arg} || "", | 30 | my_dflt_prompt(make_install_arg => $CPAN::Config->{make_arg} || "", |
| 29 | $matcher); | 31 | $matcher); |
| 30 | 32 | ||
| @@ -33,5 +35,3 @@ index 53ffbf1..53976ff 100644 | |||
| 33 | my_dflt_prompt(mbuild_arg => "", $matcher); | 35 | my_dflt_prompt(mbuild_arg => "", $matcher); |
| 34 | 36 | ||
| 35 | if (exists $CPAN::HandleConfig::keys{mbuild_install_build_command} | 37 | if (exists $CPAN::HandleConfig::keys{mbuild_install_build_command} |
| 36 | -- | ||
| 37 | tg: (a508b62..) debian/cpan_definstalldirs (depends on: upstream) | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/debian/cpanplus_config_path.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/cpanplus_config_path.diff index 8f2f5d2bd3..e3e5ec9d52 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/debian/cpanplus_config_path.diff +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/cpanplus_config_path.diff | |||
| @@ -1,25 +1,26 @@ | |||
| 1 | Upstream-Status:Inappropriate [debian patch] | 1 | From 9825086b15f34f365a272cc8d6caf4e2044bede6 Mon Sep 17 00:00:00 2001 |
| 2 | |||
| 3 | From: Niko Tyni <ntyni@debian.org> | 2 | From: Niko Tyni <ntyni@debian.org> |
| 3 | Date: Mon, 6 Jul 2009 22:17:53 +0300 | ||
| 4 | Subject: Save local versions of CPANPLUS::Config::System into /etc/perl. | 4 | Subject: Save local versions of CPANPLUS::Config::System into /etc/perl. |
| 5 | 5 | ||
| 6 | This is a configuration file and needs to go in /etc by policy. | 6 | This is a configuration file and needs to go in /etc by policy. |
| 7 | Besides, /usr may not even be writable. | 7 | Besides, /usr may not even be writable. |
| 8 | 8 | ||
| 9 | This mirrors the Debian setup of CPAN.pm in debian/cpan_config_path. | 9 | This mirrors the Debian setup of CPAN.pm in debian/cpan_config_path. |
| 10 | 10 | ||
| 11 | See #533707. | 11 | See #533707. |
| 12 | 12 | ||
| 13 | Patch-Name: debian/cpanplus_config_path.diff | ||
| 13 | --- | 14 | --- |
| 14 | cpan/CPANPLUS/lib/CPANPLUS/Configure.pm | 1 + | 15 | cpan/CPANPLUS/lib/CPANPLUS/Configure.pm | 1 + |
| 15 | cpan/CPANPLUS/lib/CPANPLUS/Internals/Constants.pm | 3 +++ | 16 | cpan/CPANPLUS/lib/CPANPLUS/Internals/Constants.pm | 3 +++ |
| 16 | 2 files changed, 4 insertions(+), 0 deletions(-) | 17 | 2 files changed, 4 insertions(+), 0 deletions(-) |
| 17 | 18 | ||
| 18 | diff --git a/cpan/CPANPLUS/lib/CPANPLUS/Configure.pm b/cpan/CPANPLUS/lib/CPANPLUS/Configure.pm | 19 | diff --git a/cpan/CPANPLUS/lib/CPANPLUS/Configure.pm b/cpan/CPANPLUS/lib/CPANPLUS/Configure.pm |
| 19 | index baac91d..a3794de 100644 | 20 | index ba1ca07..25cbe5f 100644 |
| 20 | --- a/cpan/CPANPLUS/lib/CPANPLUS/Configure.pm | 21 | --- a/cpan/CPANPLUS/lib/CPANPLUS/Configure.pm |
| 21 | +++ b/cpan/CPANPLUS/lib/CPANPLUS/Configure.pm | 22 | +++ b/cpan/CPANPLUS/lib/CPANPLUS/Configure.pm |
| 22 | @@ -276,6 +276,7 @@ Saves the configuration to the package name you provided. | 23 | @@ -280,6 +280,7 @@ Saves the configuration to the package name you provided. |
| 23 | If this package is not C<CPANPLUS::Config::System>, it will | 24 | If this package is not C<CPANPLUS::Config::System>, it will |
| 24 | be saved in your C<.cpanplus> directory, otherwise it will | 25 | be saved in your C<.cpanplus> directory, otherwise it will |
| 25 | be attempted to be saved in the system wide directory. | 26 | be attempted to be saved in the system wide directory. |
| @@ -28,10 +29,10 @@ index baac91d..a3794de 100644 | |||
| 28 | If no argument is provided, it will default to your personal | 29 | If no argument is provided, it will default to your personal |
| 29 | config. | 30 | config. |
| 30 | diff --git a/cpan/CPANPLUS/lib/CPANPLUS/Internals/Constants.pm b/cpan/CPANPLUS/lib/CPANPLUS/Internals/Constants.pm | 31 | diff --git a/cpan/CPANPLUS/lib/CPANPLUS/Internals/Constants.pm b/cpan/CPANPLUS/lib/CPANPLUS/Internals/Constants.pm |
| 31 | index 1a38200..6ee0d82 100644 | 32 | index 443d5a4..f7085a8 100644 |
| 32 | --- a/cpan/CPANPLUS/lib/CPANPLUS/Internals/Constants.pm | 33 | --- a/cpan/CPANPLUS/lib/CPANPLUS/Internals/Constants.pm |
| 33 | +++ b/cpan/CPANPLUS/lib/CPANPLUS/Internals/Constants.pm | 34 | +++ b/cpan/CPANPLUS/lib/CPANPLUS/Internals/Constants.pm |
| 34 | @@ -199,6 +199,9 @@ use constant CONFIG_USER_FILE => sub { | 35 | @@ -209,6 +209,9 @@ use constant CONFIG_USER_FILE => sub { |
| 35 | ) . '.pm'; | 36 | ) . '.pm'; |
| 36 | }; | 37 | }; |
| 37 | use constant CONFIG_SYSTEM_FILE => sub { | 38 | use constant CONFIG_SYSTEM_FILE => sub { |
| @@ -41,5 +42,3 @@ index 1a38200..6ee0d82 100644 | |||
| 41 | require CPANPLUS::Internals; | 42 | require CPANPLUS::Internals; |
| 42 | require File::Basename; | 43 | require File::Basename; |
| 43 | my $dir = File::Basename::dirname( | 44 | my $dir = File::Basename::dirname( |
| 44 | -- | ||
| 45 | tg: (a508b62..) debian/cpanplus_config_path (depends on: upstream) | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/debian/cpanplus_definstalldirs.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/cpanplus_definstalldirs.diff index bd5fe80618..6d05c34fbb 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/debian/cpanplus_definstalldirs.diff +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/cpanplus_definstalldirs.diff | |||
| @@ -1,18 +1,21 @@ | |||
| 1 | Upstream-Status:Inappropriate [debian patch] | 1 | From 66517b14790aa6410fd37e411dd62521e1e02b7f Mon Sep 17 00:00:00 2001 |
| 2 | |||
| 3 | From: Niko Tyni <ntyni@debian.org> | 2 | From: Niko Tyni <ntyni@debian.org> |
| 3 | Date: Mon, 6 Jul 2009 21:58:41 +0300 | ||
| 4 | Subject: Configure CPANPLUS to use the site directories by default. | 4 | Subject: Configure CPANPLUS to use the site directories by default. |
| 5 | Closes: 533707 | 5 | |
| 6 | 6 | Bug-Debian: http://bugs.debian.org/533707 | |
| 7 | |||
| 7 | The core modules usually default to INSTALLDIRS=perl (ExtUtils::MakeMaker) | 8 | The core modules usually default to INSTALLDIRS=perl (ExtUtils::MakeMaker) |
| 8 | or installdirs=core (Module::Build), so we need to explicitly ask for | 9 | or installdirs=core (Module::Build), so we need to explicitly ask for |
| 9 | the site destination to get upgraded versions into /usr/local. | 10 | the site destination to get upgraded versions into /usr/local. |
| 10 | 11 | ||
| 11 | See also the sister patch, debian/cpan_definstalldirs . | 12 | See also the sister patch, debian/cpan_definstalldirs . |
| 12 | 13 | ||
| 14 | Patch-Name: debian/cpanplus_definstalldirs.diff | ||
| 13 | --- | 15 | --- |
| 14 | cpan/CPANPLUS/lib/CPANPLUS/Config/System.pm | 30 +++++++++++++++++++++++++++ | 16 | cpan/CPANPLUS/lib/CPANPLUS/Config/System.pm | 30 +++++++++++++++++++++++++++ |
| 15 | 1 files changed, 30 insertions(+), 0 deletions(-) | 17 | 1 files changed, 30 insertions(+), 0 deletions(-) |
| 18 | create mode 100644 cpan/CPANPLUS/lib/CPANPLUS/Config/System.pm | ||
| 16 | 19 | ||
| 17 | diff --git a/cpan/CPANPLUS/lib/CPANPLUS/Config/System.pm b/cpan/CPANPLUS/lib/CPANPLUS/Config/System.pm | 20 | diff --git a/cpan/CPANPLUS/lib/CPANPLUS/Config/System.pm b/cpan/CPANPLUS/lib/CPANPLUS/Config/System.pm |
| 18 | new file mode 100644 | 21 | new file mode 100644 |
| @@ -50,5 +53,3 @@ index 0000000..5e6e11e | |||
| 50 | +} | 53 | +} |
| 51 | + | 54 | + |
| 52 | +1; | 55 | +1; |
| 53 | -- | ||
| 54 | tg: (a508b62..) debian/cpanplus_definstalldirs (depends on: upstream) | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/debian/db_file_ver.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/db_file_ver.diff index e9aa60a9b9..ff07ec567d 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/debian/db_file_ver.diff +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/db_file_ver.diff | |||
| @@ -1,17 +1,19 @@ | |||
| 1 | Upstream-Status:Inappropriate [debian patch] | 1 | From 0d1acf7af6da3a3f933faba8459ad9ff03fe3e5b Mon Sep 17 00:00:00 2001 |
| 2 | 2 | From: Brendan O'Dea <bod@debian.org> | |
| 3 | Date: Fri, 16 Dec 2005 01:32:14 +1100 | ||
| 3 | Subject: Remove overly restrictive DB_File version check. | 4 | Subject: Remove overly restrictive DB_File version check. |
| 5 | |||
| 4 | Bug-Debian: http://bugs.debian.org/340047 | 6 | Bug-Debian: http://bugs.debian.org/340047 |
| 5 | 7 | ||
| 6 | Package dependencies ensure the correct library is linked at run-time. | 8 | Package dependencies ensure the correct library is linked at run-time. |
| 7 | 9 | ||
| 8 | 10 | Patch-Name: debian/db_file_ver.diff | |
| 9 | --- | 11 | --- |
| 10 | cpan/DB_File/version.c | 2 ++ | 12 | cpan/DB_File/version.c | 2 ++ |
| 11 | 1 files changed, 2 insertions(+), 0 deletions(-) | 13 | 1 files changed, 2 insertions(+), 0 deletions(-) |
| 12 | 14 | ||
| 13 | diff --git a/cpan/DB_File/version.c b/cpan/DB_File/version.c | 15 | diff --git a/cpan/DB_File/version.c b/cpan/DB_File/version.c |
| 14 | index 47158d3..67ccdff 100644 | 16 | index e01f6f6..544e6ee 100644 |
| 15 | --- a/cpan/DB_File/version.c | 17 | --- a/cpan/DB_File/version.c |
| 16 | +++ b/cpan/DB_File/version.c | 18 | +++ b/cpan/DB_File/version.c |
| 17 | @@ -48,6 +48,7 @@ __getBerkeleyDBInfo() | 19 | @@ -48,6 +48,7 @@ __getBerkeleyDBInfo() |
| @@ -30,5 +32,3 @@ index 47158d3..67ccdff 100644 | |||
| 30 | 32 | ||
| 31 | /* check that libdb is recent enough -- we need 2.3.4 or greater */ | 33 | /* check that libdb is recent enough -- we need 2.3.4 or greater */ |
| 32 | if (Major == 2 && (Minor < 3 || (Minor == 3 && Patch < 4))) | 34 | if (Major == 2 && (Minor < 3 || (Minor == 3 && Patch < 4))) |
| 33 | -- | ||
| 34 | tg: (a508b62..) debian/db_file_ver (depends on: upstream) | ||
diff --git a/meta/recipes-devtools/perl/perl-5.14.2/debian/deprecate-with-apt.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/deprecate-with-apt.diff new file mode 100644 index 0000000000..65a132db36 --- /dev/null +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/deprecate-with-apt.diff | |||
| @@ -0,0 +1,406 @@ | |||
| 1 | From c2bd2059cfbba573643c748ace4ff4db4cbf015d Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Dominic Hargreaves <dom@earth.li> | ||
| 3 | Date: Mon, 17 May 2010 13:23:07 +0300 | ||
| 4 | Subject: Point users to Debian packages of deprecated core modules | ||
| 5 | |||
| 6 | Bug-Debian: http://bugs.debian.org/580034 | ||
| 7 | |||
| 8 | Class::ISA, Switch, Pod::Plainer, and (partially) Shell were | ||
| 9 | deprecated from the Perl core in 5.12.0. | ||
| 10 | |||
| 11 | Class::ISA, Switch, Pod::Plainer were removed from the Perl core in | ||
| 12 | 5.14.0. | ||
| 13 | |||
| 14 | Shell and Devel::DProf, and Perl 4 libraries, were deprecated from the | ||
| 15 | Perl core in 5.14.0. | ||
| 16 | |||
| 17 | To get a clean transition, perl/perl-modules is going to recommend the | ||
| 18 | separate Debian packages of these for one release cycle so that they will be | ||
| 19 | pulled in by default on upgrades. | ||
| 20 | |||
| 21 | However, on systems configured to ignore recommendations the deprecation | ||
| 22 | warnings will still be useful, so modify them slightly to point to the | ||
| 23 | separate packages instead. | ||
| 24 | |||
| 25 | Patch-Name: debian/deprecate-with-apt.diff | ||
| 26 | --- | ||
| 27 | lib/abbrev.pl | 2 +- | ||
| 28 | lib/assert.pl | 2 +- | ||
| 29 | lib/bigfloat.pl | 2 +- | ||
| 30 | lib/bigint.pl | 2 +- | ||
| 31 | lib/bigrat.pl | 2 +- | ||
| 32 | lib/cacheout.pl | 2 +- | ||
| 33 | lib/complete.pl | 2 +- | ||
| 34 | lib/ctime.pl | 2 +- | ||
| 35 | lib/deprecate.pm | 16 +++++++++++++++- | ||
| 36 | lib/dotsh.pl | 2 +- | ||
| 37 | lib/exceptions.pl | 2 +- | ||
| 38 | lib/fastcwd.pl | 2 +- | ||
| 39 | lib/find.pl | 2 +- | ||
| 40 | lib/finddepth.pl | 2 +- | ||
| 41 | lib/flush.pl | 2 +- | ||
| 42 | lib/getcwd.pl | 2 +- | ||
| 43 | lib/getopt.pl | 2 +- | ||
| 44 | lib/getopts.pl | 2 +- | ||
| 45 | lib/hostname.pl | 2 +- | ||
| 46 | lib/importenv.pl | 2 +- | ||
| 47 | lib/look.pl | 2 +- | ||
| 48 | lib/newgetopt.pl | 2 +- | ||
| 49 | lib/open2.pl | 2 +- | ||
| 50 | lib/open3.pl | 2 +- | ||
| 51 | lib/pwd.pl | 2 +- | ||
| 52 | lib/shellwords.pl | 2 +- | ||
| 53 | lib/stat.pl | 2 +- | ||
| 54 | lib/syslog.pl | 2 +- | ||
| 55 | lib/tainted.pl | 2 +- | ||
| 56 | lib/termcap.pl | 2 +- | ||
| 57 | lib/timelocal.pl | 2 +- | ||
| 58 | lib/validate.pl | 2 +- | ||
| 59 | 32 files changed, 46 insertions(+), 32 deletions(-) | ||
| 60 | |||
| 61 | diff --git a/lib/abbrev.pl b/lib/abbrev.pl | ||
| 62 | index d46321f..0168631 100644 | ||
| 63 | --- a/lib/abbrev.pl | ||
| 64 | +++ b/lib/abbrev.pl | ||
| 65 | @@ -1,4 +1,4 @@ | ||
| 66 | -warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install it from the CPAN distribution Perl4::CoreLibs. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 67 | +warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install the separate libperl4-corelibs-perl package. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 68 | |||
| 69 | ;# Usage: | ||
| 70 | ;# %foo = (); | ||
| 71 | diff --git a/lib/assert.pl b/lib/assert.pl | ||
| 72 | index d47e006..80593c5 100644 | ||
| 73 | --- a/lib/assert.pl | ||
| 74 | +++ b/lib/assert.pl | ||
| 75 | @@ -1,4 +1,4 @@ | ||
| 76 | -warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install it from the CPAN distribution Perl4::CoreLibs. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 77 | +warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install the separate libperl4-corelibs-perl package. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 78 | |||
| 79 | # | ||
| 80 | # This library is no longer being maintained, and is included for backward | ||
| 81 | diff --git a/lib/bigfloat.pl b/lib/bigfloat.pl | ||
| 82 | index 82d0f5c..c21bac6 100644 | ||
| 83 | --- a/lib/bigfloat.pl | ||
| 84 | +++ b/lib/bigfloat.pl | ||
| 85 | @@ -1,4 +1,4 @@ | ||
| 86 | -warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install it from the CPAN distribution Perl4::CoreLibs. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 87 | +warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install the separate libperl4-corelibs-perl package. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 88 | |||
| 89 | package bigfloat; | ||
| 90 | require "bigint.pl"; | ||
| 91 | diff --git a/lib/bigint.pl b/lib/bigint.pl | ||
| 92 | index 6de1c53..031e8ad 100644 | ||
| 93 | --- a/lib/bigint.pl | ||
| 94 | +++ b/lib/bigint.pl | ||
| 95 | @@ -1,4 +1,4 @@ | ||
| 96 | -warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install it from the CPAN distribution Perl4::CoreLibs. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 97 | +warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install the separate libperl4-corelibs-perl package. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 98 | |||
| 99 | package bigint; | ||
| 100 | # | ||
| 101 | diff --git a/lib/bigrat.pl b/lib/bigrat.pl | ||
| 102 | index aaf1713..146a8f4 100644 | ||
| 103 | --- a/lib/bigrat.pl | ||
| 104 | +++ b/lib/bigrat.pl | ||
| 105 | @@ -1,4 +1,4 @@ | ||
| 106 | -warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install it from the CPAN distribution Perl4::CoreLibs. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 107 | +warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install the separate libperl4-corelibs-perl package. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 108 | |||
| 109 | package bigrat; | ||
| 110 | require "bigint.pl"; | ||
| 111 | diff --git a/lib/cacheout.pl b/lib/cacheout.pl | ||
| 112 | index a5da453..937405d 100644 | ||
| 113 | --- a/lib/cacheout.pl | ||
| 114 | +++ b/lib/cacheout.pl | ||
| 115 | @@ -1,4 +1,4 @@ | ||
| 116 | -warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install it from the CPAN distribution Perl4::CoreLibs. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 117 | +warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install the separate libperl4-corelibs-perl package. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 118 | |||
| 119 | # | ||
| 120 | # This library is no longer being maintained, and is included for backward | ||
| 121 | diff --git a/lib/complete.pl b/lib/complete.pl | ||
| 122 | index 9ed041c..2ab0c6a 100644 | ||
| 123 | --- a/lib/complete.pl | ||
| 124 | +++ b/lib/complete.pl | ||
| 125 | @@ -1,4 +1,4 @@ | ||
| 126 | -warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install it from the CPAN distribution Perl4::CoreLibs. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 127 | +warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install the separate libperl4-corelibs-perl package. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 128 | |||
| 129 | ;# | ||
| 130 | # | ||
| 131 | diff --git a/lib/ctime.pl b/lib/ctime.pl | ||
| 132 | index aa00d00..ac24e71 100644 | ||
| 133 | --- a/lib/ctime.pl | ||
| 134 | +++ b/lib/ctime.pl | ||
| 135 | @@ -1,4 +1,4 @@ | ||
| 136 | -warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install it from the CPAN distribution Perl4::CoreLibs. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 137 | +warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install the separate libperl4-corelibs-perl package. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 138 | |||
| 139 | ;# ctime.pl is a simple Perl emulation for the well known ctime(3C) function. | ||
| 140 | # | ||
| 141 | diff --git a/lib/deprecate.pm b/lib/deprecate.pm | ||
| 142 | index 7562c69..fc548b0 100644 | ||
| 143 | --- a/lib/deprecate.pm | ||
| 144 | +++ b/lib/deprecate.pm | ||
| 145 | @@ -7,6 +7,14 @@ our $VERSION = 0.02; | ||
| 146 | our %Config; | ||
| 147 | unless (%Config) { require Config; *Config = \%Config::Config; } | ||
| 148 | |||
| 149 | +# Debian-specific change: recommend the separate Debian packages of | ||
| 150 | +# deprecated modules where available | ||
| 151 | + | ||
| 152 | +my %DEBIAN_PACKAGES = ( | ||
| 153 | + "Shell" => "libshell-perl", | ||
| 154 | + "Devel::DProf" => "libdevel-dprof-perl" | ||
| 155 | +); | ||
| 156 | + | ||
| 157 | # This isn't a public API. It's internal to code maintained by the perl-porters | ||
| 158 | # If you would like it to be a public API, please send a patch with | ||
| 159 | # documentation and tests. Until then, it may change without warning. | ||
| 160 | @@ -58,9 +66,15 @@ EOM | ||
| 161 | if (defined $callers_bitmask | ||
| 162 | && (vec($callers_bitmask, $warnings::Offsets{deprecated}, 1) | ||
| 163 | || vec($callers_bitmask, $warnings::Offsets{all}, 1))) { | ||
| 164 | - warn <<"EOM"; | ||
| 165 | + if (my $deb = $DEBIAN_PACKAGES{$package}) { | ||
| 166 | + warn <<"EOM"; | ||
| 167 | +$package will be removed from the Perl core distribution in the next major release. Please install the separate $deb package. It is being used at $call_file, line $call_line. | ||
| 168 | +EOM | ||
| 169 | + } else { | ||
| 170 | + warn <<"EOM"; | ||
| 171 | $package will be removed from the Perl core distribution in the next major release. Please install it from CPAN. It is being used at $call_file, line $call_line. | ||
| 172 | EOM | ||
| 173 | + } | ||
| 174 | } | ||
| 175 | } | ||
| 176 | } | ||
| 177 | diff --git a/lib/dotsh.pl b/lib/dotsh.pl | ||
| 178 | index 92f1f4c..4085122 100644 | ||
| 179 | --- a/lib/dotsh.pl | ||
| 180 | +++ b/lib/dotsh.pl | ||
| 181 | @@ -1,4 +1,4 @@ | ||
| 182 | -warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install it from the CPAN distribution Perl4::CoreLibs. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 183 | +warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install the separate libperl4-corelibs-perl package. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 184 | |||
| 185 | # | ||
| 186 | # @(#)dotsh.pl 03/19/94 | ||
| 187 | diff --git a/lib/exceptions.pl b/lib/exceptions.pl | ||
| 188 | index 8af64c8..b5b1427 100644 | ||
| 189 | --- a/lib/exceptions.pl | ||
| 190 | +++ b/lib/exceptions.pl | ||
| 191 | @@ -1,4 +1,4 @@ | ||
| 192 | -warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install it from the CPAN distribution Perl4::CoreLibs. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 193 | +warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install the separate libperl4-corelibs-perl package. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 194 | |||
| 195 | # exceptions.pl | ||
| 196 | # tchrist@convex.com | ||
| 197 | diff --git a/lib/fastcwd.pl b/lib/fastcwd.pl | ||
| 198 | index 70007a1..2c7c42e 100644 | ||
| 199 | --- a/lib/fastcwd.pl | ||
| 200 | +++ b/lib/fastcwd.pl | ||
| 201 | @@ -1,4 +1,4 @@ | ||
| 202 | -warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install it from the CPAN distribution Perl4::CoreLibs. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 203 | +warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install the separate libperl4-corelibs-perl package. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 204 | |||
| 205 | # By John Bazik | ||
| 206 | # | ||
| 207 | diff --git a/lib/find.pl b/lib/find.pl | ||
| 208 | index 8e1b42c..7fb2fbf 100644 | ||
| 209 | --- a/lib/find.pl | ||
| 210 | +++ b/lib/find.pl | ||
| 211 | @@ -1,4 +1,4 @@ | ||
| 212 | -warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install it from the CPAN distribution Perl4::CoreLibs. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 213 | +warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install the separate libperl4-corelibs-perl package. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 214 | |||
| 215 | # This library is deprecated and unmaintained. It is included for | ||
| 216 | # compatibility with Perl 4 scripts which may use it, but it will be | ||
| 217 | diff --git a/lib/finddepth.pl b/lib/finddepth.pl | ||
| 218 | index 479905f..c07cea5 100644 | ||
| 219 | --- a/lib/finddepth.pl | ||
| 220 | +++ b/lib/finddepth.pl | ||
| 221 | @@ -1,4 +1,4 @@ | ||
| 222 | -warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install it from the CPAN distribution Perl4::CoreLibs. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 223 | +warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install the separate libperl4-corelibs-perl package. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 224 | |||
| 225 | # This library is deprecated and unmaintained. It is included for | ||
| 226 | # compatibility with Perl 4 scripts which may use it, but it will be | ||
| 227 | diff --git a/lib/flush.pl b/lib/flush.pl | ||
| 228 | index c427976..e5ed0ae 100644 | ||
| 229 | --- a/lib/flush.pl | ||
| 230 | +++ b/lib/flush.pl | ||
| 231 | @@ -1,4 +1,4 @@ | ||
| 232 | -warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install it from the CPAN distribution Perl4::CoreLibs. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 233 | +warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install the separate libperl4-corelibs-perl package. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 234 | |||
| 235 | # | ||
| 236 | # This library is no longer being maintained, and is included for backward | ||
| 237 | diff --git a/lib/getcwd.pl b/lib/getcwd.pl | ||
| 238 | index 77b2442..3810a99 100644 | ||
| 239 | --- a/lib/getcwd.pl | ||
| 240 | +++ b/lib/getcwd.pl | ||
| 241 | @@ -1,4 +1,4 @@ | ||
| 242 | -warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install it from the CPAN distribution Perl4::CoreLibs. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 243 | +warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install the separate libperl4-corelibs-perl package. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 244 | |||
| 245 | # By Brandon S. Allbery | ||
| 246 | # | ||
| 247 | diff --git a/lib/getopt.pl b/lib/getopt.pl | ||
| 248 | index 1d4008a..019a165 100644 | ||
| 249 | --- a/lib/getopt.pl | ||
| 250 | +++ b/lib/getopt.pl | ||
| 251 | @@ -1,4 +1,4 @@ | ||
| 252 | -warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install it from the CPAN distribution Perl4::CoreLibs. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 253 | +warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install the separate libperl4-corelibs-perl package. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 254 | |||
| 255 | ;# $RCSfile: getopt.pl,v $$Revision: 4.1 $$Date: 92/08/07 18:23:58 $ | ||
| 256 | # | ||
| 257 | diff --git a/lib/getopts.pl b/lib/getopts.pl | ||
| 258 | index 37ecb4a..3d27418 100644 | ||
| 259 | --- a/lib/getopts.pl | ||
| 260 | +++ b/lib/getopts.pl | ||
| 261 | @@ -1,4 +1,4 @@ | ||
| 262 | -warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install it from the CPAN distribution Perl4::CoreLibs. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 263 | +warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install the separate libperl4-corelibs-perl package. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 264 | |||
| 265 | ;# getopts.pl - a better getopt.pl | ||
| 266 | # | ||
| 267 | diff --git a/lib/hostname.pl b/lib/hostname.pl | ||
| 268 | index f57375e..b055d30 100644 | ||
| 269 | --- a/lib/hostname.pl | ||
| 270 | +++ b/lib/hostname.pl | ||
| 271 | @@ -1,4 +1,4 @@ | ||
| 272 | -warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install it from the CPAN distribution Perl4::CoreLibs. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 273 | +warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install the separate libperl4-corelibs-perl package. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 274 | |||
| 275 | # From: asherman@fmrco.com (Aaron Sherman) | ||
| 276 | # | ||
| 277 | diff --git a/lib/importenv.pl b/lib/importenv.pl | ||
| 278 | index 625edf6..52ee722 100644 | ||
| 279 | --- a/lib/importenv.pl | ||
| 280 | +++ b/lib/importenv.pl | ||
| 281 | @@ -1,4 +1,4 @@ | ||
| 282 | -warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install it from the CPAN distribution Perl4::CoreLibs. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 283 | +warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install the separate libperl4-corelibs-perl package. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 284 | |||
| 285 | # This library is no longer being maintained, and is included for backward | ||
| 286 | # compatibility with Perl 4 programs which may require it. | ||
| 287 | diff --git a/lib/look.pl b/lib/look.pl | ||
| 288 | index 7be55b2..12dcace 100644 | ||
| 289 | --- a/lib/look.pl | ||
| 290 | +++ b/lib/look.pl | ||
| 291 | @@ -1,4 +1,4 @@ | ||
| 292 | -warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install it from the CPAN distribution Perl4::CoreLibs. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 293 | +warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install the separate libperl4-corelibs-perl package. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 294 | |||
| 295 | ;# Usage: &look(*FILEHANDLE,$key,$dict,$fold) | ||
| 296 | # | ||
| 297 | diff --git a/lib/newgetopt.pl b/lib/newgetopt.pl | ||
| 298 | index 4ac9470..08df6cb 100644 | ||
| 299 | --- a/lib/newgetopt.pl | ||
| 300 | +++ b/lib/newgetopt.pl | ||
| 301 | @@ -1,4 +1,4 @@ | ||
| 302 | -warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install it from the CPAN distribution Perl4::CoreLibs. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 303 | +warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install the separate libperl4-corelibs-perl package. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 304 | |||
| 305 | # This library is no longer being maintained, and is included for backward | ||
| 306 | # compatibility with Perl 4 programs which may require it. | ||
| 307 | diff --git a/lib/open2.pl b/lib/open2.pl | ||
| 308 | index ceb5653..a05f2ab 100644 | ||
| 309 | --- a/lib/open2.pl | ||
| 310 | +++ b/lib/open2.pl | ||
| 311 | @@ -1,4 +1,4 @@ | ||
| 312 | -warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install it from the CPAN distribution Perl4::CoreLibs. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 313 | +warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install the separate libperl4-corelibs-perl package. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 314 | |||
| 315 | # This legacy library is deprecated and will be removed in a future | ||
| 316 | # release of perl. | ||
| 317 | diff --git a/lib/open3.pl b/lib/open3.pl | ||
| 318 | index 9f4d5a4..27f7ab4 100644 | ||
| 319 | --- a/lib/open3.pl | ||
| 320 | +++ b/lib/open3.pl | ||
| 321 | @@ -1,4 +1,4 @@ | ||
| 322 | -warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install it from the CPAN distribution Perl4::CoreLibs. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 323 | +warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install the separate libperl4-corelibs-perl package. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 324 | |||
| 325 | # This legacy library is deprecated and will be removed in a future | ||
| 326 | # release of perl. | ||
| 327 | diff --git a/lib/pwd.pl b/lib/pwd.pl | ||
| 328 | index bd8123b..bdace6e 100644 | ||
| 329 | --- a/lib/pwd.pl | ||
| 330 | +++ b/lib/pwd.pl | ||
| 331 | @@ -1,4 +1,4 @@ | ||
| 332 | -warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install it from the CPAN distribution Perl4::CoreLibs. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 333 | +warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install the separate libperl4-corelibs-perl package. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 334 | |||
| 335 | ;# pwd.pl - keeps track of current working directory in PWD environment var | ||
| 336 | ;# | ||
| 337 | diff --git a/lib/shellwords.pl b/lib/shellwords.pl | ||
| 338 | index b562f5f..7f16375 100644 | ||
| 339 | --- a/lib/shellwords.pl | ||
| 340 | +++ b/lib/shellwords.pl | ||
| 341 | @@ -1,4 +1,4 @@ | ||
| 342 | -warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install it from the CPAN distribution Perl4::CoreLibs. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 343 | +warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install the separate libperl4-corelibs-perl package. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 344 | |||
| 345 | ;# This legacy library is deprecated and will be removed in a future | ||
| 346 | ;# release of perl. | ||
| 347 | diff --git a/lib/stat.pl b/lib/stat.pl | ||
| 348 | index feda273..910ce1c 100644 | ||
| 349 | --- a/lib/stat.pl | ||
| 350 | +++ b/lib/stat.pl | ||
| 351 | @@ -1,4 +1,4 @@ | ||
| 352 | -warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install it from the CPAN distribution Perl4::CoreLibs. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 353 | +warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install the separate libperl4-corelibs-perl package. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 354 | |||
| 355 | ;# This legacy library is deprecated and will be removed in a future | ||
| 356 | ;# release of perl. | ||
| 357 | diff --git a/lib/syslog.pl b/lib/syslog.pl | ||
| 358 | index 7504a5d..4c2b95f 100644 | ||
| 359 | --- a/lib/syslog.pl | ||
| 360 | +++ b/lib/syslog.pl | ||
| 361 | @@ -1,4 +1,4 @@ | ||
| 362 | -warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install it from the CPAN distribution Perl4::CoreLibs. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 363 | +warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install the separate libperl4-corelibs-perl package. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 364 | |||
| 365 | # | ||
| 366 | # syslog.pl | ||
| 367 | diff --git a/lib/tainted.pl b/lib/tainted.pl | ||
| 368 | index e88bca1..d58c765 100644 | ||
| 369 | --- a/lib/tainted.pl | ||
| 370 | +++ b/lib/tainted.pl | ||
| 371 | @@ -1,4 +1,4 @@ | ||
| 372 | -warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install it from the CPAN distribution Perl4::CoreLibs. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 373 | +warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install the separate libperl4-corelibs-perl package. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 374 | |||
| 375 | # This legacy library is deprecated and will be removed in a future | ||
| 376 | # release of perl. | ||
| 377 | diff --git a/lib/termcap.pl b/lib/termcap.pl | ||
| 378 | index a84cba3..e641f4d 100644 | ||
| 379 | --- a/lib/termcap.pl | ||
| 380 | +++ b/lib/termcap.pl | ||
| 381 | @@ -1,4 +1,4 @@ | ||
| 382 | -warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install it from the CPAN distribution Perl4::CoreLibs. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 383 | +warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install the separate libperl4-corelibs-perl package. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 384 | |||
| 385 | ;# $RCSfile: termcap.pl,v $$Revision: 4.1 $$Date: 92/08/07 18:24:16 $ | ||
| 386 | # | ||
| 387 | diff --git a/lib/timelocal.pl b/lib/timelocal.pl | ||
| 388 | index fefb9da..2297888 100644 | ||
| 389 | --- a/lib/timelocal.pl | ||
| 390 | +++ b/lib/timelocal.pl | ||
| 391 | @@ -1,4 +1,4 @@ | ||
| 392 | -warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install it from the CPAN distribution Perl4::CoreLibs. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 393 | +warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install the separate libperl4-corelibs-perl package. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 394 | |||
| 395 | ;# timelocal.pl | ||
| 396 | ;# | ||
| 397 | diff --git a/lib/validate.pl b/lib/validate.pl | ||
| 398 | index fc2d16a..1a8aef4 100644 | ||
| 399 | --- a/lib/validate.pl | ||
| 400 | +++ b/lib/validate.pl | ||
| 401 | @@ -1,4 +1,4 @@ | ||
| 402 | -warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install it from the CPAN distribution Perl4::CoreLibs. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 403 | +warn "Legacy library @{[(caller(0))[6]]} will be removed from the Perl core distribution in the next major release. Please install the separate libperl4-corelibs-perl package. It is being used at @{[(caller)[1]]}, line @{[(caller)[2]]}.\n"; | ||
| 404 | |||
| 405 | ;# The validate routine takes a single multiline string consisting of | ||
| 406 | ;# lines containing a filename plus a file test to try on it. (The | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/debian/disable-zlib-bundling.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/disable-zlib-bundling.diff index 44349a534e..80c0acb39d 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/debian/disable-zlib-bundling.diff +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/disable-zlib-bundling.diff | |||
| @@ -1,11 +1,12 @@ | |||
| 1 | Upstream-Status:Inappropriate [debian patch] | 1 | From 90c7967530102c66bbff25d89273d3f0bf189a83 Mon Sep 17 00:00:00 2001 |
| 2 | |||
| 3 | From: Niko Tyni <ntyni@debian.org> | 2 | From: Niko Tyni <ntyni@debian.org> |
| 3 | Date: Fri, 10 Apr 2009 01:17:43 +0300 | ||
| 4 | Subject: Disable zlib bundling in Compress::Raw::Zlib | 4 | Subject: Disable zlib bundling in Compress::Raw::Zlib |
| 5 | 5 | ||
| 6 | Compress::Raw::Zlib statically links its bundled version of zlib | 6 | Compress::Raw::Zlib statically links its bundled version of zlib |
| 7 | by default, but we use the system library instead. | 7 | by default, but we use the system library instead. |
| 8 | 8 | ||
| 9 | Patch-Name: debian/disable-zlib-bundling.diff | ||
| 9 | --- | 10 | --- |
| 10 | cpan/Compress-Raw-Zlib/config.in | 6 +++--- | 11 | cpan/Compress-Raw-Zlib/config.in | 6 +++--- |
| 11 | 1 files changed, 3 insertions(+), 3 deletions(-) | 12 | 1 files changed, 3 insertions(+), 3 deletions(-) |
| @@ -27,5 +28,3 @@ index c56cc03..2c6659b 100644 | |||
| 27 | 28 | ||
| 28 | OLD_ZLIB = False | 29 | OLD_ZLIB = False |
| 29 | GZIP_OS_CODE = AUTO_DETECT | 30 | GZIP_OS_CODE = AUTO_DETECT |
| 30 | -- | ||
| 31 | tg: (a508b62..) debian/disable-zlib-bundling (depends on: upstream) | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/debian/doc_info.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/doc_info.diff index be75f30144..a118da341c 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/debian/doc_info.diff +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/doc_info.diff | |||
| @@ -1,19 +1,21 @@ | |||
| 1 | Upstream-Status:Inappropriate [debian patch] | 1 | From 16ebe1f5232621d8894aa6c6210fdf2fc9b54a84 Mon Sep 17 00:00:00 2001 |
| 2 | 2 | From: Brendan O'Dea <bod@debian.org> | |
| 3 | Subject: Replace generic man(1) instructions with Debian-specific information. | 3 | Date: Fri, 18 Mar 2005 22:22:25 +1100 |
| 4 | Subject: Replace generic man(1) instructions with Debian-specific | ||
| 5 | information. | ||
| 4 | 6 | ||
| 5 | Indicate that the user needs to install the perl-doc package. | 7 | Indicate that the user needs to install the perl-doc package. |
| 6 | 8 | ||
| 7 | 9 | Patch-Name: debian/doc_info.diff | |
| 8 | --- | 10 | --- |
| 9 | pod/perl.pod | 12 ++++++++++-- | 11 | pod/perl.pod | 12 ++++++++++-- |
| 10 | 1 files changed, 10 insertions(+), 2 deletions(-) | 12 | 1 files changed, 10 insertions(+), 2 deletions(-) |
| 11 | 13 | ||
| 12 | diff --git a/pod/perl.pod b/pod/perl.pod | 14 | diff --git a/pod/perl.pod b/pod/perl.pod |
| 13 | index e67f062..3b8ae83 100644 | 15 | index 29cabf1..529ad6f 100644 |
| 14 | --- a/pod/perl.pod | 16 | --- a/pod/perl.pod |
| 15 | +++ b/pod/perl.pod | 17 | +++ b/pod/perl.pod |
| 16 | @@ -242,8 +242,16 @@ For ease of access, the Perl manual has been split up into several sections. | 18 | @@ -261,8 +261,16 @@ For ease of access, the Perl manual has been split up into several sections. |
| 17 | perlwin32 Perl notes for Windows | 19 | perlwin32 Perl notes for Windows |
| 18 | 20 | ||
| 19 | 21 | ||
| @@ -32,5 +34,3 @@ index e67f062..3b8ae83 100644 | |||
| 32 | 34 | ||
| 33 | In general, if something strange has gone wrong with your program and you're | 35 | In general, if something strange has gone wrong with your program and you're |
| 34 | not sure where you should look for help, try the B<-w> switch first. It will | 36 | not sure where you should look for help, try the B<-w> switch first. It will |
| 35 | -- | ||
| 36 | tg: (a508b62..) debian/doc_info (depends on: upstream) | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/debian/enc2xs_inc.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/enc2xs_inc.diff index 4cac4b75f4..7c33e90fda 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/debian/enc2xs_inc.diff +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/enc2xs_inc.diff | |||
| @@ -1,6 +1,8 @@ | |||
| 1 | Upstream-Status:Inappropriate [debian patch] | 1 | From e9fd6e7729b9ebd9bc74b8cf295cd3a7f5aa5472 Mon Sep 17 00:00:00 2001 |
| 2 | 2 | From: Brendan O'Dea <bod@debian.org> | |
| 3 | Date: Tue, 8 Mar 2005 19:30:38 +1100 | ||
| 3 | Subject: Tweak enc2xs to follow symlinks and ignore missing @INC directories. | 4 | Subject: Tweak enc2xs to follow symlinks and ignore missing @INC directories. |
| 5 | |||
| 4 | Bug-Debian: http://bugs.debian.org/290336 | 6 | Bug-Debian: http://bugs.debian.org/290336 |
| 5 | 7 | ||
| 6 | - ignore missing directories, | 8 | - ignore missing directories, |
| @@ -8,6 +10,7 @@ Bug-Debian: http://bugs.debian.org/290336 | |||
| 8 | - filter "." out when running "enc2xs -C", it's unnecessary and causes | 10 | - filter "." out when running "enc2xs -C", it's unnecessary and causes |
| 9 | issues with follow => 1 (see #603686 and [rt.cpan.org #64585]) | 11 | issues with follow => 1 (see #603686 and [rt.cpan.org #64585]) |
| 10 | 12 | ||
| 13 | Patch-Name: debian/enc2xs_inc.diff | ||
| 11 | --- | 14 | --- |
| 12 | cpan/Encode/bin/enc2xs | 8 ++++---- | 15 | cpan/Encode/bin/enc2xs | 8 ++++---- |
| 13 | 1 files changed, 4 insertions(+), 4 deletions(-) | 16 | 1 files changed, 4 insertions(+), 4 deletions(-) |
| @@ -48,5 +51,3 @@ index 773c0a0..bc1ae1b 100644 | |||
| 48 | $_ModLines = ""; | 51 | $_ModLines = ""; |
| 49 | for my $enc ( sort keys %LocalMod ) { | 52 | for my $enc ( sort keys %LocalMod ) { |
| 50 | $_ModLines .= | 53 | $_ModLines .= |
| 51 | -- | ||
| 52 | tg: (a508b62..) debian/enc2xs_inc (depends on: upstream) | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/debian/errno_ver.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/errno_ver.diff index de73ed549a..0f3bfa6667 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/debian/errno_ver.diff +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/errno_ver.diff | |||
| @@ -1,25 +1,28 @@ | |||
| 1 | Upstream-Status:Inappropriate [debian patch] | 1 | From 973bed42db538804179f39d66dab37c82c6ade24 Mon Sep 17 00:00:00 2001 |
| 2 | From: Brendan O'Dea <bod@debian.org> | ||
| 3 | Date: Fri, 16 Dec 2005 01:32:14 +1100 | ||
| 4 | Subject: Remove Errno version check due to upgrade problems with long-running | ||
| 5 | processes. | ||
| 2 | 6 | ||
| 3 | Subject: Remove Errno version check due to upgrade problems with long-running processes. | ||
| 4 | Bug-Debian: http://bugs.debian.org/343351 | 7 | Bug-Debian: http://bugs.debian.org/343351 |
| 5 | 8 | ||
| 6 | Remove version check which can cause problems for long running | 9 | Remove version check which can cause problems for long running |
| 7 | processes embedding perl when upgrading to a newer version, | 10 | processes embedding perl when upgrading to a newer version, |
| 8 | compatible, but built on a different machine. | 11 | compatible, but built on a different machine. |
| 9 | 12 | ||
| 10 | 13 | Patch-Name: debian/errno_ver.diff | |
| 11 | --- | 14 | --- |
| 12 | ext/Errno/Errno_pm.PL | 5 ----- | 15 | ext/Errno/Errno_pm.PL | 5 ----- |
| 13 | 1 files changed, 0 insertions(+), 5 deletions(-) | 16 | 1 files changed, 0 insertions(+), 5 deletions(-) |
| 14 | 17 | ||
| 15 | diff --git a/ext/Errno/Errno_pm.PL b/ext/Errno/Errno_pm.PL | 18 | diff --git a/ext/Errno/Errno_pm.PL b/ext/Errno/Errno_pm.PL |
| 16 | index 124b8fc..b554cd4 100644 | 19 | index 56bc815..01f510a 100644 |
| 17 | --- a/ext/Errno/Errno_pm.PL | 20 | --- a/ext/Errno/Errno_pm.PL |
| 18 | +++ b/ext/Errno/Errno_pm.PL | 21 | +++ b/ext/Errno/Errno_pm.PL |
| 19 | @@ -341,13 +341,8 @@ EOF | 22 | @@ -332,13 +332,8 @@ EOF |
| 23 | |||
| 20 | package Errno; | 24 | package Errno; |
| 21 | our (\@EXPORT_OK,\%EXPORT_TAGS,\@ISA,\$VERSION,\%errno,\$AUTOLOAD); | 25 | require Exporter; |
| 22 | use Exporter (); | ||
| 23 | -use Config; | 26 | -use Config; |
| 24 | use strict; | 27 | use strict; |
| 25 | 28 | ||
| @@ -27,8 +30,6 @@ index 124b8fc..b554cd4 100644 | |||
| 27 | -"$Config{'archname'}-$Config{'osvers'}" or | 30 | -"$Config{'archname'}-$Config{'osvers'}" or |
| 28 | - die "Errno architecture ($Config{'archname'}-$Config{'osvers'}) does not match executable architecture (\$Config{'archname'}-\$Config{'osvers'})"; | 31 | - die "Errno architecture ($Config{'archname'}-$Config{'osvers'}) does not match executable architecture (\$Config{'archname'}-\$Config{'osvers'})"; |
| 29 | - | 32 | - |
| 30 | \$VERSION = "$VERSION"; | 33 | our \$VERSION = "$VERSION"; |
| 31 | \$VERSION = eval \$VERSION; | 34 | \$VERSION = eval \$VERSION; |
| 32 | \@ISA = qw(Exporter); | 35 | our \@ISA = 'Exporter'; |
| 33 | -- | ||
| 34 | tg: (a508b62..) debian/errno_ver (depends on: upstream) | ||
diff --git a/meta/recipes-devtools/perl/perl-5.14.2/debian/extutils_set_libperl_path.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/extutils_set_libperl_path.diff new file mode 100644 index 0000000000..4c2da327d5 --- /dev/null +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/extutils_set_libperl_path.diff | |||
| @@ -0,0 +1,23 @@ | |||
| 1 | From 334ac01a8306485ed901f4fb45d79f39a944fe77 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Brendan O'Dea <bod@debian.org> | ||
| 3 | Date: Tue, 8 Mar 2005 19:30:38 +1100 | ||
| 4 | Subject: EU:MM: Set location of libperl.a to /usr/lib | ||
| 5 | |||
| 6 | Patch-Name: debian/extutils_set_libperl_path.diff | ||
| 7 | --- | ||
| 8 | cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | 2 +- | ||
| 9 | 1 files changed, 1 insertions(+), 1 deletions(-) | ||
| 10 | |||
| 11 | diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | ||
| 12 | index 4ee6b3f..42bbb83 100644 | ||
| 13 | --- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | ||
| 14 | +++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | ||
| 15 | @@ -2409,7 +2409,7 @@ MAP_PRELIBS = $Config{perllibs} $Config{cryptlib} | ||
| 16 | ($lperl = $libperl) =~ s/\$\(A\)/$self->{LIB_EXT}/; | ||
| 17 | } | ||
| 18 | unless ($libperl && -f $lperl) { # Ilya's code... | ||
| 19 | - my $dir = $self->{PERL_SRC} || "$self->{PERL_ARCHLIB}/CORE"; | ||
| 20 | + my $dir = $self->{PERL_SRC} || "/usr/lib"; | ||
| 21 | $dir = "$self->{PERL_ARCHLIB}/.." if $self->{UNINSTALLED_PERL}; | ||
| 22 | $libperl ||= "libperl$self->{LIB_EXT}"; | ||
| 23 | $libperl = "$dir/$libperl"; | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/debian/fakeroot.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/fakeroot.diff index 2c8def5a81..bd90af9b39 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/debian/fakeroot.diff +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/fakeroot.diff | |||
| @@ -1,5 +1,6 @@ | |||
| 1 | Upstream-Status:Inappropriate [debian patch] | 1 | From a46a7107fb045ffa6047488b8002fec97b621a11 Mon Sep 17 00:00:00 2001 |
| 2 | 2 | From: Brendan O'Dea <bod@debian.org> | |
| 3 | Date: Fri, 18 Mar 2005 22:22:25 +1100 | ||
| 3 | Subject: Postpone LD_LIBRARY_PATH evaluation to the binary targets. | 4 | Subject: Postpone LD_LIBRARY_PATH evaluation to the binary targets. |
| 4 | 5 | ||
| 5 | Modify the setting of LD_LIBRARY_PATH to append pre-existing values at the | 6 | Modify the setting of LD_LIBRARY_PATH to append pre-existing values at the |
| @@ -9,16 +10,16 @@ This is required when building packages with dpkg-buildpackage and fakeroot, | |||
| 9 | since fakeroot (which now sets LD_LIBRARY_PATH) is not used for the "build" | 10 | since fakeroot (which now sets LD_LIBRARY_PATH) is not used for the "build" |
| 10 | rule where the Makefile is created, but is for the clean/binary* targets. | 11 | rule where the Makefile is created, but is for the clean/binary* targets. |
| 11 | 12 | ||
| 12 | 13 | Patch-Name: debian/fakeroot.diff | |
| 13 | --- | 14 | --- |
| 14 | Makefile.SH | 9 ++------- | 15 | Makefile.SH | 9 ++------- |
| 15 | 1 files changed, 2 insertions(+), 7 deletions(-) | 16 | 1 files changed, 2 insertions(+), 7 deletions(-) |
| 16 | 17 | ||
| 17 | diff --git a/Makefile.SH b/Makefile.SH | 18 | diff --git a/Makefile.SH b/Makefile.SH |
| 18 | index fc13b2b..d420229 100755 | 19 | index eb6326a..1dac585 100755 |
| 19 | --- a/Makefile.SH | 20 | --- a/Makefile.SH |
| 20 | +++ b/Makefile.SH | 21 | +++ b/Makefile.SH |
| 21 | @@ -50,12 +50,7 @@ case "$useshrplib" in | 22 | @@ -36,12 +36,7 @@ case "$useshrplib" in |
| 22 | true) | 23 | true) |
| 23 | # Prefix all runs of 'miniperl' and 'perl' with | 24 | # Prefix all runs of 'miniperl' and 'perl' with |
| 24 | # $ldlibpth so that ./perl finds *this* shared libperl. | 25 | # $ldlibpth so that ./perl finds *this* shared libperl. |
| @@ -32,7 +33,7 @@ index fc13b2b..d420229 100755 | |||
| 32 | 33 | ||
| 33 | pldlflags="$cccdlflags" | 34 | pldlflags="$cccdlflags" |
| 34 | static_ldflags='' | 35 | static_ldflags='' |
| 35 | @@ -126,7 +121,7 @@ true) | 36 | @@ -112,7 +107,7 @@ true) |
| 36 | ;; | 37 | ;; |
| 37 | esac | 38 | esac |
| 38 | case "$ldlibpthname" in | 39 | case "$ldlibpthname" in |
| @@ -41,5 +42,3 @@ index fc13b2b..d420229 100755 | |||
| 41 | *) | 42 | *) |
| 42 | case "$osname" in | 43 | case "$osname" in |
| 43 | os2) | 44 | os2) |
| 44 | -- | ||
| 45 | tg: (a508b62..) debian/fakeroot (depends on: upstream) | ||
diff --git a/meta/recipes-devtools/perl/perl-5.14.2/debian/find_html2text.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/find_html2text.diff new file mode 100644 index 0000000000..16de7ad022 --- /dev/null +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/find_html2text.diff | |||
| @@ -0,0 +1,35 @@ | |||
| 1 | From ca66b95be369b47a6d372c3653be57cd737f7f21 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Andreas Marschke <andreas.marschke@googlemail.com> | ||
| 3 | Date: Sat, 17 Sep 2011 11:38:42 +0100 | ||
| 4 | Subject: Configure CPAN::Distribution with correct name of html2text | ||
| 5 | |||
| 6 | Bug-Debian: http://bugs.debian.org/640479 | ||
| 7 | Patch-Name: debian/find_html2text.diff | ||
| 8 | |||
| 9 | If you use cpan from Debian you usually wind up trying to read online | ||
| 10 | documentation through it. Unfortunately cpan can't find the | ||
| 11 | html2text.pl script even though it is installed using the Debian | ||
| 12 | package 'html2text'. | ||
| 13 | |||
| 14 | Please see the attached patch for a quick fix of this issue. | ||
| 15 | |||
| 16 | [Maintainer's note: html2text in Debian is not the same implementation | ||
| 17 | as the html2text.pl which is expected, but should provide similar | ||
| 18 | functionality]. | ||
| 19 | --- | ||
| 20 | cpan/CPAN/lib/CPAN/Distribution.pm | 2 +- | ||
| 21 | 1 files changed, 1 insertions(+), 1 deletions(-) | ||
| 22 | |||
| 23 | diff --git a/cpan/CPAN/lib/CPAN/Distribution.pm b/cpan/CPAN/lib/CPAN/Distribution.pm | ||
| 24 | index 637ab27..a8193d9 100644 | ||
| 25 | --- a/cpan/CPAN/lib/CPAN/Distribution.pm | ||
| 26 | +++ b/cpan/CPAN/lib/CPAN/Distribution.pm | ||
| 27 | @@ -3715,7 +3715,7 @@ sub _display_url { | ||
| 28 | if $CPAN::DEBUG; | ||
| 29 | |||
| 30 | # should we define it in the config instead? | ||
| 31 | - my $html_converter = "html2text.pl"; | ||
| 32 | + my $html_converter = "html2text"; | ||
| 33 | |||
| 34 | my $web_browser = $CPAN::Config->{'lynx'} || undef; | ||
| 35 | my $web_browser_out = $web_browser | ||
diff --git a/meta/recipes-devtools/perl/perl-5.14.2/debian/fixes/document_makemaker_ccflags.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/fixes/document_makemaker_ccflags.diff new file mode 100644 index 0000000000..3bda8f7099 --- /dev/null +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/fixes/document_makemaker_ccflags.diff | |||
| @@ -0,0 +1,31 @@ | |||
| 1 | From f0e3a51bd7286788e410510af86a6c07edac4445 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Niko Tyni <ntyni@debian.org> | ||
| 3 | Date: Mon, 30 May 2011 22:54:24 +0300 | ||
| 4 | Subject: Document that CCFLAGS should include $Config{ccflags} | ||
| 5 | |||
| 6 | Bug: https://rt.cpan.org/Public/Bug/Display.html?id=68613 | ||
| 7 | Bug-Debian: http://bugs.debian.org/628522 | ||
| 8 | |||
| 9 | Compiling XS extensions without $Config{ccflags} can break the | ||
| 10 | binary interface on some platforms. | ||
| 11 | |||
| 12 | Patch-Name: fixes/document_makemaker_ccflags.diff | ||
| 13 | --- | ||
| 14 | cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm | 4 ++++ | ||
| 15 | 1 files changed, 4 insertions(+), 0 deletions(-) | ||
| 16 | |||
| 17 | diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm | ||
| 18 | index be9624e..c56ca8f 100644 | ||
| 19 | --- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm | ||
| 20 | +++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm | ||
| 21 | @@ -1524,6 +1524,10 @@ currently used by MakeMaker but may be handy in Makefile.PLs. | ||
| 22 | String that will be included in the compiler call command line between | ||
| 23 | the arguments INC and OPTIMIZE. | ||
| 24 | |||
| 25 | +The default value is taken from $Config{ccflags}. When overriding | ||
| 26 | +CCFLAGS, make sure to include the $Config{ccflags} settings to avoid | ||
| 27 | +binary incompatibilities. | ||
| 28 | + | ||
| 29 | =item CONFIG | ||
| 30 | |||
| 31 | Arrayref. E.g. [qw(archname manext)] defines ARCHNAME & MANEXT from | ||
diff --git a/meta/recipes-devtools/perl/perl-5.14.2/debian/fixes/extutils-cbuilder-cflags.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/fixes/extutils-cbuilder-cflags.diff new file mode 100644 index 0000000000..cd86a76dea --- /dev/null +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/fixes/extutils-cbuilder-cflags.diff | |||
| @@ -0,0 +1,86 @@ | |||
| 1 | From 0c91624f1f9ec46a6f13cad3031b706213233479 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Niko Tyni <ntyni@debian.org> | ||
| 3 | Date: Thu, 28 Apr 2011 09:18:54 +0300 | ||
| 4 | Subject: Append CFLAGS and LDFLAGS to their Config.pm counterparts in | ||
| 5 | EU::CBuilder | ||
| 6 | |||
| 7 | Bug: http://rt.perl.org/rt3//Public/Bug/Display.html?id=89478 | ||
| 8 | Bug-Debian: http://bugs.debian.org/624460 | ||
| 9 | Origin: upstream, http://perl5.git.perl.org/perl.git/commitdiff/011e8fb476b5fb27c9aa613360d918aa0b798b3d | ||
| 10 | |||
| 11 | Since ExtUtils::CBuilder 0.27_04 (bleadperl commit 06e8058f27e4), | ||
| 12 | CFLAGS and LDFLAGS from the environment have overridden the Config.pm | ||
| 13 | ccflags and ldflags settings. This can cause binary incompatibilities | ||
| 14 | between the core Perl and extensions built with EU::CBuilder. | ||
| 15 | |||
| 16 | Append to the Config.pm values rather than overriding them. | ||
| 17 | |||
| 18 | Patch-Name: fixes/extutils-cbuilder-cflags.diff | ||
| 19 | --- | ||
| 20 | .../lib/ExtUtils/CBuilder/Base.pm | 6 +++- | ||
| 21 | dist/ExtUtils-CBuilder/t/04-base.t | 25 +++++++++++++++++++- | ||
| 22 | 2 files changed, 28 insertions(+), 3 deletions(-) | ||
| 23 | |||
| 24 | diff --git a/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Base.pm b/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Base.pm | ||
| 25 | index b572312..2255c51 100644 | ||
| 26 | --- a/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Base.pm | ||
| 27 | +++ b/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Base.pm | ||
| 28 | @@ -40,11 +40,13 @@ sub new { | ||
| 29 | $self->{config}{$k} = $v unless exists $self->{config}{$k}; | ||
| 30 | } | ||
| 31 | $self->{config}{cc} = $ENV{CC} if defined $ENV{CC}; | ||
| 32 | - $self->{config}{ccflags} = $ENV{CFLAGS} if defined $ENV{CFLAGS}; | ||
| 33 | + $self->{config}{ccflags} = join(" ", $self->{config}{ccflags}, $ENV{CFLAGS}) | ||
| 34 | + if defined $ENV{CFLAGS}; | ||
| 35 | $self->{config}{cxx} = $ENV{CXX} if defined $ENV{CXX}; | ||
| 36 | $self->{config}{cxxflags} = $ENV{CXXFLAGS} if defined $ENV{CXXFLAGS}; | ||
| 37 | $self->{config}{ld} = $ENV{LD} if defined $ENV{LD}; | ||
| 38 | - $self->{config}{ldflags} = $ENV{LDFLAGS} if defined $ENV{LDFLAGS}; | ||
| 39 | + $self->{config}{ldflags} = join(" ", $self->{config}{ldflags}, $ENV{LDFLAGS}) | ||
| 40 | + if defined $ENV{LDFLAGS}; | ||
| 41 | |||
| 42 | unless ( exists $self->{config}{cxx} ) { | ||
| 43 | my ($ccpath, $ccbase, $ccsfx ) = fileparse($self->{config}{cc}, qr/\.[^.]*/); | ||
| 44 | diff --git a/dist/ExtUtils-CBuilder/t/04-base.t b/dist/ExtUtils-CBuilder/t/04-base.t | ||
| 45 | index db0ef98..49819a1 100644 | ||
| 46 | --- a/dist/ExtUtils-CBuilder/t/04-base.t | ||
| 47 | +++ b/dist/ExtUtils-CBuilder/t/04-base.t | ||
| 48 | @@ -1,7 +1,7 @@ | ||
| 49 | #! perl -w | ||
| 50 | |||
| 51 | use strict; | ||
| 52 | -use Test::More tests => 50; | ||
| 53 | +use Test::More tests => 64; | ||
| 54 | use Config; | ||
| 55 | use Cwd; | ||
| 56 | use File::Path qw( mkpath ); | ||
| 57 | @@ -328,6 +328,29 @@ is_deeply( $mksymlists_args, | ||
| 58 | "_prepare_mksymlists_args(): got expected arguments for Mksymlists", | ||
| 59 | ); | ||
| 60 | |||
| 61 | +my %testvars = ( | ||
| 62 | + CFLAGS => 'ccflags', | ||
| 63 | + LDFLAGS => 'ldflags', | ||
| 64 | +); | ||
| 65 | + | ||
| 66 | +while (my ($VAR, $var) = each %testvars) { | ||
| 67 | + local $ENV{$VAR}; | ||
| 68 | + $base = ExtUtils::CBuilder::Base->new( quiet => 1 ); | ||
| 69 | + ok( $base, "ExtUtils::CBuilder::Base->new() returned true value" ); | ||
| 70 | + isa_ok( $base, 'ExtUtils::CBuilder::Base' ); | ||
| 71 | + like($base->{config}{$var}, qr/\Q$Config{$var}/, | ||
| 72 | + "honours $var from Config.pm"); | ||
| 73 | + | ||
| 74 | + $ENV{$VAR} = "-foo -bar"; | ||
| 75 | + $base = ExtUtils::CBuilder::Base->new( quiet => 1 ); | ||
| 76 | + ok( $base, "ExtUtils::CBuilder::Base->new() returned true value" ); | ||
| 77 | + isa_ok( $base, 'ExtUtils::CBuilder::Base' ); | ||
| 78 | + like($base->{config}{$var}, qr/\Q$ENV{$VAR}/, | ||
| 79 | + "honours $VAR from the environment"); | ||
| 80 | + like($base->{config}{$var}, qr/\Q$Config{$var}/, | ||
| 81 | + "doesn't override $var from Config.pm with $VAR from the environment"); | ||
| 82 | +} | ||
| 83 | + | ||
| 84 | ##### | ||
| 85 | |||
| 86 | for ($source_file, $object_file, $lib_file) { | ||
diff --git a/meta/recipes-devtools/perl/perl-5.14.2/debian/fixes/h2ph-multiarch.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/fixes/h2ph-multiarch.diff new file mode 100644 index 0000000000..b18b464b07 --- /dev/null +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/fixes/h2ph-multiarch.diff | |||
| @@ -0,0 +1,69 @@ | |||
| 1 | From 37969e249dfc593ebabfcb682893b6c69dc6b313 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Niko Tyni <ntyni@debian.org> | ||
| 3 | Date: Wed, 18 May 2011 21:44:06 -0700 | ||
| 4 | Subject: Make h2ph correctly search gcc include directories | ||
| 5 | |||
| 6 | Bug: http://rt.perl.org/rt3/Public/Bug/Display.html?id=90122 | ||
| 7 | Bug-Debian: http://bugs.debian.org/625808 | ||
| 8 | Origin: upstream, http://perl5.git.perl.org/perl.git/commit/e7ec705d9b91d35fa99dc50d0a232b6372160a77 | ||
| 9 | |||
| 10 | System header conversion with "h2ph -a" is currently broken on Ubuntu | ||
| 11 | Natty and Oneiric (unless the gcc-multilib package is installed for | ||
| 12 | backward compatibility), resulting in things like | ||
| 13 | |||
| 14 | # perl -e 'require "syscall.ph"' | ||
| 15 | Can't locate asm/unistd.ph in @INC [...] | ||
| 16 | |||
| 17 | This happens because Ubuntu has switched to a 'multiarch' setup, see | ||
| 18 | <https://wiki.ubuntu.com/MultiarchSpec> for details. | ||
| 19 | |||
| 20 | The asm subdirectory isn't in $Config{usrinc} anymore: /usr/include/asm | ||
| 21 | is now /usr/include/x86_64-linux-gnu/asm. (The third component of the | ||
| 22 | new path varies with the actual architecture.) | ||
| 23 | |||
| 24 | gcc --print-search-dirs doesn't really tell anything about where gcc | ||
| 25 | looks for the include directories, it was just used to find the gcc | ||
| 26 | internal directory prefix. | ||
| 27 | |||
| 28 | Parse the output of "gcc -v -E" instead, and append $Config{usrinc} | ||
| 29 | for safety. Duplicates shouldn't matter. | ||
| 30 | |||
| 31 | The h2ph "-a" switch isn't currently tested automatically, and that | ||
| 32 | seems nontrivial to do portably. Manual testing was done with | ||
| 33 | |||
| 34 | # mkdir ttt | ||
| 35 | # ./perl -Ilib ./utils/h2ph -a -d $(pwd)/ttt syscall.h | ||
| 36 | |||
| 37 | The gcc invocation has been tested to work with gcc 4.6, 4.1, and 3.3. | ||
| 38 | |||
| 39 | http://bugs.debian.org/625808 | ||
| 40 | https://bugs.launchpad.net/bugs/777903 | ||
| 41 | |||
| 42 | Patch-Name: fixes/h2ph-multiarch.diff | ||
| 43 | --- | ||
| 44 | utils/h2ph.PL | 12 ++---------- | ||
| 45 | 1 files changed, 2 insertions(+), 10 deletions(-) | ||
| 46 | |||
| 47 | diff --git a/utils/h2ph.PL b/utils/h2ph.PL | ||
| 48 | index 87f3c7d..4545d6d 100644 | ||
| 49 | --- a/utils/h2ph.PL | ||
| 50 | +++ b/utils/h2ph.PL | ||
| 51 | @@ -761,16 +761,8 @@ sub queue_includes_from | ||
| 52 | # non-GCC?) C compilers, but gcc uses additional include directories. | ||
| 53 | sub inc_dirs | ||
| 54 | { | ||
| 55 | - my $from_gcc = `LC_ALL=C $Config{cc} -v 2>&1`; | ||
| 56 | - if( !( $from_gcc =~ s:^Reading specs from (.*?)/specs\b.*:$1/include:s ) ) | ||
| 57 | - { # gcc-4+ : | ||
| 58 | - $from_gcc = `LC_ALL=C $Config{cc} -print-search-dirs 2>&1`; | ||
| 59 | - if ( !($from_gcc =~ s/^install:\s*([^\s]+[^\s\/])([\s\/]*).*$/$1\/include/s) ) | ||
| 60 | - { | ||
| 61 | - $from_gcc = ''; | ||
| 62 | - }; | ||
| 63 | - }; | ||
| 64 | - length($from_gcc) ? ($from_gcc, $from_gcc . "-fixed", $Config{usrinc}) : ($Config{usrinc}); | ||
| 65 | + my $from_gcc = `LC_ALL=C $Config{cc} -v -E - < /dev/null 2>&1 | awk '/^#include/, /^End of search list/' | grep '^ '`; | ||
| 66 | + length($from_gcc) ? (split(' ', $from_gcc), $Config{usrinc}) : ($Config{usrinc}); | ||
| 67 | } | ||
| 68 | |||
| 69 | |||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/hurd-ccflags.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/fixes/hurd-ccflags.diff index 8868c643f1..901f98d344 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/hurd-ccflags.diff +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/fixes/hurd-ccflags.diff | |||
| @@ -1,12 +1,16 @@ | |||
| 1 | Upstream-Status:Inappropriate [debian patch] | 1 | From f66e8575cb0ca11171f43efe0f9e3c6e790b75bc Mon Sep 17 00:00:00 2001 |
| 2 | 2 | From: Samuel Thibault <sthibault@debian.org> | |
| 3 | Author: Samuel Thibault <sthibault@debian.org> | 3 | Date: Wed, 4 Aug 2010 13:34:05 +0300 |
| 4 | Subject: Make hints/gnu.sh append to $ccflags rather than overriding them | 4 | Subject: Make hints/gnu.sh append to $ccflags rather than overriding them |
| 5 | |||
| 6 | Bug: http://rt.perl.org/rt3/Public/Bug/Display.html?id=92244 | ||
| 5 | Bug-Debian: http://bugs.debian.org/587901 | 7 | Bug-Debian: http://bugs.debian.org/587901 |
| 8 | Origin: upstream, http://perl5.git.perl.org/perl.git/commit/a190e648879 | ||
| 6 | 9 | ||
| 7 | Don't override possible extra $ccflags values given to Configure | 10 | Don't override possible extra $ccflags values given to Configure |
| 8 | on GNU/Hurd. | 11 | on GNU/Hurd. |
| 9 | 12 | ||
| 13 | Patch-Name: fixes/hurd-ccflags.diff | ||
| 10 | --- | 14 | --- |
| 11 | hints/gnu.sh | 2 +- | 15 | hints/gnu.sh | 2 +- |
| 12 | 1 files changed, 1 insertions(+), 1 deletions(-) | 16 | 1 files changed, 1 insertions(+), 1 deletions(-) |
| @@ -24,5 +28,3 @@ index 2cfce54..c1ba2db 100644 | |||
| 24 | 28 | ||
| 25 | # The following routines are only available as stubs in GNU libc. | 29 | # The following routines are only available as stubs in GNU libc. |
| 26 | # XXX remove this once metaconf detects the GNU libc stubs. | 30 | # XXX remove this once metaconf detects the GNU libc stubs. |
| 27 | -- | ||
| 28 | tg: (a508b62..) fixes/hurd-ccflags (depends on: upstream) | ||
diff --git a/meta/recipes-devtools/perl/perl-5.14.2/debian/fixes/hurd-hints.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/fixes/hurd-hints.diff new file mode 100644 index 0000000000..1ba9cbd7a4 --- /dev/null +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/fixes/hurd-hints.diff | |||
| @@ -0,0 +1,48 @@ | |||
| 1 | From d6fd7595fcd04b332e7449f59ea298639f10a183 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Pino Toscano <pino@debian.org> | ||
| 3 | Date: Wed, 10 Aug 2011 08:11:33 +0300 | ||
| 4 | Subject: Improve general GNU hints, needed for GNU/Hurd. | ||
| 5 | |||
| 6 | Bug-Debian: http://bugs.debian.org/636609 | ||
| 7 | |||
| 8 | Patch-Name: fixes/hurd-hints.diff | ||
| 9 | --- | ||
| 10 | ext/ODBM_File/hints/gnu.pl | 1 + | ||
| 11 | hints/gnu.sh | 12 ++++++++++++ | ||
| 12 | 2 files changed, 13 insertions(+), 0 deletions(-) | ||
| 13 | create mode 100644 ext/ODBM_File/hints/gnu.pl | ||
| 14 | |||
| 15 | diff --git a/ext/ODBM_File/hints/gnu.pl b/ext/ODBM_File/hints/gnu.pl | ||
| 16 | new file mode 100644 | ||
| 17 | index 0000000..db63567 | ||
| 18 | --- /dev/null | ||
| 19 | +++ b/ext/ODBM_File/hints/gnu.pl | ||
| 20 | @@ -0,0 +1 @@ | ||
| 21 | +do './hints/linux.pl' or die $@; | ||
| 22 | diff --git a/hints/gnu.sh b/hints/gnu.sh | ||
| 23 | index c1ba2db..f075642 100644 | ||
| 24 | --- a/hints/gnu.sh | ||
| 25 | +++ b/hints/gnu.sh | ||
| 26 | @@ -8,10 +8,22 @@ set `echo X "$libswanted "| sed -e 's/ nsl / /' -e 's/ c / pthread /'` | ||
| 27 | shift | ||
| 28 | libswanted="$*" | ||
| 29 | |||
| 30 | +# Debian 4.0 puts ndbm in the -lgdbm_compat library. | ||
| 31 | +libswanted="$libswanted gdbm_compat" | ||
| 32 | + | ||
| 33 | case "$optimize" in | ||
| 34 | '') optimize='-O2' ;; | ||
| 35 | esac | ||
| 36 | |||
| 37 | +case "$plibpth" in | ||
| 38 | +'') plibpth=`gcc -print-search-dirs | grep libraries | | ||
| 39 | + cut -f2- -d= | tr ':' $trnl | grep -v 'gcc' | sed -e 's:/$::'` | ||
| 40 | + set X $plibpth # Collapse all entries on one line | ||
| 41 | + shift | ||
| 42 | + plibpth="$*" | ||
| 43 | + ;; | ||
| 44 | +esac | ||
| 45 | + | ||
| 46 | # Flags needed to produce shared libraries. | ||
| 47 | lddlflags='-shared' | ||
| 48 | |||
diff --git a/meta/recipes-devtools/perl/perl-5.14.2/debian/fixes/index-tainting.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/fixes/index-tainting.diff new file mode 100644 index 0000000000..204e9992a9 --- /dev/null +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/fixes/index-tainting.diff | |||
| @@ -0,0 +1,73 @@ | |||
| 1 | From e25298a339dd6679f1b080f0125ac1b237b87950 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: David Mitchell <davem@iabyn.com> | ||
| 3 | Date: Tue, 28 Jun 2011 17:04:40 +0100 | ||
| 4 | Subject: RT 64804: tainting with index() of a constant | ||
| 5 | |||
| 6 | Bug: http://rt.perl.org/rt3/Public/Bug/Display.html?id=64804 | ||
| 7 | Bug-Debian: http://bugs.debian.org/291450 | ||
| 8 | Origin: upstream, http://perl5.git.perl.org/perl.git/commit/3b36395d31cf0a2f3a017505cd0ea857a7acb5d1 | ||
| 9 | |||
| 10 | At compile time, ck_index with a tainted constant set PL_tainted, | ||
| 11 | which remained on during the rest of compilation, tainting all other | ||
| 12 | constants. | ||
| 13 | |||
| 14 | Fix this by saving and restoring PL_tainted across the call to | ||
| 15 | fbm_compile, which is what sets PL_tainted. | ||
| 16 | |||
| 17 | Patch-Name: fixes/index-tainting.diff | ||
| 18 | --- | ||
| 19 | op.c | 5 ++++- | ||
| 20 | t/op/taint.t | 16 +++++++++++++++- | ||
| 21 | 2 files changed, 19 insertions(+), 2 deletions(-) | ||
| 22 | |||
| 23 | diff --git a/op.c b/op.c | ||
| 24 | index e21b9a4..973df13 100644 | ||
| 25 | --- a/op.c | ||
| 26 | +++ b/op.c | ||
| 27 | @@ -7780,8 +7780,11 @@ Perl_ck_index(pTHX_ OP *o) | ||
| 28 | OP *kid = cLISTOPo->op_first->op_sibling; /* get past pushmark */ | ||
| 29 | if (kid) | ||
| 30 | kid = kid->op_sibling; /* get past "big" */ | ||
| 31 | - if (kid && kid->op_type == OP_CONST) | ||
| 32 | + if (kid && kid->op_type == OP_CONST) { | ||
| 33 | + const bool save_taint = PL_tainted; | ||
| 34 | fbm_compile(((SVOP*)kid)->op_sv, 0); | ||
| 35 | + PL_tainted = save_taint; | ||
| 36 | + } | ||
| 37 | } | ||
| 38 | return ck_fun(o); | ||
| 39 | } | ||
| 40 | diff --git a/t/op/taint.t b/t/op/taint.t | ||
| 41 | index 9df6fee..a300b9b 100644 | ||
| 42 | --- a/t/op/taint.t | ||
| 43 | +++ b/t/op/taint.t | ||
| 44 | @@ -17,7 +17,7 @@ BEGIN { | ||
| 45 | use strict; | ||
| 46 | use Config; | ||
| 47 | |||
| 48 | -plan tests => 774; | ||
| 49 | +plan tests => 778; | ||
| 50 | |||
| 51 | $| = 1; | ||
| 52 | |||
| 53 | @@ -2144,6 +2144,20 @@ end | ||
| 54 | is_tainted $dest, "ucfirst(tainted) taints its return value"; | ||
| 55 | } | ||
| 56 | |||
| 57 | + | ||
| 58 | +# tainted constants and index() | ||
| 59 | +# RT 64804; http://bugs.debian.org/291450 | ||
| 60 | +{ | ||
| 61 | + ok(tainted $old_env_path, "initial taintedness"); | ||
| 62 | + BEGIN { no strict 'refs'; my $v = $old_env_path; *{"::C"} = sub () { $v }; } | ||
| 63 | + ok(tainted C, "constant is tainted properly"); | ||
| 64 | + ok(!tainted "", "tainting not broken yet"); | ||
| 65 | + index(undef, C); | ||
| 66 | + ok(!tainted "", "tainting still works after index() of the constant"); | ||
| 67 | +} | ||
| 68 | + | ||
| 69 | + | ||
| 70 | + | ||
| 71 | # This may bomb out with the alarm signal so keep it last | ||
| 72 | SKIP: { | ||
| 73 | skip "No alarm()" unless $Config{d_alarm}; | ||
diff --git a/meta/recipes-devtools/perl/perl-5.14.2/debian/fixes/module-build-home-directory.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/fixes/module-build-home-directory.diff new file mode 100644 index 0000000000..1c9009b32a --- /dev/null +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/fixes/module-build-home-directory.diff | |||
| @@ -0,0 +1,37 @@ | |||
| 1 | From 9266292f705f2a3b6e5b97fa50e5f2be31371d5c Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Dominic Hargreaves <dom@earth.li> | ||
| 3 | Date: Mon, 2 May 2011 10:35:04 +0100 | ||
| 4 | Subject: Fix failing tilde test when run under a UID without a passwd entry | ||
| 5 | |||
| 6 | Bug: https://rt.cpan.org/Public/Bug/Display.html?id=67893 | ||
| 7 | Bug-Debian: http://bugs.debian.org/624850 | ||
| 8 | |||
| 9 | Patch-Name: fixes/module-build-home-directory.diff | ||
| 10 | --- | ||
| 11 | cpan/Module-Build/t/tilde.t | 6 ++++-- | ||
| 12 | 1 files changed, 4 insertions(+), 2 deletions(-) | ||
| 13 | |||
| 14 | diff --git a/cpan/Module-Build/t/tilde.t b/cpan/Module-Build/t/tilde.t | ||
| 15 | index fac821b..04f0210 100644 | ||
| 16 | --- a/cpan/Module-Build/t/tilde.t | ||
| 17 | +++ b/cpan/Module-Build/t/tilde.t | ||
| 18 | @@ -46,7 +46,8 @@ SKIP: { | ||
| 19 | |||
| 20 | unless (defined $home) { | ||
| 21 | my @info = eval { getpwuid $> }; | ||
| 22 | - skip "No home directory for tilde-expansion tests", 15 if $@; | ||
| 23 | + skip "No home directory for tilde-expansion tests", 15 if $@ | ||
| 24 | + or !defined $info[7]; | ||
| 25 | $home = $info[7]; | ||
| 26 | } | ||
| 27 | |||
| 28 | @@ -95,7 +96,8 @@ SKIP: { | ||
| 29 | # Again, with named users | ||
| 30 | SKIP: { | ||
| 31 | my @info = eval { getpwuid $> }; | ||
| 32 | - skip "No home directory for tilde-expansion tests", 1 if $@; | ||
| 33 | + skip "No home directory for tilde-expansion tests", 1 if $@ | ||
| 34 | + or !defined $info[7] or !defined $info[0]; | ||
| 35 | my ($me, $home) = @info[0,7]; | ||
| 36 | |||
| 37 | my $expected = "$home/fooxzy"; | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/net_smtp_docs.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/fixes/net_smtp_docs.diff index 2307a09ea3..549fc1007d 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/net_smtp_docs.diff +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/fixes/net_smtp_docs.diff | |||
| @@ -1,10 +1,12 @@ | |||
| 1 | Upstream-Status:Inappropriate [debian patch] | 1 | From ab32eba7fcc45d864c22e8f4ee02e0a6712070e0 Mon Sep 17 00:00:00 2001 |
| 2 | 2 | From: Brendan O'Dea <bod@debian.org> | |
| 3 | Date: Thu, 20 Sep 2007 19:47:14 +1000 | ||
| 3 | Subject: Document the Net::SMTP 'Port' option | 4 | Subject: Document the Net::SMTP 'Port' option |
| 5 | |||
| 4 | Bug-Debian: http://bugs.debian.org/100195 | 6 | Bug-Debian: http://bugs.debian.org/100195 |
| 5 | Bug: http://rt.cpan.org/Public/Bug/Display.html?id=36038 | 7 | Bug: http://rt.cpan.org/Public/Bug/Display.html?id=36038 |
| 6 | 8 | ||
| 7 | 9 | Patch-Name: fixes/net_smtp_docs.diff | |
| 8 | --- | 10 | --- |
| 9 | cpan/libnet/Net/SMTP.pm | 1 + | 11 | cpan/libnet/Net/SMTP.pm | 1 + |
| 10 | 1 files changed, 1 insertions(+), 0 deletions(-) | 12 | 1 files changed, 1 insertions(+), 0 deletions(-) |
| @@ -21,5 +23,3 @@ index a28496d..07b2498 100644 | |||
| 21 | 23 | ||
| 22 | Example: | 24 | Example: |
| 23 | 25 | ||
| 24 | -- | ||
| 25 | tg: (a508b62..) fixes/net_smtp_docs (depends on: upstream) | ||
diff --git a/meta/recipes-devtools/perl/perl-5.14.2/debian/fixes/pod_fixes.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/fixes/pod_fixes.diff new file mode 100644 index 0000000000..eb0eb0bf44 --- /dev/null +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/fixes/pod_fixes.diff | |||
| @@ -0,0 +1,145 @@ | |||
| 1 | From c6b1fdd18dab0236458502564e54c180bb0ce341 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Keith Thompson <kst@mib.org> | ||
| 3 | Date: Fri, 29 Jul 2011 17:17:00 -0700 | ||
| 4 | Subject: Fix typos in several pod/perl*.pod files | ||
| 5 | |||
| 6 | Bug-Debian: http://bugs.debian.org/637816 | ||
| 7 | Origin: http://perl5.git.perl.org/perl.git/commit/7698aede74509727f7bca31c58fc7a53b182315d | ||
| 8 | Patch-Name: fixes/pod_fixes.diff | ||
| 9 | --- | ||
| 10 | pod/perlfunc.pod | 8 ++++---- | ||
| 11 | pod/perlglossary.pod | 10 +++++----- | ||
| 12 | pod/perlmod.pod | 4 ++-- | ||
| 13 | pod/perlretut.pod | 6 +++--- | ||
| 14 | 4 files changed, 14 insertions(+), 14 deletions(-) | ||
| 15 | |||
| 16 | diff --git a/pod/perlfunc.pod b/pod/perlfunc.pod | ||
| 17 | index 2ee3637..719a740 100644 | ||
| 18 | --- a/pod/perlfunc.pod | ||
| 19 | +++ b/pod/perlfunc.pod | ||
| 20 | @@ -3918,7 +3918,7 @@ count. A numeric repeat count may optionally be enclosed in brackets, as | ||
| 21 | in C<pack("C[80]", @arr)>. The repeat count gobbles that many values from | ||
| 22 | the LIST when used with all format types other than C<a>, C<A>, C<Z>, C<b>, | ||
| 23 | C<B>, C<h>, C<H>, C<@>, C<.>, C<x>, C<X>, and C<P>, where it means | ||
| 24 | -something else, dscribed below. Supplying a C<*> for the repeat count | ||
| 25 | +something else, described below. Supplying a C<*> for the repeat count | ||
| 26 | instead of a number means to use however many items are left, except for: | ||
| 27 | |||
| 28 | =over | ||
| 29 | @@ -5870,7 +5870,7 @@ sometimes saying the opposite, for example) the results are not | ||
| 30 | well-defined. | ||
| 31 | |||
| 32 | Because C<< <=> >> returns C<undef> when either operand is C<NaN> | ||
| 33 | -(not-a-number), and laso because C<sort> raises an exception unless the | ||
| 34 | +(not-a-number), and also because C<sort> raises an exception unless the | ||
| 35 | result of a comparison is defined, be careful when sorting with a | ||
| 36 | comparison function like C<< $a <=> $b >> any lists that might contain a | ||
| 37 | C<NaN>. The following example takes advantage that C<NaN != NaN> to | ||
| 38 | @@ -5958,7 +5958,7 @@ specified. | ||
| 39 | |||
| 40 | A pattern matching the empty string (not to be confused with | ||
| 41 | an empty pattern C<//>, which is just one member of the set of patterns | ||
| 42 | -matching the epmty string), splits EXPR into individual | ||
| 43 | +matching the empty string), splits EXPR into individual | ||
| 44 | characters. For example: | ||
| 45 | |||
| 46 | print join(':', split(/ */, 'hi there')), "\n"; | ||
| 47 | @@ -6222,7 +6222,7 @@ For example: | ||
| 48 | printf '<%.1e>', 10; # prints "<1.0e+01>" | ||
| 49 | |||
| 50 | For "g" and "G", this specifies the maximum number of digits to show, | ||
| 51 | -including thoe prior to the decimal point and those after it; for | ||
| 52 | +including those prior to the decimal point and those after it; for | ||
| 53 | example: | ||
| 54 | |||
| 55 | # These examples are subject to system-specific variation. | ||
| 56 | diff --git a/pod/perlglossary.pod b/pod/perlglossary.pod | ||
| 57 | index 639ce33..191371c 100644 | ||
| 58 | --- a/pod/perlglossary.pod | ||
| 59 | +++ b/pod/perlglossary.pod | ||
| 60 | @@ -507,7 +507,7 @@ the class (its L<objects|/object>). See also L</inheritance>. | ||
| 61 | |||
| 62 | =item class method | ||
| 63 | |||
| 64 | -A L</method> whose L</invocand> is a L</package> name, not an | ||
| 65 | +A L</method> whose L</invocant> is a L</package> name, not an | ||
| 66 | L</object> reference. A method associated with the class as a whole. | ||
| 67 | |||
| 68 | =item client | ||
| 69 | @@ -1470,7 +1470,7 @@ Perl, C<print STDOUT "$foo\n";> can be understood as "verb | ||
| 70 | indirect-object object" where L</STDOUT> is the recipient of the | ||
| 71 | L<print|perlfunc/print> action, and C<"$foo"> is the object being | ||
| 72 | printed. Similarly, when invoking a L</method>, you might place the | ||
| 73 | -invocand between the method and its arguments: | ||
| 74 | +invocant between the method and its arguments: | ||
| 75 | |||
| 76 | $gollum = new Pathetic::Creature "Smeagol"; | ||
| 77 | give $gollum "Fisssssh!"; | ||
| 78 | @@ -1548,11 +1548,11 @@ of compiler that takes a program and turns it into a more executable | ||
| 79 | form (L<syntax trees|/syntax tree>) within the I<perl> process itself, | ||
| 80 | which the Perl L</run time> system then interprets. | ||
| 81 | |||
| 82 | -=item invocand | ||
| 83 | +=item invocant | ||
| 84 | |||
| 85 | The agent on whose behalf a L</method> is invoked. In a L</class> | ||
| 86 | -method, the invocand is a package name. In an L</instance> method, | ||
| 87 | -the invocand is an object reference. | ||
| 88 | +method, the invocant is a package name. In an L</instance> method, | ||
| 89 | +the invocant is an object reference. | ||
| 90 | |||
| 91 | =item invocation | ||
| 92 | |||
| 93 | diff --git a/pod/perlmod.pod b/pod/perlmod.pod | ||
| 94 | index 5266f19..17de73e 100644 | ||
| 95 | --- a/pod/perlmod.pod | ||
| 96 | +++ b/pod/perlmod.pod | ||
| 97 | @@ -571,7 +571,7 @@ like for example handle the cloning of non-Perl data, if necessary. | ||
| 98 | C<CLONE> will be called once as a class method for every package that has it | ||
| 99 | defined (or inherits it). It will be called in the context of the new thread, | ||
| 100 | so all modifications are made in the new area. Currently CLONE is called with | ||
| 101 | -no parameters other than the invocand package name, but code should not assume | ||
| 102 | +no parameters other than the invocant package name, but code should not assume | ||
| 103 | that this will remain unchanged, as it is likely that in future extra parameters | ||
| 104 | will be passed in to give more information about the state of cloning. | ||
| 105 | |||
| 106 | @@ -593,7 +593,7 @@ to make use of the objects, then a more sophisticated approach is | ||
| 107 | needed. | ||
| 108 | |||
| 109 | Like C<CLONE>, C<CLONE_SKIP> is currently called with no parameters other | ||
| 110 | -than the invocand package name, although that may change. Similarly, to | ||
| 111 | +than the invocant package name, although that may change. Similarly, to | ||
| 112 | allow for future expansion, the return value should be a single C<0> or | ||
| 113 | C<1> value. | ||
| 114 | |||
| 115 | diff --git a/pod/perlretut.pod b/pod/perlretut.pod | ||
| 116 | index ea80594..1c65f5b 100644 | ||
| 117 | --- a/pod/perlretut.pod | ||
| 118 | +++ b/pod/perlretut.pod | ||
| 119 | @@ -781,7 +781,7 @@ so may lead to surprising and unsatisfactory results. | ||
| 120 | =head2 Relative backreferences | ||
| 121 | |||
| 122 | Counting the opening parentheses to get the correct number for a | ||
| 123 | -backreference is errorprone as soon as there is more than one | ||
| 124 | +backreference is error-prone as soon as there is more than one | ||
| 125 | capturing group. A more convenient technique became available | ||
| 126 | with Perl 5.10: relative backreferences. To refer to the immediately | ||
| 127 | preceding capture group one now may write C<\g{-1}>, the next but | ||
| 128 | @@ -1537,7 +1537,7 @@ the regexp in the I<last successful match> is used instead. So we have | ||
| 129 | |||
| 130 | =head3 Global matching | ||
| 131 | |||
| 132 | -The final two modifiers we will disccuss here, | ||
| 133 | +The final two modifiers we will discuss here, | ||
| 134 | C<//g> and C<//c>, concern multiple matches. | ||
| 135 | The modifier C<//g> stands for global matching and allows the | ||
| 136 | matching operator to match within a string as many times as possible. | ||
| 137 | @@ -1870,7 +1870,7 @@ substituted. | ||
| 138 | |||
| 139 | C<\Q>, C<\L>, C<\l>, C<\U>, C<\u> and C<\E> are actually part of | ||
| 140 | double-quotish syntax, and not part of regexp syntax proper. They will | ||
| 141 | -work if they appear in a regular expression embeddded directly in a | ||
| 142 | +work if they appear in a regular expression embedded directly in a | ||
| 143 | program, but not when contained in a string that is interpolated in a | ||
| 144 | pattern. | ||
| 145 | |||
diff --git a/meta/recipes-devtools/perl/perl-5.14.2/debian/fixes/respect_umask.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/fixes/respect_umask.diff new file mode 100644 index 0000000000..a84c9f9e3e --- /dev/null +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/fixes/respect_umask.diff | |||
| @@ -0,0 +1,153 @@ | |||
| 1 | From 0d1ab4f799eb14d5488fcc959f4a6bdec548b370 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Brendan O'Dea <bod@debian.org> | ||
| 3 | Date: Tue, 8 Mar 2005 19:30:38 +1100 | ||
| 4 | Subject: Respect umask during installation | ||
| 5 | |||
| 6 | This is needed to satisfy Debian policy regarding group-writable | ||
| 7 | site directories. | ||
| 8 | |||
| 9 | Patch-Name: fixes/respect_umask.diff | ||
| 10 | --- | ||
| 11 | cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | 18 +++++++++--------- | ||
| 12 | dist/ExtUtils-Install/lib/ExtUtils/Install.pm | 18 +++++++++--------- | ||
| 13 | 2 files changed, 18 insertions(+), 18 deletions(-) | ||
| 14 | |||
| 15 | diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | ||
| 16 | index 6964eea..865d36d 100644 | ||
| 17 | --- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | ||
| 18 | +++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | ||
| 19 | @@ -2053,7 +2053,7 @@ doc__install : doc_site_install | ||
| 20 | $(NOECHO) $(ECHO) INSTALLDIRS not defined, defaulting to INSTALLDIRS=site | ||
| 21 | |||
| 22 | pure_perl_install :: all | ||
| 23 | - $(NOECHO) $(MOD_INSTALL) \ | ||
| 24 | + $(NOECHO) umask 022; $(MOD_INSTALL) \ | ||
| 25 | read }.$self->catfile('$(PERL_ARCHLIB)','auto','$(FULLEXT)','.packlist').q{ \ | ||
| 26 | write }.$self->catfile('$(DESTINSTALLARCHLIB)','auto','$(FULLEXT)','.packlist').q{ \ | ||
| 27 | $(INST_LIB) $(DESTINSTALLPRIVLIB) \ | ||
| 28 | @@ -2067,7 +2067,7 @@ pure_perl_install :: all | ||
| 29 | |||
| 30 | |||
| 31 | pure_site_install :: all | ||
| 32 | - $(NOECHO) $(MOD_INSTALL) \ | ||
| 33 | + $(NOECHO) umask 022; $(MOD_INSTALL) \ | ||
| 34 | read }.$self->catfile('$(SITEARCHEXP)','auto','$(FULLEXT)','.packlist').q{ \ | ||
| 35 | write }.$self->catfile('$(DESTINSTALLSITEARCH)','auto','$(FULLEXT)','.packlist').q{ \ | ||
| 36 | $(INST_LIB) $(DESTINSTALLSITELIB) \ | ||
| 37 | @@ -2080,7 +2080,7 @@ pure_site_install :: all | ||
| 38 | }.$self->catdir('$(PERL_ARCHLIB)','auto','$(FULLEXT)').q{ | ||
| 39 | |||
| 40 | pure_vendor_install :: all | ||
| 41 | - $(NOECHO) $(MOD_INSTALL) \ | ||
| 42 | + $(NOECHO) umask 022; $(MOD_INSTALL) \ | ||
| 43 | read }.$self->catfile('$(VENDORARCHEXP)','auto','$(FULLEXT)','.packlist').q{ \ | ||
| 44 | write }.$self->catfile('$(DESTINSTALLVENDORARCH)','auto','$(FULLEXT)','.packlist').q{ \ | ||
| 45 | $(INST_LIB) $(DESTINSTALLVENDORLIB) \ | ||
| 46 | @@ -2092,8 +2092,8 @@ pure_vendor_install :: all | ||
| 47 | |||
| 48 | doc_perl_install :: all | ||
| 49 | $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod | ||
| 50 | - -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) | ||
| 51 | - -$(NOECHO) $(DOC_INSTALL) \ | ||
| 52 | + -$(NOECHO) umask 022; $(MKPATH) $(DESTINSTALLARCHLIB) | ||
| 53 | + -$(NOECHO) umask 022; $(DOC_INSTALL) \ | ||
| 54 | "Module" "$(NAME)" \ | ||
| 55 | "installed into" "$(INSTALLPRIVLIB)" \ | ||
| 56 | LINKTYPE "$(LINKTYPE)" \ | ||
| 57 | @@ -2103,8 +2103,8 @@ doc_perl_install :: all | ||
| 58 | |||
| 59 | doc_site_install :: all | ||
| 60 | $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod | ||
| 61 | - -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) | ||
| 62 | - -$(NOECHO) $(DOC_INSTALL) \ | ||
| 63 | + -$(NOECHO) umask 022; $(MKPATH) $(DESTINSTALLARCHLIB) | ||
| 64 | + -$(NOECHO) umask 022; $(DOC_INSTALL) \ | ||
| 65 | "Module" "$(NAME)" \ | ||
| 66 | "installed into" "$(INSTALLSITELIB)" \ | ||
| 67 | LINKTYPE "$(LINKTYPE)" \ | ||
| 68 | @@ -2114,8 +2114,8 @@ doc_site_install :: all | ||
| 69 | |||
| 70 | doc_vendor_install :: all | ||
| 71 | $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod | ||
| 72 | - -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) | ||
| 73 | - -$(NOECHO) $(DOC_INSTALL) \ | ||
| 74 | + -$(NOECHO) umask 022; $(MKPATH) $(DESTINSTALLARCHLIB) | ||
| 75 | + -$(NOECHO) umask 022; $(DOC_INSTALL) \ | ||
| 76 | "Module" "$(NAME)" \ | ||
| 77 | "installed into" "$(INSTALLVENDORLIB)" \ | ||
| 78 | LINKTYPE "$(LINKTYPE)" \ | ||
| 79 | diff --git a/dist/ExtUtils-Install/lib/ExtUtils/Install.pm b/dist/ExtUtils-Install/lib/ExtUtils/Install.pm | ||
| 80 | index 3b030a5..cb0e9e0 100644 | ||
| 81 | --- a/dist/ExtUtils-Install/lib/ExtUtils/Install.pm | ||
| 82 | +++ b/dist/ExtUtils-Install/lib/ExtUtils/Install.pm | ||
| 83 | @@ -468,7 +468,7 @@ sub _can_write_dir { | ||
| 84 | |||
| 85 | =pod | ||
| 86 | |||
| 87 | -=item _mkpath($dir,$show,$mode,$verbose,$dry_run) | ||
| 88 | +=item _mkpath($dir,$show,$verbose,$dry_run) | ||
| 89 | |||
| 90 | Wrapper around File::Path::mkpath() to handle errors. | ||
| 91 | |||
| 92 | @@ -485,13 +485,13 @@ writable. | ||
| 93 | =cut | ||
| 94 | |||
| 95 | sub _mkpath { | ||
| 96 | - my ($dir,$show,$mode,$verbose,$dry_run)=@_; | ||
| 97 | + my ($dir,$show,$verbose,$dry_run)=@_; | ||
| 98 | if ( $verbose && $verbose > 1 && ! -d $dir) { | ||
| 99 | $show= 1; | ||
| 100 | - printf "mkpath(%s,%d,%#o)\n", $dir, $show, $mode; | ||
| 101 | + printf "mkpath(%s,%d)\n", $dir, $show; | ||
| 102 | } | ||
| 103 | if (!$dry_run) { | ||
| 104 | - if ( ! eval { File::Path::mkpath($dir,$show,$mode); 1 } ) { | ||
| 105 | + if ( ! eval { File::Path::mkpath($dir,$show); 1 } ) { | ||
| 106 | _choke("Can't create '$dir'","$@"); | ||
| 107 | } | ||
| 108 | |||
| 109 | @@ -796,7 +796,7 @@ sub install { #XXX OS-SPECIFIC | ||
| 110 | _chdir($cwd); | ||
| 111 | } | ||
| 112 | foreach my $targetdir (sort keys %check_dirs) { | ||
| 113 | - _mkpath( $targetdir, 0, 0755, $verbose, $dry_run ); | ||
| 114 | + _mkpath( $targetdir, 0, $verbose, $dry_run ); | ||
| 115 | } | ||
| 116 | foreach my $found (@found_files) { | ||
| 117 | my ($diff, $ffd, $origfile, $mode, $size, $atime, $mtime, | ||
| 118 | @@ -810,7 +810,7 @@ sub install { #XXX OS-SPECIFIC | ||
| 119 | $targetfile= _unlink_or_rename( $targetfile, 'tryhard', 'install' ) | ||
| 120 | unless $dry_run; | ||
| 121 | } elsif ( ! -d $targetdir ) { | ||
| 122 | - _mkpath( $targetdir, 0, 0755, $verbose, $dry_run ); | ||
| 123 | + _mkpath( $targetdir, 0, $verbose, $dry_run ); | ||
| 124 | } | ||
| 125 | print "Installing $targetfile\n"; | ||
| 126 | |||
| 127 | @@ -850,7 +850,7 @@ sub install { #XXX OS-SPECIFIC | ||
| 128 | |||
| 129 | if ($pack{'write'}) { | ||
| 130 | $dir = install_rooted_dir(dirname($pack{'write'})); | ||
| 131 | - _mkpath( $dir, 0, 0755, $verbose, $dry_run ); | ||
| 132 | + _mkpath( $dir, 0, $verbose, $dry_run ); | ||
| 133 | print "Writing $pack{'write'}\n" if $verbose; | ||
| 134 | $packlist->write(install_rooted_file($pack{'write'})) unless $dry_run; | ||
| 135 | } | ||
| 136 | @@ -1190,7 +1190,7 @@ be prepended as a directory to each installed file (and directory). | ||
| 137 | sub pm_to_blib { | ||
| 138 | my($fromto,$autodir,$pm_filter) = @_; | ||
| 139 | |||
| 140 | - _mkpath($autodir,0,0755); | ||
| 141 | + _mkpath($autodir,0); | ||
| 142 | while(my($from, $to) = each %$fromto) { | ||
| 143 | if( -f $to && -s $from == -s $to && -M $to < -M $from ) { | ||
| 144 | print "Skip $to (unchanged)\n"; | ||
| 145 | @@ -1213,7 +1213,7 @@ sub pm_to_blib { | ||
| 146 | # we wont try hard here. its too likely to mess things up. | ||
| 147 | forceunlink($to); | ||
| 148 | } else { | ||
| 149 | - _mkpath(dirname($to),0,0755); | ||
| 150 | + _mkpath(dirname($to),0); | ||
| 151 | } | ||
| 152 | if ($need_filtering) { | ||
| 153 | run_filter($pm_filter, $from, $to); | ||
diff --git a/meta/recipes-devtools/perl/perl-5.14.2/debian/fixes/sys-syslog-socket-timeout-kfreebsd.patch b/meta/recipes-devtools/perl/perl-5.14.2/debian/fixes/sys-syslog-socket-timeout-kfreebsd.patch new file mode 100644 index 0000000000..e29e9b0c04 --- /dev/null +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/fixes/sys-syslog-socket-timeout-kfreebsd.patch | |||
| @@ -0,0 +1,36 @@ | |||
| 1 | From 9ba88d73444c22788b7c2a212e15dbfe3da2a1af Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Niko Tyni <ntyni@debian.org> | ||
| 3 | Date: Wed, 3 Aug 2011 22:36:24 +0300 | ||
| 4 | Subject: Use a socket timeout on GNU/kFreeBSD to catch ICMP port unreachable | ||
| 5 | messages | ||
| 6 | |||
| 7 | Bug: http://rt.cpan.org/Ticket/Display.html?id=69997 | ||
| 8 | Bug-Debian: http://bugs.debian.org/627821 | ||
| 9 | |||
| 10 | Without this, openlog() on a UDP socket may succeed on the FreeBSD kernel | ||
| 11 | even when there's no listener, causing test failures. | ||
| 12 | |||
| 13 | It seems probable that all FreeBSD-based systems suffer from the | ||
| 14 | same issue, but that's for upstream to decide. | ||
| 15 | |||
| 16 | Patch-Name: fixes/sys-syslog-socket-timeout-kfreebsd.patch | ||
| 17 | --- | ||
| 18 | cpan/Sys-Syslog/Syslog.pm | 5 ++++- | ||
| 19 | 1 files changed, 4 insertions(+), 1 deletions(-) | ||
| 20 | |||
| 21 | diff --git a/cpan/Sys-Syslog/Syslog.pm b/cpan/Sys-Syslog/Syslog.pm | ||
| 22 | index 002e6e4..b445c66 100644 | ||
| 23 | --- a/cpan/Sys-Syslog/Syslog.pm | ||
| 24 | +++ b/cpan/Sys-Syslog/Syslog.pm | ||
| 25 | @@ -138,7 +138,10 @@ my @fallbackMethods = (); | ||
| 26 | # happy, the timeout is now zero by default on all systems | ||
| 27 | # except on OSX where it is set to 250 msec, and can be set | ||
| 28 | # with the infamous setlogsock() function. | ||
| 29 | -$sock_timeout = 0.25 if $^O =~ /darwin/; | ||
| 30 | +# | ||
| 31 | +# Debian change: include Debian GNU/kFreeBSD, lower to 1ms | ||
| 32 | +# see [rt.cpan.org #69997] | ||
| 33 | +$sock_timeout = 0.001 if $^O =~ /darwin|gnukfreebsd/; | ||
| 34 | |||
| 35 | # coderef for a nicer handling of errors | ||
| 36 | my $err_sub = $options{nofatal} ? \&warnings::warnif : \&croak; | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/debian/instmodsh_doc.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/instmodsh_doc.diff index 5555dfc43e..ab0133d92f 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/debian/instmodsh_doc.diff +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/instmodsh_doc.diff | |||
| @@ -1,8 +1,9 @@ | |||
| 1 | Upstream-Status:Inappropriate [debian patch] | 1 | From ab89a31d1f46388a61953349c3546e4082cd38de Mon Sep 17 00:00:00 2001 |
| 2 | 2 | From: Brendan O'Dea <bod@debian.org> | |
| 3 | Date: Tue, 8 Mar 2005 19:30:38 +1100 | ||
| 3 | Subject: Debian policy doesn't install .packlist files for core or vendor. | 4 | Subject: Debian policy doesn't install .packlist files for core or vendor. |
| 4 | 5 | ||
| 5 | 6 | Patch-Name: debian/instmodsh_doc.diff | |
| 6 | --- | 7 | --- |
| 7 | cpan/ExtUtils-MakeMaker/bin/instmodsh | 4 +++- | 8 | cpan/ExtUtils-MakeMaker/bin/instmodsh | 4 +++- |
| 8 | 1 files changed, 3 insertions(+), 1 deletions(-) | 9 | 1 files changed, 3 insertions(+), 1 deletions(-) |
| @@ -24,5 +25,3 @@ index 5874aa6..6a2f03e 100644 | |||
| 24 | =head1 SEE ALSO | 25 | =head1 SEE ALSO |
| 25 | 26 | ||
| 26 | ExtUtils::Installed | 27 | ExtUtils::Installed |
| 27 | -- | ||
| 28 | tg: (a508b62..) debian/instmodsh_doc (depends on: upstream) | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/debian/ld_run_path.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/ld_run_path.diff index 02610d34a9..d38b04b613 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/debian/ld_run_path.diff +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/ld_run_path.diff | |||
| @@ -1,25 +1,24 @@ | |||
| 1 | Upstream-Status:Inappropriate [debian patch] | 1 | From 704f6017119ce0301a9105944512120a38a43a02 Mon Sep 17 00:00:00 2001 |
| 2 | 2 | From: Brendan O'Dea <bod@debian.org> | |
| 3 | Date: Fri, 18 Mar 2005 22:22:25 +1100 | ||
| 3 | Subject: Remove standard libs from LD_RUN_PATH as per Debian policy. | 4 | Subject: Remove standard libs from LD_RUN_PATH as per Debian policy. |
| 4 | 5 | ||
| 5 | 6 | Patch-Name: debian/ld_run_path.diff | |
| 6 | --- | 7 | --- |
| 7 | .../ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm | 3 +++ | 8 | .../ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm | 3 +++ |
| 8 | 1 files changed, 3 insertions(+), 0 deletions(-) | 9 | 1 files changed, 3 insertions(+), 0 deletions(-) |
| 9 | 10 | ||
| 10 | diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm | 11 | diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm |
| 11 | index b807e97..6c955d7 100644 | 12 | index cf4826f..eb212b5 100644 |
| 12 | --- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm | 13 | --- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm |
| 13 | +++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm | 14 | +++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm |
| 14 | @@ -53,6 +53,9 @@ sub _unix_os2_ext { | 15 | @@ -54,6 +54,9 @@ sub _unix_os2_ext { |
| 15 | my($pwd) = cwd(); # from Cwd.pm | 16 | my($pwd) = cwd(); # from Cwd.pm |
| 16 | my($found) = 0; | 17 | my($found) = 0; |
| 17 | 18 | ||
| 18 | + # Debian-specific: don't use LD_RUN_PATH for standard dirs | 19 | + # Debian-specific: don't use LD_RUN_PATH for standard dirs |
| 19 | + $ld_run_path_seen{$_}++ for qw(/lib /usr/lib /usr/X11R6/lib); | 20 | + $ld_run_path_seen{$_}++ for @libpath; |
| 20 | + | 21 | + |
| 21 | foreach my $thislib (split ' ', $potential_libs) { | 22 | foreach my $thislib (split ' ', $potential_libs) { |
| 22 | 23 | ||
| 23 | # Handle possible linker path arguments. | 24 | # Handle possible linker path arguments. |
| 24 | -- | ||
| 25 | tg: (a508b62..) debian/ld_run_path (depends on: upstream) | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/debian/libnet_config_path.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/libnet_config_path.diff index a38e78ac34..6604d35c5b 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/debian/libnet_config_path.diff +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/libnet_config_path.diff | |||
| @@ -1,8 +1,10 @@ | |||
| 1 | Upstream-Status:Inappropriate [debian patch] | 1 | From 7465b6d008187580eabe655b9c8e75351d3d24b4 Mon Sep 17 00:00:00 2001 |
| 2 | 2 | From: Brendan O'Dea <bod@debian.org> | |
| 3 | Subject: Set location of libnet.cfg to /etc/perl/Net as /usr may not be writable. | 3 | Date: Tue, 8 Mar 2005 19:30:38 +1100 |
| 4 | 4 | Subject: Set location of libnet.cfg to /etc/perl/Net as /usr may not be | |
| 5 | writable. | ||
| 5 | 6 | ||
| 7 | Patch-Name: debian/libnet_config_path.diff | ||
| 6 | --- | 8 | --- |
| 7 | cpan/libnet/Net/Config.pm | 7 +++---- | 9 | cpan/libnet/Net/Config.pm | 7 +++---- |
| 8 | 1 files changed, 3 insertions(+), 4 deletions(-) | 10 | 1 files changed, 3 insertions(+), 4 deletions(-) |
| @@ -33,5 +35,3 @@ index db51c1f..8404593 100644 | |||
| 33 | can be done by having a C<.libnetrc> file in their home directory. This file | 35 | can be done by having a C<.libnetrc> file in their home directory. This file |
| 34 | should return a reference to a HASH containing the keys described below. | 36 | should return a reference to a HASH containing the keys described below. |
| 35 | For example | 37 | For example |
| 36 | -- | ||
| 37 | tg: (a508b62..) debian/libnet_config_path (depends on: upstream) | ||
diff --git a/meta/recipes-devtools/perl/perl-5.14.2/debian/libperl_embed_doc.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/libperl_embed_doc.diff new file mode 100644 index 0000000000..cc3e0507f8 --- /dev/null +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/libperl_embed_doc.diff | |||
| @@ -0,0 +1,26 @@ | |||
| 1 | From d70e88badfcc6edd05e884597f19fbbdcf2cf6a7 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Brendan O'Dea <bod@debian.org> | ||
| 3 | Date: Tue, 8 Mar 2005 19:30:38 +1100 | ||
| 4 | Subject: Note that libperl-dev package is required for embedded linking | ||
| 5 | |||
| 6 | Bug-Debian: http://bugs.debian.org/186778 | ||
| 7 | |||
| 8 | Patch-Name: debian/libperl_embed_doc.diff | ||
| 9 | --- | ||
| 10 | lib/ExtUtils/Embed.pm | 3 +++ | ||
| 11 | 1 files changed, 3 insertions(+), 0 deletions(-) | ||
| 12 | |||
| 13 | diff --git a/lib/ExtUtils/Embed.pm b/lib/ExtUtils/Embed.pm | ||
| 14 | index 9710630..86f13b5 100644 | ||
| 15 | --- a/lib/ExtUtils/Embed.pm | ||
| 16 | +++ b/lib/ExtUtils/Embed.pm | ||
| 17 | @@ -305,6 +305,9 @@ and extensions in your C/C++ applications. | ||
| 18 | Typically, an application B<Makefile> will invoke ExtUtils::Embed | ||
| 19 | functions while building your application. | ||
| 20 | |||
| 21 | +Note that on Debian systems the B<libperl-dev> package is required for | ||
| 22 | +compiling applications which embed an interpreter. | ||
| 23 | + | ||
| 24 | =head1 @EXPORT | ||
| 25 | |||
| 26 | ExtUtils::Embed exports the following functions: | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/debian/m68k_thread_stress.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/m68k_thread_stress.diff index 675c9aa03d..f1dfe36043 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/debian/m68k_thread_stress.diff +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/m68k_thread_stress.diff | |||
| @@ -1,16 +1,19 @@ | |||
| 1 | Upstream-Status:Inappropriate [debian patch] | 1 | From 55a718425dc4612ac01850ef786f75f072b20b9e Mon Sep 17 00:00:00 2001 |
| 2 | 2 | From: Niko Tyni <ntyni@debian.org> | |
| 3 | Date: Mon, 8 Sep 2008 20:48:14 +0300 | ||
| 3 | Subject: Disable some threads tests on m68k for now due to missing TLS. | 4 | Subject: Disable some threads tests on m68k for now due to missing TLS. |
| 4 | Closes: #495826, #517938 | ||
| 5 | 5 | ||
| 6 | Bug-Debian: http://bugs.debian.org/495826 | ||
| 7 | Bug-Debian: http://bugs.debian.org/517938 | ||
| 6 | 8 | ||
| 9 | Patch-Name: debian/m68k_thread_stress.diff | ||
| 7 | --- | 10 | --- |
| 8 | dist/threads-shared/t/stress.t | 4 ++++ | 11 | dist/threads-shared/t/stress.t | 4 ++++ |
| 9 | dist/threads-shared/t/waithires.t | 6 ++++++ | 12 | dist/threads-shared/t/waithires.t | 6 ++++++ |
| 10 | 2 files changed, 10 insertions(+), 0 deletions(-) | 13 | 2 files changed, 10 insertions(+), 0 deletions(-) |
| 11 | 14 | ||
| 12 | diff --git a/dist/threads-shared/t/stress.t b/dist/threads-shared/t/stress.t | 15 | diff --git a/dist/threads-shared/t/stress.t b/dist/threads-shared/t/stress.t |
| 13 | index adfd1ed..8573f1a 100755 | 16 | index 652a3e6..2f1b576 100644 |
| 14 | --- a/dist/threads-shared/t/stress.t | 17 | --- a/dist/threads-shared/t/stress.t |
| 15 | +++ b/dist/threads-shared/t/stress.t | 18 | +++ b/dist/threads-shared/t/stress.t |
| 16 | @@ -11,6 +11,10 @@ BEGIN { | 19 | @@ -11,6 +11,10 @@ BEGIN { |
| @@ -25,7 +28,7 @@ index adfd1ed..8573f1a 100755 | |||
| 25 | 28 | ||
| 26 | use ExtUtils::testlib; | 29 | use ExtUtils::testlib; |
| 27 | diff --git a/dist/threads-shared/t/waithires.t b/dist/threads-shared/t/waithires.t | 30 | diff --git a/dist/threads-shared/t/waithires.t b/dist/threads-shared/t/waithires.t |
| 28 | index e3a1086..633374e 100755 | 31 | index 3c3e852..349c5b4 100644 |
| 29 | --- a/dist/threads-shared/t/waithires.t | 32 | --- a/dist/threads-shared/t/waithires.t |
| 30 | +++ b/dist/threads-shared/t/waithires.t | 33 | +++ b/dist/threads-shared/t/waithires.t |
| 31 | @@ -16,6 +16,12 @@ BEGIN { | 34 | @@ -16,6 +16,12 @@ BEGIN { |
| @@ -41,5 +44,3 @@ index e3a1086..633374e 100755 | |||
| 41 | } | 44 | } |
| 42 | 45 | ||
| 43 | use ExtUtils::testlib; | 46 | use ExtUtils::testlib; |
| 44 | -- | ||
| 45 | tg: (a508b62..) debian/m68k_thread_stress (depends on: upstream) | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/debian/mod_paths.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/mod_paths.diff index 26d8ed03a2..2cc0946f51 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/debian/mod_paths.diff +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/mod_paths.diff | |||
| @@ -1,5 +1,6 @@ | |||
| 1 | Upstream-Status:Inappropriate [debian patch] | 1 | From 11633e598640b02e19329f323623af254fbac451 Mon Sep 17 00:00:00 2001 |
| 2 | 2 | From: Brendan O'Dea <bod@debian.org> | |
| 3 | Date: Fri, 18 Mar 2005 22:22:25 +1100 | ||
| 3 | Subject: Tweak @INC ordering for Debian | 4 | Subject: Tweak @INC ordering for Debian |
| 4 | 5 | ||
| 5 | Our order is: | 6 | Our order is: |
| @@ -15,16 +16,16 @@ The rationale being that an admin (via site), or module packager | |||
| 15 | (vendor) can chose to shadow core modules when there is a newer | 16 | (vendor) can chose to shadow core modules when there is a newer |
| 16 | version than is included in core. | 17 | version than is included in core. |
| 17 | 18 | ||
| 18 | 19 | Patch-Name: debian/mod_paths.diff | |
| 19 | --- | 20 | --- |
| 20 | perl.c | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ | 21 | perl.c | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
| 21 | 1 files changed, 58 insertions(+), 0 deletions(-) | 22 | 1 files changed, 58 insertions(+), 0 deletions(-) |
| 22 | 23 | ||
| 23 | diff --git a/perl.c b/perl.c | 24 | diff --git a/perl.c b/perl.c |
| 24 | index 05cea40..023d6a0 100644 | 25 | index f756e02..d26dcb0 100644 |
| 25 | --- a/perl.c | 26 | --- a/perl.c |
| 26 | +++ b/perl.c | 27 | +++ b/perl.c |
| 27 | @@ -4125,6 +4125,11 @@ S_init_perllib(pTHX) | 28 | @@ -4219,6 +4219,11 @@ S_init_perllib(pTHX) |
| 28 | INCPUSH_ADD_SUB_DIRS|INCPUSH_CAN_RELOCATE); | 29 | INCPUSH_ADD_SUB_DIRS|INCPUSH_CAN_RELOCATE); |
| 29 | #endif | 30 | #endif |
| 30 | 31 | ||
| @@ -36,7 +37,7 @@ index 05cea40..023d6a0 100644 | |||
| 36 | #ifdef SITEARCH_EXP | 37 | #ifdef SITEARCH_EXP |
| 37 | /* sitearch is always relative to sitelib on Windows for | 38 | /* sitearch is always relative to sitelib on Windows for |
| 38 | * DLL-based path intuition to work correctly */ | 39 | * DLL-based path intuition to work correctly */ |
| 39 | @@ -4242,6 +4247,59 @@ S_init_perllib(pTHX) | 40 | @@ -4336,6 +4341,59 @@ S_init_perllib(pTHX) |
| 40 | INCPUSH_ADD_OLD_VERS|INCPUSH_CAN_RELOCATE); | 41 | INCPUSH_ADD_OLD_VERS|INCPUSH_CAN_RELOCATE); |
| 41 | #endif | 42 | #endif |
| 42 | 43 | ||
| @@ -96,5 +97,3 @@ index 05cea40..023d6a0 100644 | |||
| 96 | #ifdef PERL_OTHERLIBDIRS | 97 | #ifdef PERL_OTHERLIBDIRS |
| 97 | S_incpush_use_sep(aTHX_ STR_WITH_LEN(PERL_OTHERLIBDIRS), | 98 | S_incpush_use_sep(aTHX_ STR_WITH_LEN(PERL_OTHERLIBDIRS), |
| 98 | INCPUSH_ADD_OLD_VERS|INCPUSH_ADD_ARCHONLY_SUB_DIRS | 99 | INCPUSH_ADD_OLD_VERS|INCPUSH_ADD_ARCHONLY_SUB_DIRS |
| 99 | -- | ||
| 100 | tg: (a508b62..) debian/mod_paths (depends on: upstream) | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/debian/module_build_man_extensions.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/module_build_man_extensions.diff index 63c8441bd2..b11433fb5e 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/debian/module_build_man_extensions.diff +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/module_build_man_extensions.diff | |||
| @@ -1,17 +1,21 @@ | |||
| 1 | Upstream-Status:Inappropriate [debian patch] | 1 | From fbb5f07872d45bac76b5c3c83b50a19aa5da10b0 Mon Sep 17 00:00:00 2001 |
| 2 | From: Niko Tyni <ntyni@debian.org> | ||
| 3 | Date: Thu, 8 May 2008 14:32:33 +0300 | ||
| 4 | Subject: Adjust Module::Build manual page extensions for the Debian Perl | ||
| 5 | policy | ||
| 2 | 6 | ||
| 3 | Subject: Adjust Module::Build manual page extensions for the Debian Perl policy | ||
| 4 | Bug-Debian: http://bugs.debian.org/479460 | 7 | Bug-Debian: http://bugs.debian.org/479460 |
| 5 | 8 | ||
| 9 | Patch-Name: debian/module_build_man_extensions.diff | ||
| 6 | --- | 10 | --- |
| 7 | cpan/Module-Build/lib/Module/Build/Base.pm | 4 ++-- | 11 | cpan/Module-Build/lib/Module/Build/Base.pm | 4 ++-- |
| 8 | 1 files changed, 2 insertions(+), 2 deletions(-) | 12 | 1 files changed, 2 insertions(+), 2 deletions(-) |
| 9 | 13 | ||
| 10 | diff --git a/cpan/Module-Build/lib/Module/Build/Base.pm b/cpan/Module-Build/lib/Module/Build/Base.pm | 14 | diff --git a/cpan/Module-Build/lib/Module/Build/Base.pm b/cpan/Module-Build/lib/Module/Build/Base.pm |
| 11 | index 5bd8ec7..b4e606a 100644 | 15 | index fba916a..82df4cc 100644 |
| 12 | --- a/cpan/Module-Build/lib/Module/Build/Base.pm | 16 | --- a/cpan/Module-Build/lib/Module/Build/Base.pm |
| 13 | +++ b/cpan/Module-Build/lib/Module/Build/Base.pm | 17 | +++ b/cpan/Module-Build/lib/Module/Build/Base.pm |
| 14 | @@ -3071,7 +3071,7 @@ sub manify_bin_pods { | 18 | @@ -3246,7 +3246,7 @@ sub manify_bin_pods { |
| 15 | foreach my $file (keys %$files) { | 19 | foreach my $file (keys %$files) { |
| 16 | # Pod::Simple based parsers only support one document per instance. | 20 | # Pod::Simple based parsers only support one document per instance. |
| 17 | # This is expected to change in a future version (Pod::Simple > 3.03). | 21 | # This is expected to change in a future version (Pod::Simple > 3.03). |
| @@ -20,7 +24,7 @@ index 5bd8ec7..b4e606a 100644 | |||
| 20 | my $manpage = $self->man1page_name( $file ) . '.' . | 24 | my $manpage = $self->man1page_name( $file ) . '.' . |
| 21 | $self->config( 'man1ext' ); | 25 | $self->config( 'man1ext' ); |
| 22 | my $outfile = File::Spec->catfile($mandir, $manpage); | 26 | my $outfile = File::Spec->catfile($mandir, $manpage); |
| 23 | @@ -3096,7 +3096,7 @@ sub manify_lib_pods { | 27 | @@ -3271,7 +3271,7 @@ sub manify_lib_pods { |
| 24 | while (my ($file, $relfile) = each %$files) { | 28 | while (my ($file, $relfile) = each %$files) { |
| 25 | # Pod::Simple based parsers only support one document per instance. | 29 | # Pod::Simple based parsers only support one document per instance. |
| 26 | # This is expected to change in a future version (Pod::Simple > 3.03). | 30 | # This is expected to change in a future version (Pod::Simple > 3.03). |
| @@ -29,5 +33,3 @@ index 5bd8ec7..b4e606a 100644 | |||
| 29 | my $manpage = $self->man3page_name( $relfile ) . '.' . | 33 | my $manpage = $self->man3page_name( $relfile ) . '.' . |
| 30 | $self->config( 'man3ext' ); | 34 | $self->config( 'man3ext' ); |
| 31 | my $outfile = File::Spec->catfile( $mandir, $manpage); | 35 | my $outfile = File::Spec->catfile( $mandir, $manpage); |
| 32 | -- | ||
| 33 | tg: (a508b62..) debian/module_build_man_extensions (depends on: upstream) | ||
diff --git a/meta/recipes-devtools/perl/perl-5.14.2/debian/no_packlist_perllocal.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/no_packlist_perllocal.diff new file mode 100644 index 0000000000..3324c1e36f --- /dev/null +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/no_packlist_perllocal.diff | |||
| @@ -0,0 +1,88 @@ | |||
| 1 | From 44c7521619dd0e637920393184affcb26a27d5b7 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Brendan O'Dea <bod@debian.org> | ||
| 3 | Date: Tue, 8 Mar 2005 19:30:38 +1100 | ||
| 4 | Subject: Don't install .packlist or perllocal.pod for perl or vendor | ||
| 5 | |||
| 6 | Patch-Name: debian/no_packlist_perllocal.diff | ||
| 7 | --- | ||
| 8 | cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | 31 +++-------------------- | ||
| 9 | 1 files changed, 4 insertions(+), 27 deletions(-) | ||
| 10 | |||
| 11 | diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | ||
| 12 | index 42bbb83..a16e2d0 100644 | ||
| 13 | --- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | ||
| 14 | +++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | ||
| 15 | @@ -2054,8 +2054,6 @@ doc__install : doc_site_install | ||
| 16 | |||
| 17 | pure_perl_install :: all | ||
| 18 | $(NOECHO) umask 022; $(MOD_INSTALL) \ | ||
| 19 | - read }.$self->catfile('$(PERL_ARCHLIB)','auto','$(FULLEXT)','.packlist').q{ \ | ||
| 20 | - write }.$self->catfile('$(DESTINSTALLARCHLIB)','auto','$(FULLEXT)','.packlist').q{ \ | ||
| 21 | $(INST_LIB) $(DESTINSTALLPRIVLIB) \ | ||
| 22 | $(INST_ARCHLIB) $(DESTINSTALLARCHLIB) \ | ||
| 23 | $(INST_BIN) $(DESTINSTALLBIN) \ | ||
| 24 | @@ -2081,8 +2079,6 @@ pure_site_install :: all | ||
| 25 | |||
| 26 | pure_vendor_install :: all | ||
| 27 | $(NOECHO) umask 022; $(MOD_INSTALL) \ | ||
| 28 | - read }.$self->catfile('$(VENDORARCHEXP)','auto','$(FULLEXT)','.packlist').q{ \ | ||
| 29 | - write }.$self->catfile('$(DESTINSTALLVENDORARCH)','auto','$(FULLEXT)','.packlist').q{ \ | ||
| 30 | $(INST_LIB) $(DESTINSTALLVENDORLIB) \ | ||
| 31 | $(INST_ARCHLIB) $(DESTINSTALLVENDORARCH) \ | ||
| 32 | $(INST_BIN) $(DESTINSTALLVENDORBIN) \ | ||
| 33 | @@ -2091,37 +2087,19 @@ pure_vendor_install :: all | ||
| 34 | $(INST_MAN3DIR) $(DESTINSTALLVENDORMAN3DIR) | ||
| 35 | |||
| 36 | doc_perl_install :: all | ||
| 37 | - $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod | ||
| 38 | - -$(NOECHO) umask 022; $(MKPATH) $(DESTINSTALLARCHLIB) | ||
| 39 | - -$(NOECHO) umask 022; $(DOC_INSTALL) \ | ||
| 40 | - "Module" "$(NAME)" \ | ||
| 41 | - "installed into" "$(INSTALLPRIVLIB)" \ | ||
| 42 | - LINKTYPE "$(LINKTYPE)" \ | ||
| 43 | - VERSION "$(VERSION)" \ | ||
| 44 | - EXE_FILES "$(EXE_FILES)" \ | ||
| 45 | - >> }.$self->catfile('$(DESTINSTALLARCHLIB)','perllocal.pod').q{ | ||
| 46 | |||
| 47 | doc_site_install :: all | ||
| 48 | - $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod | ||
| 49 | - -$(NOECHO) umask 02; $(MKPATH) $(DESTINSTALLARCHLIB) | ||
| 50 | + $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLSITEARCH)/perllocal.pod | ||
| 51 | + -$(NOECHO) umask 02; $(MKPATH) $(DESTINSTALLSITEARCH) | ||
| 52 | -$(NOECHO) umask 02; $(DOC_INSTALL) \ | ||
| 53 | "Module" "$(NAME)" \ | ||
| 54 | "installed into" "$(INSTALLSITELIB)" \ | ||
| 55 | LINKTYPE "$(LINKTYPE)" \ | ||
| 56 | VERSION "$(VERSION)" \ | ||
| 57 | EXE_FILES "$(EXE_FILES)" \ | ||
| 58 | - >> }.$self->catfile('$(DESTINSTALLARCHLIB)','perllocal.pod').q{ | ||
| 59 | + >> }.$self->catfile('$(DESTINSTALLSITEARCH)','perllocal.pod').q{ | ||
| 60 | |||
| 61 | doc_vendor_install :: all | ||
| 62 | - $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod | ||
| 63 | - -$(NOECHO) umask 022; $(MKPATH) $(DESTINSTALLARCHLIB) | ||
| 64 | - -$(NOECHO) umask 022; $(DOC_INSTALL) \ | ||
| 65 | - "Module" "$(NAME)" \ | ||
| 66 | - "installed into" "$(INSTALLVENDORLIB)" \ | ||
| 67 | - LINKTYPE "$(LINKTYPE)" \ | ||
| 68 | - VERSION "$(VERSION)" \ | ||
| 69 | - EXE_FILES "$(EXE_FILES)" \ | ||
| 70 | - >> }.$self->catfile('$(DESTINSTALLARCHLIB)','perllocal.pod').q{ | ||
| 71 | |||
| 72 | }; | ||
| 73 | |||
| 74 | @@ -2130,13 +2108,12 @@ uninstall :: uninstall_from_$(INSTALLDIRS)dirs | ||
| 75 | $(NOECHO) $(NOOP) | ||
| 76 | |||
| 77 | uninstall_from_perldirs :: | ||
| 78 | - $(NOECHO) $(UNINSTALL) }.$self->catfile('$(PERL_ARCHLIB)','auto','$(FULLEXT)','.packlist').q{ | ||
| 79 | |||
| 80 | uninstall_from_sitedirs :: | ||
| 81 | $(NOECHO) $(UNINSTALL) }.$self->catfile('$(SITEARCHEXP)','auto','$(FULLEXT)','.packlist').q{ | ||
| 82 | |||
| 83 | uninstall_from_vendordirs :: | ||
| 84 | - $(NOECHO) $(UNINSTALL) }.$self->catfile('$(VENDORARCHEXP)','auto','$(FULLEXT)','.packlist').q{ | ||
| 85 | + | ||
| 86 | }; | ||
| 87 | |||
| 88 | join("",@m); | ||
diff --git a/meta/recipes-devtools/perl/perl-5.14.2/debian/patchlevel.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/patchlevel.diff new file mode 100644 index 0000000000..0a8a467f78 --- /dev/null +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/patchlevel.diff | |||
| @@ -0,0 +1,30 @@ | |||
| 1 | From cf928101697efa4a46ada500c2f449caeb854fd4 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Niko Tyni <ntyni@debian.org> | ||
| 3 | Date: Sun, 15 May 2011 19:35:58 +0300 | ||
| 4 | Subject: List packaged patches in patchlevel.h | ||
| 5 | |||
| 6 | Origin: vendor | ||
| 7 | Bug-Debian: http://bugs.debian.org/567489 | ||
| 8 | |||
| 9 | The list of packaged patches is in patchlevel-debian.h, which is generated | ||
| 10 | from the debian/patches/ directory when building the package. | ||
| 11 | |||
| 12 | Patch-Name: debian/patchlevel.diff | ||
| 13 | --- | ||
| 14 | patchlevel.h | 3 +++ | ||
| 15 | 1 files changed, 3 insertions(+), 0 deletions(-) | ||
| 16 | |||
| 17 | diff --git a/patchlevel.h b/patchlevel.h | ||
| 18 | index 5dc2a53..1356595 100644 | ||
| 19 | --- a/patchlevel.h | ||
| 20 | +++ b/patchlevel.h | ||
| 21 | @@ -137,6 +137,9 @@ static const char * const local_patches[] = { | ||
| 22 | ,"uncommitted-changes" | ||
| 23 | #endif | ||
| 24 | PERL_GIT_UNPUSHED_COMMITS /* do not remove this line */ | ||
| 25 | +#ifdef DEBIAN | ||
| 26 | +#include "patchlevel-debian.h" | ||
| 27 | +#endif | ||
| 28 | ,NULL | ||
| 29 | }; | ||
| 30 | |||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/debian/perlivp.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/perlivp.diff index 304e4c1af8..98b1b501f5 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/debian/perlivp.diff +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/perlivp.diff | |||
| @@ -1,8 +1,9 @@ | |||
| 1 | Upstream-Status:Inappropriate [debian patch] | 1 | From 4c7e04f75c9513451d1622e5a6dd58c2c8377d81 Mon Sep 17 00:00:00 2001 |
| 2 | |||
| 3 | From: Niko Tyni <ntyni@debian.org> | 2 | From: Niko Tyni <ntyni@debian.org> |
| 3 | Date: Fri, 9 Jan 2009 18:54:47 +0200 | ||
| 4 | Subject: Make perlivp skip include directories in /usr/local | 4 | Subject: Make perlivp skip include directories in /usr/local |
| 5 | Closes: 510895 | 5 | |
| 6 | Bug-Debian: http://bugs.debian.org/510895 | ||
| 6 | 7 | ||
| 7 | On Sat, Jan 10, 2009 at 12:37:18AM +1100, Brendan O'Dea wrote: | 8 | On Sat, Jan 10, 2009 at 12:37:18AM +1100, Brendan O'Dea wrote: |
| 8 | > On Wed, Jan 7, 2009 at 12:21 AM, Niko Tyni <ntyni@debian.org> wrote: | 9 | > On Wed, Jan 7, 2009 at 12:21 AM, Niko Tyni <ntyni@debian.org> wrote: |
| @@ -17,15 +18,15 @@ On Sat, Jan 10, 2009 at 12:37:18AM +1100, Brendan O'Dea wrote: | |||
| 17 | > installed any local packages. As Niko points out, they will be | 18 | > installed any local packages. As Niko points out, they will be |
| 18 | > created as required. | 19 | > created as required. |
| 19 | 20 | ||
| 20 | |||
| 21 | Signed-off-by: Niko Tyni <ntyni@debian.org> | 21 | Signed-off-by: Niko Tyni <ntyni@debian.org> |
| 22 | 22 | ||
| 23 | Patch-Name: debian/perlivp.diff | ||
| 23 | --- | 24 | --- |
| 24 | utils/perlivp.PL | 1 + | 25 | utils/perlivp.PL | 1 + |
| 25 | 1 files changed, 1 insertions(+), 0 deletions(-) | 26 | 1 files changed, 1 insertions(+), 0 deletions(-) |
| 26 | 27 | ||
| 27 | diff --git a/utils/perlivp.PL b/utils/perlivp.PL | 28 | diff --git a/utils/perlivp.PL b/utils/perlivp.PL |
| 28 | index 9783261..156146f 100644 | 29 | index 6fcb670..1401cac 100644 |
| 29 | --- a/utils/perlivp.PL | 30 | --- a/utils/perlivp.PL |
| 30 | +++ b/utils/perlivp.PL | 31 | +++ b/utils/perlivp.PL |
| 31 | @@ -142,6 +142,7 @@ my $INC_total = 0; | 32 | @@ -142,6 +142,7 @@ my $INC_total = 0; |
| @@ -33,8 +34,6 @@ index 9783261..156146f 100644 | |||
| 33 | foreach (@INC) { | 34 | foreach (@INC) { |
| 34 | next if $_ eq '.'; # skip -d test here | 35 | next if $_ eq '.'; # skip -d test here |
| 35 | + next if m|/usr/local|; # not shipped on Debian | 36 | + next if m|/usr/local|; # not shipped on Debian |
| 36 | if ($^O eq 'MacOS') { | 37 | if (-d $_) { |
| 37 | next if $_ eq ':'; # skip -d test here | 38 | print "## Perl \@INC directory `$_' exists.\n" if $opt{'v'}; |
| 38 | next if $_ eq 'Dev:Pseudo:'; # why is this in @INC? | 39 | $INC_there++; |
| 39 | -- | ||
| 40 | tg: (a508b62..) debian/perlivp (depends on: upstream) | ||
diff --git a/meta/recipes-devtools/perl/perl-5.14.2/debian/prefix_changes.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/prefix_changes.diff new file mode 100644 index 0000000000..a1e17ce71e --- /dev/null +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/prefix_changes.diff | |||
| @@ -0,0 +1,118 @@ | |||
| 1 | From 148e2717682ce8c65475ffdeea84b3cdd1ab1649 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Brendan O'Dea <bod@debian.org> | ||
| 3 | Date: Tue, 8 Mar 2005 19:30:38 +1100 | ||
| 4 | Subject: Fiddle with *PREFIX and variables written to the makefile | ||
| 5 | |||
| 6 | Fiddle with *PREFIX and variables written to the makefile so that | ||
| 7 | install directories may be changed when make is run by passing | ||
| 8 | PREFIX= to the "make install" command (used when packaging | ||
| 9 | modules). | ||
| 10 | |||
| 11 | Patch-Name: debian/prefix_changes.diff | ||
| 12 | --- | ||
| 13 | cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Any.pm | 12 ++++++------ | ||
| 14 | cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | 3 +-- | ||
| 15 | cpan/ExtUtils-MakeMaker/t/INST.t | 4 +--- | ||
| 16 | cpan/ExtUtils-MakeMaker/t/INST_PREFIX.t | 10 +++++----- | ||
| 17 | 4 files changed, 13 insertions(+), 16 deletions(-) | ||
| 18 | |||
| 19 | diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Any.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Any.pm | ||
| 20 | index a38f274..93d3fe9 100644 | ||
| 21 | --- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Any.pm | ||
| 22 | +++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Any.pm | ||
| 23 | @@ -701,8 +701,6 @@ all POD files in MAN1PODS and MAN3PODS. | ||
| 24 | sub manifypods_target { | ||
| 25 | my($self) = shift; | ||
| 26 | |||
| 27 | - my $man1pods = ''; | ||
| 28 | - my $man3pods = ''; | ||
| 29 | my $dependencies = ''; | ||
| 30 | |||
| 31 | # populate manXpods & dependencies: | ||
| 32 | @@ -718,7 +716,7 @@ END | ||
| 33 | foreach my $section (qw(1 3)) { | ||
| 34 | my $pods = $self->{"MAN${section}PODS"}; | ||
| 35 | push @man_cmds, $self->split_command(<<CMD, %$pods); | ||
| 36 | - \$(NOECHO) \$(POD2MAN) --section=$section --perm_rw=\$(PERM_RW) | ||
| 37 | + \$(NOECHO) \$(POD2MAN) --section=\$(MAN${section}EXT) --perm_rw=\$(PERM_RW) | ||
| 38 | CMD | ||
| 39 | } | ||
| 40 | |||
| 41 | @@ -1521,9 +1519,11 @@ sub init_INSTALL_from_PREFIX { | ||
| 42 | $self->{SITEPREFIX} ||= $sprefix; | ||
| 43 | $self->{VENDORPREFIX} ||= $vprefix; | ||
| 44 | |||
| 45 | - # Lots of MM extension authors like to use $(PREFIX) so we | ||
| 46 | - # put something sensible in there no matter what. | ||
| 47 | - $self->{PREFIX} = '$('.uc $self->{INSTALLDIRS}.'PREFIX)'; | ||
| 48 | + my $p = $self->{PREFIX} = $self->{PERLPREFIX}; | ||
| 49 | + for my $t (qw/PERL SITE VENDOR/) | ||
| 50 | + { | ||
| 51 | + $self->{"${t}PREFIX"} =~ s!^\Q$p\E(?=/|$)!\$(PREFIX)!; | ||
| 52 | + } | ||
| 53 | } | ||
| 54 | |||
| 55 | my $arch = $Config{archname}; | ||
| 56 | diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | ||
| 57 | index a16e2d0..c308c49 100644 | ||
| 58 | --- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | ||
| 59 | +++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | ||
| 60 | @@ -2981,8 +2981,7 @@ sub prefixify { | ||
| 61 | print STDERR " prefixify $var => $path\n" if $Verbose >= 2; | ||
| 62 | print STDERR " from $sprefix to $rprefix\n" if $Verbose >= 2; | ||
| 63 | |||
| 64 | - if( $self->{ARGS}{PREFIX} && | ||
| 65 | - $path !~ s{^\Q$sprefix\E\b}{$rprefix}s ) | ||
| 66 | + if( $path !~ s{^\Q$sprefix\E\b}{$rprefix}s && $self->{ARGS}{PREFIX} ) | ||
| 67 | { | ||
| 68 | |||
| 69 | print STDERR " cannot prefix, using default.\n" if $Verbose >= 2; | ||
| 70 | diff --git a/cpan/ExtUtils-MakeMaker/t/INST.t b/cpan/ExtUtils-MakeMaker/t/INST.t | ||
| 71 | index 6aac294..28294f2 100644 | ||
| 72 | --- a/cpan/ExtUtils-MakeMaker/t/INST.t | ||
| 73 | +++ b/cpan/ExtUtils-MakeMaker/t/INST.t | ||
| 74 | @@ -61,9 +61,7 @@ isa_ok( $mm, 'ExtUtils::MakeMaker' ); | ||
| 75 | is( $mm->{NAME}, 'Big::Dummy', 'NAME' ); | ||
| 76 | is( $mm->{VERSION}, 0.01, 'VERSION' ); | ||
| 77 | |||
| 78 | -my $config_prefix = $Config{installprefixexp} || $Config{installprefix} || | ||
| 79 | - $Config{prefixexp} || $Config{prefix}; | ||
| 80 | -is( $mm->{PERLPREFIX}, $config_prefix, 'PERLPREFIX' ); | ||
| 81 | +is( $mm->{PERLPREFIX}, '$(PREFIX)', 'PERLPREFIX' ); | ||
| 82 | |||
| 83 | is( !!$mm->{PERL_CORE}, !!$ENV{PERL_CORE}, 'PERL_CORE' ); | ||
| 84 | |||
| 85 | diff --git a/cpan/ExtUtils-MakeMaker/t/INST_PREFIX.t b/cpan/ExtUtils-MakeMaker/t/INST_PREFIX.t | ||
| 86 | index fbb18a3..8987569 100644 | ||
| 87 | --- a/cpan/ExtUtils-MakeMaker/t/INST_PREFIX.t | ||
| 88 | +++ b/cpan/ExtUtils-MakeMaker/t/INST_PREFIX.t | ||
| 89 | @@ -10,7 +10,7 @@ BEGIN { | ||
| 90 | } | ||
| 91 | |||
| 92 | use strict; | ||
| 93 | -use Test::More tests => 52; | ||
| 94 | +use Test::More tests => 47; | ||
| 95 | use MakeMaker::Test::Utils; | ||
| 96 | use MakeMaker::Test::Setup::BFD; | ||
| 97 | use ExtUtils::MakeMaker; | ||
| 98 | @@ -58,16 +58,16 @@ like( $stdout->read, qr{ | ||
| 99 | Writing\ MYMETA.yml\n | ||
| 100 | }x ); | ||
| 101 | |||
| 102 | -is( $mm->{PREFIX}, '$(SITEPREFIX)', 'PREFIX set based on INSTALLDIRS' ); | ||
| 103 | +#is( $mm->{PREFIX}, '$(SITEPREFIX)', 'PREFIX set based on INSTALLDIRS' ); | ||
| 104 | |||
| 105 | isa_ok( $mm, 'ExtUtils::MakeMaker' ); | ||
| 106 | |||
| 107 | is( $mm->{NAME}, 'Big::Dummy', 'NAME' ); | ||
| 108 | is( $mm->{VERSION}, 0.01, 'VERSION' ); | ||
| 109 | |||
| 110 | -foreach my $prefix (qw(PREFIX PERLPREFIX SITEPREFIX VENDORPREFIX)) { | ||
| 111 | - unlike( $mm->{$prefix}, qr/\$\(PREFIX\)/ ); | ||
| 112 | -} | ||
| 113 | +#foreach my $prefix (qw(PREFIX PERLPREFIX SITEPREFIX VENDORPREFIX)) { | ||
| 114 | +# unlike( $mm->{$prefix}, qr/\$\(PREFIX\)/ ); | ||
| 115 | +#} | ||
| 116 | |||
| 117 | |||
| 118 | my $PREFIX = File::Spec->catdir('foo', 'bar'); | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/debian/prune_libs.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/prune_libs.diff index 5bb072c021..bb05a945b3 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/debian/prune_libs.diff +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/prune_libs.diff | |||
| @@ -1,21 +1,23 @@ | |||
| 1 | Upstream-Status:Inappropriate [debian patch] | 1 | From 063566907896ff32bea27897fa73cebbbd7bacce Mon Sep 17 00:00:00 2001 |
| 2 | 2 | From: Brendan O'Dea <bod@debian.org> | |
| 3 | Date: Fri, 18 Mar 2005 22:22:25 +1100 | ||
| 3 | Subject: Prune the list of libraries wanted to what we actually need. | 4 | Subject: Prune the list of libraries wanted to what we actually need. |
| 5 | |||
| 4 | Bug-Debian: http://bugs.debian.org/128355 | 6 | Bug-Debian: http://bugs.debian.org/128355 |
| 5 | 7 | ||
| 6 | We want to keep the dependencies on perl-base as small as possible, | 8 | We want to keep the dependencies on perl-base as small as possible, |
| 7 | and some of the original list may be present on buildds (see Bug#128355). | 9 | and some of the original list may be present on buildds (see Bug#128355). |
| 8 | 10 | ||
| 9 | 11 | Patch-Name: debian/prune_libs.diff | |
| 10 | --- | 12 | --- |
| 11 | Configure | 5 ++--- | 13 | Configure | 5 ++--- |
| 12 | 1 files changed, 2 insertions(+), 3 deletions(-) | 14 | 1 files changed, 2 insertions(+), 3 deletions(-) |
| 13 | 15 | ||
| 14 | diff --git a/Configure b/Configure | 16 | diff --git a/Configure b/Configure |
| 15 | index 3a8732b..6013c86 100755 | 17 | index d9911f9..f59f75c 100755 |
| 16 | --- a/Configure | 18 | --- a/Configure |
| 17 | +++ b/Configure | 19 | +++ b/Configure |
| 18 | @@ -1363,8 +1363,7 @@ libswanted_uselargefiles='' | 20 | @@ -1367,8 +1367,7 @@ libswanted_uselargefiles='' |
| 19 | : set usesocks on the Configure command line to enable socks. | 21 | : set usesocks on the Configure command line to enable socks. |
| 20 | : List of libraries we want. | 22 | : List of libraries we want. |
| 21 | : If anyone needs extra -lxxx, put those in a hint file. | 23 | : If anyone needs extra -lxxx, put those in a hint file. |
| @@ -25,7 +27,7 @@ index 3a8732b..6013c86 100755 | |||
| 25 | : We probably want to search /usr/shlib before most other libraries. | 27 | : We probably want to search /usr/shlib before most other libraries. |
| 26 | : This is only used by the lib/ExtUtils/MakeMaker.pm routine extliblist. | 28 | : This is only used by the lib/ExtUtils/MakeMaker.pm routine extliblist. |
| 27 | glibpth=`echo " $glibpth " | sed -e 's! /usr/shlib ! !'` | 29 | glibpth=`echo " $glibpth " | sed -e 's! /usr/shlib ! !'` |
| 28 | @@ -22179,7 +22178,7 @@ sunos*X4*) | 30 | @@ -22308,7 +22307,7 @@ sunos*X4*) |
| 29 | ;; | 31 | ;; |
| 30 | *) case "$usedl" in | 32 | *) case "$usedl" in |
| 31 | $define|true|[yY]*) | 33 | $define|true|[yY]*) |
| @@ -34,5 +36,3 @@ index 3a8732b..6013c86 100755 | |||
| 34 | shift | 36 | shift |
| 35 | perllibs="$*" | 37 | perllibs="$*" |
| 36 | ;; | 38 | ;; |
| 37 | -- | ||
| 38 | tg: (a508b62..) debian/prune_libs (depends on: upstream) | ||
diff --git a/meta/recipes-devtools/perl/perl-5.14.2/debian/series b/meta/recipes-devtools/perl/perl-5.14.2/debian/series new file mode 100644 index 0000000000..08adca5626 --- /dev/null +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/series | |||
| @@ -0,0 +1,40 @@ | |||
| 1 | debian/arm_thread_stress_timeout.diff | ||
| 2 | debian/cpan_definstalldirs.diff | ||
| 3 | debian/db_file_ver.diff | ||
| 4 | debian/doc_info.diff | ||
| 5 | debian/enc2xs_inc.diff | ||
| 6 | debian/errno_ver.diff | ||
| 7 | debian/libperl_embed_doc.diff | ||
| 8 | fixes/respect_umask.diff | ||
| 9 | debian/writable_site_dirs.diff | ||
| 10 | debian/extutils_set_libperl_path.diff | ||
| 11 | debian/no_packlist_perllocal.diff | ||
| 12 | debian/prefix_changes.diff | ||
| 13 | debian/fakeroot.diff | ||
| 14 | debian/instmodsh_doc.diff | ||
| 15 | debian/ld_run_path.diff | ||
| 16 | debian/libnet_config_path.diff | ||
| 17 | debian/m68k_thread_stress.diff | ||
| 18 | debian/mod_paths.diff | ||
| 19 | debian/module_build_man_extensions.diff | ||
| 20 | debian/prune_libs.diff | ||
| 21 | fixes/net_smtp_docs.diff | ||
| 22 | debian/perlivp.diff | ||
| 23 | debian/disable-zlib-bundling.diff | ||
| 24 | debian/cpanplus_definstalldirs.diff | ||
| 25 | debian/cpanplus_config_path.diff | ||
| 26 | debian/deprecate-with-apt.diff | ||
| 27 | fixes/hurd-ccflags.diff | ||
| 28 | debian/squelch-locale-warnings.diff | ||
| 29 | debian/skip-upstream-git-tests.diff | ||
| 30 | fixes/extutils-cbuilder-cflags.diff | ||
| 31 | fixes/module-build-home-directory.diff | ||
| 32 | debian/patchlevel.diff | ||
| 33 | fixes/h2ph-multiarch.diff | ||
| 34 | fixes/index-tainting.diff | ||
| 35 | debian/skip-kfreebsd-crash.diff | ||
| 36 | fixes/document_makemaker_ccflags.diff | ||
| 37 | fixes/sys-syslog-socket-timeout-kfreebsd.patch | ||
| 38 | fixes/hurd-hints.diff | ||
| 39 | fixes/pod_fixes.diff | ||
| 40 | debian/find_html2text.diff | ||
diff --git a/meta/recipes-devtools/perl/perl-5.14.2/debian/skip-kfreebsd-crash.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/skip-kfreebsd-crash.diff new file mode 100644 index 0000000000..7992129a51 --- /dev/null +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/skip-kfreebsd-crash.diff | |||
| @@ -0,0 +1,39 @@ | |||
| 1 | From ff2815399ad94915da2e63cb3c4bbd2d02dac4b2 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Niko Tyni <ntyni@debian.org> | ||
| 3 | Date: Fri, 5 Aug 2011 10:50:18 +0300 | ||
| 4 | Subject: Skip a crashing test case in t/op/threads.t on GNU/kFreeBSD | ||
| 5 | |||
| 6 | Bug: http://rt.perl.org/rt3/Ticket/Display.html?id=96272 | ||
| 7 | Bug-Debian: http://bugs.debian.org/628493 | ||
| 8 | |||
| 9 | The crash is not a regression in 5.14, it just gets triggered there by | ||
| 10 | a new unrelated test case. | ||
| 11 | |||
| 12 | Skip the test until the culprit is found. | ||
| 13 | |||
| 14 | Patch-Name: debian/skip-kfreebsd-crash.diff | ||
| 15 | --- | ||
| 16 | t/op/threads.t | 4 ++++ | ||
| 17 | 1 files changed, 4 insertions(+), 0 deletions(-) | ||
| 18 | |||
| 19 | diff --git a/t/op/threads.t b/t/op/threads.t | ||
| 20 | index 24e84e4..6a91366 100644 | ||
| 21 | --- a/t/op/threads.t | ||
| 22 | +++ b/t/op/threads.t | ||
| 23 | @@ -342,6 +342,9 @@ threads->create( | ||
| 24 | |||
| 25 | EOI | ||
| 26 | |||
| 27 | +SKIP: { | ||
| 28 | + skip "[perl #96272] avoid crash on GNU/kFreeBSD", 1 | ||
| 29 | + if $^O eq 'gnukfreebsd'; | ||
| 30 | # [perl #78494] Pipes shared between threads block when closed | ||
| 31 | watchdog 10; | ||
| 32 | { | ||
| 33 | @@ -351,5 +354,6 @@ watchdog 10; | ||
| 34 | threads->create(sub { })->join; | ||
| 35 | ok(1, "Pipes shared between threads do not block when closed"); | ||
| 36 | } | ||
| 37 | +} | ||
| 38 | |||
| 39 | # EOF | ||
diff --git a/meta/recipes-devtools/perl/perl-5.14.2/debian/skip-upstream-git-tests.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/skip-upstream-git-tests.diff new file mode 100644 index 0000000000..a157bc7f60 --- /dev/null +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/skip-upstream-git-tests.diff | |||
| @@ -0,0 +1,59 @@ | |||
| 1 | From 2be2eed9148c38d3e982d3371f379ce77021aeb5 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Niko Tyni <ntyni@debian.org> | ||
| 3 | Date: Fri, 22 Apr 2011 11:15:32 +0300 | ||
| 4 | Subject: Skip tests specific to the upstream Git repository | ||
| 5 | |||
| 6 | These tests fail if run from a different git repository than | ||
| 7 | upstream. This complicates things needlessly for downstream packagers. | ||
| 8 | |||
| 9 | Skip the tests altogether even if the .git directory exists. | ||
| 10 | |||
| 11 | Patch-Name: debian/skip-upstream-git-tests.diff | ||
| 12 | --- | ||
| 13 | t/porting/authors.t | 3 ++- | ||
| 14 | t/porting/cmp_version.t | 3 ++- | ||
| 15 | t/porting/manifest.t | 3 ++- | ||
| 16 | 3 files changed, 6 insertions(+), 3 deletions(-) | ||
| 17 | |||
| 18 | diff --git a/t/porting/authors.t b/t/porting/authors.t | ||
| 19 | index 28ca1ca..3c7f069 100644 | ||
| 20 | --- a/t/porting/authors.t | ||
| 21 | +++ b/t/porting/authors.t | ||
| 22 | @@ -9,7 +9,8 @@ BEGIN { | ||
| 23 | use strict; | ||
| 24 | use warnings; | ||
| 25 | |||
| 26 | -if (! -d '.git' ) { | ||
| 27 | +# Debian change: skip as we're probably in a different git repository | ||
| 28 | +if (1 || ! -d '.git' ) { | ||
| 29 | print "1..0 # SKIP: not being run from a git checkout\n"; | ||
| 30 | exit 0; | ||
| 31 | } | ||
| 32 | diff --git a/t/porting/cmp_version.t b/t/porting/cmp_version.t | ||
| 33 | index b3c677c..f89f2a7 100644 | ||
| 34 | --- a/t/porting/cmp_version.t | ||
| 35 | +++ b/t/porting/cmp_version.t | ||
| 36 | @@ -25,7 +25,8 @@ use File::Spec::Functions qw(rel2abs abs2rel catfile catdir curdir); | ||
| 37 | use Getopt::Std; | ||
| 38 | use Maintainers; | ||
| 39 | |||
| 40 | -if (! -d '.git' ) { | ||
| 41 | +# Debian change: skip as we're probably in a different git repository | ||
| 42 | +if (1 || ! -d '.git' ) { | ||
| 43 | print "1..0 # SKIP: not being run from a git checkout\n"; | ||
| 44 | exit 0; | ||
| 45 | } | ||
| 46 | diff --git a/t/porting/manifest.t b/t/porting/manifest.t | ||
| 47 | index 48dd3ac..b08126b 100644 | ||
| 48 | --- a/t/porting/manifest.t | ||
| 49 | +++ b/t/porting/manifest.t | ||
| 50 | @@ -59,7 +59,8 @@ SKIP: { | ||
| 51 | |||
| 52 | SKIP: { | ||
| 53 | chdir ".."; | ||
| 54 | - skip("not under git control", 3) unless -d '.git'; | ||
| 55 | + # Debian change: skip as we're probably in a different git repository | ||
| 56 | + skip("not under git control", 3) unless 0 && -d '.git'; | ||
| 57 | chomp(my @repo= grep { !/\.gitignore$/ } `git ls-files`); | ||
| 58 | skip("git ls-files didnt work",3) | ||
| 59 | if !@repo; | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/debian/squelch-locale-warnings.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/squelch-locale-warnings.diff index eac0fc30c4..71660b08ba 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/debian/squelch-locale-warnings.diff +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/squelch-locale-warnings.diff | |||
| @@ -1,7 +1,8 @@ | |||
| 1 | Upstream-Status:Inappropriate [debian patch] | 1 | From 718e9cbd59f0739fc9104af111e42fff66f927a7 Mon Sep 17 00:00:00 2001 |
| 2 | |||
| 3 | From: Niko Tyni <ntyni@debian.org> | 2 | From: Niko Tyni <ntyni@debian.org> |
| 3 | Date: Sun, 3 Oct 2010 21:36:17 +0300 | ||
| 4 | Subject: Squelch locale warnings in Debian package maintainer scripts | 4 | Subject: Squelch locale warnings in Debian package maintainer scripts |
| 5 | |||
| 5 | Bug-Debian: http://bugs.debian.org/508764 | 6 | Bug-Debian: http://bugs.debian.org/508764 |
| 6 | 7 | ||
| 7 | The system locales are rather frequently out of sync with the C library | 8 | The system locales are rather frequently out of sync with the C library |
| @@ -12,13 +13,14 @@ by the DPKG_RUNNING_VERSION environment variable. | |||
| 12 | Any real locale problem will show up after the system upgrade too, and | 13 | Any real locale problem will show up after the system upgrade too, and |
| 13 | the warning will be triggered normally again at that point. | 14 | the warning will be triggered normally again at that point. |
| 14 | 15 | ||
| 16 | Patch-Name: debian/squelch-locale-warnings.diff | ||
| 15 | --- | 17 | --- |
| 16 | locale.c | 4 ++++ | 18 | locale.c | 4 ++++ |
| 17 | pod/perllocale.pod | 8 ++++++++ | 19 | pod/perllocale.pod | 8 ++++++++ |
| 18 | 2 files changed, 12 insertions(+), 0 deletions(-) | 20 | 2 files changed, 12 insertions(+), 0 deletions(-) |
| 19 | 21 | ||
| 20 | diff --git a/locale.c b/locale.c | 22 | diff --git a/locale.c b/locale.c |
| 21 | index 16ccce8..2592b3c 100644 | 23 | index 4631b86..94a0962 100644 |
| 22 | --- a/locale.c | 24 | --- a/locale.c |
| 23 | +++ b/locale.c | 25 | +++ b/locale.c |
| 24 | @@ -359,6 +359,10 @@ Perl_init_i18nl10n(pTHX_ int printwarn) | 26 | @@ -359,6 +359,10 @@ Perl_init_i18nl10n(pTHX_ int printwarn) |
| @@ -33,10 +35,10 @@ index 16ccce8..2592b3c 100644 | |||
| 33 | 35 | ||
| 34 | if (locwarn) { | 36 | if (locwarn) { |
| 35 | diff --git a/pod/perllocale.pod b/pod/perllocale.pod | 37 | diff --git a/pod/perllocale.pod b/pod/perllocale.pod |
| 36 | index 0dbabe7..60b7bab 100644 | 38 | index 8926d8b..6c55889 100644 |
| 37 | --- a/pod/perllocale.pod | 39 | --- a/pod/perllocale.pod |
| 38 | +++ b/pod/perllocale.pod | 40 | +++ b/pod/perllocale.pod |
| 39 | @@ -844,6 +844,14 @@ B<NOTE>: PERL_BADLANG only gives you a way to hide the warning message. | 41 | @@ -861,6 +861,14 @@ B<NOTE>: PERL_BADLANG only gives you a way to hide the warning message. |
| 40 | The message tells about some problem in your system's locale support, | 42 | The message tells about some problem in your system's locale support, |
| 41 | and you should investigate what the problem is. | 43 | and you should investigate what the problem is. |
| 42 | 44 | ||
| @@ -51,5 +53,3 @@ index 0dbabe7..60b7bab 100644 | |||
| 51 | =back | 53 | =back |
| 52 | 54 | ||
| 53 | The following environment variables are not specific to Perl: They are | 55 | The following environment variables are not specific to Perl: They are |
| 54 | -- | ||
| 55 | tg: (a508b62..) debian/squelch-locale-warnings (depends on: upstream) | ||
diff --git a/meta/recipes-devtools/perl/perl-5.14.2/debian/writable_site_dirs.diff b/meta/recipes-devtools/perl/perl-5.14.2/debian/writable_site_dirs.diff new file mode 100644 index 0000000000..a4fc32aec0 --- /dev/null +++ b/meta/recipes-devtools/perl/perl-5.14.2/debian/writable_site_dirs.diff | |||
| @@ -0,0 +1,36 @@ | |||
| 1 | From 492e0d6b4e3e0d786fb88b9058d581f6466c4a3e Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Brendan O'Dea <bod@debian.org> | ||
| 3 | Date: Tue, 8 Mar 2005 19:30:38 +1100 | ||
| 4 | Subject: Set umask approproately for site install directories | ||
| 5 | |||
| 6 | Policy requires group writable site directories | ||
| 7 | |||
| 8 | Patch-Name: debian/writable_site_dirs.diff | ||
| 9 | --- | ||
| 10 | cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | 6 +++--- | ||
| 11 | 1 files changed, 3 insertions(+), 3 deletions(-) | ||
| 12 | |||
| 13 | diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | ||
| 14 | index 865d36d..4ee6b3f 100644 | ||
| 15 | --- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | ||
| 16 | +++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | ||
| 17 | @@ -2067,7 +2067,7 @@ pure_perl_install :: all | ||
| 18 | |||
| 19 | |||
| 20 | pure_site_install :: all | ||
| 21 | - $(NOECHO) umask 022; $(MOD_INSTALL) \ | ||
| 22 | + $(NOECHO) umask 02; $(MOD_INSTALL) \ | ||
| 23 | read }.$self->catfile('$(SITEARCHEXP)','auto','$(FULLEXT)','.packlist').q{ \ | ||
| 24 | write }.$self->catfile('$(DESTINSTALLSITEARCH)','auto','$(FULLEXT)','.packlist').q{ \ | ||
| 25 | $(INST_LIB) $(DESTINSTALLSITELIB) \ | ||
| 26 | @@ -2103,8 +2103,8 @@ doc_perl_install :: all | ||
| 27 | |||
| 28 | doc_site_install :: all | ||
| 29 | $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod | ||
| 30 | - -$(NOECHO) umask 022; $(MKPATH) $(DESTINSTALLARCHLIB) | ||
| 31 | - -$(NOECHO) umask 022; $(DOC_INSTALL) \ | ||
| 32 | + -$(NOECHO) umask 02; $(MKPATH) $(DESTINSTALLARCHLIB) | ||
| 33 | + -$(NOECHO) umask 02; $(DOC_INSTALL) \ | ||
| 34 | "Module" "$(NAME)" \ | ||
| 35 | "installed into" "$(INSTALLSITELIB)" \ | ||
| 36 | LINKTYPE "$(LINKTYPE)" \ | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/fix_bad_rpath.patch b/meta/recipes-devtools/perl/perl-5.14.2/fix_bad_rpath.patch index 7b99857c17..69ac434779 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/fix_bad_rpath.patch +++ b/meta/recipes-devtools/perl/perl-5.14.2/fix_bad_rpath.patch | |||
| @@ -10,16 +10,15 @@ This fixes this warning for perl recipe as well as libxml-parser-perl recipe. | |||
| 10 | It is a fix to MakeMaker within perl, so all such perl recipes will get | 10 | It is a fix to MakeMaker within perl, so all such perl recipes will get |
| 11 | fixed with this perl fix. | 11 | fixed with this perl fix. |
| 12 | 12 | ||
| 13 | Index: perl-5.12.3/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm | 13 | Index: perl-5.14.2/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm |
| 14 | =================================================================== | 14 | =================================================================== |
| 15 | --- perl-5.12.3.orig/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm | 15 | --- perl-5.14.2.orig/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm |
| 16 | +++ perl-5.12.3/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm | 16 | +++ perl-5.14.2/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm |
| 17 | @@ -54,7 +54,7 @@ sub _unix_os2_ext { | 17 | @@ -55,6 +55,7 @@ sub _unix_os2_ext { |
| 18 | my($found) = 0; | 18 | my($found) = 0; |
| 19 | 19 | ||
| 20 | # Debian-specific: don't use LD_RUN_PATH for standard dirs | 20 | # Debian-specific: don't use LD_RUN_PATH for standard dirs |
| 21 | - $ld_run_path_seen{$_}++ for qw(/lib /usr/lib /usr/X11R6/lib); | 21 | + push(@libpath, "SYSROOTLIB"); |
| 22 | + $ld_run_path_seen{$_}++ for qw(/lib /usr/lib /usr/X11R6/lib SYSROOTLIB); | 22 | $ld_run_path_seen{$_}++ for @libpath; |
| 23 | 23 | ||
| 24 | foreach my $thislib (split ' ', $potential_libs) { | 24 | foreach my $thislib (split ' ', $potential_libs) { |
| 25 | |||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/generate-sh.patch b/meta/recipes-devtools/perl/perl-5.14.2/generate-sh.patch index 47f91c56d3..47f91c56d3 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/generate-sh.patch +++ b/meta/recipes-devtools/perl/perl-5.14.2/generate-sh.patch | |||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/installperl.patch b/meta/recipes-devtools/perl/perl-5.14.2/installperl.patch index 456012376e..456012376e 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/installperl.patch +++ b/meta/recipes-devtools/perl/perl-5.14.2/installperl.patch | |||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/letgcc-find-errno.patch b/meta/recipes-devtools/perl/perl-5.14.2/letgcc-find-errno.patch index 5161e4c8b6..5161e4c8b6 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/letgcc-find-errno.patch +++ b/meta/recipes-devtools/perl/perl-5.14.2/letgcc-find-errno.patch | |||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/native-nopacklist.patch b/meta/recipes-devtools/perl/perl-5.14.2/native-nopacklist.patch index 389c3342fb..389c3342fb 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/native-nopacklist.patch +++ b/meta/recipes-devtools/perl/perl-5.14.2/native-nopacklist.patch | |||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/native-perlinc.patch b/meta/recipes-devtools/perl/perl-5.14.2/native-perlinc.patch index f0bb1f6596..f0bb1f6596 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/native-perlinc.patch +++ b/meta/recipes-devtools/perl/perl-5.14.2/native-perlinc.patch | |||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/perl-configpm-switch.patch b/meta/recipes-devtools/perl/perl-5.14.2/perl-configpm-switch.patch index 9e9f342866..c6cc15c93f 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/perl-configpm-switch.patch +++ b/meta/recipes-devtools/perl/perl-5.14.2/perl-configpm-switch.patch | |||
| @@ -9,18 +9,20 @@ to use the settings appropriate for the native and/or target builds | |||
| 9 | as required. This also disables the use of the cache since the cached | 9 | as required. This also disables the use of the cache since the cached |
| 10 | values would be valid for the host only. | 10 | values would be valid for the host only. |
| 11 | 11 | ||
| 12 | --- perl-5.8.8/configpm 2007/04/30 03:10:43 1.1 | 12 | Index: perl-5.14.2/configpm |
| 13 | +++ perl-5.8.8/configpm 2007/04/30 03:11:56 | 13 | =================================================================== |
| 14 | @@ -374,7 +374,7 @@ | 14 | --- perl-5.14.2.orig/configpm |
| 15 | +++ perl-5.14.2/configpm | ||
| 16 | @@ -658,7 +658,7 @@ sub FETCH { | ||
| 15 | my($self, $key) = @_; | 17 | my($self, $key) = @_; |
| 16 | 18 | ||
| 17 | # check for cached value (which may be undef so we use exists not defined) | 19 | # check for cached value (which may be undef so we use exists not defined) |
| 18 | - return $self->{$key} if exists $self->{$key}; | 20 | - return exists $self->{$key} ? $self->{$key} : $self->fetch_string($key); |
| 19 | + #return $self->{$key} if exists $self->{$key}; | 21 | + return $self->fetch_string($key); |
| 20 | |||
| 21 | return $self->fetch_string($key); | ||
| 22 | } | 22 | } |
| 23 | @@ -530,7 +530,21 @@ | 23 | |
| 24 | ENDOFEND | ||
| 25 | @@ -816,7 +816,21 @@ $config_txt .= sprintf <<'ENDOFTIE', $fa | ||
| 24 | sub DESTROY { } | 26 | sub DESTROY { } |
| 25 | 27 | ||
| 26 | sub AUTOLOAD { | 28 | sub AUTOLOAD { |
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/perl-configure.sh b/meta/recipes-devtools/perl/perl-5.14.2/perl-configure.sh index e72ce49f99..e72ce49f99 100755 --- a/meta/recipes-devtools/perl/perl-5.12.3/perl-configure.sh +++ b/meta/recipes-devtools/perl/perl-5.14.2/perl-configure.sh | |||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/perl-dynloader.patch b/meta/recipes-devtools/perl/perl-5.14.2/perl-dynloader.patch index 1840605df1..035beba66a 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/perl-dynloader.patch +++ b/meta/recipes-devtools/perl/perl-5.14.2/perl-dynloader.patch | |||
| @@ -7,12 +7,14 @@ system. | |||
| 7 | 7 | ||
| 8 | Update by Nitin A Kamble <nitin.a.kamble@intel.com> 2011/04/21 | 8 | Update by Nitin A Kamble <nitin.a.kamble@intel.com> 2011/04/21 |
| 9 | 9 | ||
| 10 | --- perl-5.12.3/dist/XSLoader/XSLoader_pm.PL 2007/04/20 09:03:08 1.1 | 10 | Index: perl-5.14.2/dist/XSLoader/XSLoader_pm.PL |
| 11 | +++ perl-5.12.3/dist/XSLoader/XSLoader_pm.PL 2007/04/20 09:03:08 | 11 | =================================================================== |
| 12 | @@ -65,6 +65,19 @@ | 12 | --- perl-5.14.2.orig/dist/XSLoader/XSLoader_pm.PL |
| 13 | print OUT <<'EOT'; | 13 | +++ perl-5.14.2/dist/XSLoader/XSLoader_pm.PL |
| 14 | my $modpname = join('/',@modparts); | 14 | @@ -28,6 +28,20 @@ sub load { |
| 15 | my $modlibname = (caller())[1]; | 15 | |
| 16 | my ($module, $modlibname) = caller(); | ||
| 17 | |||
| 16 | + # OE: Allow env to form dynamic loader to look in a different place | 18 | + # OE: Allow env to form dynamic loader to look in a different place |
| 17 | + # This is so it finds the host .so files, not the targets | 19 | + # This is so it finds the host .so files, not the targets |
| 18 | + if (defined $ENV{PERLHOSTLIB}) | 20 | + if (defined $ENV{PERLHOSTLIB}) |
| @@ -26,6 +28,7 @@ Update by Nitin A Kamble <nitin.a.kamble@intel.com> 2011/04/21 | |||
| 26 | + } | 28 | + } |
| 27 | + print STDERR "*** Module name OUT: $modlibname\n"; | 29 | + print STDERR "*** Module name OUT: $modlibname\n"; |
| 28 | + } | 30 | + } |
| 29 | my $c = @modparts; | 31 | + |
| 30 | $modlibname =~ s,[\\/][^\\/]+$,, while $c--; # Q&D basename | 32 | if (@_) { |
| 31 | my $file = "$modlibname/auto/$modpname/$modfname.$dl_dlext"; | 33 | $module = $_[0]; |
| 34 | } else { | ||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/perl-enable-gdbm.patch b/meta/recipes-devtools/perl/perl-5.14.2/perl-enable-gdbm.patch index aa83fca5ae..aa83fca5ae 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/perl-enable-gdbm.patch +++ b/meta/recipes-devtools/perl/perl-5.14.2/perl-enable-gdbm.patch | |||
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/perl-moreconfig.patch b/meta/recipes-devtools/perl/perl-5.14.2/perl-moreconfig.patch index 59ce85a7a3..59ce85a7a3 100644 --- a/meta/recipes-devtools/perl/perl-5.12.3/perl-moreconfig.patch +++ b/meta/recipes-devtools/perl/perl-5.14.2/perl-moreconfig.patch | |||
diff --git a/meta/recipes-devtools/perl/perl-native_5.12.3.bb b/meta/recipes-devtools/perl/perl-native_5.14.2.bb index a8e2346606..0f49950478 100644 --- a/meta/recipes-devtools/perl/perl-native_5.12.3.bb +++ b/meta/recipes-devtools/perl/perl-native_5.14.2.bb | |||
| @@ -4,7 +4,7 @@ SECTION = "libs" | |||
| 4 | LICENSE = "Artistic|GPL" | 4 | LICENSE = "Artistic|GPL" |
| 5 | LIC_FILES_CHKSUM = "file://Copying;md5=2b4c6ffbcfcbdee469f02565f253d81a \ | 5 | LIC_FILES_CHKSUM = "file://Copying;md5=2b4c6ffbcfcbdee469f02565f253d81a \ |
| 6 | file://Artistic;md5=f921793d03cc6d63ec4b15e9be8fd3f8" | 6 | file://Artistic;md5=f921793d03cc6d63ec4b15e9be8fd3f8" |
| 7 | PR = "r5" | 7 | PR = "r0" |
| 8 | 8 | ||
| 9 | LIC_FILES_CHKSUM = "file://Copying;md5=2b4c6ffbcfcbdee469f02565f253d81a \ | 9 | LIC_FILES_CHKSUM = "file://Copying;md5=2b4c6ffbcfcbdee469f02565f253d81a \ |
| 10 | file://Artistic;md5=f921793d03cc6d63ec4b15e9be8fd3f8" | 10 | file://Artistic;md5=f921793d03cc6d63ec4b15e9be8fd3f8" |
| @@ -12,18 +12,12 @@ LIC_FILES_CHKSUM = "file://Copying;md5=2b4c6ffbcfcbdee469f02565f253d81a \ | |||
| 12 | SRC_URI = "http://www.cpan.org/src/5.0/perl-${PV}.tar.gz \ | 12 | SRC_URI = "http://www.cpan.org/src/5.0/perl-${PV}.tar.gz \ |
| 13 | file://Configure-multilib.patch \ | 13 | file://Configure-multilib.patch \ |
| 14 | file://perl-configpm-switch.patch \ | 14 | file://perl-configpm-switch.patch \ |
| 15 | file://parallel_build_fix_1.patch \ | ||
| 16 | file://parallel_build_fix_2.patch \ | ||
| 17 | file://parallel_build_fix_3.patch \ | ||
| 18 | file://parallel_build_fix_4.patch \ | ||
| 19 | file://parallel_build_fix_5.patch \ | ||
| 20 | file://parallel_build_fix_6.patch \ | ||
| 21 | file://native-nopacklist.patch \ | 15 | file://native-nopacklist.patch \ |
| 22 | file://native-perlinc.patch \ | 16 | file://native-perlinc.patch \ |
| 23 | file://MM_Unix.pm.patch" | 17 | file://MM_Unix.pm.patch" |
| 24 | 18 | ||
| 25 | SRC_URI[md5sum] = "29975a69dce54e47fcd6331c085c6c99" | 19 | SRC_URI[md5sum] = "3306fbaf976dcebdcd49b2ac0be00eb9" |
| 26 | SRC_URI[sha256sum] = "5678bfd5c2cd59253a26171bf3e681235433b00c730eea8a8046e1b225c11d2f" | 20 | SRC_URI[sha256sum] = "6488359573bd7d41761bf935f66f827dc220fb3df961ef9b775d51fbd66548d3" |
| 27 | 21 | ||
| 28 | S = "${WORKDIR}/perl-${PV}" | 22 | S = "${WORKDIR}/perl-${PV}" |
| 29 | 23 | ||
| @@ -88,15 +82,17 @@ do_install () { | |||
| 88 | install lib/ExtUtils/typemap ${D}${libdir}/perl/${PV}/ExtUtils/ | 82 | install lib/ExtUtils/typemap ${D}${libdir}/perl/${PV}/ExtUtils/ |
| 89 | 83 | ||
| 90 | # perl shared library headers | 84 | # perl shared library headers |
| 91 | for i in av.h embed.h gv.h keywords.h op.h perlio.h pp.h regexp.h \ | 85 | for i in av.h bitcount.h config.h cop.h cv.h dosish.h embed.h embedvar.h \ |
| 92 | uconfig.h XSUB.h cc_runtime.h embedvar.h handy.h opnames.h \ | 86 | EXTERN.h fakesdio.h fakethr.h form.h gv.h handy.h hv.h INTERN.h \ |
| 93 | perliol.h pp_proto.h regnodes.h unixish.h config.h EXTERN.h \ | 87 | intrpvar.h iperlsys.h keywords.h l1_char_class_tab.h malloc_ctl.h \ |
| 94 | hv.h malloc_ctl.h pad.h perlsdio.h proto.h scope.h utf8.h \ | 88 | metaconfig.h mg.h mydtrace.h nostdio.h opcode.h op.h opnames.h \ |
| 95 | cop.h fakesdio.h INTERN.h mg.h patchlevel.h perlsfio.h \ | 89 | op_reg_common.h overload.h pad.h parser.h patchlevel.h perlapi.h \ |
| 96 | reentr.h sv.h utfebcdic.h cv.h fakethr.h intrpvar.h \ | 90 | perl.h perlio.h perliol.h perlsdio.h perlsfio.h perlvars.h \ |
| 97 | nostdio.h perlapi.h perlvars.h util.h \ | 91 | perly.h pp.h pp_proto.h proto.h reentr.h regcharclass.h regcomp.h \ |
| 98 | dosish.h form.h iperlsys.h opcode.h perl.h perly.h regcomp.h \ | 92 | regexp.h regnodes.h scope.h sv.h thread.h time64_config.h \ |
| 99 | thread.h warnings.h; do | 93 | time64.h uconfig.h unixish.h utf8.h utfebcdic.h util.h \ |
| 94 | uudmap.h warnings.h XSUB.h | ||
| 95 | do | ||
| 100 | install $i ${D}${libdir}/perl/${PV}/CORE | 96 | install $i ${D}${libdir}/perl/${PV}/CORE |
| 101 | done | 97 | done |
| 102 | 98 | ||
diff --git a/meta/recipes-devtools/perl/perl-rdepends_5.12.3.inc b/meta/recipes-devtools/perl/perl-rdepends_5.14.2.inc index 309bd17413..26239d2d52 100644 --- a/meta/recipes-devtools/perl/perl-rdepends_5.12.3.inc +++ b/meta/recipes-devtools/perl/perl-rdepends_5.14.2.inc | |||
| @@ -17,14 +17,15 @@ RDEPENDS_perl-module-math-bigint-calc += "perl-module-integer " | |||
| 17 | 17 | ||
| 18 | # Depends list | 18 | # Depends list |
| 19 | # copy contents of /tmp/1 in this file | 19 | # copy contents of /tmp/1 in this file |
| 20 | RDEPENDS_perl-module-archive-tar += "perl-module-exporter" | ||
| 21 | RDEPENDS_perl-module-archive-tar-file += "perl-module-archive-tar" | 20 | RDEPENDS_perl-module-archive-tar-file += "perl-module-archive-tar" |
| 21 | RDEPENDS_perl-module-archive-tar += "perl-module-exporter" | ||
| 22 | RDEPENDS_perl-module-attributes += "perl-module-xsloader" | 22 | RDEPENDS_perl-module-attributes += "perl-module-xsloader" |
| 23 | RDEPENDS_perl-module-b += "perl-module-exporter" | ||
| 24 | RDEPENDS_perl-module-b-debug += "perl-module-b" | 23 | RDEPENDS_perl-module-b-debug += "perl-module-b" |
| 25 | RDEPENDS_perl-module-bignum += "perl-module-bigint" | 24 | RDEPENDS_perl-module-bignum += "perl-module-bigint" |
| 26 | RDEPENDS_perl-module-bigrat += "perl-module-bigint" | 25 | RDEPENDS_perl-module-bigrat += "perl-module-bigint" |
| 27 | RDEPENDS_perl-module-bigrat += "perl-module-exporter" | 26 | RDEPENDS_perl-module-bigrat += "perl-module-exporter" |
| 27 | RDEPENDS_perl-module-b += "perl-module-exporter" | ||
| 28 | #RDEPENDS_perl-module-build += "perl-module-module-metadata" | ||
| 28 | RDEPENDS_perl-module-carp += "perl-module-exporter" | 29 | RDEPENDS_perl-module-carp += "perl-module-exporter" |
| 29 | RDEPENDS_perl-module-cgi-util += "perl-module-exporter" | 30 | RDEPENDS_perl-module-cgi-util += "perl-module-exporter" |
| 30 | RDEPENDS_perl-module-class-struct += "perl-module-exporter" | 31 | RDEPENDS_perl-module-class-struct += "perl-module-exporter" |
| @@ -32,27 +33,30 @@ RDEPENDS_perl-module-compress-raw-bzip2 += "perl-module-exporter" | |||
| 32 | RDEPENDS_perl-module-compress-raw-zlib += "perl-module-exporter" | 33 | RDEPENDS_perl-module-compress-raw-zlib += "perl-module-exporter" |
| 33 | RDEPENDS_perl-module-compress-zlib += "perl-module-exporter" | 34 | RDEPENDS_perl-module-compress-zlib += "perl-module-exporter" |
| 34 | RDEPENDS_perl-module-config-extensions += "perl-module-exporter" | 35 | RDEPENDS_perl-module-config-extensions += "perl-module-exporter" |
| 36 | #RDEPENDS_perl-module-cpan += "perl-module-mac-buildtools" | ||
| 35 | RDEPENDS_perl-module-cpanplus += "perl-module-base" | 37 | RDEPENDS_perl-module-cpanplus += "perl-module-base" |
| 38 | RDEPENDS_perl-module-cpanplus += "perl-module-cpanplus" | ||
| 36 | RDEPENDS_perl-module-cpanplus += "perl-module-exporter" | 39 | RDEPENDS_perl-module-cpanplus += "perl-module-exporter" |
| 37 | RDEPENDS_perl-module-cpanplus += "perl-module-tie-hash" | 40 | RDEPENDS_perl-module-cpanplus += "perl-module-tie-hash" |
| 38 | RDEPENDS_perl-module-data-dumper += "perl-module-exporter" | 41 | RDEPENDS_perl-module-data-dumper += "perl-module-exporter" |
| 39 | RDEPENDS_perl-module-data-dumper += "perl-module-overload" | 42 | RDEPENDS_perl-module-data-dumper += "perl-module-overload" |
| 40 | RDEPENDS_perl-module-devel-peek += "perl-module-exporter" | 43 | RDEPENDS_perl-module-devel-peek += "perl-module-exporter" |
| 44 | RDEPENDS_perl-module-devel-peek += "perl-module-xsloader" | ||
| 41 | RDEPENDS_perl-module-devel-selfstubber += "perl-module-selfloader" | 45 | RDEPENDS_perl-module-devel-selfstubber += "perl-module-selfloader" |
| 42 | RDEPENDS_perl-module-digest-md5 += "perl-module-exporter" | 46 | RDEPENDS_perl-module-digest-md5 += "perl-module-exporter" |
| 43 | RDEPENDS_perl-module-digest-sha += "perl-module-dynaloader" | 47 | RDEPENDS_perl-module-digest-sha += "perl-module-dynaloader" |
| 44 | RDEPENDS_perl-module-digest-sha += "perl-module-exporter" | 48 | RDEPENDS_perl-module-digest-sha += "perl-module-exporter" |
| 45 | RDEPENDS_perl-module-dynaloader += "perl-module-autoloader" | ||
| 46 | RDEPENDS_perl-module-encode += "perl-module-encode-config" | ||
| 47 | RDEPENDS_perl-module-encode += "perl-module-exporter" | ||
| 48 | RDEPENDS_perl-module-encode-cjkconstants += "perl-module-exporter" | 49 | RDEPENDS_perl-module-encode-cjkconstants += "perl-module-exporter" |
| 49 | RDEPENDS_perl-module-encode-encoder += "perl-module-exporter" | 50 | RDEPENDS_perl-module-encode-encoder += "perl-module-exporter" |
| 50 | RDEPENDS_perl-module-encode-encoding += "perl-module-encode" | 51 | RDEPENDS_perl-module-encode-encoding += "perl-module-encode" |
| 52 | RDEPENDS_perl-module-encode += "perl-module-encode-config" | ||
| 53 | RDEPENDS_perl-module-encode += "perl-module-exporter" | ||
| 51 | RDEPENDS_perl-module-encode-unicode += "perl-module-encode" | 54 | RDEPENDS_perl-module-encode-unicode += "perl-module-encode" |
| 52 | RDEPENDS_perl-module-english += "perl-module-exporter" | 55 | RDEPENDS_perl-module-english += "perl-module-exporter" |
| 56 | RDEPENDS_perl-module-errno += "perl-module-exporter" | ||
| 53 | RDEPENDS_perl-module-exporter-heavy += "perl-module-exporter" | 57 | RDEPENDS_perl-module-exporter-heavy += "perl-module-exporter" |
| 54 | RDEPENDS_perl-module-extutils-command += "perl-module-exporter" | ||
| 55 | RDEPENDS_perl-module-extutils-command-mm += "perl-module-exporter" | 58 | RDEPENDS_perl-module-extutils-command-mm += "perl-module-exporter" |
| 59 | RDEPENDS_perl-module-extutils-command += "perl-module-exporter" | ||
| 56 | RDEPENDS_perl-module-extutils-constant-proxysubs += "perl-module-extutils-constant-xs" | 60 | RDEPENDS_perl-module-extutils-constant-proxysubs += "perl-module-extutils-constant-xs" |
| 57 | RDEPENDS_perl-module-extutils-constant-xs += "perl-module-extutils-constant-base" | 61 | RDEPENDS_perl-module-extutils-constant-xs += "perl-module-extutils-constant-base" |
| 58 | RDEPENDS_perl-module-extutils-embed += "perl-module-exporter" | 62 | RDEPENDS_perl-module-extutils-embed += "perl-module-exporter" |
| @@ -64,8 +68,6 @@ RDEPENDS_perl-module-extutils-makemaker += "perl-module-extutils-my" | |||
| 64 | RDEPENDS_perl-module-extutils-manifest += "perl-module-exporter" | 68 | RDEPENDS_perl-module-extutils-manifest += "perl-module-exporter" |
| 65 | RDEPENDS_perl-module-extutils-miniperl += "perl-module-exporter" | 69 | RDEPENDS_perl-module-extutils-miniperl += "perl-module-exporter" |
| 66 | RDEPENDS_perl-module-extutils-mkbootstrap += "perl-module-exporter" | 70 | RDEPENDS_perl-module-extutils-mkbootstrap += "perl-module-exporter" |
| 67 | RDEPENDS_perl-module-extutils-mm += "perl-module-extutils-liblist" | ||
| 68 | RDEPENDS_perl-module-extutils-mm += "perl-module-extutils-makemaker" | ||
| 69 | RDEPENDS_perl-module-extutils-mm-aix += "perl-module-extutils-mm-unix" | 71 | RDEPENDS_perl-module-extutils-mm-aix += "perl-module-extutils-mm-unix" |
| 70 | RDEPENDS_perl-module-extutils-mm-beos += "perl-module-extutils-mm-any" | 72 | RDEPENDS_perl-module-extutils-mm-beos += "perl-module-extutils-mm-any" |
| 71 | RDEPENDS_perl-module-extutils-mm-beos += "perl-module-extutils-mm-unix" | 73 | RDEPENDS_perl-module-extutils-mm-beos += "perl-module-extutils-mm-unix" |
| @@ -76,6 +78,8 @@ RDEPENDS_perl-module-extutils-mm-dos += "perl-module-extutils-mm-unix" | |||
| 76 | RDEPENDS_perl-module-extutils-mm-nw5 += "perl-module-extutils-mm-win32" | 78 | RDEPENDS_perl-module-extutils-mm-nw5 += "perl-module-extutils-mm-win32" |
| 77 | RDEPENDS_perl-module-extutils-mm-os2 += "perl-module-extutils-mm-any" | 79 | RDEPENDS_perl-module-extutils-mm-os2 += "perl-module-extutils-mm-any" |
| 78 | RDEPENDS_perl-module-extutils-mm-os2 += "perl-module-extutils-mm-unix" | 80 | RDEPENDS_perl-module-extutils-mm-os2 += "perl-module-extutils-mm-unix" |
| 81 | RDEPENDS_perl-module-extutils-mm += "perl-module-extutils-liblist" | ||
| 82 | RDEPENDS_perl-module-extutils-mm += "perl-module-extutils-makemaker" | ||
| 79 | RDEPENDS_perl-module-extutils-mm-qnx += "perl-module-extutils-mm-unix" | 83 | RDEPENDS_perl-module-extutils-mm-qnx += "perl-module-extutils-mm-unix" |
| 80 | RDEPENDS_perl-module-extutils-mm-unix += "perl-module-extutils-mm-any" | 84 | RDEPENDS_perl-module-extutils-mm-unix += "perl-module-extutils-mm-any" |
| 81 | RDEPENDS_perl-module-extutils-mm-uwin += "perl-module-extutils-mm-unix" | 85 | RDEPENDS_perl-module-extutils-mm-uwin += "perl-module-extutils-mm-unix" |
| @@ -89,6 +93,7 @@ RDEPENDS_perl-module-extutils-mm-win95 += "perl-module-extutils-mm-win32" | |||
| 89 | RDEPENDS_perl-module-extutils-my += "perl-module-extutils-mm" | 93 | RDEPENDS_perl-module-extutils-my += "perl-module-extutils-mm" |
| 90 | RDEPENDS_perl-module-extutils-parsexs += "perl-module-exporter" | 94 | RDEPENDS_perl-module-extutils-parsexs += "perl-module-exporter" |
| 91 | RDEPENDS_perl-module-fcntl += "perl-module-exporter" | 95 | RDEPENDS_perl-module-fcntl += "perl-module-exporter" |
| 96 | RDEPENDS_perl-module-fcntl += "perl-module-xsloader" | ||
| 92 | RDEPENDS_perl-module-file-basename += "perl-module-exporter" | 97 | RDEPENDS_perl-module-file-basename += "perl-module-exporter" |
| 93 | RDEPENDS_perl-module-file-compare += "perl-module-exporter" | 98 | RDEPENDS_perl-module-file-compare += "perl-module-exporter" |
| 94 | RDEPENDS_perl-module-file-copy += "perl-module-exporter" | 99 | RDEPENDS_perl-module-file-copy += "perl-module-exporter" |
| @@ -96,6 +101,8 @@ RDEPENDS_perl-module-file-find += "perl-module-cwd" | |||
| 96 | RDEPENDS_perl-module-file-find += "perl-module-exporter" | 101 | RDEPENDS_perl-module-file-find += "perl-module-exporter" |
| 97 | RDEPENDS_perl-module-file-find += "perl-module-file-basename" | 102 | RDEPENDS_perl-module-file-find += "perl-module-file-basename" |
| 98 | RDEPENDS_perl-module-file-find += "perl-module-file-spec" | 103 | RDEPENDS_perl-module-file-find += "perl-module-file-spec" |
| 104 | RDEPENDS_perl-module-file-glob += "perl-module-xsloader" | ||
| 105 | RDEPENDS_perl-module-filehandle += "perl-module-io-file" | ||
| 99 | RDEPENDS_perl-module-file-spec-cygwin += "perl-module-file-spec-unix" | 106 | RDEPENDS_perl-module-file-spec-cygwin += "perl-module-file-spec-unix" |
| 100 | RDEPENDS_perl-module-file-spec-epoc += "perl-module-file-spec-unix" | 107 | RDEPENDS_perl-module-file-spec-epoc += "perl-module-file-spec-unix" |
| 101 | RDEPENDS_perl-module-file-spec-functions += "perl-module-exporter" | 108 | RDEPENDS_perl-module-file-spec-functions += "perl-module-exporter" |
| @@ -104,27 +111,29 @@ RDEPENDS_perl-module-file-spec-os2 += "perl-module-file-spec-unix" | |||
| 104 | RDEPENDS_perl-module-file-spec-vms += "perl-module-file-spec-unix" | 111 | RDEPENDS_perl-module-file-spec-vms += "perl-module-file-spec-unix" |
| 105 | RDEPENDS_perl-module-file-spec-win32 += "perl-module-file-spec-unix" | 112 | RDEPENDS_perl-module-file-spec-win32 += "perl-module-file-spec-unix" |
| 106 | RDEPENDS_perl-module-file-temp += "perl-module-symbol" | 113 | RDEPENDS_perl-module-file-temp += "perl-module-symbol" |
| 107 | RDEPENDS_perl-module-filehandle += "perl-module-io-file" | ||
| 108 | RDEPENDS_perl-module-filter-util-call += "perl-module-dynaloader" | 114 | RDEPENDS_perl-module-filter-util-call += "perl-module-dynaloader" |
| 109 | RDEPENDS_perl-module-filter-util-call += "perl-module-exporter" | 115 | RDEPENDS_perl-module-filter-util-call += "perl-module-exporter" |
| 110 | RDEPENDS_perl-module-findbin += "perl-module-exporter" | 116 | RDEPENDS_perl-module-findbin += "perl-module-exporter" |
| 117 | RDEPENDS_perl-module-gdbm-file += "perl-module-carp" | ||
| 118 | RDEPENDS_perl-module-gdbm-file += "perl-module-exporter" | ||
| 119 | RDEPENDS_perl-module-gdbm-file += "perl-module-tie-hash" | ||
| 120 | RDEPENDS_perl-module-gdbm-file += "perl-module-xsloader" | ||
| 111 | RDEPENDS_perl-module-getopt-std += "perl-module-exporter" | 121 | RDEPENDS_perl-module-getopt-std += "perl-module-exporter" |
| 112 | RDEPENDS_perl-module-hash-util += "perl-module-dynaloader" | ||
| 113 | RDEPENDS_perl-module-hash-util += "perl-module-exporter" | ||
| 114 | RDEPENDS_perl-module-hash-util-fieldhash += "perl-module-exporter" | 122 | RDEPENDS_perl-module-hash-util-fieldhash += "perl-module-exporter" |
| 115 | RDEPENDS_perl-module-i18n-collate += "perl-module-exporter" | 123 | RDEPENDS_perl-module-hash-util += "perl-module-exporter" |
| 116 | RDEPENDS_perl-module-i18n-langinfo += "perl-module-dynaloader" | 124 | RDEPENDS_perl-module-hash-util += "perl-module-xsloader" |
| 117 | RDEPENDS_perl-module-i18n-langinfo += "perl-module-exporter" | 125 | RDEPENDS_perl-module-i18n-langinfo += "perl-module-exporter" |
| 126 | RDEPENDS_perl-module-i18n-langinfo += "perl-module-xsloader" | ||
| 118 | RDEPENDS_perl-module-i18n-langtags += "perl-module-exporter" | 127 | RDEPENDS_perl-module-i18n-langtags += "perl-module-exporter" |
| 119 | RDEPENDS_perl-module-inc-latest += "perl-module-inc-latest-private" | 128 | RDEPENDS_perl-module-inc-latest += "perl-module-inc-latest-private" |
| 120 | RDEPENDS_perl-module-io-compress-base-common += "perl-module-exporter" | 129 | RDEPENDS_perl-module-io-compress-base-common += "perl-module-exporter" |
| 121 | RDEPENDS_perl-module-io-compress-bzip2 += "perl-module-exporter " | 130 | RDEPENDS_perl-module-io-compress-bzip2 += "perl-module-exporter " |
| 122 | RDEPENDS_perl-module-io-compress-deflate += "perl-module-exporter " | 131 | RDEPENDS_perl-module-io-compress-deflate += "perl-module-exporter " |
| 123 | RDEPENDS_perl-module-io-compress-gzip += "perl-module-exporter " | ||
| 124 | RDEPENDS_perl-module-io-compress-gzip-constants += "perl-module-exporter" | 132 | RDEPENDS_perl-module-io-compress-gzip-constants += "perl-module-exporter" |
| 133 | RDEPENDS_perl-module-io-compress-gzip += "perl-module-exporter " | ||
| 125 | RDEPENDS_perl-module-io-compress-rawdeflate += "perl-module-exporter " | 134 | RDEPENDS_perl-module-io-compress-rawdeflate += "perl-module-exporter " |
| 126 | RDEPENDS_perl-module-io-compress-zip += "perl-module-exporter " | ||
| 127 | RDEPENDS_perl-module-io-compress-zip-constants += "perl-module-exporter" | 135 | RDEPENDS_perl-module-io-compress-zip-constants += "perl-module-exporter" |
| 136 | RDEPENDS_perl-module-io-compress-zip += "perl-module-exporter " | ||
| 128 | RDEPENDS_perl-module-io-compress-zlib-constants += "perl-module-exporter" | 137 | RDEPENDS_perl-module-io-compress-zlib-constants += "perl-module-exporter" |
| 129 | RDEPENDS_perl-module-io-file += "perl-module-exporter" | 138 | RDEPENDS_perl-module-io-file += "perl-module-exporter" |
| 130 | RDEPENDS_perl-module-io-handle += "perl-module-exporter" | 139 | RDEPENDS_perl-module-io-handle += "perl-module-exporter" |
| @@ -152,6 +161,7 @@ RDEPENDS_perl-module-locale-currency += "perl-module-exporter" | |||
| 152 | RDEPENDS_perl-module-locale-language += "perl-module-exporter" | 161 | RDEPENDS_perl-module-locale-language += "perl-module-exporter" |
| 153 | RDEPENDS_perl-module-locale-script += "perl-module-exporter" | 162 | RDEPENDS_perl-module-locale-script += "perl-module-exporter" |
| 154 | RDEPENDS_perl-module-math-bigfloat += "perl-module-exporter" | 163 | RDEPENDS_perl-module-math-bigfloat += "perl-module-exporter" |
| 164 | RDEPENDS_perl-module-math-bigint-fastcalc += "perl-module-xsloader" | ||
| 155 | RDEPENDS_perl-module-math-complex += "perl-module-exporter" | 165 | RDEPENDS_perl-module-math-complex += "perl-module-exporter" |
| 156 | RDEPENDS_perl-module-math-trig += "perl-module-exporter" | 166 | RDEPENDS_perl-module-math-trig += "perl-module-exporter" |
| 157 | RDEPENDS_perl-module-mime-base64 += "perl-module-exporter" | 167 | RDEPENDS_perl-module-mime-base64 += "perl-module-exporter" |
| @@ -168,30 +178,33 @@ RDEPENDS_perl-module-net-ftp-l += "perl-module-net-ftp-i" | |||
| 168 | RDEPENDS_perl-module-net-ping += "perl-module-exporter" | 178 | RDEPENDS_perl-module-net-ping += "perl-module-exporter" |
| 169 | RDEPENDS_perl-module-net-time += "perl-module-exporter" | 179 | RDEPENDS_perl-module-net-time += "perl-module-exporter" |
| 170 | RDEPENDS_perl-module-object-accessor += "perl-module-overload" | 180 | RDEPENDS_perl-module-object-accessor += "perl-module-overload" |
| 181 | RDEPENDS_perl-module-perlio-encoding += "perl-module-xsloader" | ||
| 182 | RDEPENDS_perl-module-perlio-scalar += "perl-module-xsloader" | ||
| 183 | RDEPENDS_perl-module-perlio-via += "perl-module-xsloader" | ||
| 171 | RDEPENDS_perl-module-pod-escapes += "perl-module-exporter" | 184 | RDEPENDS_perl-module-pod-escapes += "perl-module-exporter" |
| 172 | RDEPENDS_perl-module-pod-functions += "perl-module-exporter" | 185 | RDEPENDS_perl-module-pod-functions += "perl-module-exporter" |
| 173 | RDEPENDS_perl-module-pod-html += "perl-module-exporter" | ||
| 174 | RDEPENDS_perl-module-pod-latex += "perl-module-pod-parseutils" | 186 | RDEPENDS_perl-module-pod-latex += "perl-module-pod-parseutils" |
| 175 | RDEPENDS_perl-module-pod-simple-transcodesmart += "perl-module-encode" | 187 | RDEPENDS_perl-module-pod-simple-transcodesmart += "perl-module-encode" |
| 176 | RDEPENDS_perl-module-pod-usage += "perl-module-pod-select" | 188 | RDEPENDS_perl-module-pod-usage += "perl-module-pod-select" |
| 177 | RDEPENDS_perl-module-posix += "perl-module-exporter" | 189 | RDEPENDS_perl-module-posix += "perl-module-exporter" |
| 190 | RDEPENDS_perl-module-posix += "perl-module-xsloader" | ||
| 178 | RDEPENDS_perl-module-safe += "perl-module-utf8" | 191 | RDEPENDS_perl-module-safe += "perl-module-utf8" |
| 179 | RDEPENDS_perl-module-scalar-util += "perl-module-exporter" | 192 | RDEPENDS_perl-module-scalar-util += "perl-module-exporter" |
| 180 | RDEPENDS_perl-module-scalar-util += "perl-module-list-util" | 193 | RDEPENDS_perl-module-scalar-util += "perl-module-list-util" |
| 181 | RDEPENDS_perl-module-scalar-util-pp += "perl-module-exporter" | 194 | RDEPENDS_perl-module-scalar-util-pp += "perl-module-exporter" |
| 182 | RDEPENDS_perl-module-sdbm-file += "perl-module-tie-hash" | 195 | RDEPENDS_perl-module-sdbm-file += "perl-module-tie-hash" |
| 196 | RDEPENDS_perl-module-sdbm-file += "perl-module-xsloader" | ||
| 183 | RDEPENDS_perl-module-search-dict += "perl-module-exporter" | 197 | RDEPENDS_perl-module-search-dict += "perl-module-exporter" |
| 184 | RDEPENDS_perl-module-socket += "perl-module-exporter" | 198 | RDEPENDS_perl-module-socket += "perl-module-exporter" |
| 185 | RDEPENDS_perl-module-storable += "perl-module-carp" | 199 | RDEPENDS_perl-module-socket += "perl-module-xsloader" |
| 186 | RDEPENDS_perl-module-storable += "perl-module-dynaloader" | ||
| 187 | RDEPENDS_perl-module-storable += "perl-module-exporter" | 200 | RDEPENDS_perl-module-storable += "perl-module-exporter" |
| 201 | RDEPENDS_perl-module-storable += "perl-module-xsloader" | ||
| 188 | RDEPENDS_perl-module-symbol += "perl-module-exporter" | 202 | RDEPENDS_perl-module-symbol += "perl-module-exporter" |
| 189 | RDEPENDS_perl-module-sys-hostname += "perl-module-autoloader" | ||
| 190 | RDEPENDS_perl-module-sys-hostname += "perl-module-exporter" | 203 | RDEPENDS_perl-module-sys-hostname += "perl-module-exporter" |
| 191 | RDEPENDS_perl-module-term-complete += "perl-module-exporter" | 204 | RDEPENDS_perl-module-term-complete += "perl-module-exporter" |
| 192 | RDEPENDS_perl-module-test += "perl-module-exporter" | ||
| 193 | RDEPENDS_perl-module-test-builder-module += "perl-module-exporter" | 205 | RDEPENDS_perl-module-test-builder-module += "perl-module-exporter" |
| 194 | RDEPENDS_perl-module-test-builder-tester-color += "perl-module-test-builder-tester" | 206 | RDEPENDS_perl-module-test-builder-tester-color += "perl-module-test-builder-tester" |
| 207 | RDEPENDS_perl-module-test += "perl-module-exporter" | ||
| 195 | RDEPENDS_perl-module-text-abbrev += "perl-module-exporter" | 208 | RDEPENDS_perl-module-text-abbrev += "perl-module-exporter" |
| 196 | RDEPENDS_perl-module-text-tabs += "perl-module-exporter" | 209 | RDEPENDS_perl-module-text-tabs += "perl-module-exporter" |
| 197 | RDEPENDS_perl-module-text-wrap += "perl-module-exporter" | 210 | RDEPENDS_perl-module-text-wrap += "perl-module-exporter" |
| @@ -203,6 +216,7 @@ RDEPENDS_perl-module-time-hires += "perl-module-exporter" | |||
| 203 | RDEPENDS_perl-module-time-local += "perl-module-exporter" | 216 | RDEPENDS_perl-module-time-local += "perl-module-exporter" |
| 204 | RDEPENDS_perl-module-time-piece += "perl-module-dynaloader" | 217 | RDEPENDS_perl-module-time-piece += "perl-module-dynaloader" |
| 205 | RDEPENDS_perl-module-time-piece += "perl-module-exporter" | 218 | RDEPENDS_perl-module-time-piece += "perl-module-exporter" |
| 219 | RDEPENDS_perl-module-unicode-collate += "perl-module-dynaloader" | ||
| 206 | RDEPENDS_perl-module-unicode-normalize += "perl-module-dynaloader" | 220 | RDEPENDS_perl-module-unicode-normalize += "perl-module-dynaloader" |
| 207 | RDEPENDS_perl-module-unicode-normalize += "perl-module-exporter" | 221 | RDEPENDS_perl-module-unicode-normalize += "perl-module-exporter" |
| 208 | RDEPENDS_perl-module-unicode-ucd += "perl-module-exporter" | 222 | RDEPENDS_perl-module-unicode-ucd += "perl-module-exporter" |
diff --git a/meta/recipes-devtools/perl/perl-rprovides_5.12.3.inc b/meta/recipes-devtools/perl/perl-rprovides_5.14.2.inc index 9a648dbf2f..9a648dbf2f 100644 --- a/meta/recipes-devtools/perl/perl-rprovides_5.12.3.inc +++ b/meta/recipes-devtools/perl/perl-rprovides_5.14.2.inc | |||
diff --git a/meta/recipes-devtools/perl/perl_5.12.3.bb b/meta/recipes-devtools/perl/perl_5.14.2.bb index e4769a4235..788962638d 100644 --- a/meta/recipes-devtools/perl/perl_5.12.3.bb +++ b/meta/recipes-devtools/perl/perl_5.14.2.bb | |||
| @@ -7,23 +7,25 @@ LIC_FILES_CHKSUM = "file://Copying;md5=2b4c6ffbcfcbdee469f02565f253d81a \ | |||
| 7 | # We need gnugrep (for -I) | 7 | # We need gnugrep (for -I) |
| 8 | DEPENDS = "virtual/db grep-native" | 8 | DEPENDS = "virtual/db grep-native" |
| 9 | DEPENDS += "gdbm zlib" | 9 | DEPENDS += "gdbm zlib" |
| 10 | PR = "r5" | 10 | PR = "r0" |
| 11 | 11 | ||
| 12 | # 5.10.1 has Module::Build built-in | 12 | # 5.10.1 has Module::Build built-in |
| 13 | PROVIDES += "libmodule-build-perl" | 13 | PROVIDES += "libmodule-build-perl" |
| 14 | 14 | ||
| 15 | # Major part of version | ||
| 16 | #PVM = "5.13" | ||
| 17 | |||
| 18 | SRC_URI = "http://www.cpan.org/src/5.0/perl-${PV}.tar.gz \ | 15 | SRC_URI = "http://www.cpan.org/src/5.0/perl-${PV}.tar.gz \ |
| 19 | file://debian/arm_thread_stress_timeout.diff \ | 16 | file://debian/arm_thread_stress_timeout.diff \ |
| 20 | file://debian/cpan_config_path.diff \ | ||
| 21 | file://debian/cpan_definstalldirs.diff \ | 17 | file://debian/cpan_definstalldirs.diff \ |
| 22 | file://debian/db_file_ver.diff \ | 18 | file://debian/db_file_ver.diff \ |
| 23 | file://debian/doc_info.diff \ | 19 | file://debian/doc_info.diff \ |
| 24 | file://debian/enc2xs_inc.diff \ | 20 | file://debian/enc2xs_inc.diff \ |
| 25 | file://debian/errno_ver.diff \ | 21 | file://debian/errno_ver.diff \ |
| 26 | file://debian/extutils_hacks.diff \ | 22 | file://debian/libperl_embed_doc.diff \ |
| 23 | file://debian/fixes/respect_umask.diff \ | ||
| 24 | file://debian/writable_site_dirs.diff \ | ||
| 25 | file://debian/extutils_set_libperl_path.diff \ | ||
| 26 | file://debian/no_packlist_perllocal.diff \ | ||
| 27 | file://debian/prefix_changes.diff \ | ||
| 28 | file://debian/fakeroot.diff \ | ||
| 27 | file://debian/instmodsh_doc.diff \ | 29 | file://debian/instmodsh_doc.diff \ |
| 28 | file://debian/ld_run_path.diff \ | 30 | file://debian/ld_run_path.diff \ |
| 29 | file://debian/libnet_config_path.diff \ | 31 | file://debian/libnet_config_path.diff \ |
| @@ -32,31 +34,26 @@ SRC_URI = "http://www.cpan.org/src/5.0/perl-${PV}.tar.gz \ | |||
| 32 | file://debian/module_build_man_extensions.diff \ | 34 | file://debian/module_build_man_extensions.diff \ |
| 33 | file://debian/prune_libs.diff \ | 35 | file://debian/prune_libs.diff \ |
| 34 | file://debian/fixes/net_smtp_docs.diff \ | 36 | file://debian/fixes/net_smtp_docs.diff \ |
| 35 | file://debian/fixes/processPL.diff \ | ||
| 36 | file://debian/perlivp.diff \ | 37 | file://debian/perlivp.diff \ |
| 37 | file://debian/disable-zlib-bundling.diff \ | 38 | file://debian/disable-zlib-bundling.diff \ |
| 38 | file://debian/cpanplus_definstalldirs.diff \ | 39 | file://debian/cpanplus_definstalldirs.diff \ |
| 39 | file://debian/cpanplus_config_path.diff \ | 40 | file://debian/cpanplus_config_path.diff \ |
| 40 | file://debian/fixes/autodie-flock.diff \ | ||
| 41 | file://debian/devel-ppport-ia64-optim.diff \ | ||
| 42 | file://debian/fixes/cpanplus-without-home.diff \ | ||
| 43 | file://debian/arm_optim.diff \ | ||
| 44 | file://debian/deprecate-with-apt.diff \ | 41 | file://debian/deprecate-with-apt.diff \ |
| 45 | file://debian/fixes/hurd-ccflags.diff \ | 42 | file://debian/fixes/hurd-ccflags.diff \ |
| 46 | file://debian/squelch-locale-warnings.diff \ | 43 | file://debian/squelch-locale-warnings.diff \ |
| 47 | file://debian/fixes/lc-numeric-docs.diff \ | 44 | file://debian/skip-upstream-git-tests.diff \ |
| 48 | file://debian/fixes/lc-numeric-sprintf.diff \ | 45 | file://debian/fixes/extutils-cbuilder-cflags.diff \ |
| 49 | file://debian/fixes/concat-stack-corruption.diff \ | 46 | file://debian/fixes/module-build-home-directory.diff \ |
| 50 | file://debian/fixes/h2ph-gcc-4.5.diff \ | 47 | file://debian/fixes/h2ph-multiarch.diff \ |
| 51 | file://debian/patchlevel \ | 48 | file://debian/fixes/index-tainting.diff \ |
| 49 | file://debian/skip-kfreebsd-crash.diff \ | ||
| 50 | file://debian/fixes/document_makemaker_ccflags.diff \ | ||
| 51 | file://debian/fixes/sys-syslog-socket-timeout-kfreebsd.patch \ | ||
| 52 | file://debian/fixes/hurd-hints.diff \ | ||
| 53 | file://debian/fixes/pod_fixes.diff \ | ||
| 54 | file://debian/find_html2text.diff \ | ||
| 52 | \ | 55 | \ |
| 53 | file://Makefile.patch \ | 56 | file://Makefile.patch \ |
| 54 | file://parallel_build_fix_1.patch \ | ||
| 55 | file://parallel_build_fix_2.patch \ | ||
| 56 | file://parallel_build_fix_3.patch \ | ||
| 57 | file://parallel_build_fix_4.patch \ | ||
| 58 | file://parallel_build_fix_5.patch \ | ||
| 59 | file://parallel_build_fix_6.patch \ | ||
| 60 | file://Makefile.SH.patch \ | 57 | file://Makefile.SH.patch \ |
| 61 | file://installperl.patch \ | 58 | file://installperl.patch \ |
| 62 | file://perl-dynloader.patch \ | 59 | file://perl-dynloader.patch \ |
| @@ -78,8 +75,8 @@ SRC_URI = "http://www.cpan.org/src/5.0/perl-${PV}.tar.gz \ | |||
| 78 | file://config.sh-64-be" | 75 | file://config.sh-64-be" |
| 79 | # file://debian/fakeroot.diff | 76 | # file://debian/fakeroot.diff |
| 80 | 77 | ||
| 81 | SRC_URI[md5sum] = "29975a69dce54e47fcd6331c085c6c99" | 78 | SRC_URI[md5sum] = "3306fbaf976dcebdcd49b2ac0be00eb9" |
| 82 | SRC_URI[sha256sum] = "5678bfd5c2cd59253a26171bf3e681235433b00c730eea8a8046e1b225c11d2f" | 79 | SRC_URI[sha256sum] = "6488359573bd7d41761bf935f66f827dc220fb3df961ef9b775d51fbd66548d3" |
| 83 | 80 | ||
| 84 | inherit perlnative siteinfo | 81 | inherit perlnative siteinfo |
| 85 | 82 | ||
| @@ -220,8 +217,6 @@ perl_package_preprocess () { | |||
| 220 | -e "s,${STAGING_BINDIR_NATIVE}/,,g" \ | 217 | -e "s,${STAGING_BINDIR_NATIVE}/,,g" \ |
| 221 | ${PKGD}${bindir}/h2xs \ | 218 | ${PKGD}${bindir}/h2xs \ |
| 222 | ${PKGD}${bindir}/h2ph \ | 219 | ${PKGD}${bindir}/h2ph \ |
| 223 | ${PKGD}${bindir}/pod2html \ | ||
| 224 | ${PKGD}${bindir}/pod2latex \ | ||
| 225 | ${PKGD}${bindir}/pod2man \ | 220 | ${PKGD}${bindir}/pod2man \ |
| 226 | ${PKGD}${bindir}/pod2text \ | 221 | ${PKGD}${bindir}/pod2text \ |
| 227 | ${PKGD}${bindir}/pod2usage \ | 222 | ${PKGD}${bindir}/pod2usage \ |
