643 Commits

Author SHA1 Message Date
Bernhard Voelker
03087cbd51 Fix GPLv3 license headers to use a comma instead of semicolon
See: https://www.gnu.org/licenses/gpl-3.0.html#howto

Update license headers automatically using the following script:

  $ git grep -l 'Foundation; either version 3' \
    | xargs sed -i '/Foundation; either version 3/ s/n; e/n, e/'

* config.guess: Adjust via the above command.
(timestamp): Update.
* config.sub: Likewise.
* doc/config.guess.1: Regenerate.
* doc/config.sub.1: Likewise.

Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
2022-01-03 23:16:50 +00:00
Dmitry V. Levin
dacec0cff2 Update copyright years
* config.guess: Update copyright years.
* config.sub: Likewise.
* testsuite/config-guess.sh: Likewise.
* testsuite/config-sub.sh: Likewise.
* doc/config.guess.1: Regenerate.
* doc/config.sub.1: Likewise.
2022-01-01 08:00:00 +00:00
Dmitry V. Levin
ee98986410 config.sub: alias armh to armv7l
ALT uses armh as an alias for armv7l-alt-linux-gnueabihf since 2012.

* config.sub (armh-unknown|armh-alt): Set cpu, vendor, and basic_os.
(timestamp): Update.
* doc/config.sub.1: Regenerate.
* testsuite/config-sub.data (armh, armh-alt-linux-gnueabihf): New tests.
2021-12-25 08:00:00 +00:00
Dmitry V. Levin
da0f86d042 config.sub: alias aarch64le to aarch64
Apparently, QNX reports aarch64 as aarch64le on little-endian machines.

* config.sub (aarch64le-*): Set cpu to aarch64.
(timestamp): Update.
* doc/config.sub.1: Regenerate.
* testsuite/config-sub.data (aarch64le-qnx): New test.

Reported-by: Elad Lahav <e2lahav@gmail.com>
Link: https://lists.gnu.org/archive/html/config-patches/2021-12/msg00009.html
2021-12-24 17:00:00 +00:00
Dmitry V. Levin
5b6ae7445c config.sub: fix typo in timestamp
* config.sub: Fix timestamp.
* doc/config.sub.1: Regenerate.

Reported-by: Jordi Sanfeliu <jordi@fibranet.cat>
Fixes: a013aac61edfa2a03727521508286480010e7bf3
Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
2021-12-13 08:00:00 +00:00
Jordi Sanfeliu
a013aac61e Recognize Fiwix
$ make check
cd testsuite && bash config-guess.sh && rm uname
PASS: config.guess checks (137 tests)
cd testsuite && bash config-sub.sh
PASS: config.sub checks (882 tests)
PASS: config.sub idempotency checks (819 tests)
PASS: config.sub canonicalise each config.guess testcase (137 tests)

* config.guess (i*86:Fiwix:*:*): Recognize.
* config.sub (fiwix*): Likewise.
* doc/config.guess.1: Regenerate.
* doc/config.sub.1: Likewise.
* testsuite/config-guess.data: Add a test case for Fiwix.
* testsuite/config-sub.data (i386-fiwix): New test.

Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
2021-10-27 14:35:57 +00:00
Kinshuk Dua
9428e344e6 config.sub: Fix typo in comment
Fixes: 5e531d391852a54e7fab2d8ff55625fca514b305
Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
2021-10-18 09:31:31 +00:00
Nick Bowler
191bcb948f config.sub: work around command assignment bug in some shells
When combining variable assignments with a shell command, some older
shells (notably heirloom-sh and presumably also Solaris 10 /bin/sh)
have a bug which causes the assignment to alter the current execution
environment whenever the command is a shell built-in.  For example:

  % dash -c 'x=good; x=bad echo >/dev/null; echo $x'
  good

  % jsh -c 'x=good; x=bad echo >/dev/null; echo $x'
  bad

The config.sub script contains a few commands of the form:

  IFS=- read ...

which triggers this bug, causing the IFS assignment to persist for the
remainder of the script.  This can cause misbehaviour in certain cases,
for example:

  % jsh config.sub i386-linux-gnu
  config.sub: test: unknown operator gnu

  % jsh config.sub i386-gnu/linux
  sed: can't read s|gnu/linux|gnu|: No such file or directory
  Invalid configuration `i386-gnu/linux': OS `' not recognized

