| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
This allows us to enforce API boundaries and potentially enables
compiler optimisations.
We've been always hiding non-public symbols on Windows. This commit
brings that to the other platforms.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
This reverts commit 39f8eb4a21670e6b973dcfc86d0b1339064f5642.
This is because of a variety of issues discussed #19657 and at the PSC
meeting 064 2022-04-22
https://www.nntp.perl.org/group/perl.perl5.porters/2022/04/msg263670.html
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds a Configure question for whether you want taint support.
It defaults to "yes", so that ./Configure -des will build a perl
which supports taint in the usual way.
If you say "no", then perl is compiled with -DSILENT_NO_TAINT_SUPPORT
so that taint features silently do nothing.
I've submitted a separate pull request on perl/metaconfig,
which adds the underlying metaconfig unit for this question,
which was used to build this Configure script.
|
|
|
|
| |
We also provbe for gcc's earlier syntax, __thread.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
On FreeBSD dev_t (and hence the st_dev member of struct stat) is an
unsigned 64-bit integer, and the previous simple PUSHi() corrupted
that.
A previous version of this reflected the st_ino code and implemented
our own number to string conversion, but a system with such a large
st_dev should be assumed to have inttypes.h, and an intmax_t which is
no smaller than st_dev.
The st_ino code could probably be changed similarly, but 64-bit inode
numbers are not a new thing, so it may be riskier.
|
|
|
|
|
|
|
|
|
|
|
| |
This header was originally only needed for builds on darwin and
FreeBSD, but was being included whenever it was detected.
This has caused problems when what was an internal header was
removed (from glibc) and in general wasn't needed anyway.
On FreeBSD only localeconv_l() requires xlocale.h, so we test
specifically for that.
|
|
|
|
| |
Several new probes have been added.
|
|
|
|
|
|
|
|
|
|
|
| |
This probe has been available without my realizing it had been merged.
Some compilers, chiefly IBM, use only integer-size bitfields, warning
when presented with other-sized ones. Allowing other-sized fields is an
extension to the C standard.
These warnings don't affect the correctness of the code generated, but
very many are generated per run, potentially overwhelming the reader
into not noticing warnings that are important.
|
|
|
|
|
|
| |
* Apparently, first you bump, then you update perldelta.
* 5.35.0 *might* be released tomorrow (likely) but not certainly.
* I've set it to tomorrow so Module::CoreList won't be upset.
|
| |
|
|
|
|
|
|
| |
Most implementations do not have a problem with two getenv()'s running
simultaneously in different threads. But Posix doesn't require such
good behavior. This adds a simple probe to test the current system.
|
|
|
|
|
|
|
|
| |
Do not set strict by default on -e or -E
This is a development only feature to allow us to clean up blead.
./Configure -Dusedevel -des -Dusedefaultstrict
|
|
|
|
| |
See https://github.com/Perl/metaconfig/pull/66/
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
A probe for wcrtomb() and one for attribute always inline have been
added, and the ones for:
1) checking if there is a C backtrace facility; and
2) character data alignedness
have been revised
|
| |
|
| |
|
|
|
|
| |
This also now notes some behavior of setlocale
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
The metaconfig probe for <db.h> previously relied on the d_const symbol set
by the "const" probe, so generating Configure here has been done against
metaconfig commit 1204d4627a06b11f16620188f3fa83159ed35fd9 which changes
that.
Thanks to khw++ for pointing out this oversight in my attempt last year to
make the codebase rely on C89.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Most of the change here comes from a single unit being moved in the
generated Configure, but there are some substantive changes:
- config_h.SH was missing HAS_DUPLOCALE and d_duplocale
- d_duplocale was also missing from the platform-specific config-var files
This still doesn't quite ensure that rebuilding Configure makes no changes,
because there are differences to nl_langinfo() handling that need a change
in our metaconfig units. That will come next.
|
| |
|
|
|
|
|
| |
This is another file descriptor creating function that's needed as an
O_CLOEXEC-handling variant of an existing function.
|
|
|
|
|
| |
These will shortly be used to implement I/O operations that create file
descriptors with the FD_CLOEXEC flag set atomically.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
C89 does not in fact define snprintf() or vsnprintf(), and we must therefore
probe for the existence of those functions before trying to use them.
khw++ for pointing out my earlier error.
This reverts part or all of each of the following commits:
13d66b05c6163c3514774d3d11da5f3950e97e98 Rely on C89 vsnprintf()
e791399041815a1a45cea3c7f277c7045b96e51b Rely on C89 snprintf()
adf7d503e55721c500f0bf66560b8f5df7966fe7 pod/perlhacktips.pod: remove some outdated portability notes
|
|
|
|
| |
This requires a corresponding change in the metaconfig units.
|
|
|
|
| |
It's only needed on systems without C89 <string.h>, which we rely on anyway.
|
| |
|
|
|
|
| |
This requires a corresponding change in the metaconfig units.
|
|
|
|
| |
This requires a corresponding change to the metaconfig units.
|
|
|
|
|
| |
All the information it contains can be gleaned more readily from C89
<limits.h> and <float.h>.
|
|
|
|
| |
This requires newer metaconfig units that also rely on C89 <float.h>.
|
|
|
|
| |
This requires newer metaconfig units that also rely on C89 <limits.h>.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
The Configure changes here were generated using a version of metaconfig
that copies U/modified/vaproto.U from dist/U/vaproto.U, and changes it to
refrain from promising to define a _V symbol (which would otherwise cause
the relevant probe to included in Configure).
|
| |
|