35 Commits

Author SHA1 Message Date
Dmitry V. Levin
948ae97ca5 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.
2024-01-01 20:00:00 +00:00
streaksu
ee6ea2f13b config.guess: recognize ironclad OS
* config.guess (*:Ironclad:*:*): Recognize.
* doc/config.guess.1: Regenerate.
* testsuite/config-guess.data (x86_64-unknown-ironclad): New entry.

Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
2023-12-02 20:31:23 +00:00
Alfred Persson Forsberg
a9a369e97a config.guess: detect LLVM-libc via features.h
* config.guess (__LLVM_LIBC__): Recognize.
* doc/config.guess.1: Regenerate.

Signed-off-by: Alfred Persson Forsberg <cat@catcream.org>
Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
2023-10-19 18:55:42 +00:00
Dmitry V. Levin
e4786449e1 config.guess: invoke "uname -p" from PATH for non-arm FreeBSD
Starting with commit afe1fa96bf32, "uname -p" from PATH is invoked in
case of FreeBSD on arm, while in other FreeBSD cases it was invoked
using a full pathname as "/usr/bin/uname -p".  Fix this inconsistency
and invoke "uname -p" from PATH for all FreeBSD cases.  This also allows
to test non-arm FreeBSD cases.

* config.guess (*:FreeBSD:*:*): Invoke "uname -p" from PATH.
* doc/config.guess.1: Regenerate.
* testsuite/config-guess.data (x86_64-unknown-freebsd5.2,
i586-unknown-freebsd7.0): Reintroduce the tests removed by commit
68873f3c11c6.
2023-08-22 08:00:00 +00:00
Bruno Haible
021155df7f config.guess: Detect Android (as opposed to GNU/Linux)
Here's a patch to recognize Android environments.

Such environments are "apps" with POSIX-like tools. Today, the most frequently
used one is Termux [1][2][3]; on devices with Android versions before 5.0
one can use Terminal-IDE [4][5].

config.sub already supports this environment:

  $ sh config.sub armv7l-linux-androideabi
  armv7l-unknown-linux-androideabi

I've built many GNU packages in this environment, with the following recipe:
  CONFIG_SHELL=$PREFIX/bin/sh; export CONFIG_SHELL
  CC="clang -ferror-limit=0" CXX="clang++ -ferror-limit=0"; export CC CXX
  ./configure --host=armv7l-linux-androideabi --prefix=$HOME/local

The Termux people have compiled or ported more than 1000 packages as well [6].

But the requirement to pass the --host parameter each time is an annoyance.
Without it, based only on the results of uname, config.guess guesses

  $ sh config.guess
  armv7l-unknown-linux-gnueabi

and many configuration results are wrong (because Android has many functions
in libc without declaring them in the .h files, depending on the so-called
"Android API level"), leading to many compilation errors.

With the attached patch, it produces

  $ sh config.guess
  armv7l-unknown-linux-androideabi

The patch does not include an addition to the config.guess test suite, since
the uname values are:
  $ uname -m
  armv7l
  $ uname -r
  4.19.127
  $ uname -s
  Linux
  $ uname -v
  #1 SMP PREEMPT Tue Apr 4 16:54:58 IST 2023
  $ uname -p
  unknown
which maps to armv7l-unknown-linux-gnueabi.

[1] https://github.com/termux/termux-app
[2] https://f-droid.org/en/packages/com.termux/
[3] https://wiki.termux.com/wiki/Main_Page
[4] https://en.wikibooks.org/wiki/Android/Terminal_IDE
[5] http://www.spartacusrex.com/terminalide.htm
[6] https://github.com/termux/termux-packages/tree/master/packages

