6 months agoFirst pass at optimisation for 'my $x; my $y;' -> 'my ($x, $y)'. smoke-me/jkeenan/121077-my-opt
Matthew Horsfall [Thu, 9 Jan 2014 02:09:11 +0000]
First pass at optimisation for 'my $x; my $y;' -> 'my ($x, $y)'.

Brings:

  sub { my $x; my $y; return 1; }

Up to speed with:

  sub { my ($x, $y); return 1; }

6 months agoFile::Spec::Unix->tmpdir: Always return an absolute path
Brian Fraser [Fri, 17 Jan 2014 17:53:58 +0000]
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.

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

6 months agoFix $ENV{PATH} flags in Peek.t.
Craig A. Berry [Fri, 24 Jan 2014 00:50:58 +0000]
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.

6 months agolib/locale.pm: Pod corrections
Karl Williamson [Fri, 24 Jan 2014 01:04:41 +0000]
lib/locale.pm: Pod corrections

6 months agoAllow 'use locale' on systems without locales.
Karl Williamson [Wed, 22 Jan 2014 21:23:26 +0000]
Allow 'use locale' on systems without locales.

Instead of throwing an error, just go ahead and do the import.
This will tell Perl internally to use the current underlying locale,
which should be the C locale.  Attempts to change the locale will fail.

This differs slightly from Brian Fraser's patch, in that his didn't
touch $^H, thus 'use locale' was a no-op.  He has told me to apply this
one, which does affect $^H.  The advantage here is that now programs
that are run on platforms with and without locales will behave
similarly, and should run identically if the locale is not switched from
the default.

6 months agoperllocale: Nit.
Karl Williamson [Wed, 22 Jan 2014 21:42:10 +0000]
perllocale: Nit.

6 months agoperldelta for -Dtargetsh
Brian Fraser [Thu, 23 Jan 2014 18:45:40 +0000]
perldelta for -Dtargetsh

6 months agoregen for uconfig.h
Brian Fraser [Thu, 23 Jan 2014 18:05:18 +0000]
regen for uconfig.h

6 months agoGlossary entry for targetsh
Brian Fraser [Thu, 23 Jan 2014 03:33:13 +0000]
Glossary entry for targetsh

6 months agoAdded targetsh to all the canned config files
Brian Fraser [Mon, 11 Nov 2013 20:16:58 +0000]
Added targetsh to all the canned config files

6 months agoSeparate SH used to run Configure from SH used on target system
Jess Robinson [Thu, 31 Jan 2013 14:15:17 +0000]
Separate SH used to run Configure from SH used on target system

This is because, for example, on the host system, sh might be /bin/sh,
but on the target system, it's /system/bin/sh.

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

6 months agoloc_tools.pl: FIx to work on Android
Karl Williamson [Thu, 23 Jan 2014 17:52:38 +0000]
loc_tools.pl: FIx to work on Android

Thanks to Brian Fraser for finding this and suggesting the kernel of
the patch.

The code to try to handle platforms without the POSIX module didn't work
properly.  This code had just been moved, unchanged, here from
lib/locale.t; it never got executed previously due to a skip_all.

This patch also makes sure minitest doesn't fail, and adds some comments

6 months agolocale.c: Silence Win32 compiler warning.
Karl Williamson [Wed, 22 Jan 2014 05:17:20 +0000]
locale.c: Silence Win32 compiler warning.

This compiler is not smart enough to realize that overflow of a byte
can't occur here as the loop stops at 255.

6 months agoConfigure: add missing ; to checkccflags
Brian Fraser [Thu, 23 Jan 2014 17:52:39 +0000]
Configure: add missing ; to checkccflags

6 months agohandy.h: Move the _LC_CAST declaration.
Brian Fraser [Thu, 23 Jan 2014 14:57:50 +0000]
handy.h: Move the _LC_CAST declaration.

Previous it was left so that some systems, like Android, didn't get this,
which broke the build.

