Commit Graph

155 Commits

Author SHA1 Message Date
Randy Eckenrode
7be27dc225
darwin.objc4: remove and replace with stubs 2024-10-10 16:23:12 -04:00
Randy Eckenrode
4c77578a9f
darwin.mDNSResponder: remove and replace with stubs 2024-10-10 16:23:12 -04:00
Randy Eckenrode
ec40b04537
darwin.libunwind: improve compatibility with libunwind
Darwin uses the system unwinder, which is based on the LLVM unwinder.
While it’s mostly API-compatible with libunwind, some packages expect to
find it using `pkg-config`. This package provides a compatible file to
allow those packages to use the system unwinder on Darwin.
2024-10-10 16:23:12 -04:00
Randy Eckenrode
7b23be1afd
darwin.libpthread: remove and replace with stubs 2024-10-10 16:23:12 -04:00
Randy Eckenrode
29f65b3b80
darwin.libplatform: remove and replace with stubs 2024-10-10 16:23:11 -04:00
Randy Eckenrode
1afb8b56c4
darwin.libmalloc: remove and replace with stubs 2024-10-10 16:23:11 -04:00
Randy Eckenrode
b9005e19b0
darwin.libdispatch: remove and replace with stubs 2024-10-10 16:23:11 -04:00
Randy Eckenrode
eb7c5f87a3
darwin.libclosure: remove and replace with stubs 2024-10-10 16:23:11 -04:00
Randy Eckenrode
1c2dde0b36
darwin.launchd: remove and replace with stubs 2024-10-10 16:23:11 -04:00
Randy Eckenrode
2ade0ae6b9
darwin.hfs: remove and replace with stubs (including hfsHeaders) 2024-10-10 16:23:11 -04:00
Randy Eckenrode
cce88cf198
darwin.eap8021x: remove and replace with stubs 2024-10-10 16:23:11 -04:00
Randy Eckenrode
8a593830ec
darwin.dyld: remove and replace with stubs 2024-10-10 16:23:11 -04:00
Randy Eckenrode
ae78385296
darwin.dtrace: remove and replace with stubs 2024-10-10 16:23:11 -04:00
Randy Eckenrode
d78b641fee
darwin.darwin-stubs: remove and replace with stubs
These are a different kind of stubs that do nothing except tell you to
check the documentation on how to use the new Darwin SDK instead.
2024-10-10 16:23:10 -04:00
Randy Eckenrode
ac79109639
darwin.configd: remove and replace with stubs (including configdHeaders) 2024-10-10 16:23:10 -04:00
Randy Eckenrode
fd2ae224d5
darwin.architecture: remove and replace with stubs 2024-10-10 16:23:10 -04:00
Randy Eckenrode
07272a045f
darwin.Security: remove and replace with stubs 2024-10-10 16:23:10 -04:00
Randy Eckenrode
db40aca353
darwin.Libsystem: remove and replace with stubs 2024-10-10 16:23:10 -04:00
Randy Eckenrode
fe9623e292
darwin.Librpcsvc: remove and replace with stubs 2024-10-10 16:23:10 -04:00
Randy Eckenrode
b47afcc7bd
darwin.Libnotify: remove and replace with stubs 2024-10-10 16:23:10 -04:00
Randy Eckenrode
67271abd3c
darwin.Libm: remove and replace with stubs 2024-10-10 16:23:10 -04:00
Randy Eckenrode
0d765426e3
darwin.Libinfo: remove and replace with stubs 2024-10-10 16:23:09 -04:00
Randy Eckenrode
2e1f901cd8
darwin.Libc: remove and replace with stubs 2024-10-10 16:23:09 -04:00
Randy Eckenrode
65650be7d7
darwin.IOKit: remove and replace with stubs 2024-10-10 16:23:09 -04:00
Randy Eckenrode
390e8e79f3
darwin.CoreSymbolication: remove and replace with stubs 2024-10-10 16:23:09 -04:00
Randy Eckenrode
4fbe41403d
darwin.CommonCrypto: remove and replace with stubs 2024-10-10 16:23:09 -04:00
Randy Eckenrode
2ed29e21b6
darwin.CarbonHeaders: remove and replace with stubs 2024-10-10 16:23:09 -04:00
Randy Eckenrode
7a8e3bf86e
darwin.CF: remove and replace with stubs 2024-10-10 16:23:09 -04:00
Randy Eckenrode
b8be4c4e6d
darwin.libtapi: add to darwin-aliases.nix 2024-10-10 16:23:06 -04:00
Randy Eckenrode
4624bd7959
darwin.adv_cmds: convert to Meson and use mkAppleDerivation 2024-10-10 16:23:04 -04:00
Randy Eckenrode
c218ce1e4d
darwin: replace framework chooser with stubs 2024-10-10 16:22:59 -04:00
Randy Eckenrode
0a3c487571
darwin.apple_sdk: convert frameworks and libs to stubs 2024-10-10 16:22:59 -04:00
Randy Eckenrode
480227777b
darwin.apple_sdk_12_3: convert frameworks and libs to stubs 2024-10-10 16:22:59 -04:00
Randy Eckenrode
fcd9dc8ac6
darwin.apple_sdk_11_0: convert frameworks and libs to stubs 2024-10-10 16:22:59 -04:00
Randy Eckenrode
17aeace4d9
darwin: prepare for adding stub packages 2024-10-10 16:22:59 -04:00
Randy Eckenrode
d1c2539523
darwin: add mkStub for deprecating frameworks 2024-10-10 16:22:59 -04:00
Randy Eckenrode
121149836e
darwin: add xcodeProjectCheckHook
This hook is used by source releases that build with Meson to assert
that the Xcode project has not changed since the previous release. This
is meant to be a check to force those updating source release packages
to make sure they have incorporated any changes that were made to the
Xcode project into the Meson build.
2024-10-10 01:07:39 -04:00
Randy Eckenrode
5721c4fa47
darwin: add libSystem
The new Darwin SDK pattern relies on an effectively empty, stub libc
implementation. The actual libSystem to be linked is located dynamically
based on the active SDK for the target. Independent build, host, and
target SDKs are all supported by Darwin.