* config.sub: Save and restore IFS explicitly to avoid shell bugs.
* doc/config.sub.1: Regenerate.

Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
2021-08-14 16:20:38 +00:00
Jeremy Soller
2707e389a5 config.sub: add Linux Relibc Target
$ make check
cd testsuite && bash config-guess.sh && rm uname
PASS: config.guess checks (136 tests)
cd testsuite && bash config-sub.sh
PASS: config.sub checks (881 tests)
PASS: config.sub idempotency checks (818 tests)
PASS: config.sub canonicalise each config.guess testcase (136 tests)

* config.sub (relibc*): Recognize.
* doc/config.sub.1: Regenerate.
* testsuite/config-sub.data (x86_64-linux-relibc): New test.

Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
2021-08-04 13:32:46 +00:00
Stephanos Ioannidis
401e1a7dd1 config.sub: add Zephyr RTOS support
This adds the Zephyr RTOS targets in preparation for implementing the
Zephyr RTOS-specific toolchain support.

$ make check
cd testsuite && bash config-guess.sh && rm uname
PASS: config.guess checks (136 tests)
cd testsuite && bash config-sub.sh
PASS: config.sub checks (880 tests)
PASS: config.sub idempotency checks (817 tests)
PASS: config.sub canonicalise each config.guess testcase (136 tests)

* config.sub (zephyr*): Recognize.
* doc/config.sub.1: Regenerate.
* testsuite/config-sub.data: Add testcases for *-zephyr.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
2021-07-06 14:09:09 +00:00
Ozkan Sezer
805517123c config.sub: disable shellcheck SC2006 / SC2268 warnings
This is in line with the recent config.guess change in commit
12fcf67c9108f4c4b581eaa302088782f0ee40ea

* config.sub (shellcheck disable): Add SC2006,SC2268.

Suggested-by: Jacob Bachmeyer <jcb@gnu.org>
Signed-off-by: Ozkan Sezer <sezero@users.sourceforge.net>
Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
2021-07-03 08:05:56 +00:00
Ozkan Sezer
79549b168d config.sub: normalize the quoting in the echo FOO | sed ...
Some cases quote the argument to echo and some do not.  At runtime
it probably does not matter because the substituted values will never
contain whitespace, but quoting them all would make shellcheck more
useful.

* config.sub: Consistently quote the argument of echo.
* doc/config.sub.1: Regenerate.

Suggested-by: Jacob Bachmeyer <jcb@gnu.org>
Signed-off-by: Ozkan Sezer <sezero@users.sourceforge.net>
Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
2021-07-03 08:05:40 +00:00
Ozkan Sezer
0ee661a9f9 config.sub: replace POSIX $( ) with classic throughout
This is in line with the recent config.guess change in commit
d70c4fa934de164178054c3a60aaa0024ed07c91.

The patch was generated using patch-6.gawk script introduced in that
commit.

* config.sub: Revert POSIX command substitutions to classic form.

Signed-off-by: Ozkan Sezer <sezero@users.sourceforge.net>
Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
2021-07-02 05:55:50 +00:00
Vineet Gupta
45e181800a Recognize arc32
This is the 32-bit variant of ARCv3 ISA (which is not compatible with the
32-bit ARCv2 ISA)

| make check
| cd testsuite && bash config-guess.sh && rm uname
| PASS: config.guess checks (136 tests)
| cd testsuite && bash config-sub.sh
| PASS: config.sub checks (864 tests)
| PASS: config.sub idempotency checks (801 tests)
| PASS: config.sub canonicalise each config.guess testcase (136 tests)

* config.guess (arc32:Linux:*:*): Recognize.
* config.sub (arc32): Likewise.
* doc/config.guess.1: Regenerate.
* doc/config.sub.1: Likewise.
* testsuite/config-guess.data: Add a test case for arc32.
* testsuite/config-sub.data (arc32, arc*-elf): Add test cases.

Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
2021-06-04 04:01:25 +00:00
Maciej W. Rozycki
7779518ae2 config.sub: Handle MIPS R3 and R5 ISA levels with CPU names
Complement binutils commit ae52f4830604 ("Add MIPS r3 and r5 support.")
and recognize MIPS CPU patterns for the R3 and R5 ISA levels, used by
GAS to set defaults.

* config.sub (mipsisa32r3, mipsisa32r3el, mipsisa32r5, mipsisa32r5el,
mipsisa64r3, mipsisa64r3el, mipsisa64r5, mipsisa64r5el): Recognize.
* doc/config.sub.1: Regenerate.
* testsuite/config-sub.data: Add test cases.

Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
2021-04-30 23:15:08 +00:00
Vineet Gupta
491e04557e Recognize arc64
This paves way for setting up arc64 software ecosystem.