* config.guess (Linux|GNU|GNU/*): Detect Android.
* doc/config.guess.1: Regenerate.

Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
2023-08-17 09:49:32 +00:00
Dmitry V. Levin
af8d803a82 config.guess (aarch64:Linux:*:*): Detect 32-bit ABI
On x86_64 Linux, a C compiler producing 32bit code causes the guessed
CPU to be changed to i686.

Adapt this approach for aarch64 Linux, i.e. change the guessed CPU
to armv8l when a compiler producing arm eabi code is detected.

* config.guess (aarch64:Linux:*:*): Test for the 32-bit ABI.
* doc/config.guess.1: Regenerate.

Suggested-by: David Allsopp <david.allsopp@metastack.com>
2023-07-20 16:40:00 +00:00
Paul Iannetta
602766470c Add KVX MPPA detection
* config.guess (kvx:Linux:*:*, kvx:cos:*:*, kvx:mbr:*:*): Recognize.
* config.sub (kvx): Recognize cpu.
(cos*, mbr*): Recognize os.
* testsuite/config-guess.data: Add tests for kvx targets.
* testsuite/config-sub.data: Likewise.
* doc/config.guess.1: Regenerate.
* doc/config.sub.1: Likewise.
2023-07-19 11:16:47 +00:00
Paul Eggert
4ad4bb7c30 Quote 'like this', not `like this'.
In 2012 the GNU Coding Standards changed to recommend quoting
'like this' or "like this" instead of `like this'.
Alter diagnostics and comments accordingly.
Use a more-consistent quoting style in config.sub diagnostics,
preferring 'like this' to "like this" as the former is more
resistant to shell metacharacters.
2023-06-23 16:55:10 +00:00
Dmitry V. Levin
4ce12a5c91 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.
2023-01-01 08:00:00 +00:00
Arsen Arsenović
9f9f9b0b13 config.guess: support running on Managarm systems
Signed-off-by: Arsen Arsenović <arsen@aarsen.me>

* config.guess (x86_64:[Mm]anagarm:*:*, i?86:[Mm]anagarm:*:*,
*:[Mm]anagarm:*:*): Recognize.
(timestamp): Update.
* doc/config.guess.1: Regenerate.
* testsuite/config-guess.data: Add tests for managarm targets.

Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
2022-09-17 21:34:48 +00:00
Xiaotian Wu
20403c5701 Remove loongarchx32
loongarchx32 doesn't exist in the real world, so we can delete it.

* config.guess (loongarchx32:Linux:*:*): Remove.
(timestamp): Update.
* config.sub (loongarchx32): Remove.
(timestamp): Update.
* doc/config.guess.1: Regenerate.
* doc/config.sub.1: Likewise.
* testsuite/config-guess.data (loongarchx32): Remove.
* testsuite/config-sub.data (loongarchx32, loongarchx32-elf,
loongarchx32-linux, loongarchx32-loongson-elf): Likewise.

Link: https://loongson.github.io/LoongArch-Documentation/LoongArch-toolchain-conventions-EN.html
Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
2022-08-01 08:05:29 +00:00
Alexander von Gluck IV
02ba26b218 config.guess: Update Haiku guesses
* config.guess (ppc:Haiku:*:*, *:Haiku:*:*): Recognize.
(timestamp): Update.
* doc/config.guess.1: Regenerate.
* testsuite/config-guess.data: Add more test cases for Haiku.

Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
2022-05-25 20:43:13 +00:00
Bruno Haible
f56a714038 config.guess (x86_64:Linux:*:*): Detect 32-bit ABI.
* config.guess (x86_64:Linux:*:*): Test for the 32-bit ABI. Don't assume that
__ILP32__ is a certain indicator for the x32 ABI; for GCC ≥ 9 it no longer is.
* doc/config.guess.1: Regenerate.
2022-05-08 17:08:08 +00:00
Idan Horowitz
c179db1b6f config.guess: recognize SerenityOS
* config.guess (*:SerenityOS:*:*): Recognize.
(timestamp): Update.
* doc/config.guess.1: Regenerate.
* testsuite/config-guess.data: Add test case for SerenityOS.

Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
2022-01-09 21:53:25 +00:00
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
Andreas F. Borchert
9e4c79f5fc config.guess: x86_64-pc-solaris2.11 is not properly recognized
config.guess guesses Solaris 11 to run on a 32-bit platform
despite Solaris 11 no longer supporting any 32-bit platform.

See the following code at lines 434 to 445:

| SUN_ARCH=i386
| # If there is a compiler, see if it is configured for 64-bit objects.
| # Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
| # This test works for both compilers.
| if test "$CC_FOR_BUILD" != no_compiler_found; then
|     if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
|         (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
|         grep IS_64BIT_ARCH >/dev/null
|     then
|         SUN_ARCH=x86_64
|     fi
| fi

If "cc" is installed, i.e. the Oracle Studio compiler, this one is
chosen for $CC_FOR_BUILD.  This compiler, the gcc provided by Oracle
and also gcc bootstrapped from sources on that platform with a default
configuration will by default generate 32-bit binaries -- even on
a 64-bit platform.  And __amd64 will not be defined for compilations
targeting a 32-bit platform.  This is different from the corresponding
behaviour on GNU/Linux systems where the local platform is targeted by
default.

Thus, as long as you do not add "-m64" or if you have a custom-built
gcc which defaults to 64 bit, you will get 32-bit binaries on Solaris
despite living on a 64-bit platform.

* config.guess (i86pc:SunOS:5.*:* || i86xen:SunOS:5.*:*): Adapt the
test by adding the "-m64" flag.  This will work properly for Solaris
10 as well (the last Solaris release that supported x86 32-bit
platforms).
* doc/config.guess.1: Regenerate.

Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
2021-11-30 20:18:10 +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
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
Dmitry V. Levin
185e597749 config.guess: simplify exit status workaround on alphaev67-dec-osf5.1
Commit 29865ea8a5622cdd80b7a69a0afa78004b4cd311 introduced an exit trap
reset before exiting to avoid a spurious non-zero exit status on
alphaev67-dec-osf5.1.  Simplify that code a bit by moving the exit trap
reset around.

* config.guess (alpha:OSF1:*:*): Reset exit trap earlier.
* doc/config.guess.1: Regenerate.
2021-05-24 08:00:00 +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
6c5532f345 config.guess: add SecBSD support
* config.guess (*:SecBSD:*:*): Recognize.
* doc/config.guess.1: Regenerate.
* testsuite/config-guess.data: Add a test case.

Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
2021-04-16 22:26:32 +00:00
Kalamatee
6faca61810 config.guess: update AROS system detection
* config.guess: Recognize *:AROS:*:*.
* doc/config.guess.1: Regenerate.
* testsuite/config-guess.data: Add test cases.

Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
2021-01-25 20:35:13 +00:00
M. Levinson
441e7e4bd4 config.guess: fix shell variable quoting bug
* config.guess (*:NetBSD:*:*): Spell out the full sysctl command twice
instead of using a shell variable.
* doc/config.guess.1: Regenerate.

Fixes: 827c77253b396c07306927b2a4b794a3251c48eb
Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
2021-01-19 13:49:34 +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
ff53d915ca doc: regenerate config.guess.1 2020-12-20 08:00: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
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
Ben Elliston
c701dfb820 * config.guess: Update copyright years.
* config.sub: Likewise.
	* doc/config.guess.1: Regenerate.
	* doc/config.sub.1: Likewise.
2019-01-01 08:15:34 +11:00
Ben Elliston
6fc06f163a * config.guess: Update copyright years.
* config.sub: Likewise.
	* doc/config.guess.1: Regenerate.
	* doc/config.sub.1: Likewise.
2018-01-01 17:10:32 +11:00
Ben Elliston
6a82322dd0 * config.guess: Update copyright years.
* config.sub: Likewise.
	* doc/config.guess.1: Regenerate.
	* doc/config.sub.1: Likewise.
2016-12-31 23:04:57 +11:00
Ben Elliston
d2701183eb * doc/config.guess.1: Regenerate.
* doc/config.sub.1: Likewise.
2016-12-28 00:59:12 +11:00
Ben Elliston
87a3b5e5fd * Makefile (manpages): New target.
(doc/config.guess.1): Build man page with help2man.
	(doc/config.sub.1): Likewise.
	* doc/config.guess.x: Copied from Autoconf tree.
	* doc/config.guess.1: Generate.
	* doc/config.sub.1: Likewise.
2015-11-22 20:41:43 +11:00