| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
Configure changes
|
|
|
|
|
|
| |
Tried to be as consistent as possible.
Removed all trailing whitespace of changed files.
Resyncs Glossary from previously missed updates.
|
|
|
|
| |
Now backported to upstream dist/meta
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Perl uses variadic functions, so we need at least one of the relevant
mechanisms available; for this reason, the CompCert C compiler is unsuitable
for our purposes.
If the person building Perl wants to carry on regardless, they can use the
"-K" option.
This partly addresses RT#112494.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, Configure used to try to post-process the output of uname -a.
This was to support Xenix, which gave output like this:
sysname=XENIX
nodename=whatever
release=2.3.2 .. etc...
Configure attempted to parse that output and build up a $myuname variable
that resembled those generated on traditional Unix systems.
More recently, a user reported uname -a output on a CVS checkout
of NetBSD that also included information such as
root=username@hostname:/dirname module=src branch=HEAD
The Configure code misparsed that and ended up throwing most of it away.
This patch takes the simplest approach and just skips the attempt to
process the Xenix output.
This is based on commit 05a827803ab3908a795df94f6ed3890e24a6df2 in the
metaconfig repository.
|
|
|
|
| |
(now synced with meta)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch adds 'use_versioned_archname' as a Configure option.
When set, it includes 'api_versionstring' in 'archname'. E.g.
x86_64-linux-5.13.6-thread-multi. It is unset by default.
This feature was requested by Tim Bunce, who observed that
INSTALL_BASE creates a library structure that does not
differentiate by perl version. Instead, it places architecture
specific files in "$install_base/lib/perl5/$archname". This makes
it difficult to use a common INSTALL_BASE library path with
multiple versions of perl.
By setting -Duse_versioned_archname, the $archname will be
distinct for architecture *and* API version, allowing mixed use of
INSTALL_BASE.
This patch demonstrates the desired effect for discussion. Actual
changes would need to be made upstream in metaconfig and
integrated back into blead.
|
| |
|
|
|
|
|
|
|
| |
Rhapsody was an Apple OS that later evolved into Darwin and Mac OS X. It was
initially only released to developers, but later became Mac OS X Server, with
releases in 1999 and 2000. It was obsoleted by Mac OS X 10.0, released in
March 2001.
|
| |
|
| |
|
|
|
|
|
|
| |
Configure would not find isblank() when run with g++ because
the probe used exit() without including <stdlib.h>. The simplest fix
is to have the probe use return instead.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
By default, the darwin build assumes a "multiarchitecture" build.
Configure has a hardwired default of '8' for alignbytes (and then
proceeds to ignore it with another hard-wired '8' in config.h).
That '8' was supposed to be a safe value, in case perl was built
on one architecture but run on another with a stricter constraint.
With darwin and -Dusemorebits, however, the alignment should be on
16-byte boundaries. We don't want to penalize all darwin builds for
this unlikely configuration, but we do want to allow it.
This patch causes Configure to compute alignbytes even for multiarch
builds, but if the result is less than 8, it sets it to 8 (which preserves
the previous behavior). If, however, alignbytes is 16, Configure won't
decrease it. Then, this patch also fixes config_h.SH so that it uses
the value determined by Configure instead of the previous hardwired value.
|
|
|
|
| |
Needed to upgrade Socket from CPAN
|
|
|
|
|
|
|
|
| |
Instruct ./getfile to trust the default pager value. It might not begin
with a slash, or it might include some options, such as
"/usr/bin/less -R".
This is based on commit 53ddb3ba3e23ab80444c30b4deefa64114408438 in
the metaconfig repository.
|
|
|
|
| |
Backport 2f1eb816b5cba6977b1a8159
|
|
|
|
|
|
|
|
|
|
| |
The cppsymbols can include macros such as __INT16_C(c), which can't
be tested with a simple #ifdef. This patch strips off the opening
parenthesis and everything following it. These macros were generated
by cpp -dM.
Also ensure Cppsym.true list is sorted for later input to comm.
(I noticed this while testing this change on Solaris.)
|
|
|
|
|
|
| |
The probes for _NSGetExecutablePath and KERN_PROC_PATHNAME
will fail on systems where they are not available. This is
normal, so use $compile to throw away the error messages.
|
| |
|
|
|
|
|
|
|
| |
With this new probe, requested by rafl, we could start building perl as
it would be built on OSs like AIX and Windows and actually test visibility
of the API and thus early detect if tests would fail on these restrictive
OSs
|
| |
|
|
|
|
| |
This reverts commit 8852e312c3c616ab731ccbe7da54fb04eb8c3d30.
|
| |
|
|
|
|
|
|
|
| |
The diagnostic message containing the duplicate extension did not stand out,
particularly given that the immediately previous output is a very long line
of found extensions. So add blank lines on either to make it easier to
spot.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
During the development process, if an extension module changes dual-life
status it can move between ext/, dist/ and cpan/. If one uses git pull in a
built tree across such a change, one can end up with the build tree in a
messy state from which the 'distclean' target can't recover. Configure will
spot both the old and new directories, and may wrongly categorise the
extension as non-XS, resulting in obscure build failures after miniperl is
build.
In the general case, the "old" directory might contain files the user wants
to keep, so it's not safe to automatically delete it. The only safe option
is to ask the user to resolve the problem, hence with this change, if
Configure detects such a situation it aborts with a diagnostic suggesting
what to do.
This isn't a problem that affects released tarballs.
|
| |
|
| |
|
| |
|
|
|
|
| |
After backporting Nicholas' work and slimming down metaconfig.h
|
|
|
|
|
|
|
|
|
|
|
|
| |
Configure would already find /proc/self/exe on NetBSD, where /proc/self is
a symlink to /proc/curproc. However, the revised probe avoids the extra
symlink traversal. Configure did not previously probe for the
relevant path on Solaris, /proc/self/path/a.out
Rename the description of /proc/curproc/file from BSD to FreeBSD, as it seems
that of the "big 3" BSDs, only FreeBSD uses this path.
Based on a patch from Johann 'Myrkraverk' Oskarsson.
|
|
|
|
|
| |
This removes code duplication, and makes it easy to add more variants.
Based on a patch from Johann 'Myrkraverk' Oskarsson.
|
|
|
|
|
|
|
|
|
| |
In Configure, check whether _NSGetExecutablePath() can be used to find the
absolute pathname of the executable. If so, set usensgetexecutablepath in
config.sh and USE_NSGETEXECUTABLEPATH in config.h. If this is set, then use
this approach in S_set_caret_X() to canonicalise $^X as an absolute
path. This approach works on OS X, and possible on other platforms that
use dyld.
|
|
|
|
|
|
|
|
|
|
| |
In Configure, check whether sysctl() and KERN_PROC_PATHNAME can be used
to find the absolute pathname of the executable. If so, set
usekernprocpathname in config.sh and USE_KERN_PROC_PATHNAME in config.h.
If this is set, then use this approach in S_set_caret_X() to canonicalise
$^X as an absolute path. This approach works on (at least) FreeBSD, and
doesn't rely on the /proc filesystem existing, or /proc/curproc/file being
present.
|
|
|
|
|
|
|
|
|
| |
On some Solaris systems, <stdbool.h> is present, but will give an
error if used by a compiler that is not sufficiently c99-compliant.
Check for this by including <stdbool.h> and trying to compile a
short program that uses bool.
Signed-off-by: H.Merijn Brand <h.m.brand@xs4all.nl>
|
| |
|
|
|
|
|
|
|
|
|
| |
This means that the core uses the compiler's bool type if one exists.
This avoids potential problems of clashes between perl's own implementation
of bool and the compiler's bool type, which otherwise occur when one
attempts to include headers which in turn include <stdbool.h>.
Signed-off-by: H.Merijn Brand <h.m.brand@xs4all.nl>
|
|
|
|
|
|
| |
There are too many related problems arising from this change
This reverts commit e820c6d6a6d0a8828aa68a6895696b659c471f2f.
|
|
|
|
|
| |
This introduces a volatile into the test program so gcc cannot optimise
out the symbol itself as being unused.
|
|
|
|
| |
Work initiated by Tony Cook
|
|
|
|
| |
This work was actually committed to metaconfig on 16 Feb 2011
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
From: Nicholas Clark <nick@ccl4.org>
Date: Mon, 14 Feb 2011 16:01:49 +0000
Message-ID: <20110214160149.GU24189@plum.flirble.org>
INSTALL says this:
=item -DEBUGGING=-g
=item -Doptimize=-g
Adds -g to optimize, but does not set -DDEBUGGING.
(Note: Your system may actually require something like cc -g2.
Check your man pages for cc(1) and also any hint file for your system.)
However, we *aren't* compliant with our documentation, as currently
-Doptimize=-g (or anything containing -g) still causes -DDEBUGGING to be
added to the C flags.
Signed-off-by: H.Merijn Brand <h.m.brand@xs4all.nl>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Date: Thu, 20 Jan 2011 19:27:04 +0100
Subject: [PATCH] MirBSD: fix rpath for shared libperl
If you build perl with a shared libperl.so on MirBSD (the default config),
it will work up to the installation; however, once installed, it will be
unable to find libperl. Treat rpath handling like in the other BSD
dialects.
Signed-off-by: H.Merijn Brand <h.m.brand@xs4all.nl>
|
|
|
|
|
|
|
| |
1. re-generate Configure and config_h.SH
2. update Porting/config_H, which was very outdated
Signed-off-by: H.Merijn Brand <h.m.brand@xs4all.nl>
|
|
|
|
|
|
| |
They might have served a purpose in the original files, but Nicholas
and Zefram expressed their concern that in the generated files, these
tags are misleading and unneeded.
|
|
|
|
| |
cbeaa1895 removed the reference to $perlpath
|
| |
|