summaryrefslogtreecommitdiff
path: root/uconfig64.sh
Commit message (Collapse)AuthorAgeFilesLines
* A Configure test for C11 thread local storage specificer, _Thread_localNicholas Clark2021-09-071-0/+2
| | | | We also provbe for gcc's earlier syntax, __thread.
* detect struct stat.st_dev's size and signedness, and return it safelyTony Cook2021-09-011-0/+2
| | | | | | | | | | | | | | 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.
* only #include <xlocale.h> when it is actually neededTony Cook2021-08-111-0/+1
| | | | | | | | | | | 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.
* Configure: apply recent metaconfig changesKarl Williamson2021-06-121-0/+4
| | | | Several new probes have been added.
* Configure changes for HAS_NON_INT_BITFIELDSKarl Williamson2021-06-121-0/+1
| | | | | | | | | | | 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.
* Bump to 5.35.0:Sawyer X2021-05-211-8/+8
| | | | | | * 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.
* Bump perl version in various places for 5.34.0Sawyer X2021-05-041-8/+8
|
* Add Configure probe for getenv() buffer raceKarl Williamson2020-12-191-0/+1
| | | | | | 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.
* Add the Configure option to enable strict by default in perl programs.Todd Rinaldo2020-09-151-0/+1
| | | | | | | | 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
* Remove 5005threads vestiges from Configure and friendsDagfinn Ilmari Mannsåker2020-08-211-1/+0
| | | | See https://github.com/Perl/metaconfig/pull/66/
* Bump to 5.33.0Sawyer X2020-06-281-8/+8
|
* Bump perl version in various places for 5.32.0Sawyer X2020-05-291-8/+8
|
* add Configure probe for struct sockaddr_storageTomasz Konojacki2020-05-191-0/+1
|
* Bump back to 5.31.11, if we need to release itSawyer X2020-04-091-8/+8
|
* Bump version to 5.32.0Sawyer X2020-03-211-8/+8
|
* Regenerate Configure and friends after metaconfig changesKarl Williamson2019-12-031-0/+2
| | | | | | | | 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
* Bump the perl version in various places for 5.31.0Sawyer X2019-05-221-8/+8
|
* Bump the perl version in various places for 5.30.0Sawyer X2019-05-101-8/+8
|
* Improve setlocale() detection in Configure-ish filesKarl Williamson2019-03-041-0/+1
| | | | This also now notes some behavior of setlocale
* Add towupper() and towlower() to Configure-ish filesKarl Williamson2019-03-041-0/+2
|
* Add wctype.h to Configure-ish filesKarl Williamson2019-03-041-0/+1
|
* Rely on C89 "const"Aaron Crane2018-11-271-1/+0
| | | | | | | | | | 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.
* Bump version to 5.29.0 and regenerate everythingSawyer X2018-06-241-8/+8
|
* Fix Module::CoreList versionsSawyer X2018-04-201-8/+8
|
* Add HAS_STRTOD_L to metaconfig.h and rebuild ConfigureAaron Crane2018-04-191-0/+1
|
* Rebuild Configure from latest unitsAaron Crane2018-04-191-0/+1
| | | | | | | | | | | | 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.
* d_strchr is C89 and has been removed from ConfigureH.Merijn Brand2018-03-271-1/+0
|
* configure probe for mkostemp()Zefram2017-12-221-0/+1
| | | | | This is another file descriptor creating function that's needed as an O_CLOEXEC-handling variant of an existing function.
* configure probes for accept4(), dup3(), pipe2()Zefram2017-12-221-0/+3
| | | | | These will shortly be used to implement I/O operations that create file descriptors with the FD_CLOEXEC flag set atomically.
* Restore ability to build on platforms without snprintf()Aaron Crane2017-11-181-0/+2
| | | | | | | | | | | | | 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
* Rely on C89 <string.h>Aaron Crane2017-10-211-1/+0
| | | | This requires a corresponding change in the metaconfig units.
* Don't attempt to use non-standard <memory.h>Aaron Crane2017-10-211-1/+0
| | | | It's only needed on systems without C89 <string.h>, which we rely on anyway.
* Rely on C89 <assert.h>Aaron Crane2017-10-211-1/+0
|
* Rely on C89 <math.h>Aaron Crane2017-10-211-1/+0
| | | | This requires a corresponding change in the metaconfig units.
* Rely on C89 strerror()Aaron Crane2017-10-211-2/+0
| | | | This requires a corresponding change to the metaconfig units.
* Don't try to use <values.h>Aaron Crane2017-10-211-1/+0
| | | | | All the information it contains can be gleaned more readily from C89 <limits.h> and <float.h>.
* Rely on C89 <float.h>Aaron Crane2017-10-211-1/+0
| | | | This requires newer metaconfig units that also rely on C89 <float.h>.
* Rely on C89 <limits.h>Aaron Crane2017-10-211-1/+0
| | | | This requires newer metaconfig units that also rely on C89 <limits.h>.
* Rely on C89 sprintf() return value semanticsAaron Crane2017-10-211-1/+0
|
* Rely on C89 <stddef.h>Aaron Crane2017-10-211-1/+0
|
* Rely on C89 <stdarg.h>Aaron Crane2017-10-211-3/+0
|
* Don't pretend to determine whether ansi2knr is neededAaron Crane2017-10-211-1/+0
|
* Rely on C89 variadic prototypesAaron Crane2017-10-211-1/+0
| | | | | | | 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).
* Rely on C89 vprintf()Aaron Crane2017-10-211-2/+0
|
* Rely on C89 snprintf()Aaron Crane2017-10-211-2/+0
|
* Assume C89 "volatile" keywordAaron Crane2017-10-211-1/+0
| | | | | | | The Configure changes here were generated using a version of metaconfig that makes U/perl/perlxv.U assume that the keyword exists, and prevents U/modified/d_volatile.U from promising to define a "volatile" keyword; otherwise, those units would bring in the relevant Configure probe anyway.
* Assume we have C89 memchr()Aaron Crane2017-10-211-1/+0
|
* Assume we have sane C89 memcmp()Aaron Crane2017-10-211-3/+0
| | | | | | | "Sane" means that it works correctly on bytes with their high bit set, as C89 also requires. We therefore no longer need to probe for and/or use BSD bcmp().
* Assume we have C89 memcpy() and memmove()Aaron Crane2017-10-211-4/+0
| | | | We can therefore also avoid probing for and/or using BSD bcopy().
* Don't look for a "safe" memcpy()Aaron Crane2017-10-211-1/+0
| | | | | | | | | | | | | C89 says that, if you want to copy overlapping memory blocks, you must use memmove(), and that attempt to copy overlapping memory blocks using memcpy() yields undefined behaviour. So we should never even attempt to probe for a system memcpy() implementation that just happens to handle overlapping memory blocks. In particular, the compiler might compile the probe program in such a way that Configure thinks overlapping memcpy() works even when it doesn't. This has the additional advantage of removing a Configure probe that needs to execute a target-platform program on the build host.