This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
metaconfig.git
4 weeks agoTeach Configure and cflags.SH about C99 master
H.Merijn Brand [Fri, 29 Oct 2021 15:35:45 +0000 (17:35 +0200)]
Teach Configure and cflags.SH about C99
Test declarations after statement in Configure's C99 probe code

Probe to see whether we need -std=gnu99 or -std=c99 to get C99 code to
compile. In cflags.SH, remove code that added gcc warning flags that were
compatible with C89 but are not compatible with C99.

Also ensure that the relevant failure error message is output even with
Configure's -s flag, as we shouldn't stay silent for a message that causes
Configure default to aborting.

With these changes, Configure will fail the C99 probe test if passed
-Accflags="-Werror=declaration-after-statement" or
-Accflags="-Werror=long-long"

Backport of 0c7be120244c1a6aae9b1ae30124265bcb8184da
        and d34aca5e9e57e3f0b5d25d451759237b40647664

4 weeks agoA Configure test for C11 thread local storage specificer, _Thread_local
H.Merijn Brand [Fri, 29 Oct 2021 15:25:19 +0000 (17:25 +0200)]
A Configure test for C11 thread local storage specificer, _Thread_local

We also provbe for gcc's earlier syntax, __thread.

Backport of 65f7068160bfc9a3f4b195a579c881188cc4fff3

4 weeks agodetect struct stat.st_dev's size and signedness, and return it safely
H.Merijn Brand [Fri, 29 Oct 2021 15:07:24 +0000 (17:07 +0200)]
detect struct stat.st_dev's size and signedness, and return it safely

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.

Backport of 9b5699737a6b587546239d586832f420cf7f2dea

4 weeks agoSend bugs to GitHub
H.Merijn Brand [Fri, 29 Oct 2021 14:36:07 +0000 (16:36 +0200)]
Send bugs to GitHub

Do not advise sending mail to 'perlbug@perl.org', as that now simply
triggers a response redirecting sender to GitHub.

Backport of 786c02c9305b1cb8b2a0ee2cb2921888bb720499

3 months agoonly #include <xlocale.h> when it is actually needed
H.Merijn Brand [Wed, 11 Aug 2021 11:22:25 +0000 (13:22 +0200)]
only #include <xlocale.h> when it is actually needed

Backport of 68f1b6d700b9662cfdec43ceddbd086d4b59c87e

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.

5 months agoMerge pull request #76 from jkeenan/readme-typo-20210610
James E Keenan [Tue, 22 Jun 2021 13:50:31 +0000 (09:50 -0400)]
Merge pull request #76 from jkeenan/readme-typo-20210610

Correct probable typo.

5 months agoDisambiguate what user sees in interactive Configure
H.Merijn Brand [Wed, 16 Jun 2021 06:28:48 +0000 (08:28 +0200)]
Disambiguate what user sees in interactive Configure

User should expect to see configuration questions spelled 'UTF-8', not
'UTF8' (even if we store information internally or in config.sh without
the hyphen).

Correct user prompts accordingly.

For: #18844

https://github.com/Perl/perl5/pull/18870 by @jkeenan

5 months agoCorrect probable typo. 76/head
James E Keenan [Thu, 10 Jun 2021 21:32:45 +0000 (21:32 +0000)]
Correct probable typo.

5 months agoprevent undefined behaviour at a language level while probing getenv
H.Merijn Brand [Wed, 9 Jun 2021 08:22:49 +0000 (10:22 +0200)]
prevent undefined behaviour at a language level while probing getenv

Backport of a5823872283be23731f1bcde7e19a926c44b31a4

This test in Configure tries to probe for undefined behaviour in
getenv (), but provokes undefined behaviour in C/C++ by falling off
the end of a function with a non-void return type.

Without optimization clang++ generated a ud2 instruction here on
amd64 producing an illegal instruction exception.  With optimization
the test case fell off the end and started re-executing main (),
eventually producing a SIGBUS.

Simply dropping the value of getenv () here and returning NULL wasn't
useful, under -O2 the compiler optimized away the getenv () call,
voiding the whole point of the test.