The stub libSystem contains empty `include` and `lib` folders to avoid
warnings from wrappers that add those paths unconditionally, which can
turn into errors when a package is building with warnings-as-errors.

While it would be nice if a fallback libc could be provided, SDK headers
are not compatible between framework versions. Providing a fallback
risks mixing headers from different frameworks, which can result in hard
to diagnose errors involving semicolons or other punctuation.
2024-10-10 01:07:39 -04:00
Randy Eckenrode
08ad88285d
darwin: add bootstrapStdenv
Packages propagated by the SDK need to use a stdenv that does not
propagate anything. Otherwise, an infinite recursion will result when
building those packages.

For consistency, all source releases should use the bootstrapStdenv.
2024-10-10 01:07:38 -04:00
Aleksana
2cb8581d10
darwin.xcode: add 15.2, 15.3 and 15.4 (#313003) 2024-09-07 16:24:18 +08:00
Randy Eckenrode
2f2e655427
darwin.cctools: add to darwin-aliases.nix 2024-07-17 22:36:19 -04:00
Randy Eckenrode
a49dbb2544
darwin.stdenv: switch to top-level cctools and ld64 2024-07-13 17:54:36 -04:00
Randy Eckenrode
f635e39514
darwin.moltenvk: use the 12.3 SDK
Additionally, specify a 10.15 deployment target. According to the upstream documentation, 10.15 is the minimum macOS release supported at runtime.
2024-07-12 01:57:08 -04:00
Randy Eckenrode
1542e50e60
darwin.apple_sdk_12_3: init at 12.3 2024-07-12 01:57:08 -04:00
Tristan Ross
7a95a8948b
Merge pull request #324155 from paparodeo/x64-sdk11-no-rebuilds
treewide: change various flags to allow x64 darwin to default to sdk 11.0 when ready
2024-07-08 17:19:17 -07:00
Reno Dakota
3cb23cec23
treewide: fixes to allow x64 darwin to default to sdk 11
update code to not assume that x64 darwin must use sdk 10.12. After this
change it's possible to build a sdk 11 stdenv on darwin x64
2024-07-02 23:30:01 +00:00
Randy Eckenrode
8834c2f569
darwin.binutilsDualAs: use gas output of darwin.cctools 2024-06-27 07:33:47 -04:00
Randy Eckenrode
13db408c44
darwin.binutils: refactor and clean up
Update darwin.binutils based on darwin.cctools-llvm. It works essentially in the same way, simplifying the derivation. The support for providing both assemblers is handled in a separate commit.

Additionally, unlike cctools-llvm, the lists of tools are provided as passthru attributes: `cctools_cmds` and `llvm_cmds`.
2024-06-27 07:33:46 -04:00
Kilty McGowan
a100f1beb4 darwin.xcode: add 15.2, 15.3 and 15.4 2024-05-19 15:49:24 -07:00
zowoq
e5d9b197e9 darwin.openwith: unbreak on x86_64-darwin 2024-05-15 09:08:54 +10:00