6 months agotime64.h: On QNX, use const for tm_zone
Brian Fraser [Fri, 11 Oct 2013 22:30:56 +0000]
time64.h: On QNX, use const for tm_zone

http://www.qnx.com/developers/docs/6.3.0SP3/neutrino/lib_ref/t/tm.html

6 months agotime64.h: Declare tm_zone as const under Android, but not if using C++
Brian Fraser [Sat, 18 May 2013 02:20:07 +0000]
time64.h: Declare tm_zone as const under Android, but not if using C++

https://android.googlesource.com/platform/bionic.git/+/master/libc/include/time.h

6 months agoMerge branch 'cross-compile-revamp' into blead
Brian Fraser [Thu, 23 Jan 2014 01:46:07 +0000]
Merge branch 'cross-compile-revamp' into blead

This branch modifies how the cross-compilation model works.

The main change is that we now build a host miniperl to use locally,
rather than running each call to miniperl remotely.

It also removes several of the exceptions from the old model (no xlib,
xconfig.h, or Cross.pm).

6 months agoUpdate IPC-Cmd to CPAN version 0.92
Chris 'BinGOs' Williams [Wed, 22 Jan 2014 20:28:25 +0000]
Update IPC-Cmd to CPAN version 0.92

  [DELTA]

0.92 Wed Jan 22 19:57:27 GMT 2014

  Test fixes:
  * Use File::Temp in run_forked tests (hugmeir)

6 months agot/op/magic.t: Use three-arg open to avooid creating a subshell
Brian Fraser [Wed, 22 Jan 2014 17:23:51 +0000]
t/op/magic.t: Use three-arg open to avooid creating a subshell

6 months agoAdd Darwin shared libraries (dylib) to gitignore
Brian Fraser [Wed, 22 Jan 2014 14:20:59 +0000]
Add Darwin shared libraries (dylib) to gitignore

6 months agoext/DynaLoader/t/DynaLoader.t: Skip the dl_findfile test when cross-compiling
Brian Fraser [Thu, 10 Oct 2013 23:59:56 +0000]
ext/DynaLoader/t/DynaLoader.t: Skip the dl_findfile test when cross-compiling

6 months agoMoved a glob test from t/run/fresh_perl.t to t/op/glob.t
Brian Fraser [Tue, 1 Oct 2013 13:35:41 +0000]
Moved a glob test from t/run/fresh_perl.t to t/op/glob.t

This was done because, currently, the test fails when cross-compiling
perl, but run/fresh_perl.t can't use Config to check if we're cross-
compiling.

6 months agodist/ExtUtils-Install: Skip tests if make is not available
Brian Fraser [Sun, 19 May 2013 07:46:30 +0000]
dist/ExtUtils-Install: Skip tests if make is not available

6 months agolib/ExtUtils/t/Embed.t: Skip tests is cross-compiling and $Config{cc} is not available
Brian Fraser [Sun, 19 May 2013 07:44:07 +0000]
lib/ExtUtils/t/Embed.t: Skip tests is cross-compiling and $Config{cc} is not available

6 months agot/lib/warnings/pp_sys: Add skips in case telldir is not available
Brian Fraser [Wed, 24 Apr 2013 22:01:04 +0000]
t/lib/warnings/pp_sys: Add skips in case telldir is not available

6 months agoperllexwarn: Fit verbatim lines in 79 columns
Karl Williamson [Wed, 22 Jan 2014 18:40:52 +0000]
perllexwarn: Fit verbatim lines in 79 columns

6 months agoperllocale: Nits, corrections
Karl Williamson [Wed, 22 Jan 2014 17:52:21 +0000]
perllocale: Nits, corrections

This corrects some formatting nits and grammatical errors, with some
clarifications and corrections to the existing text, and adds coverage
of some previously undocumented functionality.

