summaryrefslogtreecommitdiff
path: root/configure.com
Commit message (Collapse)AuthorAgeFilesLines
* Revert "Add Configure question for taint support"Paul "LeoNerd" Evans2022-05-191-1/+0
| | | | | | | | | 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
* Add Configure question for taint supportNeil Bowers2022-04-201-0/+1
| | | | | | | | | | | | 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.
* Send bugs to GitHubJames E Keenan2021-10-131-3/+1
| | | | | Do not advise sending mail to 'perlbug@perl.org', as that now simply triggers a response redirecting sender to GitHub.
* 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/+7
| | | | Several new probes have been added.
* Configure changes for HAS_NON_INT_BITFIELDSKarl Williamson2021-06-121-0/+2
| | | | | | | | | | | 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.
* Reword usage messages, per review from TuxJames E Keenan2021-02-181-1/+1
|
* Provide examples for quoting shell wordsJames E Keenan2021-02-181-2/+2
| | | | | | Per suggestion by Andy Dougherty. For: https://github.com/Perl/perl5/issues/18573
* Hide DECthreads TRY macroCraig A. Berry2021-02-151-0/+1
| | | | | | | | | | | | | | | | I guess it seemed like a good idea in 1989, but on VMS, the pthread_exception.h header exposes TRY and some other simple English words as macros. Luckily there is a way to hide them (defining _PTHREAD_EXC_INCL_CLEAN) and that's what this commit does since Perl now also uses TRY without a prefix or other guard to avoid collisions. If anyone still needs what DECthreads TRY does, it was always just an alias for PTHREAD_TRY_NP, which can be used directly. If anyone is still using Tru64, it very likely needs an equivalent patch since the headers and compiler and ancient threading implementation share a common origin.
* Add Configure probe for getenv() buffer raceKarl Williamson2020-12-191-0/+2
| | | | | | 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-12/+0
| | | | See https://github.com/Perl/metaconfig/pull/66/
* add Configure probe for struct sockaddr_storageTomasz Konojacki2020-05-191-0/+1
|
* Detect "new" C99 features in configure.com.Craig A. Berry2020-01-211-17/+200
| | | | | | | | VSI has released a patch kit that finally completes C99 support on VMS, including stdint.h and assorted math functions. With this commit, configure.com now detects and uses the recently-released but two decades late features that Perl uses based on anything that Configure would detect on other platforms.
* 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
* Make -Duse64bitint the default on VMS.Craig A. Berry2019-06-221-1/+1
| | | | | | The capability came along with Alpha more than two decades ago, so maybe the third decade of the twenty-first century should see it become the default.
* Improve setlocale() detection in Configure-ish filesKarl Williamson2019-03-041-0/+2
| | | | 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.
* Add HAS_STRTOD_L to metaconfig.h and rebuild ConfigureAaron Crane2018-04-191-0/+1
|
* d_strchr is C89 and has been removed from ConfigureH.Merijn Brand2018-03-271-1/+0
|
* VMS does have wchar.h.Craig A. Berry2018-02-131-1/+1
| | | | | And we now need it for prototypes of functions that locale.c is using.
* Additional fix-ups for configure.com.Craig A. Berry2018-01-181-0/+5
| | | | | Some things VMS doesn't have and one that it does. All were missing from the config.sh we generate.
* VMS does have sendmsg and recvmsg.Craig A. Berry2018-01-171-2/+2
|
* VMS does have readv and writev.Craig A. Berry2018-01-171-2/+2
|
* VMS does have mbrlen and mbrtowc.Craig A. Berry2018-01-171-2/+2
|
* VMS does have fchmod and fchown.Craig A. Berry2018-01-151-2/+7
| | | | | | | | | The test for fchmod in t/io/fs.t does, however, reveal a wrinkle that is also true of chmod on VMS: a mode argument of zero does not mean turn off all permisions but rather set permissions to the user's default. This is probably an ancient behavior from pre-standard days. For now, just skip the affected test and document what's different.
* VMS does have gai_strerror.Craig A. Berry2018-01-111-1/+1
| | | | | And we need to say we have it for the latest version of Socket to build successfully.
* 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.
* Specify afs entries in configure.com.Craig A. Berry2017-12-011-0/+2
| | | | | This prevents op/stat.t from failing due to an undefined variable warning when $Config{'afsroot'} is checked.
* Restore ability to build on platforms without snprintf()Aaron Crane2017-11-181-0/+4
| | | | | | | | | | | | | 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
* Remove unused probes in configure.com.Craig A. Berry2017-10-251-53/+0
| | | | | | Recent commits for the C89 work had us stop using the result of these probes, so there is no point in continuing to build and run them.
* Probe for strnlen on VMSDagfinn Ilmari Mannsåker2017-10-211-1/+19
|
* 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
|
* 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
|