platform/upstream/perl.git
10 years agoRename an internal flag
Karl Williamson [Fri, 24 Jan 2014 17:56:35 +0000 (10:56 -0700)]
Rename an internal flag

The UTF8 in the name is kind of misleading, and would be more misleading
after future commits make UTF8 locales special.

10 years agoregcomp.c: Avoid calling heavy duty functions when possible
Karl Williamson [Fri, 24 Jan 2014 03:09:43 +0000 (20:09 -0700)]
regcomp.c: Avoid calling heavy duty functions when possible

This code calls the general purpose functions to fold and convert to
utf8.  These can be avoided for many frequently used code points.

10 years agoregcomp.c: Nit in comments
Karl Williamson [Fri, 24 Jan 2014 02:56:51 +0000 (19:56 -0700)]
regcomp.c: Nit in comments

10 years agoregcomp.c: Swap two else clauses for clarity.
Karl Williamson [Fri, 24 Jan 2014 02:50:12 +0000 (19:50 -0700)]
regcomp.c: Swap two else clauses for clarity.

This makes one clause mostly positive tests, instead of mostly negative
tests; using positives is easier to understand.

10 years agoregen pod issues
Father Chrysostomos [Tue, 28 Jan 2014 04:14:00 +0000 (20:14 -0800)]
regen pod issues

10 years agoIncrease $B::Deparse::VERSION to 1.25
Father Chrysostomos [Tue, 28 Jan 2014 04:09:19 +0000 (20:09 -0800)]
Increase $B::Deparse::VERSION to 1.25