5 months agoMerge pull request #75 from khwilliamson/master
H.Merijn Brand [Sat, 5 Jun 2021 09:27:49 +0000 (11:27 +0200)]
Merge pull request #75 from khwilliamson/master

Add new probes:  XXX I don't know what to change in the RCS lines

5 months agoAdd probes for ffs, ffsl 75/head
Karl Williamson [Fri, 4 Jun 2021 17:16:07 +0000 (11:16 -0600)]
Add probes for ffs, ffsl

5 months agoXXX RCS changes? Add probe for strxfrm_l
Karl Williamson [Fri, 4 Jun 2021 16:53:22 +0000 (10:53 -0600)]
XXX RCS changes? Add probe for strxfrm_l

5 months agod_endpwent.U: Fix typo in comment
Karl Williamson [Thu, 3 Jun 2021 11:03:34 +0000 (05:03 -0600)]
d_endpwent.U: Fix typo in comment

5 months agoAdd check for nl_langinfo_l()
Karl Williamson [Sun, 9 May 2021 14:48:26 +0000 (08:48 -0600)]
Add check for nl_langinfo_l()

There is already a check for this, but it fails unless the function is
thread safe.  This adds a symbol for when it exists but isn't thread
safe.

6 months agoMake libpth dist compliant
H.Merijn Brand [Mon, 31 May 2021 13:18:09 +0000 (15:18 +0200)]
Make libpth dist compliant

6 months agoMerge pull request #70 from khwilliamson/master
H.Merijn Brand [Mon, 31 May 2021 13:13:30 +0000 (15:13 +0200)]
Merge pull request #70 from khwilliamson/master

Some fixups, and printing to >&4 that needs review

6 months agoMerge pull request #73 from Perl/ntyni/incpath-backport 5.34.0
H.Merijn Brand [Fri, 28 May 2021 12:14:59 +0000 (14:14 +0200)]
Merge pull request #73 from Perl/ntyni/incpath-backport

Backport: Prevent incpath to spill into libpth

6 months agoPrevent incpath to spill into libpth ntyni/incpath-backport 73/head
H.Merijn Brand [Fri, 12 Feb 2021 15:42:42 +0000 (16:42 +0100)]
Prevent incpath to spill into libpth

• Use realpath if available
• This might catch more duplicate paths
• Only include real existing paths
• Filter inc paths out of libpth

Before:
incpth: /usr/lib64/gcc/x86_64-suse-linux/7/include /usr/local/include /usr/lib64/gcc/x86_64-suse-linux/7/include-fixed /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/include /usr/include
libpth: /usr/local/lib /usr/lib64/gcc/x86_64-suse-linux/7/include-fixed /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/lib /usr/lib /pro/local/lib /lib/../lib64 /usr/lib/../lib64 /lib /lib64 /usr/lib64 /usr/local/lib64

After:
incpth: /usr/lib64/gcc/x86_64-suse-linux/7/include /usr/local/include /usr/lib64/gcc/x86_64-suse-linux/7/include-fixed /usr/x86_64-suse-linux/include /usr/include
libpth: /usr/local/lib /usr/x86_64-suse-linux/lib /usr/lib /pro/local/lib /lib64 /usr/lib64 /lib /usr/local/lib64

(Backported from perl.git d3144c9253d3244cd259a0ae4c0fe81519bf5b53 to
 metaconfig.git by Niko Tyni)

8 months agobetter de-dup metagrep
H.Merijn Brand [Tue, 9 Mar 2021 13:10:31 +0000 (14:10 +0100)]
better de-dup metagrep

and skip old working tree

9 months agoReword usage messages (thank you Jim)
H.Merijn Brand [Thu, 18 Feb 2021 15:23:26 +0000 (16:23 +0100)]
Reword usage messages (thank you Jim)

Backport of 0484bfe840704c501e4b0d8949d48017b336d71e

9 months agoFixes backported from Porting/Glossary commits
H.Merijn Brand [Sun, 14 Feb 2021 10:23:53 +0000 (11:23 +0100)]
Fixes backported from Porting/Glossary commits

