platform/upstream/perl.git
10 years agoregcomp.c: request inlining of single line function
Karl Williamson [Tue, 14 Jan 2014 16:29:58 +0000 (09:29 -0700)]
regcomp.c: request inlining of single line function

10 years agoPanic if regex making a trie under /li
Karl Williamson [Tue, 14 Jan 2014 16:23:39 +0000 (09:23 -0700)]
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.

10 years agoRename regex internal flag bit
Karl Williamson [Mon, 13 Jan 2014 19:13:18 +0000 (12:13 -0700)]
Rename regex internal flag bit

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

10 years agoUse bit instead of node for regex SSC
Karl Williamson [Mon, 13 Jan 2014 06:39:43 +0000 (23:39 -0700)]
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.

10 years agohandy.h: Express locale macros using common base macros
Karl Williamson [Thu, 9 Jan 2014 06:10:06 +0000 (23:10 -0700)]
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.

10 years agohandy.h: Factor out common code
Karl Williamson [Thu, 9 Jan 2014 06:02:38 +0000 (23:02 -0700)]
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.

10 years agohandy.h: White-space, comments, pod nit only
Karl Williamson [Thu, 9 Jan 2014 05:59:31 +0000 (22:59 -0700)]
handy.h: White-space, comments, pod nit only

10 years agopp_hot.c: Rmv unnecessary test
Karl Williamson [Thu, 9 Jan 2014 22:29:17 +0000 (15:29 -0700)]
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.

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

10 years agoRegenerate from meta after backporting crosscompile changes
H.Merijn Brand [Wed, 22 Jan 2014 11:28:57 +0000 (12:28 +0100)]
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.

10 years agoperldelta for c91312d5e, none needed for e214621be
Tony Cook [Wed, 22 Jan 2014 05:41:22 +0000 (16:41 +1100)]
perldelta for c91312d5e, none needed for e214621be