$ make check
cd testsuite && bash config-guess.sh && rm uname
PASS: config.guess checks (136 tests)
cd testsuite && bash config-sub.sh
PASS: config.sub checks (853 tests)
PASS: config.sub idempotency checks (790 tests)
PASS: config.sub canonicalise each config.guess testcase (136 tests)

* config.guess (arc64:Linux:*:*): Recognize.
* config.sub (arc64): Likewise.
* doc/config.guess.1: Regenerate.
* doc/config.sub.1: Likewise.
* testsuite/config-guess.data: Add a test case for arc64.
* testsuite/config-sub.data (arc64, arc*-elf): Add test cases.

Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
2021-04-21 19:51:18 +00:00
Purple Rain
20bc4bc021 config.sub: add SecBSD support
* config.sub (secbsd*): Recognize.
* doc/config.sub.1: Regenerate.
* testsuite/config-sub.data: Add x86_64-secbsd.

Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
2021-04-16 22:14:24 +00:00
Idan Horo
1dc6451098 config.sub: Add support for SerenityOS
* config.sub (serenity*): Recognize.
* doc/config.sub.1: Regenerate.
* testsuite/config-sub.data: Add i386-serenity.

Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
2021-03-10 15:27:49 +00:00
Peixing Xin
21d397cdb4 config.sub: recognize four-part configuration name for VxWorks
For example:

  armv7m-wrs-vxworks-eabihf
  armv7-wrs-vxworks-eabihf
  i686-wrs-vxworks-simlinux
  i686-wrs-vxworks-simwindows
  powerpc-wrs-vxworks-spe
  x86_64-wrs-vxworks-simlinux
  x86_64-wrs-vxworks-simwindows

* config.sub: Recognize four-part configuration name for VxWorks.
* doc/config.guess.1: Regenerate.
* testsuite/config-sub.data: Add test cases.

Co-authored-by: John Ericson <git@JohnEricson.me>
Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
2021-01-08 02:53:07 +00:00
Alan Modra
04d8eb4c26 config.sub: accept OS of eabi* and gnueabi*
Commit 5e531d391852 broke powerpc-eabivle:

$ ./config.sub powerpc-eabivle
Invalid configuration `powerpc-eabivle': OS `eabivle' not recognized

Also powerpc-eabisim and probably some arm configurations.

* config.sub: Accept OS of eabi* and gnueabi*.
* testsuite/config-sub.data: Add powerpc-eabisim and powerpc-eabivle.

Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
2021-01-06 23:55:28 +00:00
Dmitry V. Levin
0045dea533 Update copyright years
* config.guess: Update copyright years.
* config.sub: Likewise.
* doc/config.guess.1: Regenerate.
* doc/config.sub.1: Likewise.
2021-01-01 08:00:00 +00:00
Kito Cheng
8e0c6ffd5c Recognize riscv32be and riscv64be
Recently RISC-V community got patches big-endian support for binutils,
and we'd like to accept that, however before accepting that I think it
would be better to upstream config.sub and config.guess change here :)

It's my check result on Ubuntu 18.04:

 $ make check
 cd testsuite && bash config-guess.sh && rm uname
 PASS: config.guess checks (131 tests)
 cd testsuite && bash config-sub.sh
 PASS: config.sub checks (830 tests)
 PASS: config.sub idempotency checks (767 tests)
 PASS: config.sub canonicalise each config.guess testcase (131 tests)

* config.guess (riscv32be:Linux:*:*, riscv64be:Linux:*:*): Recognize.
* config.sub (riscv32be, riscv64be): Likewise.
* doc/config.guess.1: Regenerate.
* doc/config.sub.1: Likewise.
* testsuite/config-guess.data: Add test cases for riscv32be, and riscv64be.
* testsuite/config-sub.data (riscv32be, riscv64be): Add test cases.

Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
2020-12-31 07:27:52 +00:00
Xiaotian Wu
c8ddc8472f Recognize loongarch32, loongarch64, and loongarchx32
* config.guess (loongarch32:Linux:*:*, loongarch64:Linux:*:*,
loongarchx32:Linux:*:*): Recognize.
* config.sub (loongarch32, loongarch64, loongarchx32): Likewise.
* doc/config.guess.1: Regenerate.
* doc/config.sub.1: Likewise.
* testsuite/config-guess.data: Add test cases for loongarch32,
loongarch64, and loongarchx32.
* testsuite/config-sub.data (loongarch32, loongarch64, loongarchx32):
Add test cases.

Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
2020-12-22 08:00:00 +00:00
Dmitry V. Levin
90b8cb42ba config.sub: recognize thumbv7*
* config.sub (thumbv7*): Recognize.
* testsuite/config-sub.data (thumbv7): New test.

