| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
h2ph generates code of the form
unless(defined(&FOO)) {
sub FOO () {42;}
}
for a C macro like '#define FOO 42'.
The problem with that: 'sub' happens at compile time, 'unless' at runtime.
So the sub is unconditionally defined first, then the unless runs with
an empty body. This behavior was introduced in commit
3d271ce79d39df56470393916b3d33ff26db2c8b (the syntax errors there were
fixed in commit 4a8e146e38ec2045f1f817a7cb578e1b1f80f39f).
There are already two code paths there, one for indentation level > 0
(eval), the other for toplevel definitions (straight sub). This patch
unifies them to always use 'eval' / runtime definitions. This change
shortens the code and makes the conditions actually work.
It moves the check for '#define FOO FOO' further up because I don't
see why it only needs to be done if indentation == 0. I changed the
comparison to use a whitespace-agnostic regex because
'" \&$name" eq $new' looks too brittle (the redundant \ doesn't help).
|
|
|
|
|
|
| |
This will make the CPAN dist easier. For the perl core, we still need
substitutions to get the right she-bang as we don't go through EU::MM to fix it
for us. For that, we add utils/pod2html.PL.
|
|
|
|
|
|
|
| |
These tests were made optional in 2005 in commit 2a36bdc27 and
refer to files which are no longer generated during install.
To avoid confusion, the tests for these files have been removed.
|
| |
|
| |
|
| |
|
|
|
|
| |
It has been deprecated in 5.14. Now is the time to remove it.
|
|
|
|
|
|
|
|
|
| |
patch does:
perl -pi -e 's/$::opt_(\w)/$opt{$1}/g' perlbug.PL
adds my %opt decl, and in getopts.
drops no warnings 'once'
Signed-off-by: Jim Cromie <jim.cromie@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
System header conversion with "h2ph -a" is currently broken on Ubuntu
Natty and Oneiric (unless the gcc-multilib package is installed for
backward compatibility), resulting in things like
# perl -e 'require "syscall.ph"'
Can't locate asm/unistd.ph in @INC [...]
This happens because Ubuntu has switched to a 'multiarch' setup, see
<https://wiki.ubuntu.com/MultiarchSpec> for details.
The asm subdirectory isn't in $Config{usrinc} anymore: /usr/include/asm
is now /usr/include/x86_64-linux-gnu/asm. (The third component of the
new path varies with the actual architecture.)
gcc --print-search-dirs doesn't really tell anything about where gcc
looks for the include directories, it was just used to find the gcc
internal directory prefix.
Parse the output of "gcc -v -E" instead, and append $Config{usrinc}
for safety. Duplicates shouldn't matter.
The h2ph "-a" switch isn't currently tested automatically, and that
seems nontrivial to do portably. Manual testing was done with
# mkdir ttt
# ./perl -Ilib ./utils/h2ph -a -d $(pwd)/ttt syscall.h
The gcc invocation has been tested to work with gcc 4.6, 4.1, and 3.3.
http://bugs.debian.org/625808
https://bugs.launchpad.net/bugs/777903
|
|
|
|
|
|
| |
(There's a less than idea situation with a somewhat complex history of trying
to resolve it, where utils/Makefile is in the repository for the use of
platforms unable to run utils/Makefile.SH)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I have spotted a couple of missing dependencies in the makefiles
utils/Makefile.SH and x2p/Makefile.SH that prevent json_pp, s2p,
psed, and find2perl from being rebuilt after configuration changes.
This could cause trouble if the install prefix has been changed,
so that the shebang line of these scripts from a previous build
no longer matches the target location of the perl binary.
A workaround would be to always "make clean" after changes to
the configuration, which sounds reasonable anyway. That said,
most of the other tools do have config.sh properly listed as a
dependency and I don't see why those four should not.
I have attached a small patch against perl-5.13.11 to fix this.
The bug is also present in the latest stable release as of this
writing, perl-5.12.3, except that json_pp is not included there.
|
|
|
|
| |
It's not actually on CPAN yet, but it will be in the next couple of days.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This way the script can easily be part of the CPAN distribution, where
ExtUtils::MakeMaker will do its shebang munging.
In the core, we still have utils/dprofpp.PL, which also does shebang munging and
takes care of creating `dprofpp.com' instead of just `dprofpp' on VMS, which
ExtUtils::MakeMaker doesn't seem to be up to yet.
To make this work, some things had to be moved from script-generation-time to
run-time:
* location of the stty binary
This is probably better for binary perl distributions anyway
* Devel::DProf version detection
This is needed for `dprofpp -V'. The version number used to be copied into
the script, but is now determined by actually loading Devel::DProf.
In order for this to work it's necessary to be able to load DProf without
causing profiling to start. For that, starting of the profiler has been moved
to `import', causing
require Devel::DProf;
to not trigger it anymore, while
use Devel::DProf;
(and therefore perl -d:DProf) still does.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
[DELTA]
0.37_04 - Wed Feb 16 15:27:21 EST 2011
[OTHER]
- moved scripts/ to bin/ for less confusing porting to bleadperl
0.37_03 - Wed Feb 16 09:54:05 EST 2011
[BUG FIXES]
- removed an irrelevant test in t/actions/installdeps.t that was causing
failures on some Cygwin platforms
[OTHER]
- dropped configure_requires as some CPAN clients apparently get
confused by having things in both configure_requires and requires
- bumped Parse::CPAN::Meta build prereq to 1.4401
- bumped CPAN::Meta prereq to 2.110420
0.37_02 - Mon Feb 7 21:05:30 EST 2011
[BUG FIXES]
- bumped CPAN::Meta prereq to 2.110390 to avoid a regression in 2.110360
0.37_01 - Thu Feb 3 03:44:38 EST 2011
[ENHANCEMENTS]
- Generates META.json and MYMETA.json consistent with version 2 of the
CPAN Meta Spec. [David Golden]
[BUG FIXES]
- t/signature.t now uses a mocked Module::Signature; this should be
more robust across platforms as it only needs to confirm that
Module::Build is calling Module::Signature when expected
[OTHER]
- Added CPAN::Meta and Parse::CPAN::Meta to prerequisites and dropped
CPAN::Meta::YAML
0.3624 - Thu Jan 27 11:38:39 EST 2011
- Fixed pod2html directory bugs and fixed creation of spurious blib
directory in core perl directory when running install.t (RT#63003)
[Chris Williams]
0.3623 - Wed Jan 26 17:45:30 EST 2011
- Fixed bugs involving bootstrapping configure_requires prerequisites
on older CPANPLUS clients or for either CPAN/CPANPLUS when using
the compatibility Makefile.PL
- Added diagnostic output when configure_requires are missing for
the benefit of users doing manual installation
|
|
|
|
|
|
|
| |
Many systems thesedays don't have a valid internet domain name and
perlbug@perl.org does not accept email with a return-path that does not
resolve. Therefore pass the user's address to sendmail so it's less
likely to get stuck in a mail queue somewhere.
|
| |
|
|
|
|
|
|
|
|
|
| |
# New Ticket Created by (Peter J. Acklam)
# Please include the string: [perl #81914]
# in the subject line of all future correspondence about this issue.
# <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=81914 >
Signed-off-by: Abigail <abigail@abigail.be>
|
|
|
|
|
| |
Per discussions with Jesse Vincent, JSON::PP has been added
to the Perl core to support the new CPAN meta file specification
|
|
|
|
|
| |
the "right" thing and insert a valid "From:", not all of them do,
potentially resulting in dropped mail.
|
|
|
|
|
|
|
|
|
|
|
| |
[DELTA]
* important changes in version 1.70 15/11/2010
- Add ptargrep utility courtesy of Grant McLean
** I think I found everywhere that needed updating
by grepping for 'ptardiff' and adding where needed.
This stuff is definitively not intuitive.
|
|
|
|
|
|
|
|
| |
The x2p and utils .PL extractions use the Cwd module, which is not
available in miniperl in a static build. (For a dynamic build, miniperl
only loads the pure perl portion of Cwd, but building the whole extension
ensures that the pure perl part is correctly built and available. It might
be cleaner just to always require the full perl.)
|
|
|
|
|
| |
XS-APItest-KeywordRPN has turned out to be less useful as an independent
module than expected, and less strictly about RPN than it originally was.
|
|
|
|
|
|
|
|
|
|
| |
It looks like h2ph makes copious use of global variables. As a result, I can
commit this evil for a minimal patch. No code was changed moving it into the
sub other than passing $proto, which is the only non-global used (but not
modified).
I tried a 5.12.0 build with this patch and it seems to be passing tests.
There is a lib/h2ph.t file but I don't know what it tests exactly.
|
|
|
|
| |
Both Ken and David agree with this.
|
|
|
|
|
|
|
|
|
|
| |
The code that guessed a default sender address would under some
circumstances not display this guess to the user with the option to change
it. Specifically, if $Config{cf_me} eq {login id of the user running
perlbug}.
In my case, cf_email got set at build time (Configure default) of
'davem@pigeon.(none)', which was then silently used. Not good!
|
| |
|
| |
|
|
|
|
| |
Signed-off-by: H.Merijn Brand <h.m.brand@xs4all.nl>
|
| |
|
|
|
|
|
| |
This patch also make PERL_GIT_UNCOMMITTED_CHANGES useful and thus avoids
always adding the "*" to the 'perl -v' output.
|
|
|
|
|
| |
perlbug doesn't check the return status of Mail::Send and so reports
"Message sent" even if it hasn't:
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Date: Tue, 27 Oct 2009 01:29:40 +0000
From: Zefram <zefram@fysh.org>
To: perl5-porters@perl.org
Subject: bareword sub lookups
Attached is a patch that changes how the tokeniser looks up subroutines,
when they're referenced by a bareword, for prototype and const-sub
purposes. Formerly, it has looked up bareword subs directly in the
package, which is contrary to the way the generated op tree looks up
the sub, via an rv2cv op. The patch makes the tokeniser generate the
rv2cv op earlier, and dig around in that.
The motivation for this is to allow modules to hook the rv2cv op
creation, to affect the name->subroutine lookup process. Currently,
such hooking affects op execution as intended, but everything goes wrong
with a bareword ref where the tokeniser looks at some unrelated CV,
or a blank space, in the package. With the patch in place, an rv2cv
hook correctly affects the tokeniser and therefore the prototype-based
aspects of parsing.
The patch also changes ck_subr (which applies the argument context and
checking parts of prototype behaviour) to handle subs referenced by an
RV const op inside the rv2cv, where formerly it would only handle a gv
op inside the rv2cv. This is to support the most likely kind of modified
rv2cv op.
[This commit includes the Makefile.PL for XS-APITest-KeywordRPN missing
from the original patch, as well as updates to perldiag.pod and a
MANIFEST sort]
|
| |
|
|
|
|
|
| |
Move the shasum binary to the top level, to remove the need for a MAP entry in
Maintainers.PL
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Follow-up to b78fd7160df924147ff968f6dc2796473af0c484.
|
|
|
|
| |
Follow-up to 4822030c168a634e0e2adb4eaa6369019c959730.
|
|
|
|
|
|
|
|
|
|
| |
t/lib/TieOut.pm is now from Test::Simple.
Only the tests needed changing. The exceptions to BEGIN/PERL_CORE/INC
boilerplate removal were two instances of "../.." becoming "../../../..",
and changing an %INC test from "strict.pm" to "less.pm", as TestInit causes
strict to be loaded via a relative path, when it loads File::Spec to convert
all paths from relative to absolute.
|