10 years ago[perl #120977] use warnings "FATAL" implies "all"
Tony Cook [Wed, 22 Jan 2014 05:33:17 +0000 (16:33 +1100)]
[perl #120977] use warnings "FATAL" implies "all"

10 years ago[perl #120977] bump $warnings::VERSION
Tony Cook [Wed, 22 Jan 2014 05:31:49 +0000 (16:31 +1100)]
[perl #120977] bump $warnings::VERSION

10 years agoassume "all" in "use warnings 'FATAL';" and related
Hauke D [Sun, 12 Jan 2014 23:50:51 +0000 (00:50 +0100)]
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

10 years agoadd a missing word in perllexwarn
Hauke D [Sun, 12 Jan 2014 23:46:03 +0000 (00:46 +0100)]
add a missing word in perllexwarn

10 years agoPerlIO_tmpfile: Don't leak an SV
Brian Fraser [Wed, 22 Jan 2014 01:46:10 +0000 (22:46 -0300)]
PerlIO_tmpfile: Don't leak an SV

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

10 years 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 (22:45 -0300)]
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.

10 years 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 (23:13 -0300)]
sv.c, Perl_dirp_dup: Skip the fchdir sections if telldir and seekdir are not defined

10 years agoUpdate Scalar-List-Utils to CPAN version 1.37
Chris 'BinGOs' Williams [Tue, 21 Jan 2014 14:57:36 +0000 (14:57 +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)

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

10 years agodocument $^P's 0x800 and 0x1000
Ricardo Signes [Mon, 20 Jan 2014 23:40:16 +0000 (18:40 -0500)]
document $^P's 0x800 and 0x1000

these were introduced in c30d8139e

10 years agocreate new perldelta for 5.19.9
Ricardo Signes [Mon, 20 Jan 2014 22:36:17 +0000 (17:36 -0500)]
create new perldelta for 5.19.9

10 years agoadd the 5.19.8 epigraph
Ricardo Signes [Mon, 20 Jan 2014 22:31:27 +0000 (17:31 -0500)]
add the 5.19.8 epigraph

10 years agofix an epigraph typo
Ricardo Signes [Mon, 20 Jan 2014 22:16:35 +0000 (17:16 -0500)]
fix an epigraph typo

His name is Milo Minderbinder.

He is twenty-seven years old.

10 years agobump version to 5.19.9!
Ricardo Signes [Mon, 20 Jan 2014 22:02:44 +0000 (17:02 -0500)]
bump version to 5.19.9!

10 years agoMerge tag 'v5.19.8' into blead
Ricardo Signes [Mon, 20 Jan 2014 22:01:18 +0000 (17:01 -0500)]
Merge tag 'v5.19.8' into blead

Ninth release of the v5.19 series!

10 years agoperldelta: add the 5.19.8 acknowledgements
Ricardo Signes [Mon, 20 Jan 2014 20:54:04 +0000 (15:54 -0500)]
perldelta: add the 5.19.8 acknowledgements

10 years agorename sTHX to PERL_MEMORY_DEBUG_HEADER_SIZE
David Mitchell [Mon, 20 Jan 2014 14:24:02 +0000 (14:24 +0000)]
rename sTHX to PERL_MEMORY_DEBUG_HEADER_SIZE

Originally this macro evaluated to the size of the THX pointer;
this was used with the memory pool facility to store the context of the
caller of the malloc() for debugging. Later, the header of the malloc()
stored more than just the context, so sTHX became a mismoner.

Rename it to something less misleading.

10 years agoPrevent V-magic from being stripped by locale fix
John Peacock [Fri, 17 Jan 2014 19:43:34 +0000 (14:43 -0500)]
Prevent V-magic from being stripped by locale fix

version/t/00impl-pp.t was failing with locales

See thread beginning
    <20140113132518.GA11721@iabyn.com>

10 years agoperlhist: note that 5.19.8 should be released today
Ricardo Signes [Mon, 20 Jan 2014 12:52:37 +0000 (07:52 -0500)]
perlhist: note that 5.19.8 should be released today

10 years agothrreads::shared: LEAVE in BOOT had wrong context
David Mitchell [Mon, 20 Jan 2014 12:03:15 +0000 (12:03 +0000)]
thrreads::shared: LEAVE in BOOT had wrong context

In Perl_sharedsv_init() - which is called from the threads::shared BOOT
code - it creates a new shared interpreter, then tries to undo the ENTER
done as the last step of the perl_construct(PL_sharedsv_space) step, with
a LEAVE. But the LEAVE was being done in the context of the caller
interpreter rather than the shared one.

See the thread beginning <52D528FE.20701@havurah-software.org>

10 years ago[perl #121031] fix all of the other incorrect calls to fresh_perl_is()
Tony Cook [Mon, 20 Jan 2014 01:06:47 +0000 (12:06 +1100)]
[perl #121031] fix all of the other incorrect calls to fresh_perl_is()

The third argument to fresh_perl_is()/fresh_perl_like() is treated as
a hashref, passing a string is kind of strange.

10 years ago[perl #121031] pass a valid value for $runperl_args to fresh_perl_is()
Tony Cook [Mon, 20 Jan 2014 00:46:47 +0000 (11:46 +1100)]
[perl #121031] pass a valid value for $runperl_args to fresh_perl_is()

Alternative patch for the problems noticed by Tobias Leich

10 years agofix splice+isa test that got mangled when making splice.t use test.pl
Tobias Leich [Sat, 18 Jan 2014 19:53:45 +0000 (20:53 +0100)]
fix splice+isa test that got mangled when making splice.t use test.pl

See ce6d40e02d52b9152b44a5fc2180efda15a7d069

10 years agopod/perllexwarn.pod: clarify note about the "deprecated" category
Ævar Arnfjörð Bjarmason [Sun, 19 Jan 2014 16:45:13 +0000 (16:45 +0000)]
pod/perllexwarn.pod: clarify note about the "deprecated" category

Saying that something used to behave a certain way "In Perl 5.6.1" can
be understood as it changing in 5.6.2, but in fact this change to the
"deprecated" category in perl-5.6.0-8156-g12bcd1a was never released in
any 5.6.* release, it was first released in 5.8.0.

So note that explicitly instead, it's less ambiguous to just say "Before
Perl 5.8.0".

10 years agoperldelta: update module changes
Ricardo Signes [Sun, 19 Jan 2014 15:34:50 +0000 (10:34 -0500)]
perldelta: update module changes

used Porting/corelist-perldelta.pl!  thanks Abir Viqar and
Steve Hay!

10 years agoupdate Module::CoreList
Ricardo Signes [Sun, 19 Jan 2014 15:28:54 +0000 (10:28 -0500)]
update Module::CoreList

10 years agoupdate latest copyright year to 2014
Ricardo Signes [Sun, 19 Jan 2014 15:13:50 +0000 (10:13 -0500)]
update latest copyright year to 2014

10 years agoperldelta: prune unused sections and markers
Ricardo Signes [Sun, 19 Jan 2014 15:11:50 +0000 (10:11 -0500)]
perldelta: prune unused sections and markers

10 years agoperldelta for 1850f57f
Ricardo Signes [Sun, 19 Jan 2014 15:07:01 +0000 (10:07 -0500)]
perldelta for 1850f57f

10 years agoperldelta for addition of IO-Socket-IP
Ricardo Signes [Sun, 19 Jan 2014 14:38:54 +0000 (09:38 -0500)]
perldelta for addition of IO-Socket-IP

10 years agotentatively import IO-Socket-IP for consideration
Ricardo Signes [Sun, 19 Jan 2014 14:33:13 +0000 (09:33 -0500)]
tentatively import IO-Socket-IP for consideration

10 years agofix broken perl5197delta
Ricardo Signes [Sun, 19 Jan 2014 13:24:20 +0000 (08:24 -0500)]
fix broken perl5197delta

10 years agoperldelta for bfa371b621
Father Chrysostomos [Sun, 19 Jan 2014 05:50:13 +0000 (21:50 -0800)]
perldelta for bfa371b621

10 years agoperldelta for f60e676307
Father Chrysostomos [Sun, 19 Jan 2014 05:49:06 +0000 (21:49 -0800)]
perldelta for f60e676307

10 years ago[perl #119949] Stop undef *_, goto &sub from crashing
Father Chrysostomos [Sun, 19 Jan 2014 03:16:55 +0000 (19:16 -0800)]
[perl #119949] Stop undef *_, goto &sub from crashing

Commit 049bd5ffd62b fixed problems with the wrong @_ being visible
after *_ modification followed by goto.  In so doing, it made it
possible for a null to be placed at the start of the target sub’s
pad, because it was not checking that the array it got from PL_defgv
was actually non-null.  Simply adding the check makes everything work.

10 years ago[perl #119973] Treat initial { in format args as block
Father Chrysostomos [Sun, 19 Jan 2014 01:58:52 +0000 (17:58 -0800)]
[perl #119973] Treat initial { in format args as block

Commit 705fe0e5f8a inadvertently caused the hash-vs-block disambigua-
tion to apply at the beginning of a format argument line.  This commit
restores the implicit ‘do’, but only when the opening brace is the
first token on that line, not embedded within an expression.

In other words, this now has a block as before:

format =
{ foo => "bar" }
.

but this still produces a hash (in 5.16 it was a block):

format =
+{ foo => "bar }
.

10 years agoUse ASSUME in op.c:newBINOP
Father Chrysostomos [Sun, 19 Jan 2014 01:07:33 +0000 (17:07 -0800)]
Use ASSUME in op.c:newBINOP

This causes op.o to drop by 56 bytes for me under clang.

10 years agodiag.t: More exceptions
Father Chrysostomos [Sun, 19 Jan 2014 01:35:40 +0000 (17:35 -0800)]
diag.t: More exceptions

10 years agoregen customized.dat
Father Chrysostomos [Sun, 19 Jan 2014 01:32:29 +0000 (17:32 -0800)]
regen customized.dat

10 years agoMaintainers.pl: vutil.c is not customized any moer
Father Chrysostomos [Sun, 19 Jan 2014 01:31:50 +0000 (17:31 -0800)]
Maintainers.pl: vutil.c is not customized any moer

10 years agoExplicit ENTER/LEAVE block for upg_version
John Peacock [Sun, 19 Jan 2014 00:25:52 +0000 (19:25 -0500)]
Explicit ENTER/LEAVE block for upg_version

10 years agoLots of C optimizations for both speed/correctness
John Peacock [Sun, 12 Jan 2014 16:19:53 +0000 (11:19 -0500)]
Lots of C optimizations for both speed/correctness

Clean up a lot of the less efficient uses of various Perl
macros and functions, mostly from bulk88@hotmail.com.  Also
deal with the fact that older Perl's were not handling locale
setting in a consistent manner.  This means going back to the
less efficient but always correct method of ALWAYS copying the
old locale and switch to C and then restoring, for all Perl
releases prior to 5.19.0.  Discontinue support for Perl's prior
to v5.6.2.

10 years agoMake runperl normalize newlines with multiple output lines.
Craig A. Berry [Sat, 18 Jan 2014 19:27:57 +0000 (13:27 -0600)]
Make runperl normalize newlines with multiple output lines.

On VMS only, because rarely but occasionally (such as with
perl5db.t) runperl produces multiple lines of output and they
all need the same treatment.

10 years agoFix perl5db.t test 41 on VMS.
Craig A. Berry [Sat, 18 Jan 2014 19:22:25 +0000 (13:22 -0600)]
Fix perl5db.t test 41 on VMS.

We're getting newlines in between items, and the easiest way to
deal with it is make them explicit so we expect what we're getting
and it's done the same everywhere.

10 years agoext/POSIX/t/time.t: Conditionalize the use of setlocale/LC_TIME
Brian Fraser [Fri, 26 Apr 2013 07:10:16 +0000 (04:10 -0300)]
ext/POSIX/t/time.t: Conditionalize the use of setlocale/LC_TIME

On Android, all locales are simply disabled, which broke the assumption
that LC_TIME is always available.

10 years agot/op/threads-dirh.t: Only test telldir and seekdir if they are available
Brian Fraser [Sat, 18 May 2013 00:56:00 +0000 (21:56 -0300)]
t/op/threads-dirh.t: Only test telldir and seekdir if they are available

10 years agot/op/getpid.t: Silence undef warnings if getconf doesn't exist.
Brian Fraser [Thu, 16 May 2013 09:34:17 +0000 (06:34 -0300)]
t/op/getpid.t: Silence undef warnings if getconf doesn't exist.

If a platform has getppid() but not getconf and we're building a
threaded perl, this file would've shown undef warnings, although
no tests were affected.

10 years agot/op/magic.t: Comment for an unlink test
Jess Robinson [Fri, 19 Apr 2013 11:08:34 +0000 (12:08 +0100)]
t/op/magic.t: Comment for an unlink test

10 years agot/run/switches.t: Skip setlocale tests if !d_setlocale
Jess Robinson [Fri, 19 Apr 2013 11:08:34 +0000 (12:08 +0100)]
t/run/switches.t: Skip setlocale tests if !d_setlocale

10 years agot/op/taint.t: Skip crypt tests if !d_crypt
Jess Robinson [Fri, 19 Apr 2013 11:08:34 +0000 (12:08 +0100)]
t/op/taint.t: Skip crypt tests if !d_crypt

10 years agot/lib/warnings/9uninit: Skip crypt tests if !d_crypt
Jess Robinson [Fri, 19 Apr 2013 11:08:34 +0000 (12:08 +0100)]
t/lib/warnings/9uninit: Skip crypt tests if !d_crypt

10 years agoDynaLoader: Pure-perl mod2fname shouldn't use %Config at runtime
Brian Fraser [Sat, 18 Jan 2014 13:03:00 +0000 (10:03 -0300)]
DynaLoader: Pure-perl mod2fname shouldn't use %Config at runtime

This is somewhat obscure.  Previously, mod2fname would've tried
accessing $Config{dlext} each time it was called.  The reason this
can be problematic is that mod2fname can be called during global destruction,
after %Config is freed but before its magic is.  This was causing
Devel::GlobalDestruction's tests to fail on builds with -Dd_libname_unique.

This commit grabs the data we need when DynaLoader.pm is being built in
DynaLoader_pm.PL, so it no longer need to depend on %Config.

10 years agoIncrease $Hash::Util::FieldHash::VERSION to 1.14
Father Chrysostomos [Sat, 18 Jan 2014 13:52:08 +0000 (05:52 -0800)]
Increase $Hash::Util::FieldHash::VERSION to 1.14

10 years agoHash::Util::FieldHash: fix broken pod link
Father Chrysostomos [Sat, 18 Jan 2014 13:47:22 +0000 (05:47 -0800)]
Hash::Util::FieldHash: fix broken pod link

10 years agoIncrease $threads::shared::VERSION to 1.46
Father Chrysostomos [Sat, 18 Jan 2014 13:44:17 +0000 (05:44 -0800)]
Increase $threads::shared::VERSION to 1.46

10 years agoperldelta typo
Father Chrysostomos [Sat, 18 Jan 2014 13:42:03 +0000 (05:42 -0800)]
perldelta typo

10 years agothreads::shared: Don’t link to moving targets
Father Chrysostomos [Sat, 18 Jan 2014 13:36:52 +0000 (05:36 -0800)]
threads::shared: Don’t link to moving targets

The Scalar::Util documentation has changed, so the links are broken.
But we cannot just update the link targets, as threads::shared is
living a double life and may be installed along with an older
Scalar::Util.

10 years agoperldiag: Rewrap autoderef entries
Father Chrysostomos [Sat, 18 Jan 2014 01:39:38 +0000 (17:39 -0800)]
perldiag: Rewrap autoderef entries

for better splain output

10 years agoperldelta for 88c342510b9
Father Chrysostomos [Sat, 18 Jan 2014 01:32:17 +0000 (17:32 -0800)]
perldelta for 88c342510b9

10 years agoperldelta for 6567ce2473
Father Chrysostomos [Sat, 18 Jan 2014 01:28:56 +0000 (17:28 -0800)]
perldelta for 6567ce2473

10 years agoMention perlbug -p in perlhack.
Craig A. Berry [Sat, 18 Jan 2014 03:46:08 +0000 (21:46 -0600)]
Mention perlbug -p in perlhack.

Using git's --attach with perlbug -f actually mangled the patches,
making them harder to apply, but now we have a better way to do it.

10 years agoperldelta for perlbug changes.
Craig A. Berry [Sat, 18 Jan 2014 00:04:58 +0000 (18:04 -0600)]
perldelta for perlbug changes.

10 years agoMake perlbug Unicode-aware.
Craig A. Berry [Wed, 1 Jan 2014 18:31:02 +0000 (12:31 -0600)]
Make perlbug Unicode-aware.

Try to do input in whatever the locale wants and output raw in
hopes that will best survive mail transport.

Except when reading in a patch file, we'll also use raw for input
because there may be multiple encodings in the patch, and we'll
also use raw for input when reading in the report file that we've
written out raw.

We attempt to detect the locale encoding using the private and
undocumented _get_locale_encoding() function of the deprecated
encoding pragma module.  But it's what the open pragma does and
we protect ourselves by checking that it's available and falling
back to an empty layer specification ("<:") if we can't load that
function.  That should also give us something workable when there
is no dynamic loading, such as under miniperl.

10 years agoSwitch perlbug mail sender on VMS.
Craig A. Berry [Sat, 16 Nov 2013 02:55:58 +0000 (20:55 -0600)]
Switch perlbug mail sender on VMS.

The VMS mail utility can't do attachments because it always adds
a blank line in front of any headers you add.  So use the Send
From File utility, which has been documented and supported for
any release in the last decade and was latently present before
that.

It takes the whole message verbatim just like sendmail, but also
needs the envelope prepended.

10 years agoAdd perlbug -p option for attaching patches.
Craig A. Berry [Sun, 10 Nov 2013 00:42:57 +0000 (18:42 -0600)]
Add perlbug -p option for attaching patches.

Log files and other text attachments should also be fine as long
as they aren't big enough to be rejected by RT.

Only text attachments are supported, as other kinds would involve
wrestling with myriad MIME types and possibly content transfer
encodings.  This should be fine for binary patches, though, as
git format-patch encodes those in Base85, so the patch file itself
is still text.

10 years agoperldelta for 901ee108fe
Father Chrysostomos [Fri, 17 Jan 2014 15:51:23 +0000 (07:51 -0800)]
perldelta for 901ee108fe

10 years agoperldelta for ceaf124e0
Father Chrysostomos [Fri, 17 Jan 2014 15:43:08 +0000 (07:43 -0800)]
perldelta for ceaf124e0

10 years agoAdded config.arch to .gitignore
Brian Fraser [Fri, 17 Jan 2014 16:16:06 +0000 (13:16 -0300)]
Added config.arch to .gitignore

10 years agoconfig.h: Remove the exceptions for cross-compilation builds
Brian Fraser [Wed, 15 Jan 2014 09:42:35 +0000 (06:42 -0300)]
config.h: Remove the exceptions for cross-compilation builds

This makes it so that the values for MEM_ALIGNBYTES and BYTEORDER
are taken from config.sh, instead of always getting a default.

10 years agoINSTALL: Document -Dsysroot
Brian Fraser [Thu, 16 Jan 2014 11:15:10 +0000 (08:15 -0300)]
INSTALL: Document -Dsysroot

10 years agoAdd missing $run prefix to some Configure tests
Jess Robinson [Sat, 29 Dec 2012 21:27:13 +0000 (21:27 +0000)]
Add missing $run prefix to some Configure tests

10 years agoIntroduce $targetport to allow running on a non-standard ssh port
Jess Robinson [Tue, 15 Jan 2013 10:26:22 +0000 (10:26 +0000)]
Introduce $targetport to allow running on a non-standard ssh port

Such as when using user networking on qemu and redirecting a local port
to the emulator ssh

10 years agoStore the targetdir, targethost from Configure in config.sh for later.
Jess Robinson [Thu, 31 Jan 2013 14:12:31 +0000 (14:12 +0000)]
Store the targetdir, targethost from Configure in config.sh for later.

10 years agoConfigure: Remove "was file copied" check using run-ssh
Jess Robinson [Tue, 15 Jan 2013 10:26:22 +0000 (10:26 +0000)]
Configure: Remove "was file copied" check using run-ssh

This doesn't seem to be of much use.

10 years agoConfigure: If using targetarch, the computed binaries should stick
Brian Fraser [Tue, 19 Nov 2013 12:16:11 +0000 (09:16 -0300)]
Configure: If using targetarch, the computed binaries should stick

10 years agoConfigure: Don't skip the alignbytes test when crosscompiling
Brian Fraser [Mon, 13 Jan 2014 07:22:02 +0000 (04:22 -0300)]
Configure: Don't skip the alignbytes test when crosscompiling

10 years agoConfigure: Add $run to two tests
Brian Fraser [Mon, 13 Jan 2014 05:03:16 +0000 (02:03 -0300)]
Configure: Add $run to two tests

10 years agoConfigure: use $sysroot, if available, in checkccflags
Brian Fraser [Mon, 13 Jan 2014 05:00:43 +0000 (02:00 -0300)]
Configure: use $sysroot, if available, in checkccflags

If the user specified -Dsysroot but we don't use it, then the results can
be entirely off.

This also introduces an internal variable for Configure, _sysroot,
which is just "--sysroot=$sysroot", for use in places like checkccflags that
need --sysroot but don't need the other flags.

10 years agoConfigure: No need to skip the byteorder test when cross-compiling.
Brian Fraser [Sat, 11 Jan 2014 05:54:03 +0000 (02:54 -0300)]
Configure: No need to skip the byteorder test when cross-compiling.

This skip was added in 2001, but under the current model there's no
real reason to skip it.

10 years agoFix two Configure tests when targethost is set
Jess Robinson [Sat, 29 Dec 2012 21:23:01 +0000 (21:23 +0000)]
Fix two Configure tests when targethost is set

10 years agoConfigure: When cross-compiling, look for *-gcc* instead of *-*-gcc
Brian Fraser [Fri, 11 Oct 2013 19:52:48 +0000 (16:52 -0300)]
Configure: When cross-compiling, look for *-gcc* instead of *-*-gcc

Ditto with g++. This allows us to use, for example, ntox86-gcc or
x86_64-w64-mingw32-g++.exe to cross-compile, and have Configure detect
most things automatically.

10 years agoSet appropriate flags for linux or linux-like systems.
Jess Robinson [Sat, 29 Dec 2012 21:26:27 +0000 (21:26 +0000)]
Set appropriate flags for linux or linux-like systems.

This means that osnames that look like *linux*, like linux-androideabi
or linux-gnueabihf are treated like linux systems.

10 years agosv_buf_to_rw can be static
Father Chrysostomos [Fri, 17 Jan 2014 14:30:57 +0000 (06:30 -0800)]
sv_buf_to_rw can be static

sv_buf_to_ro needs to be non-static because op.c uses it, but
sv_buf_to_rw is only called from sv.c.

10 years agoAlways define sTHX as 0 when not using mem debug header
Father Chrysostomos [Fri, 17 Jan 2014 14:11:02 +0000 (06:11 -0800)]
Always define sTHX as 0 when not using mem debug header

I broke the threaded build in b001a0d149 by assuming that sTHX was
always set to 0 when memory debug headers were not in use.  That is
an easy assumption to make, so this commit makes that assumption true.
(And there is no reason it cannot be made true.  There is no need for
sTHX to be set under PERL_IMPLICIT_CONTEXT but not PERL_TRACK_MEMPOOL,
where sTHX was not even used before b001a0d149.)

10 years ago[Merge] Cow Tools
Father Chrysostomos [Fri, 17 Jan 2014 02:03:35 +0000 (18:03 -0800)]
[Merge] Cow Tools

This branch provides a PERL_DEBUG_READONLY_COW mode that turns COW
violations into crashes.  It also add documentation to perlguts
explaining how to handle COW strings in XS code.

There are two ‘known’ failures in IO::Compress’ tests.  A patch has
been sent upstream.

(Apologies to Gary Larson.)

10 years agoutil.c: A couple of defines to simplify #ifdef maze
Father Chrysostomos [Sun, 12 Jan 2014 00:45:18 +0000 (16:45 -0800)]
util.c: A couple of defines to simplify #ifdef maze

No real simplification in terms of the number of #ifdefs, but more
readability (hopefully).

10 years agoSkip t/re/uniprops.t under PERL_DEBUG_READONLY_COW
Father Chrysostomos [Fri, 3 Jan 2014 13:58:22 +0000 (05:58 -0800)]
Skip t/re/uniprops.t under PERL_DEBUG_READONLY_COW

Under Linux, using mmap for all memory allocation stops working when we
get up to 70,000 lines of code.  So just skip it.

10 years agoSvGROW should un-cow under PERL_OLD_COPY_ON_WRITE
Father Chrysostomos [Thu, 2 Jan 2014 20:39:05 +0000 (12:39 -0800)]
SvGROW should un-cow under PERL_OLD_COPY_ON_WRITE

Otherwise pp_uc (and presumably other pieces of code) will end up mod-
ifying shared buffers.

Brought to you by PERL_DEBUG_READONLY_COW.

10 years agoperldiag for new mprotect warnings
Father Chrysostomos [Mon, 30 Dec 2013 00:47:43 +0000 (16:47 -0800)]
perldiag for new mprotect warnings