Reported-by: Karl Berry <karl@freefriends.org>
Link: https://lists.gnu.org/archive/html/config-patches/2020-12/msg00001.html
2020-12-02 00:10:00 +00:00
Dmitry V. Levin
888c8e3d5f Update URLs of the latest version of config.guess and config.sub scripts
Prefer cgit URLs over gitweb as the former are usually served faster:
$ time -f %e wget -q 'https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess'
1.06
$ time -f %e wget -q 'https://git.savannah.gnu.org/cgit/config.git/plain/config.guess'
0.73

* config.guess: Prefer cgit URLs over gitweb.
(timestamp): Update.
* config.sub: Likewise.
* doc/config.guess.1: Regenerate.
* doc/config.sub.1: Likewise.
2020-11-19 08:00:00 +00:00
Dmitry V. Levin
edcc7bbb5d config.guess: combine two heuristics to detect musl libc
Apparently, this is needed to correctly detect musl libc in different
versions of Alpine Linux.

According to
https://lists.gnu.org/archive/html/config-patches/2020-09/msg00002.html,
the ldd based check does not work for some old versions of the Alpine Linux,
and, according to
https://lists.gnu.org/archive/html/config-patches/2020-11/msg00002.html,
the compiler may not be available in a fresh Alpine container.

The ldd based check is essentially the same as the check that was
introduced by commit 3d00f60242f1726fc6eaa38e09435a969ee7ebe5, it is
performed iff the compiler based check could not give a definitive
answer.

Reported-by: Cheng XU <xucheng@me.com>
Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
2020-11-17 08:00:00 +00:00
Ben Elliston
77632d92f2 Update timestamps. 2020-11-07 15:46:23 +11:00
Ben Elliston
95c8d9a294 * config.sub, config.guess: Replace backtick .. substitutions
with POSIX $(..) command substitutions throughout.
	* Makefile (shellcheck): Don't exclude message SC2006.
2020-11-07 15:38:19 +11:00
Ben Elliston
664b772118 Fix whitespace problem in config.sub. 2020-10-15 07:24:35 +11:00
Ben Elliston
74a858549d * config.sub (i*86-pc-os2-emx): Recognise correctly.
* testsuite/config-sub.data: Add OS/2 tests to avoid regressions.
2020-10-13 22:20:55 +11:00
Fabrice Fontaine
d7a4dee7cc * config.sub (uclinux-uclibc*): Fix detection.
* testsuite/config-sub.data: Add a test case to avoid regression.

Signed-off-by: Ben Elliston <bje@gnu.org>
2020-09-27 10:41:38 +10:00
Elad Lahav
e072cc210e * config.sub: Fix regression in QNX recognition.
* testsuite/config-sub.data: Add some test cases.

Signed-off-by: Ben Elliston <bje@gnu.org>
2020-09-08 09:26:26 +10:00
Issam E. Maghni
0b5188819b * config.guess: Replace "if [ EXPR ]" with "if test EXPR".
* config.sub: Likewise.
	* testsuite/config-guess.sh: Likewise.
	* testsuite/config-sub.sh: Likewise.

Signed-off-by: Ben Elliston <bje@gnu.org>
2020-08-17 13:36:41 +10:00
Ben Elliston
b2969c6e71 * config.sub (case $cpu): Whitespace fix. 2020-07-10 16:01:38 +10:00
Keno Fischer
3c20dd431e * config.sub (arm64-*): Canonicalise to aarch64-*.
Signed-off-by: Ben Elliston <bje@gnu.org>
2020-07-10 15:45:29 +10:00
John Ericson
5e531d3918 * config.sub: Properly parse the KERNEL-OS case.
I previously refactored config.sub to parse 'basic_machine' into
separate 'cpu' and 'vendor' variables. This is a kindred refactor
where 'basic_os' (a rename of 'os' when used early on) is now parsed
into 'kernel' and 'os'.