9 months agoTest that gcvt/qgcvt are not buggy (Issue 18170)
H.Merijn Brand [Sun, 14 Feb 2021 10:17:53 +0000 (11:17 +0100)]
Test that gcvt/qgcvt are not buggy (Issue 18170)

Backport of cfc95b5630c63927ab68bb4cdc08b1dec23c5569 and previous commits

9 months agoConsistent indent/whitespace
H.Merijn Brand [Sun, 14 Feb 2021 10:17:00 +0000 (11:17 +0100)]
Consistent indent/whitespace

9 months agoWhitespace change from 6b6e83fce2074294ac11d547c8a75bc106bebab9
H.Merijn Brand [Sun, 14 Feb 2021 10:08:51 +0000 (11:08 +0100)]
Whitespace change from 6b6e83fce2074294ac11d547c8a75bc106bebab9

9 months agoAdd Configure probe for getenv() buffer race
H.Merijn Brand [Sun, 14 Feb 2021 10:03:01 +0000 (11:03 +0100)]
Add Configure probe for getenv() buffer race

Backport of 9d228af78ad17dabb51f9059d215cc88c059a22a

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.

9 months agoPrevent non-ASCII in comment
H.Merijn Brand [Fri, 12 Feb 2021 16:05:42 +0000 (17:05 +0100)]
Prevent non-ASCII in comment

This will cause havoc on EBCDIC systems

13 months agoFix build on Haiku beta
H.Merijn Brand [Sat, 24 Oct 2020 10:30:50 +0000 (12:30 +0200)]
Fix build on Haiku beta

Backport of 6b6e83fce2074294ac11d547c8a75bc106bebab9
set correct Haiku usrinc and locinc , add -fno-stack-protector to hints
for amigaos.sh and haiku.sh (and disable accordingly -fstack-protector*
in Configure)

13 months agotest that gcvt/qgcvt are not buggy (Issue 18170)
H.Merijn Brand [Sat, 24 Oct 2020 10:23:52 +0000 (12:23 +0200)]
test that gcvt/qgcvt are not buggy (Issue 18170)

Backport of e8b4b5cb56db51c60d23a47fbb2f897e1206c9af
Author: sisyphus <sisyphus@cpan.org>
Date:   Wed Oct 21 10:52:11 2020 +1100

But style adjusted to surrounding code

13 months agoPrevent errors when run outside metaconfig folder
H.Merijn Brand [Sat, 24 Oct 2020 10:21:01 +0000 (12:21 +0200)]
Prevent errors when run outside metaconfig folder

14 months agoAdd the Configure option to enable strict by default in perl programs.
H.Merijn Brand [Tue, 22 Sep 2020 12:26:22 +0000 (14:26 +0200)]
Add the Configure option to enable strict by default in perl programs.

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