10 years ago[perl #121050] Teach B::Deparse about prototype whitespace
Father Chrysostomos [Tue, 28 Jan 2014 02:07:45 +0000 (18:07 -0800)]
[perl #121050] Teach B::Deparse about prototype whitespace

It has been hanging or unnecessarily using & since commit d16269d835
caused spaces to be preserved in the prototype and stripped when
applied during sub call compilation.  That commit did not update
B::Deparse accordingly.

10 years agoPATCH: Bump Locale-Codes from 3.28 to 3.29
Sullivan Beck [Mon, 27 Jan 2014 20:07:39 +0000 (15:07 -0500)]
PATCH: Bump Locale-Codes from 3.28 to 3.29

I just released Locale-Codes-3.29 which contains the core modules
Locale::Country, Locale::Language, and Locale::Currency.  The patch is
attached here.

====
Background:

The core modules Locale::Country, Locale::Language, and Locale::Currency
(all part of the Locale-Codes distribution) should be updated on a
regular basis. They contain "codes" from various internet standards
which change over time.

I plan on releasing new versions at 4 times a year to keep the codes
up-to-date. At this point, I'm not planning on any significant code
changes (other than bug fixes), so the only significant changes between
releases should be to update the codes.

Signed-off-by: Chris 'BinGOs' Williams <chris@bingosnet.co.uk>
10 years agoTaint more operands with case changes
Karl Williamson [Mon, 27 Jan 2014 17:42:28 +0000 (10:42 -0700)]
Taint more operands with case changes

 The documentation says that Perl taints certain operations when subject
 to locale rules, such as lc() and ucfirst().  Prior to this commit
 there were exceptions when the operand to these functions contained no
 characters whose case change actually varied depending on the locale,
 for example the empty string or above-Latin1 code points.  Changing to
 conform to the documentation simplifies the core code, and yields more
 consistent results.

10 years agofold_grind.t: Use LC_CTYPE, not LC_ALL
Karl Williamson [Fri, 24 Jan 2014 21:35:37 +0000 (14:35 -0700)]
fold_grind.t: Use LC_CTYPE, not LC_ALL

We are testing here just LC_CTYPE, so is better to use just that
category.

10 years agoAvoid unnecessary malformed checking
Karl Williamson [Fri, 24 Jan 2014 18:42:19 +0000 (11:42 -0700)]
Avoid unnecessary malformed checking

regen/regcharclass.pl can create macros for use where we need to worry
about the possibility of malformed UTF-8, and for where we don't.  In
the case of looking at regex patterns, the Perl core has complete
control over generating them, and hence isn't generally going to create
too short a buffer;  if it does, it's a bug that will show up and get
fixed.  This commit changes to generate and use the faster macros that
don't do bounds checking.

10 years agoregen/regcharclass.pl: Don't test UV >= 0
Karl Williamson [Sat, 25 Jan 2014 23:53:24 +0000 (16:53 -0700)]
regen/regcharclass.pl: Don't test UV >= 0

An unsigned must always be >= 0, and generating a test for that can lead
to a compiler warning, even if it gets optimized out.  The input to the
macros generated by this are supposed to be UV.  This commit suppresses
any >= 0 test.

10 years agoregen/regcharclass.pl: Fix warning
Karl Williamson [Fri, 24 Jan 2014 04:46:17 +0000 (21:46 -0700)]
regen/regcharclass.pl: Fix warning

wrap() is already defined by the regen infrastructure; no need to do so
again, and get warning if we persist in doing so.

10 years agoMove an inversion list generation to mktables
Karl Williamson [Fri, 24 Jan 2014 03:34:15 +0000 (20:34 -0700)]
Move an inversion list generation to mktables

Prior to this patch, this was in regen/mk_invlists.pl, but future
commits will want it to also be used by the header generated by
regen/regcharclass.pl, so use a common source so the logic doesn't have
to be duplicated.

10 years agoRegen porting/known_pod_issues.dat
Karl Williamson [Mon, 27 Jan 2014 17:28:46 +0000 (10:28 -0700)]
Regen porting/known_pod_issues.dat

This is to acknowledge the too-long verbatim lines in perlandroid,
which look to me to be better left long

10 years agoMove more locale code to t/loc_tools.pl
Karl Williamson [Fri, 24 Jan 2014 20:58:13 +0000 (13:58 -0700)]
Move more locale code to t/loc_tools.pl

This trivial code to determine if a locale is a utf8 one or not is
currently used in just one place, but future commits will use it in
others, and will make it non-trivial, and non-obvious.

10 years agoAndroid support
Brian Fraser [Sun, 26 Jan 2014 17:44:36 +0000 (14:44 -0300)]
Android support

This merge introduces Android support for Perl, for all three currently
available architectures (ARM, MIPS, x86), either through native builds
or cross-compilation (from x86_64 and x86 hosts).

10 years agoperldelta for Android
Brian Fraser [Sun, 26 Jan 2014 04:17:03 +0000 (01:17 -0300)]
perldelta for Android

Plus an entry in perlport

10 years agoAndroid hints: run-adb-shell was mishandling '\0'
Brian Fraser [Sun, 26 Jan 2014 04:12:45 +0000 (01:12 -0300)]
Android hints: run-adb-shell was mishandling '\0'

That's literally '\0', all four characters, not a null.  Previously, due to
mistakenly passing things through the shell twice, it turned '\0' into an
actual null, and that screwed up the test for fflush(NULL)

10 years agoConfigure: Fix the fflush(NULL) test in cross builds
Brian Fraser [Sun, 26 Jan 2014 04:06:40 +0000 (01:06 -0300)]
Configure: Fix the fflush(NULL) test in cross builds

Second attempt at this. This is less portable than the previous
version, since it assumes that the target system will have a cat, but unlike
the previous version this now actually works.

10 years agoREADME.android: minor wording fixups
Brian Fraser [Sat, 25 Jan 2014 04:54:07 +0000 (05:54 +0100)]
README.android: minor wording fixups

10 years agoreentr.c: Handle systems without getpwent
Brian Fraser [Wed, 22 Jan 2014 13:17:53 +0000 (10:17 -0300)]
reentr.c: Handle systems without getpwent

Namely, Android.

10 years agoExtUtils::ParseXS: Fix tests for native android builds
Brian Fraser [Tue, 21 Jan 2014 17:09:58 +0000 (14:09 -0300)]
ExtUtils::ParseXS: Fix tests for native android builds

10 years agoAUTHORS and MANIFEST for the CBuilder Android patch
Brian Fraser [Tue, 21 Jan 2014 18:22:58 +0000 (15:22 -0300)]
AUTHORS and MANIFEST for the CBuilder Android patch

10 years agoUp the version of ExtUtils::CBuilder
Brian Fraser [Sun, 26 Jan 2014 16:07:49 +0000 (13:07 -0300)]
Up the version of ExtUtils::CBuilder

10 years agoCBuilder, android: Fix the useshrplib check
Brian Fraser [Tue, 21 Jan 2014 16:15:56 +0000 (13:15 -0300)]
CBuilder, android: Fix the useshrplib check

10 years agoExtUtils::CBuilder: Android with useshrplib needs -lperl
Piotr Roszatycki [Wed, 15 Jan 2014 22:34:57 +0000 (23:34 +0100)]
ExtUtils::CBuilder: Android with useshrplib needs -lperl

10 years agopod fixups on README.android
Brian Fraser [Tue, 21 Jan 2014 18:23:12 +0000 (15:23 -0300)]
pod fixups on README.android

10 years agoREADME.android: Notes about cross-compiling from a x86 host
Brian Fraser [Mon, 20 Jan 2014 15:54:04 +0000 (12:54 -0300)]
README.android: Notes about cross-compiling from a x86 host

10 years agoREADME.android: Update for native builds
Brian Fraser [Sun, 19 Jan 2014 19:17:45 +0000 (16:17 -0300)]
README.android: Update for native builds

10 years agoAdded README.android
Brian Fraser [Sat, 9 Nov 2013 19:31:34 +0000 (16:31 -0300)]
Added README.android

10 years agoCwd.pm: Handle native android builds better
Brian Fraser [Mon, 13 Jan 2014 05:31:18 +0000 (02:31 -0300)]
Cwd.pm: Handle native android builds better

10 years agoext/POSIX/t/sysconf.t: Skip testing pathconf with _PC_LINK_MAX on android
Brian Fraser [Fri, 26 Apr 2013 07:16:19 +0000 (04:16 -0300)]
ext/POSIX/t/sysconf.t: Skip testing pathconf with _PC_LINK_MAX on android

10 years agoIO::Socket::INET: Handle getprotobyn{ame,umber} not being available
Brian Fraser [Mon, 29 Apr 2013 04:08:13 +0000 (01:08 -0300)]
IO::Socket::INET: Handle getprotobyn{ame,umber} not being available

10 years agoNet::Ping: Handle getprotobyn{ame,umber} not being available
Brian Fraser [Mon, 29 Apr 2013 03:23:56 +0000 (00:23 -0300)]
Net::Ping: Handle getprotobyn{ame,umber} not being available

10 years agodist/IO/t/io_pipe.t: Work around android only having an inbuilt echo
Brian Fraser [Fri, 26 Apr 2013 01:57:01 +0000 (22:57 -0300)]
dist/IO/t/io_pipe.t: Work around android only having an inbuilt echo

10 years agot/op/sigdispatch.t: SKIP, not TODO
Brian Fraser [Tue, 12 Nov 2013 06:19:17 +0000 (03:19 -0300)]
t/op/sigdispatch.t: SKIP, not TODO

10 years agot/io/fs.t: Handle Android's pwd being a shell builtin
Brian Fraser [Wed, 13 Nov 2013 02:59:15 +0000 (23:59 -0300)]
t/io/fs.t: Handle Android's pwd being a shell builtin

10 years agot/op/filetest.t: On Android, don't try checking if ln exists with which
Brian Fraser [Mon, 12 Aug 2013 00:00:26 +0000 (21:00 -0300)]
t/op/filetest.t: On Android, don't try checking if ln exists with which

Assume that it does -- even the most barebone of toolbox binaries
provides ln, but not which.

10 years agot/op/sigdispatch.t: Increase timeout to avoid issues on slow processors
Brian Fraser [Thu, 25 Apr 2013 16:46:09 +0000 (13:46 -0300)]
t/op/sigdispatch.t: Increase timeout to avoid issues on slow processors

10 years agot/op/stat.t: use 'ls -l' on android, even if d_readlink is defined
Brian Fraser [Wed, 24 Apr 2013 22:58:33 +0000 (19:58 -0300)]
t/op/stat.t: use 'ls -l' on android, even if d_readlink is defined

10 years agot/op/fork.t: Up the sleep time in a test to avoid timing issues
Brian Fraser [Wed, 24 Apr 2013 22:08:21 +0000 (19:08 -0300)]
t/op/fork.t: Up the sleep time in a test to avoid timing issues

10 years agot/op/fork.t: Work around android only having an inbuilt echo
Brian Fraser [Wed, 24 Apr 2013 22:07:44 +0000 (19:07 -0300)]
t/op/fork.t: Work around android only having an inbuilt echo

10 years agot/op/magic.t: Skip tests that use env on Android
Brian Fraser [Tue, 12 Nov 2013 06:40:44 +0000 (03:40 -0300)]
t/op/magic.t: Skip tests that use env on Android

10 years agot/op/magic.t: Work around android only having an inbuilt pwd
Brian Fraser [Wed, 24 Apr 2013 05:28:12 +0000 (02:28 -0300)]
t/op/magic.t: Work around android only having an inbuilt pwd

10 years agot/op/incfilter.t: Work around android only having an inbuilt echo
Brian Fraser [Wed, 24 Apr 2013 04:09:42 +0000 (01:09 -0300)]
t/op/incfilter.t: Work around android only having an inbuilt echo

10 years agot/op/sigdispatch.t: TODO tests that don't work on some Android builds
Jess Robinson [Fri, 19 Apr 2013 11:08:34 +0000 (12:08 +0100)]
t/op/sigdispatch.t: TODO tests that don't work on some Android builds

10 years agot/op/magic.t: TODO tests that don't work on some cross-compile builds
Jess Robinson [Fri, 19 Apr 2013 11:08:34 +0000 (12:08 +0100)]
t/op/magic.t: TODO tests that don't work on some cross-compile builds

10 years agot/op/sprintf.t: Add Android to the list of skips for %.0g
Jess Robinson [Fri, 19 Apr 2013 11:08:34 +0000 (12:08 +0100)]
t/op/sprintf.t: Add Android to the list of skips for %.0g

10 years agoAdjust fs test to try more ways of getting the CWD. Expire if we still didn't get it.
Jess Robinson [Fri, 19 Apr 2013 11:02:19 +0000 (12:02 +0100)]
Adjust fs test to try more ways of getting the CWD. Expire if we still didn't get it.

10 years agopod/perlport.pod: Note which functions are not available on Android
Brian Fraser [Sat, 18 May 2013 00:55:08 +0000 (21:55 -0300)]
pod/perlport.pod: Note which functions are not available on Android

10 years agoConfigure: If cross-compiling to linux, pick the proper hints file
Brian Fraser [Fri, 15 Nov 2013 06:39:02 +0000 (03:39 -0300)]
Configure: If cross-compiling to linux, pick the proper hints file

Something like arm-linux-gnueabihf -- which is what the raspberry pi
gets as its targetarch -- is really just plain Linux, so set osname
to that and load up the hints file.

10 years agoConfigure: added special osname checks for nto and android
Brian Fraser [Fri, 11 Oct 2013 19:55:08 +0000 (16:55 -0300)]
Configure: added special osname checks for nto and android

When cross-compiling, for android, anything matching *linux-android*
gets osname=linux-androideabi.  This is to allow compiling to
all three android variants (x86, arm, mips).
For QNX Neutrino, anything matching nto*|*-nto-* gets osname=nto. In
the future, that might change to 'qnx', but right now we don't want
it to pick up the hints file.
For anything else, keep the current behavior, which is to set osname
to the output of `echo $targetarch|sed 's,^[^-]*-,,'`

10 years agoAndroid hints: Set d_csh to undef in cross builds
Brian Fraser [Thu, 23 Jan 2014 22:41:22 +0000 (23:41 +0100)]
Android hints: Set d_csh to undef in cross builds

10 years agoAndroid hints: load the linux hints to get those defaults
Brian Fraser [Thu, 23 Jan 2014 14:13:34 +0000 (15:13 +0100)]
Android hints: load the linux hints to get those defaults

10 years agoAndroid hints: Clean up some files if cross-compiling with adb
Brian Fraser [Wed, 22 Jan 2014 19:45:10 +0000 (16:45 -0300)]
Android hints: Clean up some files if cross-compiling with adb

10 years agoAndroid hints: In native builds, add -L/system/lib to ldflags
Brian Fraser [Wed, 22 Jan 2014 11:23:00 +0000 (08:23 -0300)]
Android hints: In native builds, add -L/system/lib to ldflags

This is just a safety net against the linker being weird.

10 years agoConfigure, Android hints: Changes to allow native builds
Brian Fraser [Mon, 13 Jan 2014 02:56:47 +0000 (23:56 -0300)]
Configure, Android hints: Changes to allow native builds

10 years agoAndroid hints: When Configure finishes, turn $^O into 'android'
Brian Fraser [Mon, 13 Jan 2014 03:10:32 +0000 (00:10 -0300)]
Android hints: When Configure finishes, turn $^O into 'android'

During Configure, we want it to be linux-android, so that
it'll also go through all of the linux checks.

10 years agoAndroid hints: Add m to libswanted
Brian Fraser [Mon, 13 Jan 2014 00:10:11 +0000 (21:10 -0300)]
Android hints: Add m to libswanted

10 years agoAndroid hints: Set osvers to getprop ro.build.version.release
Brian Fraser [Sun, 12 Jan 2014 04:32:24 +0000 (01:32 -0300)]
Android hints: Set osvers to getprop ro.build.version.release

10 years agoMake compiling with adb work again
Brian Fraser [Fri, 25 Oct 2013 14:08:05 +0000 (11:08 -0300)]
Make compiling with adb work again

10 years agoAndroid hints: Only use adb if $targetrun is set to adb
Brian Fraser [Sat, 12 Oct 2013 02:53:46 +0000 (23:53 -0300)]
Android hints: Only use adb if $targetrun is set to adb

This loses us some DWIMnery, but allows cross-compiling to
android using ssh, which is much easier to set up than getting
the SDK.

10 years agoAndroid hints: Only set userelocatableinc if it doesn't have a value
Brian Fraser [Wed, 21 Aug 2013 03:38:14 +0000 (00:38 -0300)]
Android hints: Only set userelocatableinc if it doesn't have a value

Without this, Configure would've bailed out if trying to build a
-Duseshrplib perl.

10 years agohints/linux-androideabi.sh: If the host OS is darwin, set firstmakefile to GNUmakefile
Brian Fraser [Sun, 11 Aug 2013 21:43:17 +0000 (18:43 -0300)]
hints/linux-androideabi.sh: If the host OS is darwin, set firstmakefile to GNUmakefile

10 years agohints/linux-androideabi.sh: use $chmod instead of plain chmod
Brian Fraser [Sun, 11 Aug 2013 21:38:05 +0000 (18:38 -0300)]
hints/linux-androideabi.sh: use $chmod instead of plain chmod

10 years agohints/linux-androideabi.sh: use $cat instead of plain cat
Brian Fraser [Sun, 11 Aug 2013 21:37:35 +0000 (18:37 -0300)]
hints/linux-androideabi.sh: use $cat instead of plain cat

10 years agohints/linux-androideabi.sh: adb takes care of creating the target dir on the target
Brian Fraser [Sun, 11 Aug 2013 21:30:18 +0000 (18:30 -0300)]
hints/linux-androideabi.sh: adb takes care of creating the target dir on the target

10 years agohints/linux-androideabi.sh: sed might not understand "\r", use $tr instead
Brian Fraser [Sun, 11 Aug 2013 20:49:13 +0000 (17:49 -0300)]
hints/linux-androideabi.sh: sed might not understand "\r", use $tr instead

10 years agohints/linux-androideabi.sh: Rather than relaying on adb, save the exit status in...
Brian Fraser [Fri, 9 Aug 2013 09:39:49 +0000 (06:39 -0300)]
hints/linux-androideabi.sh: Rather than relaying on adb, save the exit status in a file and then copy it over

10 years agohints/linux-androideabi.sh: getservent_r() is a partial stub, mark it as undefined...
Brian Fraser [Sat, 18 May 2013 02:14:49 +0000 (23:14 -0300)]
hints/linux-androideabi.sh: getservent_r() is a partial stub, mark it as undefined to avoid issues with threads

10 years agoandroid hints: Always define d_libname_unique
Brian Fraser [Wed, 15 May 2013 12:09:58 +0000 (09:09 -0300)]
android hints: Always define d_libname_unique

10 years agoAndroid hints: Detect stub functions and mark them as undefined.
Brian Fraser [Sun, 28 Apr 2013 00:01:44 +0000 (21:01 -0300)]
Android hints: Detect stub functions and mark them as undefined.

Bionic implements several functions as stumps that simply warn
and return null, which leads to situations like this:

FIX ME! implement getprotobyname() bionic/libc/bionic/stubs.c:378

This commit introduces some probes for functions (getnetbyname,
getnetbyaddr, getmntent, getprotobyname, getprotobynumber, endpwent,
ttyname) that we use and are actually stubs in at least some
versions of Android.
If we find a stub, we pretend that the function is undefined, so
the above example becomes this:

Unsupported socket function "getprotobyname" called at -e line 1.

Note that this commit does not fix the modules that assume that
these functions are always available, so 'make test' still fails.

10 years agoCorrectly quote result from adb, otherwise multiline responses breal (eg signal_cmd)
Jess Robinson [Sat, 11 May 2013 13:37:39 +0000 (14:37 +0100)]
Correctly quote result from adb, otherwise multiline responses breal (eg signal_cmd)

10 years agoAndroid hints, run-ssh: Make sure that the stdout of commands run from Configure...
Jess Robinson [Mon, 29 Apr 2013 08:54:35 +0000 (09:54 +0100)]
Android hints, run-ssh: Make sure that the stdout of commands run from Configure and Makefile on remote hosts is transfered back correctly

10 years agoNo locales in Android, just set the lot to undef
Jess Robinson [Fri, 19 Apr 2013 11:18:46 +0000 (12:18 +0100)]
No locales in Android, just set the lot to undef

10 years agoAndroid hints, run-adb-shell: Handle the -env switch
Jess Robinson [Fri, 19 Apr 2013 11:00:14 +0000 (12:00 +0100)]
Android hints, run-adb-shell: Handle the -env switch

Currently, this is used during 'make test' to specify LD_LIBRARY_PATH

10 years agoAndroid hints: set targetsh to /system/bin/sh
Jess Robinson [Thu, 31 Jan 2013 14:15:17 +0000 (14:15 +0000)]
Android hints: set targetsh to /system/bin/sh

Android, for reasons best known to itself, doesn't have a "/bin/sh" it
has a "/system/bin/sh".  We need to run "/bin/sh" as $sh inside
./Configure on the host, but store a different path for use on the
actual Android system (eg by backticks, system etc, in SH_PATH).

The new variable is "targetsh" and defaults to "sh" unless changed by the hints file/Configure params.

10 years agoCreate a Perl with relocatable inc when building for Android.
Jess Robinson [Fri, 18 Jan 2013 18:55:02 +0000 (18:55 +0000)]
Create a Perl with relocatable inc when building for Android.

10 years agoHints file for android cross-compiling.
Jess Robinson [Fri, 4 Jan 2013 10:48:34 +0000 (10:48 +0000)]
Hints file for android cross-compiling.

The hints file names for cross-compiling (currently) need to match the prefix of the cross-compiler used.

10 years agoLinux hints: Improve the code that looks for libc.so
Brian Fraser [Wed, 22 Jan 2014 22:33:51 +0000 (19:33 -0300)]
Linux hints: Improve the code that looks for libc.so

10 years agoLinux hints: Improve the portability of the -lndbm check
Brian Fraser [Wed, 22 Jan 2014 20:19:28 +0000 (17:19 -0300)]
Linux hints: Improve the portability of the -lndbm check

10 years agoLinux hints: add some missing $ccflags
Brian Fraser [Wed, 22 Jan 2014 20:17:33 +0000 (17:17 -0300)]
Linux hints: add some missing $ccflags

10 years agoLinux hints: Handle `uname -m` in cross-compilation builds
Brian Fraser [Wed, 22 Jan 2014 20:14:59 +0000 (17:14 -0300)]
Linux hints: Handle `uname -m` in cross-compilation builds

10 years agoLinux hints: try using user-provided binaries before going for the defaults
Brian Fraser [Wed, 22 Jan 2014 20:13:25 +0000 (17:13 -0300)]
Linux hints: try using user-provided binaries before going for the defaults

This means that if the user called Configure with -Dnm=/foo/bar/nm, the
hints will try using that before going for plain 'nm'

10 years agoMake it clear what it means if there's no distinction between -M and -m.
Abigail [Sun, 26 Jan 2014 15:51:14 +0000 (16:51 +0100)]
Make it clear what it means if there's no distinction between -M and -m.

Triggered by perl #121078, where someone thought one could mimic the
behaviour of C<-m> by a clever use of C<-M> and C<=>.

10 years agotargetsh in configure.com again
Craig A. Berry [Sun, 26 Jan 2014 15:45:28 +0000 (09:45 -0600)]
targetsh in configure.com again

In 9056626be4b0df I had set it to empty string, but thanks to a
heads up from Brian Fraser I've realized it should be the same
thing as sh as it is now used to set up SH_PATH.

10 years agoFix targetsh in configure.com.
Craig A. Berry [Sat, 25 Jan 2014 20:48:51 +0000 (14:48 -0600)]
Fix targetsh in configure.com.

Specifically, there is no 'sh' variable, so if we try to reference
it we get:

%DCL-W-UNDSYM, undefined symbol - check validity and spelling
 \SH\

So enter an empty string for targetsh.

10 years agoMake fileify handle node specifications better.
Craig A. Berry [Sat, 25 Jan 2014 16:50:02 +0000 (10:50 -0600)]
Make fileify handle node specifications better.

In particular, a node specification containing only a single
directory (i.e., node::dev:[dir]) was not being handled properly.

This came up while reproducing the problem in [perl #121002] but
was not the cause of that problem as the OP's directory had
multiple subdirectories in it.

10 years agoIn vms.c's Perl_opendir, skip access check on remotes.
Craig A. Berry [Sat, 25 Jan 2014 15:52:09 +0000 (09:52 -0600)]
In vms.c's Perl_opendir, skip access check on remotes.

As reported in [perl #121002], the homegrown opendir has been
failing when the directory specification contains a DECNet node
specification indicating the directory to be accessed is on a
remote node.  The OP reports this worked with Perl 5.001 but not
5.8.6 or 5.18.2.

It appears that the culprit was the introduction of access
checking to Perl_opendir in 61bb59065bf1b12edab39b12, which would
first have been released in 5.004.  Yes, it's been broken for 17
years.

The reason access checking broke remote access is that it's based
on SYS$CHECK_ACCESS, which apparently does not work on remotes,
though the only hint of that in its documentation is that the
status SS$_UNSUPPORTED, "Operations on remote object are not
supported" is listed as a possible return value.  What it actually
returns, despite the documentation, is SS$_INVFILFOROP, "invalid
file specification for operation."

The fix is simple enough -- just skip the access check if the
directory name contains a node specification (which always ends
with "::").  All the access check is providing is a friendlier
error message in cases where we don't have access, so no harm is
done by skipping the check in cases where it can't work.

10 years agoresolve bug 121070 - preserve $^R after successful match
Yves Orton [Sat, 25 Jan 2014 15:48:56 +0000 (16:48 +0100)]
resolve bug 121070 - preserve $^R after successful match

We call LEAVE after successful eval matches, which clears $^R.

This changes a test that was added as part of handling bug 56194.

10 years agoMakefile.SH, make test: Copy config.sh when cross-compiling
Brian Fraser [Sat, 25 Jan 2014 15:38:04 +0000 (12:38 -0300)]
Makefile.SH, make test: Copy config.sh when cross-compiling

t/TEST uses this to determine which extensions to run tests for;
if it's missing, it'll end up running everything, which means a ton of
failures from, say, Win32 and VMS if cross-compiling to Linux.

10 years agot/porting/: Skips for cross-compilation
Brian Fraser [Wed, 13 Nov 2013 04:11:12 +0000 (01:11 -0300)]
t/porting/: Skips for cross-compilation

10 years agoUpdate Module-Load to CPAN version 0.30
Chris 'BinGOs' Williams [Sat, 25 Jan 2014 13:38:10 +0000 (13:38 +0000)]
Update Module-Load to CPAN version 0.30

  [DELTA]

0.30    Sat Jan 25 13:26:51 GMT 2014
* Fix 'uninitialized' warnings during testing
* Added done_testing() to tests

10 years agoUpdate Module-Load-Conditional to CPAN version 0.62
Chris 'BinGOs' Williams [Sat, 25 Jan 2014 13:37:15 +0000 (13:37 +0000)]
Update Module-Load-Conditional to CPAN version 0.62

  [DELTA]

0.62    Fri Jan 24 15:52:44 GMT 2014

* Resolve test failures on v5.16.x

10 years agoUpdate File-Fetch to CPAN version 0.48
Chris 'BinGOs' Williams [Sat, 25 Jan 2014 13:35:57 +0000 (13:35 +0000)]
Update File-Fetch to CPAN version 0.48

  [DELTA]

0.48        Fri Jan 24 10:32:52 2014

* Force curl to be IPv4 only during testing
  on NetBSD

10 years agoFile::Spec::Unix->tmpdir: Always return an absolute path
Brian Fraser [Fri, 17 Jan 2014 17:53:58 +0000 (14:53 -0300)]
File::Spec::Unix->tmpdir: Always return an absolute path

This is generally a non-issue, however, if /tmp doesn't exist
and $ENV{TMPDIR} isn't set, ->tmpdir() used to return ".", which
broke the following pattern:

    use File::Temp qw(tempdir);
    use File::Spec;
    my $tmpdir = tempdir(CLEANUP => 1);
    chdir $tmpdir;
    my $file = File::Spec->catfile($tmpdir, "foo");
    open my $fh, ">", $file or die $!;

Because $tmpdir would be something like 'bfhskjf94589', and after
the chdir, the open() would've tried to open $tmpdir/$tmpdir/foo.

Note that this is only the case when not running in taint mode.  If taint
is enabled, ->tmpdir will still return '.'; this mirrors the behavior of
File::Temp.

10 years agoUpgrade Scalar-List-Utils from version 1.37 to 1.38
Steve Hay [Fri, 24 Jan 2014 09:02:59 +0000 (09:02 +0000)]
Upgrade Scalar-List-Utils from version 1.37 to 1.38

10 years agoFix $ENV{PATH} flags in Peek.t.
Craig A. Berry [Fri, 24 Jan 2014 00:50:58 +0000 (18:50 -0600)]
Fix $ENV{PATH} flags in Peek.t.

Setting $ENV{PATH} explicitly in bea5cecf09ba646ff0ff made us no
longer have the TEMP flag set on VMS, so make it optional.

10 years agolib/locale.pm: Pod corrections
Karl Williamson [Fri, 24 Jan 2014 01:04:41 +0000 (18:04 -0700)]
lib/locale.pm: Pod corrections