6 months agoperl.c: Add missing ref count decrement
Karl Williamson [Tue, 21 Jan 2014 23:59:39 +0000]
perl.c: Add missing ref count decrement

This could have led to a leak.

6 months agolocale.c: White-space only
Karl Williamson [Tue, 21 Jan 2014 23:51:56 +0000]
locale.c: White-space only

This indents because the previous commit added a block

6 months agolocale.c: Find utf8-8 locales reliably on C99 platforms
Karl Williamson [Tue, 21 Jan 2014 23:25:42 +0000]
locale.c: Find utf8-8 locales reliably on C99 platforms

locale.c has a function that tries to determine if the current POSIX
locale is a UTF-8 locale.  Prior to this patch, it used nl_langinfo() to
determine this, falling back to heuristics if that is unavailable on the
platform.  nl_langinfo()  is part of POSIX.1-2001.  -This patch adds the
use of two functions from C99, mbtowc() and MB_CUR_MAX,  that also give
reliable results.

6 months agot/loc_tools.pl: Add some locale finding for Win32
Karl Williamson [Tue, 21 Jan 2014 23:01:48 +0000]
t/loc_tools.pl: Add some locale finding for Win32

This is based on the documentation in
http://msdn.microsoft.com/en-us/library/hzz3tw78.aspx
and linked-to pages.

We try out new locale combinations to see if they are found.

6 months agoMove more common locale finding code into t/loc_tools.pl
Karl Williamson [Mon, 20 Jan 2014 19:58:46 +0000]
Move more common locale finding code into t/loc_tools.pl

As a result of some code meant to do the same thing being in two
different places, one got updated, and one didn't.  So t/run/locale.t
was being skipped for Win32, even though the bug there it was avoiding
has been fixed in XP.

6 months agot/run/locale.t: Use common code for finding locales
Karl Williamson [Mon, 20 Jan 2014 19:10:59 +0000]
t/run/locale.t: Use common code for finding locales

Instead of using its own ungeneral code for finding the available
locales on the system, use the new common, and more general, code.

This means this test will now run on more systems, where it currently is
skipped

6 months agot/loc_tools.pl: Extract out finding locales from locale.t
Karl Williamson [Mon, 20 Jan 2014 18:38:44 +0000]
t/loc_tools.pl: Extract out finding locales from locale.t

Several different test files need to find the locales on the system, and
each currently has rolled its own methods to do that.  This commit
creates a new file t/loc_tools.pl which is designed to be a common
place for these tools.

lib/locale.t did the most thorough job of finding locales, so
t/loc_tools.pl is built upon what it had, which is now deleted from
locale.t.

The code in t/loc_tools.pl was copied from lib/locale.t with white space
changes and changes to make this be a subroutine, and helper functions
renamed to begin with an underscore, and changing the hard-coded list to
be in a DATA section so it doesn't have to be actually used unless
necessary.

6 months agolib/locale.t: Remove no longer needed SKIPS
Karl Williamson [Mon, 20 Jan 2014 18:08:32 +0000]
lib/locale.t: Remove no longer needed SKIPS

locale.t has changed so if tests in some locales fail, it still passes,
provided that most locales work.  Thus this code whose effect was to
know about some broken locales and SKIP them, is no longer needed.

6 months agoreg_posixcc.t: Improve test names
Karl Williamson [Sun, 19 Jan 2014 04:41:31 +0000]
reg_posixcc.t: Improve test names

The test names dated to before feature unicode_strings, and were
misleading.

6 months agoregcomp.c: Extract out code into a separate function
Karl Williamson [Fri, 17 Jan 2014 01:21:54 +0000]
regcomp.c: Extract out code into a separate function

This is in preparation for it to be called from a 2nd place.

6 months agoperlunicode: Wrap some lines
Karl Williamson [Thu, 16 Jan 2014 19:48:39 +0000]
perlunicode: Wrap some lines

This is to make source readable in 79 column window