14 months agoTrap SIGBUS when Configure checks for va_copy (#18148)
H.Merijn Brand [Tue, 22 Sep 2020 11:14:51 +0000 (13:14 +0200)]
Trap SIGBUS when Configure checks for va_copy (#18148)

On several systems the attempt to determine if we &quot;need va_copy() or
similar&quot; results in a SIGBUS instead of a SIGSEGV because the fault
happens pointing at an io device address.

While reviewing accounting logs during the OpenBSD system build, bluhm@
noticed a core dump and deraadt@ tracked it down.

While researching it was discovered that this is a fairly common case in
other systems as well.

Original diff by deraadt@

14 months agoForce comments for L_R_TZSET to end in config_h.SH
H.Merijn Brand [Mon, 7 Sep 2020 12:23:24 +0000 (14:23 +0200)]
Force comments for L_R_TZSET to end in config_h.SH

14 months agoMerge pull request #71 from richardleach/patch-1
H.Merijn Brand [Wed, 2 Sep 2020 12:48:40 +0000 (14:48 +0200)]
Merge pull request #71 from richardleach/patch-1

d_localtime_r.U - explicitly free() allocations

14 months agod_localtime_r.U - explicitly free() allocations 71/head
Richard Leach [Wed, 2 Sep 2020 12:24:03 +0000 (13:24 +0100)]
d_localtime_r.U - explicitly free() allocations

To keep LeakSanitizer happy. See https://github.com/Perl/perl5/issues/18107 for background.

15 months agod_faststdio.U: Use >&4, not >& 4 70/head
Karl Williamson [Sat, 22 Aug 2020 20:41:50 +0000 (14:41 -0600)]
d_faststdio.U: Use >&4, not >& 4

15 months agoperl/perlxv.U: Change some echo 2>&1
Karl Williamson [Mon, 13 Jul 2020 15:08:21 +0000 (09:08 -0600)]
perl/perlxv.U: Change some echo 2>&1

I don't know why this is redirecting stderr to stdout; why it thinks the
echo could generate output to stderr, but the file descriptor most
things should go to is >&4.

15 months agoU/perl/Checkcc.U: Use >&4 instead of >&2 for output
Karl Williamson [Mon, 13 Jul 2020 15:06:08 +0000 (09:06 -0600)]
U/perl/Checkcc.U: Use >&4 instead of >&2 for output

15 months agocompline/ccflags.U: Change some echo 2>&1
Karl Williamson [Mon, 13 Jul 2020 15:02:45 +0000 (09:02 -0600)]
compline/ccflags.U: Change some echo 2>&1

I don't know why this is redirecting stderr to stdout; why it thinks the
echo could generate output to stderr, but the file descriptor most
things should go to is >&4.

15 months agoREADME: Small fix ups
Karl Williamson [Mon, 13 Jul 2020 16:47:20 +0000 (10:47 -0600)]
README: Small fix ups

15 months agoMerge pull request #69 from khwilliamson/master
H.Merijn Brand [Sat, 22 Aug 2020 07:53:55 +0000 (09:53 +0200)]
Merge pull request #69 from khwilliamson/master

Fixes for EBCDIC, AIX, cleanup, some thread cleanup, docs

15 months agousethreads.U: Rmv unused variable 69/head
Karl Williamson [Fri, 21 Aug 2020 20:31:45 +0000 (14:31 -0600)]
usethreads.U: Rmv unused variable

15 months agoExtensions.U: remove unused variable
Karl Williamson [Fri, 21 Aug 2020 20:31:18 +0000 (14:31 -0600)]
Extensions.U: remove unused variable

15 months agoREADME: Add instrs for modified units
Karl Williamson [Fri, 21 Aug 2020 20:30:34 +0000 (14:30 -0600)]
README: Add instrs for modified units

15 months agoREADME: Fix typo
Karl Williamson [Fri, 21 Aug 2020 20:29:55 +0000 (14:29 -0600)]
README: Fix typo

15 months agod_longdbl.U: Always echo to &4 file descriptor
Karl Williamson [Tue, 18 Aug 2020 21:33:05 +0000 (15:33 -0600)]
d_longdbl.U: Always echo to &4 file descriptor

Previously only some did; this also removes the space in '>& 4' used in
some places

15 months agod_longdbl.U: Mention two symbols in ?C:
Karl Williamson [Tue, 18 Aug 2020 21:31:30 +0000 (15:31 -0600)]
d_longdbl.U: Mention two symbols in ?C:

These two symbols are defined by this unit, but went unmentioned.

15 months agod_union_semun.U: Indent two ?C: lines
Karl Williamson [Tue, 18 Aug 2020 21:22:18 +0000 (15:22 -0600)]
d_union_semun.U: Indent two ?C: lines

These two lines are for describing a data structure.  I've written code
that converts config.h items into pod.  These are the only two lines that
are really problematic, and it is because they should render as-is, but
to indicate that, they shouldn't be at the left margin.

15 months agoAdd d_bitfield.U to see if non-int struct bitfields
Karl Williamson [Sun, 21 Jun 2020 18:48:51 +0000 (12:48 -0600)]
Add d_bitfield.U to see if non-int struct bitfields

The C standard says only int and unsigned int bitfields in structs need
to be supported.  Many compilers also support other-sized ones, such as
short, but not all.  This adds a probe to detect this.

15 months agoi_db.U: Use new compiler_warning.U
Karl Williamson [Sun, 21 Jun 2020 18:40:28 +0000 (12:40 -0600)]
i_db.U: Use new compiler_warning.U

15 months agovoidflags.U: Use new compiler_warning.U
Karl Williamson [Sun, 21 Jun 2020 18:39:34 +0000 (12:39 -0600)]
voidflags.U: Use new compiler_warning.U

15 months agod_attribut.U: Use new compiler_warning.U
Karl Williamson [Sun, 21 Jun 2020 18:38:50 +0000 (12:38 -0600)]
d_attribut.U: Use new compiler_warning.U

15 months agoAdd compiler_warning.U
Karl Williamson [Sun, 21 Jun 2020 18:36:28 +0000 (12:36 -0600)]
Add compiler_warning.U

This is to see if there were compiler warnings generated.  It turns out
that AIX has very weird syntax for warnings, that don't include that
word, so there is special code for that os.

Also, some compiler's warnings aren't all lowercase.

15 months agocontains.U: Need a path to the generated script
Karl Williamson [Sun, 21 Jun 2020 18:33:25 +0000 (12:33 -0600)]
contains.U: Need a path to the generated script

I tested what would happen with 'contains' if grep is actually broken on
the box, and it failed because it didn't know where the generated
work-around script is.

This commit fixes this, but the fact that no failures have been showing
up indicates that modern greps just aren't broken this way.

15 months agocontains.U: echo should go to >&4
Karl Williamson [Tue, 18 Aug 2020 18:30:50 +0000 (12:30 -0600)]
contains.U: echo should go to >&4

15 months agoCopy contains.U from dist to U/modified
Karl Williamson [Tue, 18 Aug 2020 18:24:31 +0000 (12:24 -0600)]
Copy contains.U from dist to U/modified

This is in preparation for modifying it

15 months agod_setlocale.U: Add more info to user messages
Karl Williamson [Mon, 13 Jul 2020 17:55:30 +0000 (11:55 -0600)]
d_setlocale.U: Add more info to user messages

15 months agod_setlocale.U: Pay attention to hints file
Karl Williamson [Sun, 21 Jun 2020 18:46:00 +0000 (12:46 -0600)]
d_setlocale.U: Pay attention to hints file

This was ignoring any hints file setting of d_setlocale, and checking if
the system appears to have a sane one.  But there are cases where the
setlocale isn't really sane, even though it appears to be, and the hints
file is used to override this setting.  This commit now pays attention
to that override.

15 months agoModernize getverlist
H.Merijn Brand [Fri, 21 Aug 2020 13:46:22 +0000 (15:46 +0200)]
Modernize getverlist

- use strict/warnings
- pack "s>s>s>" to ensure best sorting
- fix small typo in comment

15 months agoRemove final vestiges of 5.005 threads
Dagfinn Ilmari Mannsåker [Mon, 10 Aug 2020 18:43:51 +0000 (19:43 +0100)]
Remove final vestiges of 5.005 threads

15 months agoBackport more blead Glossary typo fixes
Dagfinn Ilmari Mannsåker [Mon, 10 Aug 2020 19:02:44 +0000 (20:02 +0100)]
Backport more blead Glossary typo fixes

Commit bc2d571f1bf96e369c3d80c4294161b1d3180299 backported the
"patern" typo fix from
https://github.com/Perl/perl5/commit/4357af6ce6bbf62e83c554355bd8063b6fd0880a,
but missed the instances of "usally" on the same lines.

16 months agoHead.U: Fix Github repository URL
Dagfinn Ilmari Mannsåker [Wed, 8 Jul 2020 21:05:48 +0000 (22:05 +0100)]
Head.U: Fix Github repository URL

18 months agoMerge pull request #64 from ntyni/blead-changes 5.32.0
H.Merijn Brand [Sun, 17 May 2020 12:35:21 +0000 (14:35 +0200)]
Merge pull request #64 from ntyni/blead-changes

Blead changes

18 months agoBackport blead Glossary change fixing typos 64/head
Niko Tyni [Fri, 15 May 2020 21:33:38 +0000 (00:33 +0300)]
Backport blead Glossary change fixing typos

The Glossary change is part of

 https://github.com/Perl/perl5/commit/4357af6ce6bbf62e83c554355bd8063b6fd0880a

18 months agoBackport blead Configure change to contact instructions
Niko Tyni [Fri, 15 May 2020 21:13:25 +0000 (00:13 +0300)]
Backport blead Configure change to contact instructions

The Configure change is part of

 https://github.com/Perl/perl5/commit/35e21c5bf73a6039193bb688ec85ff2cc7716443

19 months agoMinor cleanups
H.Merijn Brand - Tux [Thu, 30 Apr 2020 08:36:59 +0000 (10:36 +0200)]
Minor cleanups

19 months agoMerge pull request #63 from xenu/xenu/sockaddr-storage
H.Merijn Brand [Thu, 30 Apr 2020 08:31:34 +0000 (10:31 +0200)]
Merge pull request #63 from xenu/xenu/sockaddr-storage

add probe for struct sockaddr_storage

19 months agoadd probe for struct sockaddr_storage 63/head
Tomasz Konojacki [Thu, 30 Apr 2020 07:00:25 +0000 (07:00 +0000)]
add probe for struct sockaddr_storage

Perl/perl5#17764 needs this

19 months agoMerge pull request #62 from Perl/fix-repeated-words
H.Merijn Brand [Fri, 24 Apr 2020 11:20:51 +0000 (13:20 +0200)]
Merge pull request #62 from Perl/fix-repeated-words

Fix repeated-word typos

19 months agoFix repeated-word typos 62/head
Dagfinn Ilmari Mannsåker [Thu, 23 Apr 2020 20:04:47 +0000 (21:04 +0100)]
Fix repeated-word typos

22 months agoAdapt Configure to GCC version 10
H.Merijn Brand - Tux [Tue, 21 Jan 2020 19:57:37 +0000 (20:57 +0100)]
Adapt Configure to GCC version 10

backport of 9f4e6307232229875331a55e44e1245b0b91e219

22 months agoPartly revert 9c359e8280d731ca92428e10705200e1c7ebf844
H.Merijn Brand - Tux [Tue, 21 Jan 2020 19:51:45 +0000 (20:51 +0100)]
Partly revert 9c359e8280d731ca92428e10705200e1c7ebf844

No here doc inside case

22 months agoSync with minor changes in blead
H.Merijn Brand - Tux [Tue, 21 Jan 2020 16:28:45 +0000 (17:28 +0100)]
Sync with minor changes in blead

22 months agoAdd <stdlib.h> for futimes compilation test
H.Merijn Brand - Tux [Tue, 21 Jan 2020 16:15:01 +0000 (17:15 +0100)]
Add <stdlib.h> for futimes compilation test

Backport f16c94bc75aefb81949b423b399fac4071859f6d

22 months agoRemove -DUSE_C_BACKTRACE part: from e849841dca2a8b1111999
H.Merijn Brand - Tux [Tue, 21 Jan 2020 16:14:21 +0000 (17:14 +0100)]
Remove -DUSE_C_BACKTRACE part: from e849841dca2a8b1111999

22 months agoPatches for meta are never directly from the perl5 tree
H.Merijn Brand - Tux [Tue, 21 Jan 2020 16:03:03 +0000 (17:03 +0100)]
Patches for meta are never directly from the perl5 tree

22 months agoUpdate the reference to the GitHub issue tracker
H.Merijn Brand - Tux [Tue, 21 Jan 2020 15:59:03 +0000 (16:59 +0100)]
Update the reference to the GitHub issue tracker

23 months agoDeclare temporary file 'try' for metalint.
Andy Dougherty [Tue, 31 Dec 2019 00:58:38 +0000 (19:58 -0500)]
Declare temporary file 'try' for metalint.

23 months agoFix strtoul probe to compile under clang++.
Andy Dougherty [Tue, 31 Dec 2019 00:50:41 +0000 (19:50 -0500)]
Fix strtoul probe to compile under clang++.

Add the missing stdlib.h header and remove an unnecessary prototype.

23 months agoFix strtoll, strotoull, and strtouq probes to compile under clang++.
Andy Dougherty [Mon, 30 Dec 2019 02:43:24 +0000 (21:43 -0500)]
Fix strtoll, strotoull, and strtouq probes to compile under clang++.

The test programs were missing the stdlib.h header, and needed
tweaks to the check() prototype to compile under clang++.  These
changes should be fine for C compilers as well, but they have typically
been more forgiving, so shouldn't be affected.

23 months agoInclude <stdio.h> in getpgrp/setpgrp probes for printf prototype.
Andy Dougherty [Mon, 30 Dec 2019 02:11:23 +0000 (21:11 -0500)]
Include <stdio.h> in getpgrp/setpgrp probes for printf prototype.

C compilers typically issue a warning, but c++ compilers may abort with
an error.

23 months agoUse a compile and run test for clang++.
Andy Dougherty [Tue, 27 Aug 2019 01:39:57 +0000 (21:39 -0400)]
Use a compile and run test for clang++.

For glibc, previous reports were that some functions (such as lchown())
are present in libc, but are unimplemented.  That is, they always fail
and set errno=ENOSYS.  Unfortunately, the stub test doesn't work under
clang++.  Thus use a compile and run test.

2 years agoMerge pull request #61 from xenu/master
Karl Williamson [Fri, 22 Nov 2019 19:50:59 +0000 (11:50 -0800)]
Merge pull request #61 from xenu/master

add probe for __attribute__(always_inline)

2 years agoadd probe for __attribute__(always_inline) 61/head
Tomasz Konojacki [Fri, 22 Nov 2019 18:43:22 +0000 (18:43 +0000)]
add probe for __attribute__(always_inline)

2 years agoisless probe in Configure broken #17216
H.Merijn Brand - Tux [Thu, 21 Nov 2019 15:00:45 +0000 (16:00 +0100)]
isless probe in Configure broken #17216

2 years agoUpdate README to reflect new location on github
H.Merijn Brand - Tux [Tue, 29 Oct 2019 17:08:25 +0000 (18:08 +0100)]
Update README to reflect new location on github

2 years agoAdd check for malloc_usable_size (Richard Leach)
H.Merijn Brand - Tux [Mon, 16 Sep 2019 06:02:28 +0000 (08:02 +0200)]
Add check for malloc_usable_size (Richard Leach)

2 years agoMerge pull request #60 from tonycoz/futimes-exit
H.Merijn Brand [Tue, 10 Sep 2019 10:09:36 +0000 (12:09 +0200)]
Merge pull request #60 from tonycoz/futimes-exit

c99 requires functions to be declared before they're called

2 years agoc99 requires functions to be declared before they're called 60/head
Tony Cook [Tue, 10 Sep 2019 00:35:39 +0000 (10:35 +1000)]
c99 requires functions to be declared before they're called

and exit() is declared in stdlib.h

2 years agoReset xxx_convert to empty string if none of 3 utilities is found
H.Merijn Brand - Tux [Mon, 26 Aug 2019 09:51:03 +0000 (11:51 +0200)]
Reset xxx_convert to empty string if none of 3 utilities is found

Backport 6e404ab585deadc1c32d50513f13b50ae395c00d

This will cause Configure to enter the WHOA block and default to using
sprintf.

Change Gconvert checkit() prototype for [perl #134371].

In the checkit() routine inside Configure, clang++ was taking the
if (strcmp(expect, got)) branch even though the 'expect' and 'got' strings
were identical.  A first step in debugging this was to realize that
the checkit() function never returned a value, so relabel it as void.
With clang version 7.0.1-8 (tags/RELEASE_701/final) (Debian),
this change seems to work around the strcmp issue.

Further Configure gconvert probe cleanups for C++.  As part of debugging
[perl #134375] and [perl #134371], try to eliminate warnings thrown by
clang++.

2 years agoMerge pull request #58 from tonycoz/sysroot
H.Merijn Brand [Mon, 26 Aug 2019 09:36:02 +0000 (11:36 +0200)]
Merge pull request #58 from tonycoz/sysroot

(perl #134360) --sysroot apparently needs the =

2 years ago(perl #134360) --sysroot apparently needs the = 58/head
Tony Cook [Mon, 26 Aug 2019 04:49:52 +0000 (14:49 +1000)]
(perl #134360) --sysroot apparently needs the =

See: https://rt.perl.org/Ticket/Display.html?id=134360

2 years agoConfigure: reuse "cached" value of "none" for dir
H.Merijn Brand - Tux [Thu, 25 Jul 2019 14:10:27 +0000 (16:10 +0200)]
Configure: reuse "cached" value of "none" for dir

When value of a directory (i.e. man1dir) is set to "none" because of:
- '-D' option set on cmdline (i.e. -Dman1dir=none) OR
- because value is reused from previous configure run

And when the prefix is different from the previous configure run(*) then
keep the value of "none". predefined/cached value does not contain the
old prefix so there is no harm in keeping it.

(*): due to another bug this also happens when prefix ends with a
     trailing slash

See https://rt.perl.org/Ticket/Display.html?id=134284

2 years agoRemove trailing '/' from prefix
H.Merijn Brand - Tux [Thu, 25 Jul 2019 13:52:44 +0000 (15:52 +0200)]
Remove trailing '/' from prefix

Change how/when the trailing '/' from a prefix is removed.

The original code had two problems:

1) it only stripped the trailing slash when value was predefined
   (either from -Dprefix=/foo/bar/ or from a previous configure run)
2) when it did strip the value then it also caused 'oldprefix' to
   be set. This in turns causes other predefined (/cached) paths to
   be ignored.

See https://rt.perl.org/Public/Bug/Display.html?id=134284

2 years agoRemove vestiges of mpeix support (removed in 5.17.x)
H.Merijn Brand - Tux [Thu, 25 Jul 2019 13:44:43 +0000 (15:44 +0200)]
Remove vestiges of mpeix support (removed in 5.17.x)

backport of e3c1dc81bda4523bfc897fec8afe25b162e29cb6

2 years agoFix erroneous references to USE_CBACKTRACE
H.Merijn Brand - Tux [Thu, 25 Jul 2019 13:41:02 +0000 (15:41 +0200)]
Fix erroneous references to USE_CBACKTRACE

The #define set in Configure and used in locale.c and util.c is actually
USE_C_BACKTRACE.

backport of 812e2121cb84e726a5a5b5a3a64c6f949426e02f

2 years agoAllow -Uusedtrace / -Dusedtrace=false / -Dusedtrace=no
H.Merijn Brand - Tux [Tue, 9 Jul 2019 14:30:12 +0000 (16:30 +0200)]
Allow -Uusedtrace / -Dusedtrace=false / -Dusedtrace=no

2 years agoBackport perl5 core changes by Andy, correcting Aaron's merge 5.30.0
H.Merijn Brand - Tux [Thu, 25 Apr 2019 14:06:57 +0000 (16:06 +0200)]
Backport perl5 core changes by Andy, correcting Aaron's merge

2 years agoAssume <stdlib.h> exists when probing for setlocale()
Aaron Crane [Thu, 25 Apr 2019 11:18:52 +0000 (12:18 +0100)]
Assume <stdlib.h> exists when probing for setlocale()

We're on C89, after all :-)

2 years agoBackport improvements to setlocale() probe
Aaron Crane [Thu, 25 Apr 2019 10:57:08 +0000 (11:57 +0100)]
Backport improvements to setlocale() probe

This is from Perl 5 commit 2e3ef32f4acc106de6ae8170099f09a36d4ef490, but
with a couple of changes to appease the metaconfig linter by avoiding
strings of the form /\w+=\S+/ (which it interprets as attempts to set shell
variables).

2 years agoBackport probes for towlower() and towupper()
Aaron Crane [Thu, 25 Apr 2019 10:38:00 +0000 (11:38 +0100)]
Backport probes for towlower() and towupper()

From Perl 5 commit 0806cdda2789ca6394976d1ff3e65dd59bcb8d1b (but with a typo
in the glossary description fixed).