Like the previous refactoring, this does make things a bit longer. I
think the change makes the code easier to understand and more robust,
so it is worth the cost of a longer script.

Signed-off-by: Ben Elliston <bje@gnu.org>
2020-06-28 15:32:14 +10:00
John Ericson
62db2b6bd6 * config.sub (s390, s390x): Use 'ibm' vendor default, but allow
overrides.

Previously, 'ibm' was forced, which caused problems when someone
wanted to use 'busybox' as a vendor and cross-compile with a slightly
different toolchain. The fix changed behaviour such that without any
vendor, it would use to 'unknown' rather than 'ibm' as before.

This patch aims to compromise between the old and new behaviour by
making 'ibm' a default for those CPUs when no vendor is specified, but
if the user explicitly provides a vendor that is used instead. This
sort of "vendor defaulting" has plenty of precedent in config.sub, so
it seemed like a good approach.

Signed-off-by: Ben Elliston <bje@gnu.org>
2020-06-28 11:28:40 +10:00
John Ericson
2b81440a51 * config.sub: Allow CPU to influence vendor defaulting too.
Signed-off-by: Ben Elliston <bje@gnu.org>
2020-06-28 11:21:57 +10:00
John Ericson
60a43fe6f0 * config.sub: Move OS whitelist to the bottom of the case as
preparation for future work.

Signed-off-by: Ben Elliston <bje@gnu.org>
2020-06-26 22:26:12 +10:00
Alexander Egorenkov
696cd4a4ea * config.sub (s390, s390x): Don't set manufacturer.
* testsuite/config-sub.data: Add test cases.

Signed-off-by: Ben Elliston <bje@gnu.org>
2020-06-21 10:51:01 +10:00
Carsten Teibes
5c38fa7c66 * config.sub (psp): Recognize.
* testsuite/config-sub.data: Add test case.

Signed-off-by: Ben Elliston <bje@air.net.au>
2020-06-18 16:50:55 +10:00
Emery Hemingway
e78c96e528 * config.sub (-genode*): New.
* testsuite/config-sub.data: Add test cases.

Signed-off-by: Ben Elliston <bje@air.net.au>
2020-05-04 23:40:51 +10:00
Ben Elliston
b97839f3cc Reported by Peter Eisentraut:
* config.sub (case $os): Append asterisk to 'powerunix'.
2020-04-24 21:17:47 +10:00
Ben Elliston
5256817ace * config.guess: Update copyright years.
* config.sub: Likewise.
	* doc/config.guess.1: Regenerate.
	* doc/config.sub.1: Likewise.
2020-01-01 19:36:58 +11:00
Daniel Bittman
fadac5a0ed * config.guess (*:Twizzler:*:*): New.
* config.sub (-twizzler*): New.
	* testsuite/config-guess.data: Add test cases.
	* testsuite/config-sub.data: Ditto.

Signed-off-by: Ben Elliston <bje@gnu.org>
2019-09-12 09:56:40 +10:00
Ben Elliston
d3bfe62ac8 This change introduces a new test to config-sub.sh which runs every
config.guess expected triplet through config.sub so that we can check
that it is properly recognised. Sometimes, new triplets have been
added to config.guess without updating config.sub accordingly (eg,
Harris NightHawk machines running PowerUnix from the mid-1990s!)

	* config.sub (case $os): Match nsk* and powerunix. Don't later
	match nsk* and set os=nsk which removes the OS version number.
	* testsuite/config-guess.data: Tweak Unleashed test case.
	* testsuite/config-sub.sh (run_config_sub_with_guess_triplets):
	New test.
2019-06-30 16:39:33 +10:00
Ben Elliston
854aa79378 * config.sub: Recognise os108*.
* testsuite/config-sub.data: Add a test case.
2019-06-30 10:02:45 +10:00
Ben Elliston
717418e698 * testsuite/config-sub.data: Many more missing test cases.
* config.sub (hp300): Set $os to hpux.

nb: The config.sub bug was found after writing hp300 test cases.
2019-06-26 13:29:37 +10:00
Ben Elliston
ec599a537a * config.sub (vsta): Move into alphabetical order. 2019-06-26 10:36:39 +10:00
Jose E. Marchesi
55eaf3e779 * config.sub (bpf): Recognise.
* testsuite/config-sub.data: Add test cases.

Signed-off-by: Ben Elliston <bje@gnu.org>
2019-05-23 11:27:51 +10:00