6 months agoregcomp.c: Simplify expression
Karl Williamson [Tue, 14 Jan 2014 19:47:53 +0000]
regcomp.c: Simplify expression

The previous commit has allowed us to remove the separate test for LOC,
and to replace the one for FOLD by ANYOF_LOC_FOLD.  The flags being
tested here can't be true unless LOC is also true, so testing for it is
superfluous.

6 months agoregcomp.c: Move some code to earlier
Karl Williamson [Tue, 14 Jan 2014 19:44:03 +0000]
regcomp.c: Move some code to earlier

This code isn't affect by and doesn't affect things between where it is
being moved to and where it is now.  Moving it will allow simplification
of an expression and also is needed in future commits

6 months agoAdd some cBOOL casts to macros
Karl Williamson [Tue, 14 Jan 2014 17:31:09 +0000]
Add some cBOOL casts to macros

I kept getting burned by these macros returning non-zero instead of a
boolean, as they are used as bool parameters to functions.  So I added
cBOOLs to them.

6 months agoperlapi: Tighten strictures against using undocumented things
Karl Williamson [Tue, 14 Jan 2014 17:14:53 +0000]
perlapi: Tighten strictures against using undocumented things

We didn't actually say that undocumented global variables and macros are
off-limits.

6 months agoComments, white-space
Karl Williamson [Tue, 14 Jan 2014 16:45:49 +0000]
Comments, white-space

This adds and modifies various comments in several files, rewrapping
some comments to occupy fewer lines but not exceed 79 columns.  And
fixes some indentation and other white space issues.  It includes
removing trailing white space in lines in regcomp.c.  I didn't think it
was worth making a commit for each file.

6 months agoregcomp.c: Don't output empty debugging text
Karl Williamson [Tue, 14 Jan 2014 16:32:34 +0000]
regcomp.c: Don't output empty debugging text

This code labels the information that is to follow, and was output even
if that information was empty, so it was confusing.  Now output only
when we know that there will be non-empty information to follow

6 months agoregcomp.c: request inlining of single line function
Karl Williamson [Tue, 14 Jan 2014 16:29:58 +0000]
regcomp.c: request inlining of single line function

6 months agoPanic if regex making a trie under /li
Karl Williamson [Tue, 14 Jan 2014 16:23:39 +0000]
Panic if regex making a trie under /li

It does not make sense to try to make a trie using data that is not
determinable at runtime.  So don't pretend to try.

6 months agoRename regex internal flag bit
Karl Williamson [Mon, 13 Jan 2014 19:13:18 +0000]
Rename regex internal flag bit

This is a clearer name; is used internally only in regcomp.c and
regexec.c

6 months agoUse bit instead of node for regex SSC
Karl Williamson [Mon, 13 Jan 2014 06:39:43 +0000]
Use bit instead of node for regex SSC

The flag bits in regular expression ANYOF nodes are perennially in short
supply.  However there are still plenty of regex nodes possible.  So one
solution to needing to pass more information is to create a node that
encapsulates what is needed.  That is what commit
9aa1e39f96ac28f6ce5d814d9a1eccf1464aba4a did to tell regexec.c that a
particular ANYOF node is for the synthetic start class (SSC).  However
this solution introduces other issues.  If you have to express two
things, then you need a regnode for A, a regnode for B, a regnode for
both A and B, and another regnode for both not A nor B;  With three
things, you need 8 regnodes to express all possible combinations.  This
becomes unwieldy to write code for.  The number of combinations goes way
down if some of them are mutually exclusive.  At the time of that
commit, I thought that a SSC need not ever warn if matching against an
above-Unicode code point.  I was wrong, and that has been corrected
earlier in the 5.19 series.

