Skip to content

Commit 940ad34

Browse files
committed
website: add to FAQ
1 parent 509dd3b commit 940ad34

File tree

1 file changed

+19
-0
lines changed

1 file changed

+19
-0
lines changed
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,21 @@
11

22
{/* ------------------------------------------------------------------------ */}
3+
4+
<details>
5+
<summary>Why support for macOS was discontinued?</summary>
6+
7+
The short answer is because _GCC on macOS is not reproducible_.
8+
9+
The main problem is that since Apple abandoned GCC and switched to clang, there is no official GCC support for macOS.
10+
11+
macOS GCC updates are maintained by Iain Sandoe in https://github.com/iains/gcc-darwin-arm64, but his patches, also used by Homebrew, are not valid across multiple macOS releases (actually macOS SDK releases).
12+
13+
In other words, this means that compiling the sources on an older macOS is not guaranteed to be functional on later versions.
14+
15+
I do not know the full details behind this, but one of the reasons is that in order to compile the Apple SDK headers, the GCC headers need to be patched, and these patches must be updated for each SDK release and each GCC release.
16+
17+
This works for rolling distributions like Homebrew, which recompile everything on each release, but does not work for reproducible distributions like xPack, which expect old binaries to still run on newer systems.
18+
19+
Therefore, without reproducibility, a GCC for macOS is no longer a reasonable solution for the xPack project, and was discontinued.
20+
21+
</details>

0 commit comments

Comments
 (0)