Nicholas Clark [Sat, 31 Jan 2009 20:16:43 +0000]
Move the static/dynamic/nonxs LINKTYPE logic from make_ext.pl to Makefile.SH
This simplifies make_ext.pl considerably. Given that the first use of 'passthru'
was in
40000a8c37c35cc00114329ca0add46bca36a0ec in 1995, possibly we should have
done this particular refactoring a little while ago.
Nicholas Clark [Sat, 31 Jan 2009 17:16:21 +0000]
Use the build_extension() routine from win32/buildext.pl
Swap from $passthru to @pass_through, and $run to @run.
Use the list form of system everywhere.
Hard code 'Makefile' as it does not vary.
Correct the perlism 'chdir' in the *clean.sh writing code.
Nicholas Clark [Sat, 31 Jan 2009 17:12:40 +0000]
Create build_extension() to encapsulate the per-extension logic.
Use @pass_through to hold extra VARIABLE=value assignments.
Add @run to hold optional build-time run prefix.
Use the list form of system for everything.
Always call a target - default to 'all' if not is passed in.
Merge the alternate logic for selecting -MCross from make_ext.pl
Nicholas Clark [Sat, 31 Jan 2009 13:56:28 +0000]
Make dir and target --options to buildext.pl. Update the documentation.
Nicholas Clark [Sat, 31 Jan 2009 13:39:04 +0000]
Make lib/Config_heavy.pl part of $(CONFIGPM) as the build ordering is now sane.
Effectively $(CONFIGPM_EXTRA) becomes $(CONFIGPM) and $(CONFIGPM) becomes
$(CONFIGPM_FROM_CONFIG_SH). Mention lib/Config_heavy.pl as something that
is built by running make_patchnum.pl
Hopefully this avoids warnings from Config.pm during the build.
Nicholas Clark [Sat, 31 Jan 2009 12:20:26 +0000]
The hack to write out realclean.sh and veryclean.sh is for Unix only.
Nicholas Clark [Fri, 30 Jan 2009 23:39:15 +0000]
Move the target generic logic above the extension specific logic.
This will make it easier to refactor to converge on the Win32 (and VMS)
equivalents, which set things up, then loop around all appropriate extensions.
Nicholas Clark [Fri, 30 Jan 2009 23:12:24 +0000]
The logic to set $makefile to 'Makefile.old' can't work, so remove it.
(Makefile.old is created by running make clean in an extension, and make clean
at the top level removes ./miniperl, so there won't be a miniperl to run
make_ext.pl. The Makefile.old logic was valid for the shell script version.
Remove $makeopts, which was missed from the make command in the transcription
from shell to Perl.
Nicholas Clark [Fri, 30 Jan 2009 22:52:50 +0000]
Eliminate $makeargs by prepending its contents to $passthru.
Nicholas Clark [Fri, 30 Jan 2009 20:45:48 +0000]
Use Config; rather than parsing config.sh and pushing it into %ENV, a literal
transcription of the make_ext shell script. (We'll soon see if anything we
called was using its environment rather than Config.pm)
Nicholas Clark [Fri, 30 Jan 2009 19:20:08 +0000]
Fix paths on new pod2usage2 tests to work in the core.
Nicholas Clark [Fri, 30 Jan 2009 17:53:45 +0000]
Replace the one file timestamp dependency check with a call to 'make config'
The timestamp check was from the original checkin of buidlext.pl in 2001
(
17af6fb0658e86e2f4a472e3392fc688e0c25b43) by Nick I-S.
The 'make config' approach of make_ext was in the 5.000 release.
Craig A. Berry [Fri, 30 Jan 2009 16:08:19 +0000]
Pod correction for ExtUtils::XSSymSet.
Steve Hay [Fri, 30 Jan 2009 10:27:25 +0000]
Upgrade to Pod-Parser-1.36.
Three local changes remain in blead:
Blank lines "between" verbatim sections are now acceptible:
http://perl5.git.perl.org/perl.git/commitdiff/caa547d
Be less picky about what constitutes "numeric lists" in Pod:
http://perl5.git.perl.org/perl.git/commitdiff/4df4f5d
Changes made to contains_pod.t when upgrading to 1.34:
http://perl5.git.perl.org/perl.git/commitdiff/fb59f97
Gisle Aas [Thu, 29 Jan 2009 16:23:50 +0000]
Tweaks to pod/perlrepository.pod
Mention the github mirror early.
Document the perl5.git.perl.org:/perl.git repository url form.
Use 'git commit -a -m ...' throughout.
Mention that 'git commit -a --amend' is very useful.
The easiest way to inspect the last commit is 'git show HEAD'.
Mention 'git checkout -f' as the way to revert all your edits.
Nicholas Clark [Thu, 29 Jan 2009 20:00:48 +0000]
win32/ext was removed by change 30379 in 2007, so no need to check for it in the
Makefiles.
Nicholas Clark [Thu, 29 Jan 2009 21:13:01 +0000]
Add --options with arguments to make_ext.pl. Pass $target as --target=...
Treat all arguments that /=/ as passthrough, the rest being extensions.
This will converge the argument passing conventions for make_ext.pl and
win32/buildext.pl
John Malmberg [Thu, 29 Jan 2009 04:29:32 +0000]
vmspath without thread context.
This adds a vmspath routine that does not use a thread context.
Message-id: <
498130AC.7000102@gmail.com>
Gisle Aas [Thu, 29 Jan 2009 20:00:50 +0000]
Revert "do_exec() is a mathom, so call its replacement directly"
The change breaks the build on Windows as this function is really
only a mathom when PERL_DEFAULT_DO_EXEC3_IMPLEMENTATION is defined.
This reverts commit
06ba78de6df7f363272e855cc63710a634eb6100.
Steve Hay [Thu, 29 Jan 2009 18:05:53 +0000]
Upgrade to Win32-0.39.
Nicholas Clark [Thu, 29 Jan 2009 16:57:34 +0000]
Add an explicit --all option to buildext.pl, rather than defaulting to it if
--static and --dynamic are not present. Make it run under strict.
Gisle Aas [Thu, 29 Jan 2009 15:21:48 +0000]
do_exec() is a mathom, so call its replacement directly
Nicholas Clark [Wed, 28 Jan 2009 22:55:26 +0000]
Pass $(MAKE) as one quoted commandline argument, to converge with make_ext.pl
Nicholas Clark [Wed, 28 Jan 2009 15:10:42 +0000]
Move ext/util/make_ext.pl to the top level.
Nicholas Clark [Wed, 28 Jan 2009 14:33:34 +0000]
Fold ext/util/make_ext_cross into ext/util/make_ext.pl, and delete it.
Add --option argument parsing to make_ext.pl (swiped from buildext.pl).
Add a --cross option to add -MCross to the Makefile.PL line.
Change Cross/Makefile-cross-SH to call "ext/util/make_ext.pl --cross ..."
Nicholas Clark [Sun, 25 Jan 2009 16:45:04 +0000]
In the code for printing -v, replace longhand newSVpvn() with newSVpvs(), and
avoid needing a sv_catpvs().
Nicholas Clark [Tue, 27 Jan 2009 21:59:02 +0000]
In buildext.pl, refactor the @ARGV parsing into a single loop.
Karl [Tue, 27 Jan 2009 02:31:42 +0000]
Change to use 5.1 Unicode file versions
Karl [Mon, 26 Jan 2009 23:43:57 +0000]
unicore Makefile didn't clean sub-sub directories
Jerry D. Hedden [Mon, 26 Jan 2009 19:25:32 +0000]
Silence verbosity in lib/File/Copy.t during 'make test' in core
Nicholas Clark [Mon, 26 Jan 2009 22:49:19 +0000]
Break the --create-perllibst-h and --list-static-libs options out of buildext.pl
into separate scripts.
Max Maischein [Mon, 26 Jan 2009 20:49:22 +0000]
Make t/win32/system.t use the more common compiler check
Hello again,
much of the Perl test suite uses $Config{cc} =~ /^gcc/i to determine
whether the compiler looks/acts like gcc. This patch enables that
behaviour in t/win32/system.t too.
The reason behind this is that I have a batch file named gcc-ccache.cmd,
which I give to dmake as my compiler, and having things like this work
everywhere in Perl is nice.
Possibly, a more sane way of keeping the kind of compiler handy would be
to make $Config{CCTYPE} come into existence and have it store "gcc",
"msvc" and what other cc types we support.
-max
From
f2e73cb5249433631fd4db5b46f62d05ff35526c Mon Sep 17 00:00:00 2001
From: Max Maischein <corion@corion.net>
Date: Mon, 26 Jan 2009 21:44:36 +0100
Subject: [PATCH] Unbreak the test if your compiler looks like gcc
Leon Brocard [Mon, 26 Jan 2009 15:07:11 +0000]
Add a section on how to submit a patch using GitHub
Leon Brocard [Mon, 26 Jan 2009 13:55:57 +0000]
Run podtidy on pod/perlrepository.pod and document how to do so
Abigail [Mon, 26 Jan 2009 13:19:29 +0000]
Tests to check cp() doesn't drop set[eu]id bits.
Also, calculate the number of skipped tests instead of having a hard
coded number.
Abigail [Mon, 26 Jan 2009 12:54:48 +0000]
Check for the group entry returned by getpwuid as well when testing
if a file belongs to the group the user is in.
Karl [Mon, 26 Jan 2009 02:02:13 +0000]
Fix memory leak
John Malmberg [Sun, 25 Jan 2009 01:31:39 +0000]
vms fileify_dirspec refactor / Unix mode fixes
This patch refactors the fileify_dirspec routine to not need a thread
context, and also fixes some issue with Unix compatibility mode.
Message-id: <
497BC0FB.5000506@gmail.com>
Steffen Mueller [Sun, 25 Jan 2009 22:49:43 +0000]
According to Yuval, Tie::RefHash is maintained at github.com/nothingmuch/tie-refhash/, so blead can't be upstream
John Malmberg [Fri, 23 Jan 2009 04:45:19 +0000]
vms glob patches
This updates the vms Perl_vms_start_glob routine to behave more like
Unix when the decc$filename_unix_report is active.
It also fixes the behavior of Unix directory syntax when either the
decc$filename_unix_report or decc$efs_charset options are active.
Message-id: <
49794B5F.8030401@gmail.com>
fawaka@gmail.com (via RT) [Sun, 25 Jan 2009 18:24:16 +0000]
[perl #57176] Including XSUB.h before perl.h gives nasty error
Rafael Garcia-Suarez [Sun, 25 Jan 2009 17:56:42 +0000]
Add perlmini.c to .gitignore
Lanning, Scott [Sun, 25 Jan 2009 17:55:25 +0000]
Some POD patches for PerlIO and PerlIO::var
Mostly just grammar.
Nicholas Clark [Sun, 25 Jan 2009 16:42:51 +0000]
Max Maischein [Sun, 25 Jan 2009 16:38:10 +0000]
Unbreak build on Windows
Hello p5p,
the recent shakearound of make_patchnum.pl broke the build on Windows,
because make_patchnum.pl lives in the build root, but the Makefile lives
in ./win32, so all targets need to be relative to ./win32.
I've only tested the patch for makefile.mk, as I don't have nmake.exe.
The fix is so simple that it should work on Makefile as well. These are
famous last words.
-max
>From
f4d9e594a2a3ea743e9c381d1836a85ada15af85 Mon Sep 17 00:00:00 2001
From: Max Maischein <corion@corion.net>
Date: Sun, 25 Jan 2009 17:34:39 +0100
Subject: [PATCH] Unbreak build on Windows
Rafael Garcia-Suarez [Sun, 25 Jan 2009 15:59:40 +0000]
Merge branch 'Eefix' into blead
Rafael Garcia-Suarez [Sun, 25 Jan 2009 15:57:19 +0000]
Document that $0 is set to "-e" when perl is run with -e or -E
Rafael Garcia-Suarez [Sun, 25 Jan 2009 15:54:16 +0000]
Revert "show -E in error message when called with -E"
This reverts commit
efdc43f5015438920ce11f05539e55cb02940377.
Charles Bailey [Sat, 24 Jan 2009 00:11:45 +0000]
Move cp(1)-like permission changes from copy to cp,
and add setid bit handling
- Moves the permission-changing code to File::Copy::cp(), making it
non-identical to File::Copy::copy(). I think this is a decent
compromise, retaining backwards compatibility in the "primary"
routine, while allowing people who chose cp() to get more POSIXy
semantics. It does break backwards compatibility of cp() wrt
permissions. I can find a handful of examples in CPAN, for which I
hope smokers will give some feedback. As for the DARKpan, who knows .
. .
- Expands the permission changing in cp() a bit to cover the rest of
what cp(1) claims on the local POSIX box.
- Removes Fcntl from the mix, to eliminate some build-time hoops.
- Shifts Abigail's permission tests to cp(), and adds parallel tests for copy().
- Documents the permission-related behavior in more detail.
Jerry D. Hedden [Wed, 21 Jan 2009 16:03:38 +0000]
Code refs aren't lockable
Remove the check for code refs in pp_lock.
For debugging, assert that the ref is not a code ref
(per Dave Mitchell's suggestion).
Nicholas Clark [Sun, 25 Jan 2009 11:50:01 +0000]
Remove stock_git_version.h as nothing uses it any more.
Nicholas Clark [Sun, 25 Jan 2009 11:22:41 +0000]
Regenerate uconfig.h
Nicholas Clark [Sun, 25 Jan 2009 11:22:21 +0000]
microperl has no idea about 64 bit types, so don't use the y2038 code for it.
Nicholas Clark [Sun, 25 Jan 2009 11:13:38 +0000]
microperl also needs a canned git config.
Nicholas Clark [Sun, 25 Jan 2009 10:33:41 +0000]
Port
486cd780047ff22471c5cbe417911a042ae23962 to win32/ Makefiles.
(miniperl no longer needs git_version.h, perl.o explictly depends on it)
Nicholas Clark [Sat, 24 Jan 2009 17:45:57 +0000]
Add -DPERL_IS_MINIPERL when building the object files for miniperl.exe
Nicholas Clark [Sat, 24 Jan 2009 17:10:08 +0000]
The exit code of make_patchnum.pl is no longer used, so make it return 0.
Remove special-casing from all the makefiles that coped with it returning non-0.
John Malmberg [Sat, 24 Jan 2009 16:28:58 +0000]
VMS has a mode where it preserved case, and also has a mode where it
returns filenames in UNIX syntax.
This updates this test to handle these modes.
Craig A. Berry [Sat, 24 Jan 2009 03:07:49 +0000]
Build miniperl with a special version of perl.c on VMS as well.
Nicholas Clark [Fri, 23 Jan 2009 22:01:26 +0000]
suidperl goes.
Nicholas Clark [Fri, 23 Jan 2009 20:05:07 +0000]
sperl.o also needs to depend on git_version.h
Nicholas Clark [Fri, 23 Jan 2009 22:40:18 +0000]
Remove redundant #ifndef SETUID_SCRIPTS_ARE_SECURE_NOW (and #endif).
Redundant because it was always true, as it was inside the #else of
an #ifdef SETUID_SCRIPTS_ARE_SECURE_NOW
(Another bit of cleanup following change 32997)
Marcus Holland-Moritz [Fri, 23 Jan 2009 21:11:38 +0000]
Ensure that C++ modules can be built against a perl configured with -DPERL_GLOBAL_STRUCT_PRIVATE.
Perl_GetVarsPrivate() could not be seen from within a module built
with a C++ compiler if the perl binary was built with a C compiler,
as the prototype was not 'extern "C"' for C++.
The change moves the EXTERN_C defines so they can be used for the
prototype of Perl_GetVarsPrivate().
Marcus Holland-Moritz [Fri, 23 Jan 2009 17:48:37 +0000]
Upgrade to Devel::PPPort 3.16
Nicholas Clark [Fri, 23 Jan 2009 16:41:31 +0000]
Amend patchlevel.h so that git_version.h is only #include""ed for perl.
miniperl builds with canned data equivalent to stock_git_version.h.
git_version.h becomes an explicit dependency for perl.o, make_patchnum.pl is
explicitly run to create it, and no sub-makes are spawned with their inherent
race conditions and consequent strange build failures.
Nicholas Clark [Thu, 22 Jan 2009 17:19:50 +0000]
Add a perlmini.o and perlmini.c akin to opmini.o and opmini.c, for ./miniperl
This will allow a defined order for generating git_version.h and then perl.o
Rafael Garcia-Suarez [Fri, 23 Jan 2009 13:56:36 +0000]
Fix deparsing of constant subroutines
This was broken in commit
2990415a4519bc3988d7224ae15100c3e9e901ee
where the inlined constants were deparsed also _inside_ the subroutine
that defined them: that is, before they were available to the parser
Steve Hay [Thu, 22 Jan 2009 09:51:13 +0000]
Upgrade to Encode-2.27
Nicholas Clark [Wed, 21 Jan 2009 17:08:36 +0000]
Note that nothing in core uses Perl_get_cv any more, and why it is hard to move
it to mathoms.c
Nicholas Clark [Wed, 21 Jan 2009 17:06:14 +0000]
Convert db_get_cv() to use get_cvn_flags() as it already knows the length of
the string that it is passing.
Nicholas Clark [Wed, 21 Jan 2009 16:41:58 +0000]
Add get_cvs() as a shortcut for STR_WITH_LEN() and Perl_get_cvn_flags(), and
use it where possible.
Nicholas Clark [Wed, 21 Jan 2009 16:12:06 +0000]
In attrs::get(), use Perl_get_cvn_flags() rather than perl_get_cv().
Nicholas Clark [Wed, 21 Jan 2009 15:55:25 +0000]
Correct the form of the flags passed to perl_get_cv().
Nicholas Clark [Wed, 21 Jan 2009 15:30:05 +0000]
Correct the form of the flags passed to perl_get_sv() in threads.xs
Nicholas Clark [Wed, 21 Jan 2009 15:14:57 +0000]
Correct the form of the flags passed to perl_get_sv() in Storable.xs
Nicholas Clark [Wed, 21 Jan 2009 15:03:03 +0000]
Update the documentation of get_sv() to note that it calls Perl_gv_fetchpv(),
and hence the 'create' argument is actually 'flags'. Fix core code and
documentation that used TRUE or FALSE to use 0 or GV_ADD.
Nicholas Clark [Wed, 21 Jan 2009 13:36:08 +0000]
Update the documentation of get_av() to note that it calls Perl_gv_fetchpv(),
and hence the 'create' argument is actually 'flags'. Fix code and documentation
that used TRUE or FALSE to use 0 or GV_ADD.
Nicholas Clark [Wed, 21 Jan 2009 12:12:12 +0000]
Update the documentation of get_hv() to note that it calls Perl_gv_fetchpv(),
and hence the 'create' argument is actually 'flags'. Fix code and documentation
that used TRUE or FALSE to use 0 or GV_ADD.
Ricardo SIGNES [Tue, 20 Jan 2009 23:32:17 +0000]
now get non-dual lived code
Ricardo SIGNES [Tue, 20 Jan 2009 23:21:34 +0000]
remove some indirect method calls, add a caveat
Nicholas Clark [Wed, 21 Jan 2009 13:55:48 +0000]
Correct the call to get_hv() to use GV_ADD for the flags, rather than TRUE.
Frank Wiegand [Wed, 21 Jan 2009 14:28:39 +0000]
POD typos
David Golden [Wed, 21 Jan 2009 12:42:57 +0000]
Make DB_File use -ldb on MSWin32 with a gcc compiler
DB_File was forcing "-llibdb" for all MSWin32 builds. That's an MSVC
thing, so this patch makes it use "-ldb" if the compiler is gcc (e.g.
for Strawberry Perl and friends).
Paul Marquess suggested I send a patch to p5p and will update the
source on CPAN when he has a dev box again.
Message-Id: <
1232541093-2247-1-git-send-email-dagolden@cpan.org>
Plus: bump $VERSION.
Nicholas Clark [Wed, 21 Jan 2009 12:18:29 +0000]
Nicholas Clark [Wed, 21 Jan 2009 11:25:42 +0000]
Change 28063 should have removed the call to savepvn() from Perl_newCONSTSUB()
completely when it moved the allocation logic inside Perl_newXS_flags(). Whilst
Rafael's fix in 29107 correctly plugged my leak, this commit is the actual
correction. (Commits
77004dee2553ce034a8a58b2b2849e3656df46c3 and
c3db7d9213b09a5852dab00368488f63a7625b9e respectively)
Jos I. Boumans [Tue, 20 Jan 2009 15:05:37 +0000]
Upgrade to Archive-Tar-1.44
Message-Id: <
6B717AA7-2972-439F-9B89-669E15353EBC@dwim.org>
Rafael Garcia-Suarez [Tue, 20 Jan 2009 10:45:35 +0000]
Merge branch 'empty-destroy-optimisation' into blead
Rafael Garcia-Suarez [Tue, 20 Jan 2009 08:13:06 +0000]
Remove perltodo entry about empty destructors
Rafael Garcia-Suarez [Tue, 20 Jan 2009 08:11:18 +0000]
Optimize away calls to empty DESTROY methods
John Malmberg [Sun, 18 Jan 2009 19:12:18 +0000]
Pathify_dirspec replacement
This replaces pathify_dirspec in vms.c with a new version that better
handles the extended character set.
The [.vms.ext]filespec.t has been adjusted for to support both the
default mode and the extended file spec mode.
This fixes an inconsistency where now vmsify and vmspath will return the
same result for similar input.
Message-ID: <
49737F12.6010803@gmail.com>
Rafael Garcia-Suarez [Mon, 19 Jan 2009 16:37:29 +0000]
Upgrade to Module::Load 0.14
Jos I. Boumans [Mon, 19 Jan 2009 16:10:02 +0000]
add-package fix
David patched add-package to support git, but unfortunately introduced
a portability issue for 'cp'; the --archive option isn't supported on
OSX. So, the attached patch changes --archive to it's most equal single
character options that are portable.
Rafael Garcia-Suarez [Mon, 19 Jan 2009 16:08:54 +0000]
Upgrade to Module::Load::Conditional 0.30
Jos I. Boumans [Mon, 19 Jan 2009 15:51:21 +0000]
Update Maintainers.pl
I noticed that Maintainers.pl wasn't listing my modules as having the
CPAN version being canonical. The attached patch fixes this.
It also changes the owner of CPANPLUS::Dist::Build to kwilliams
(as per the PAUSE permissions) and removes CPANPLUS::Dist as a
seperate distribution; it always came with CPANPLUS.
H.Merijn Brand [Mon, 19 Jan 2009 15:49:09 +0000]
SetUID scripts are deprecated for 5.12
Subject: disabling suidperl in Configure
From: Nicholas Clark <nick@ccl4.org>
Date: Sun, 18 Jan 2009 11:51:39 +0000
Message-ID: <
20090118115139.GX2919@plum.flirble.org>
Karl [Mon, 19 Jan 2009 02:51:43 +0000]
Add NameAliases.txt; regenerate mktables.list
The NameAliases.txt is an official Unicode database file. It contains
normative names of Unicode code points that any Unicode implementation
is supposed to recognize. These are actually corrections to names that
have been published in UnicodeData.txt erroroneously, but to avoid
breaking code that uses the erroneous name, the folks at Unicode create
these additional ones. (There are about a dozen entries now)
I changed mktables to append these names to Names.pl for use by
charnames. This might break any existing code that relies on that file
being sorted in numerical code point order. But if I added them sorted,
it might break code that relied on there being only one entry per code
point. It's not clear that this file format is considered published and
the api can't change. The point of the file is to go from the name to
the code point anyway, so the order shouldn't matter to any application
using it for its intended purpose.
mktables.list was not regenerated for 5.1, so was out-of-date. The
ordering was random (Linux inode order), so the difference listing for
it is large. I did sort the lists manually and compared them, and they
look ok. I changed mktables to sort the list, so that this problem
doesn't arise again.
I also corrected some typos in mktables, and added a clarifing comment.
Niko Tyni [Sun, 19 Oct 2008 20:21:30 +0000]
Fix h2xs enum handling with C++ comments
Contrary to the comment in the code, h2xs mishandles enums that
contain C++ style comments.
An example of a failing header:
enum {
A = -1, // negative one
// with more comments
B = -2, // negative two
C = -3 // negative two
};
which generates exported constants for 'A' and 'negative'.
The patch is slightly modified from the one by Daniel Burr in
http://bugs.debian.org/320286
Rafael Garcia-Suarez [Mon, 19 Jan 2009 13:01:07 +0000]
Mark podlators as preferably to be patched upstream
Rafael Garcia-Suarez [Mon, 19 Jan 2009 13:00:22 +0000]
Upgrade to podlators 2.2.2
Rafael Garcia-Suarez [Mon, 19 Jan 2009 11:28:00 +0000]
Add warning category
in perldiag.pod for new warning "Can't fork, trying again in 5 seconds"
added in the parent commit