But it finally came to me how to tell regexec that an ANYOF node is
for the SSC without taking up a flag bit and without requiring a regnode
type.  The 'next_off' field in a regnode tells the engine the offeset in
the regex program to the node it's supposed to go to after processing
this one.  Since the SSC stands alone, its 'next_off' field is unused,
and we can put anything we want in it.  That, however, is not true of
other ANYOF regnodes.  But it turns out that there are certain values
that will never be legitimate in the 'next_off' field in these, and so
this commit uses one of those to signal that this ANYOF field is an SSC.
regnodes come in various sizes, and the offset is in terms of how many
of the smallest ones are there to the next node to look at.  Since ANYOF
nodes are large, the offset is always > 1, and so this commit uses 1 to
indicate an SSC.

6 months agohandy.h: Express locale macros using common base macros
Karl Williamson [Thu, 9 Jan 2014 06:10:06 +0000]
handy.h: Express locale macros using common base macros

This extracts out the code of looking up POSIX classes in locales to use
base macros common to all of them.  It does this for the NeXT only code
as well as the typical compilations.

This is in preparation for changing the behavior.  Certain things look
weird as they are aligned, etc as part of that preparation.

6 months agohandy.h: Factor out common code
Karl Williamson [Thu, 9 Jan 2014 06:02:38 +0000]
handy.h: Factor out common code

It turns out that the definitions for isASCII_LC and is_BLANK_LC end up
being the same for all three possible #if platform states, so can just
have them once instead of three times.

It is unlikely that the
    && ! defined(USE_NEXT_CTYPE)
is necessary, because HAS_ISASCII likely won't be defined, but this
makes sure that this doesn't change the previous behavior.

6 months agohandy.h: White-space, comments, pod nit only
Karl Williamson [Thu, 9 Jan 2014 05:59:31 +0000]
handy.h: White-space, comments, pod nit only

6 months agopp_hot.c: Rmv unnecessary test
Karl Williamson [Thu, 9 Jan 2014 22:29:17 +0000]
pp_hot.c: Rmv unnecessary test

The strchr() cannot not succeed unless the first test fails, so the
first test need not be tried at all.

6 months agoGlossary entries for host{perl,generate,osname}
Brian Fraser [Wed, 22 Jan 2014 17:01:06 +0000]
Glossary entries for host{perl,generate,osname}

6 months agoperldelta for the new cross-compilation model
Brian Fraser [Wed, 22 Jan 2014 16:48:46 +0000]
perldelta for the new cross-compilation model

6 months agoConfigure, Makefile.SH: Allow running generate_uudmap in the target
Brian Fraser [Thu, 16 Jan 2014 10:20:28 +0000]
Configure, Makefile.SH: Allow running generate_uudmap in the target

This is a bit of a step backwards, but we want to run this in
the target platform when cross-compiling to some unusual setups,
like ASCII -> EBCDIC.

What this branch introduces is a third "path" for generate_uudmap:

 * If we are doing a native build, just build it as usual and run it.
 * If we're cross-compiling, and either -Dhostgenerate was specified OR
   if it was left empty, which is the default case, then create
   a host generate_uudmap and run it locally
 * Finally, if are cross-compiling and were built with -Uhostgenerate,
   then build generate_uudmap for the target and run it there, bringing
   back the resulting headers.

6 months agoConfigure: Minor improvements to the building on the host miniperl
Brian Fraser [Sun, 29 Dec 2013 05:11:32 +0000]
Configure: Minor improvements to the building on the host miniperl

6 months agoConfigure: When cross-compiling, save the $^O of the host
Brian Fraser [Sun, 29 Dec 2013 05:10:41 +0000]
Configure: When cross-compiling, save the $^O of the host

6 months agoConfigure: Silence $to warnings when cross-compiling
Brian Fraser [Sat, 16 Nov 2013 00:34:19 +0000]
Configure: Silence $to warnings when cross-compiling

6 months agoConfigure, run-ssh: No need to use ./\$exe
Brian Fraser [Fri, 15 Nov 2013 06:28:08 +0000]
Configure, run-ssh: No need to use ./\$exe

