]> git.ipfire.org Git - thirdparty/gcc.git/commit
Darwin: Future-proof and homogeneize detection of darwin versions
authorFrançois-Xavier Coudert <fxcoudert@gcc.gnu.org>
Fri, 17 Dec 2021 18:30:36 +0000 (19:30 +0100)
committerIain Sandoe <iain@sandoe.co.uk>
Tue, 16 May 2023 19:01:00 +0000 (20:01 +0100)
commitc55f706916f7c2e30fb5bfd5e757db5d11a8ada0
tree24940ed3d3e53a300a6edbd3b229c1bfdb7de78b
parent23e12322bc03065557d9c0ee238b5b8d7b605c02
Darwin: Future-proof and homogeneize detection of darwin versions

The current GCC branch will become 12.1.0, which will be the stable
version of GCC when the next macOS version is released. There are some
places in GCC that don’t handle darwin22 as a version, so we need to
future-proof it (gcc/config.gcc and gcc/config/darwin-driver.c). We
align that code with what Apple clang does, i.e. accept all potential
major macOS versions until 99.

This patch also homogenises the handling of darwin version numbers,
where the majority of places use darwin2*, but some used darwin2[0-9]*.
Since there never was a darwin2.x version, the two are equivalent, and
we prefer the simpler darwin2*

gcc/ChangeLog:

* config/darwin-driver.c: Make version code more future-proof.
* config.gcc: Homogeneize darwin versions.
* configure.ac: Homogeneize darwin versions.
* configure: Regenerate.

gcc/testsuite/ChangeLog:

* gcc.dg/darwin-minversion-link.c: Test darwin21.
* obj-c++.dg/cxx-ivars-3.mm: Homogeneize darwin versions.
* obj-c++.dg/objc-gc-3.mm: Homogeneize darwin versions.
* objc.dg/objc-gc-4.m: Homogeneize darwin versions.

(cherry picked from commit f18cbc1ee1f421a0dd79dc389bef9a23dd4a761d)
gcc/config.gcc
gcc/config/darwin-driver.c
gcc/configure
gcc/configure.ac
gcc/testsuite/gcc.dg/darwin-minversion-link.c
gcc/testsuite/obj-c++.dg/cxx-ivars-3.mm
gcc/testsuite/obj-c++.dg/objc-gc-3.mm
gcc/testsuite/objc.dg/objc-gc-4.m