Previous, if run-ssh was passed ./TEST, it would've ended up running
././TEST in the target system.  Similarly, if you passed 'uname',
it would've tried running ./uname, which would've failed
spectacularly.

This commit changes run-ssh so that it won't add the extra './';
this means that shell builtins can be run in the target system.
While this is not generally portable, it's useful in specific
situations, such as in the hints files.

6 months agoUpdate the WinCE files to the new cross model
Brian Fraser [Wed, 11 Dec 2013 05:22:13 +0000]
Update the WinCE files to the new cross model

6 months agoconfigpm: Remove remnants of the old cross model
Brian Fraser [Wed, 18 Dec 2013 13:28:42 +0000]
configpm: Remove remnants of the old cross model

6 months agoRemove old cross-compilation model
Brian Fraser [Tue, 12 Nov 2013 04:54:48 +0000]
Remove old cross-compilation model

6 months agomake_ext.pl: Phase out the use of Cross.pm
Brian Fraser [Wed, 13 Nov 2013 03:02:41 +0000]
make_ext.pl: Phase out the use of Cross.pm

In the old cross-compilation model, lib/ for the target would
end up in xlib/; What Cross.pm did back then was change @INC
around a bit to have miniperl point to xlib; Additionally, it
was used to identify cross-compilation builds, and in make_ext.pl
to detect whenever a Makefile was from the host's build.

There is no longer any need for the first, and the second is now
a simple check for $Config{usecrosscompile}, it's still
possible for the hosts' Makefiles to be there, particularly
if the host was not compiled elsewhere using -Dmksymlinks,
like in Windows when targetting WinCE.

This commit changes make_ext.pl for cross-compiling builds
to only delete Makefiles when their CC != $Config{cc}.

6 months agoMakefile.SH: Remove remnants of the old cross-compilation model
Brian Fraser [Wed, 13 Nov 2013 05:47:14 +0000]
Makefile.SH: Remove remnants of the old cross-compilation model

6 months agoNo xconfig.h is produced when cross-compiling, we have a normal config.h
Jess Robinson [Sat, 29 Dec 2012 21:31:05 +0000]
No xconfig.h is produced when cross-compiling, we have a normal config.h

6 months agoMake sure to remove the Cross/mkdir script on *clean
Jess Robinson [Mon, 29 Apr 2013 08:54:07 +0000]
Make sure to remove the Cross/mkdir script on *clean

6 months agoGitignore files which are created/used while cross-compiling
Jess Robinson [Fri, 19 Apr 2013 13:52:01 +0000]
Gitignore files which are created/used while cross-compiling

6 months agoMakefile.SH: on make test_prep, add $target/lib:$target/lib/auto to -env LD_LIBRARY_P...
Brian Fraser [Wed, 24 Apr 2013 18:14:14 +0000]
Makefile.SH: on make test_prep, add $target/lib:$target/lib/auto to -env LD_LIBRARY_PATH=...

6 months agoMakefile.SH: 'make test' for cross-compilation builds.
Jess Robinson [Thu, 31 Jan 2013 14:12:31 +0000]
Makefile.SH: 'make test' for cross-compilation builds.

Along with the previous commit, this enables us to run 'make test'
on the host and have the tests run on the target. We do this by
calling ./Cross/run ./TEST with -cwd $targetdir/t, and setting its
LD_LIBRARY_PATH to $targetdir, so that libperl.so is found.

6 months agoMakefile.SH: When cross-compiling, copy the files needed by make test.
Jess Robinson [Thu, 31 Jan 2013 14:12:31 +0000]
Makefile.SH: When cross-compiling, copy the files needed by make test.

This is groundwork to enable us to do this:

    $ make
    $ make test

on the host, and have the test suite be run on the target.

Currently this list of files is hand-maintained.

6 months agoConfigure: Teach run-ssh to handle -env
Brian Fraser [Fri, 11 Oct 2013 16:22:17 +0000]
Configure: Teach run-ssh to handle -env

6 months agoConfigure: Pass the -r flag to scp when cross-compiling
Brian Fraser [Fri, 9 Aug 2013 05:56:18 +0000]
Configure: Pass the -r flag to scp when cross-compiling

6 months agoUse HOST_PERL instead of built perl for perl installation
Jess Robinson [Fri, 18 Jan 2013 15:54:51 +0000]
Use HOST_PERL instead of built perl for perl installation

HOST_PERL is often set while cross compiling, so we can run the
install from the host machine.

6 months agoUse the system perl for RUN_PERL, if we are cross compiling, and we found one.
Jess Robinson [Fri, 18 Jan 2013 15:46:10 +0000]
Use the system perl for RUN_PERL, if we are cross compiling, and we found one.

Note we can only substitute the system perl for scripts that do not require Config
as it complains about non-matching Perl versions.

6 months agoMakefile.SH: Updated the lib/buildcustomize.pl rule for cross-compilation builds
Brian Fraser [Wed, 13 Nov 2013 05:48:59 +0000]
Makefile.SH: Updated the lib/buildcustomize.pl rule for cross-compilation builds

6 months agowrite_buildcustomize.pl: Setup $^O to be the target os when building Core.
Jess Robinson [Sat, 29 Dec 2012 21:32:30 +0000]
write_buildcustomize.pl: Setup $^O to be the target os when building Core.

This allows the correct hints files to be loaded when building modules
We do this by giving write_buildcustomize.pl a 'osname' parameter.

This means that write_buildcustomize.pl no longer depends on
Config to get osname, which eliminates a circular dependency
in the Makefiles.

6 months agoconfigpm should use "osname" from config.sh, instead of miniperl's $^O.
Jess Robinson [Tue, 15 Jan 2013 10:40:08 +0000]
configpm should use "osname" from config.sh, instead of miniperl's $^O.

This is necessary when cross-compiliing, as we use a host (mini)perl to
run configpm for the target arch; so for example, miniperl's $^O
might be 'linux', but config.sh's osname can be 'qnx'.

6 months agoRun all the miniperl calls locally, not via RUN
Jess Robinson [Wed, 9 Jan 2013 10:43:42 +0000]
Run all the miniperl calls locally, not via RUN

6 months agoBuild host miniperl and generate_uudmap binaries when cross compiling, for local use
Jess Robinson [Fri, 4 Jan 2013 10:47:48 +0000]
Build host miniperl and generate_uudmap binaries when cross compiling, for local use

6 months agoStop using Config{run} to check the version of (mini)perl we are running
Jess Robinson [Wed, 2 Jan 2013 14:55:59 +0000]
Stop using Config{run} to check the version of (mini)perl we are running

6 months agoStop using $run for anything other than testing compiled tests in Configure.
Jess Robinson [Sat, 29 Dec 2012 21:29:50 +0000]
Stop using $run for anything other than testing compiled tests in Configure.

When cross-compiling we want to run miniperl etc on the compile host, not the test target

6 months agoUpdate AUTHORS and MANIFEST to appease test_porting
Jess Robinson [Thu, 17 Jan 2013 11:45:13 +0000]
Update AUTHORS and MANIFEST to appease test_porting

6 months agofix the ability to use targethost when defined.
Neil Williams [Sat, 12 Jan 2013 13:23:00 +0000]
fix the ability to use targethost when defined.

6 months agoadd an escape for when targethost is not defined but usecrosscompile is.
Neil Williams [Fri, 11 Jan 2013 17:01:22 +0000]
add an escape for when targethost is not defined but usecrosscompile is.

See http://www.nntp.perl.org/group/perl.perl5.porters/2012/12/msg196443.html
"Cross-building and Makefile.SH", which explains the reasoning for this.

6 months agoConfigure: Set to/from/run scripts if targethost is passed
Jess Robinson [Sat, 29 Dec 2012 21:23:01 +0000]
Configure: Set to/from/run scripts if targethost is passed

Do this regardless of whether we are cross compiling

6 months agoConfigure: Split the usecrosscompile section from the to/from/run section
Jess Robinson [Sat, 29 Dec 2012 21:23:01 +0000]
Configure: Split the usecrosscompile section from the to/from/run section

Beyond organization, this also makes sure that usecrosscompile is
always set to undef if we're not cross-compiling, which enables
code to realibly use $Config{usecrosscompile} to check for a
cross-compiling perl.

6 months agorestore missed commit in regeneration (spotted by hugmeir)
H.Merijn Brand [Wed, 22 Jan 2014 13:29:06 +0000]
restore missed commit in regeneration (spotted by hugmeir)

6 months agoRegenerate from meta after backporting crosscompile changes
H.Merijn Brand [Wed, 22 Jan 2014 11:28:57 +0000]
Regenerate from meta after backporting crosscompile changes

I am sure there are items that could have been processed even cleaner,
but with the current state, the content is functional equal.

6 months agoperldelta for c91312d5e, none needed for e214621be
Tony Cook [Wed, 22 Jan 2014 05:41:22 +0000]
perldelta for c91312d5e, none needed for e214621be

6 months ago[perl #120977] use warnings "FATAL" implies "all"
Tony Cook [Wed, 22 Jan 2014 05:33:17 +0000]
[perl #120977] use warnings "FATAL" implies "all"

6 months ago[perl #120977] bump $warnings::VERSION
Tony Cook [Wed, 22 Jan 2014 05:31:49 +0000]
[perl #120977] bump $warnings::VERSION

6 months agoassume "all" in "use warnings 'FATAL';" and related
Hauke D [Sun, 12 Jan 2014 23:50:51 +0000]
assume "all" in "use warnings 'FATAL';" and related

Until now, the behavior of the statements

 use warnings "FATAL";
 use warnings "NONFATAL";
 no warnings "FATAL";

was unspecified and inconsistent. This change causes them to be handled
with an implied "all" at the end of the import list.

Tony Cook: fix AUTHORS formatting

6 months agoadd a missing word in perllexwarn
Hauke D [Sun, 12 Jan 2014 23:46:03 +0000]
add a missing word in perllexwarn

6 months agoPerlIO_tmpfile: Don't leak an SV
Brian Fraser [Wed, 22 Jan 2014 01:46:10 +0000]
PerlIO_tmpfile: Don't leak an SV

This was spotted by Daniel Dragan on the thread for #120591

6 months agoperlio.c, PerlIO_tmpfile: Fall back to cwd if we have no /tmp or $TMPDIR
Brian Fraser [Wed, 22 Jan 2014 01:45:17 +0000]
perlio.c, PerlIO_tmpfile: Fall back to cwd if we have no /tmp or $TMPDIR

With this, open($fh, undef) will now work on systems without
a /tmp (or equivalent) where TMPDIR is not set.

6 months agosv.c, Perl_dirp_dup: Skip the fchdir sections if telldir and seekdir are not defined
Brian Fraser [Sat, 18 May 2013 02:13:55 +0000]
sv.c, Perl_dirp_dup: Skip the fchdir sections if telldir and seekdir are not defined

6 months agoUpdate Scalar-List-Utils to CPAN version 1.37
Chris 'BinGOs' Williams [Tue, 21 Jan 2014 14:57:36 +0000]
Update Scalar-List-Utils to CPAN version 1.37

  [DELTA]

1.37 -- 2014/01/21 14:44:34
   [BUGFIXES]
   * Fix unweaken() for perls < 5.14; need to use sv_setsv() to undef
     rather than sv_clear() (RT92226)

6 months agoversion and Module-CoreList are up to date with CPAN
Chris 'BinGOs' Williams [Tue, 21 Jan 2014 14:56:42 +0000]
version and Module-CoreList are up to date with CPAN