Commit Graph

692233 Commits

Author SHA1 Message Date
Randy Eckenrode
6b6277ee90
darwin.xnu: remove and replace with stubs 2024-10-10 16:23:12 -04:00
Randy Eckenrode
03e585adea
darwin.ppp: remove and replace with stubs 2024-10-10 16:23:12 -04:00
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
259c350cf6
darwin.libunwind: remove source release 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
092b50a92c
python3: fix stdenv bootstrap on x86_64-darwin
The bootstrap tools linker sometimes crashes when trying to link the
sqlite3 tests, which causes the bootstrap Python not to have the sqlite3
module. This causes the freezegun module to fail to build later in the
bootstrap. Using the 11.0 SDK fixes the problem.

Upstream Python supports building with a newer SDK and back-deploying,
so this change should not negatively affect users on pre-11.0 releases.
2024-10-10 16:23:09 -04:00
Randy Eckenrode
3e5316cb96
python3: drop configd
configd is an alias for the SystemConfiguration framework, which is now
always part of the SDK. Removing this parameter because it effectively
does nothing now, which could be misleading to users.
2024-10-10 16:23:08 -04:00
Randy Eckenrode
b62e262366
python27: drop configd
configd is an alias for the SystemConfiguration framework, which is now
always part of the SDK. Removing this parameter because it effectively
does nothing now, which could be misleading to users.
2024-10-10 16:23:08 -04:00
Randy Eckenrode
0e61488c5b
overrideSDK: update for the new SDK
Change the adapter to add the requested SDK to the target’s build
inputs. Note that only the “11.0” (i.e., 11.3) and 12.3 SDKs are
supported. This adapter is retained for compatibility. The preferred way
to override the SDK is to add it to the appropriate inputs directly.
2024-10-10 16:23:08 -04:00
Randy Eckenrode
1c26a2fabc
makeStaticDarwin: handle when env.NIX_CFLAGS_LINK is set 2024-10-10 16:23:08 -04:00
Randy Eckenrode
66fcbb94e7
makeStaticDarwin: drop darwin-portable-libSystem-hook
`${stdenv.cc.libc}/lib/libSystem.B.dylib` does not exist and not existed
for as long as I have used nixpkgs. Since `/usr/lib/libSystem.B.dylib`
is already linked via text-based stubs, continue relying on those.
2024-10-10 16:23:08 -04:00
Randy Eckenrode
8a0d884405
libxo: init at 1.7.5 2024-10-10 16:23:08 -04:00
Randy Eckenrode
6986cab64b
libunwind: add a comment explaining the package situation
libunwind is unnecessary on Darwin because it is included in the SDK,
but setting libunwind to `null` would cause evaluation errors.
Additionally, some packages expect to locate libunwind via pkg-config.
Set the top-level libunwind to the Darwin compatibility package, so
those packages can find it and use it.
2024-10-10 16:23:08 -04:00
Randy Eckenrode
84f8fcfc3e
libcCross: use darwin.libSystem unconditionally
Darwin’s libc is a stub that does nothing but avoid unwanted compiler
and linker warnings. The actual libc is located dynamically based on the
SDK. To support cross-compilation, the SDK is located based on platform:
- `DEVELOPER_DIR_FOR_BUILD` - build platform;
- `DEVELOPER_DIR` - host platform; and
- `DEVELOPER_DIR_FOR_TARGET` - target platform.
2024-10-10 16:23:07 -04:00
Randy Eckenrode
f90d4d5e5b
ld64: adopt source release private headers pattern
Most Darwin source releases vendor private headers in a separate
derivation and add them to `NIX_CFLAGS_COMPILE` (to avoid propagating
them in static builds). Adopt this pattern for consistency with the
other source releases.
2024-10-10 16:23:07 -04:00
Randy Eckenrode
1c1774806d
ld64: drop libunwind as a dependency
libunwind is included in the SDK, so it’s no longer necessary to include
it as an explicit dependency.
2024-10-10 16:23:07 -04:00
Randy Eckenrode
2bf9c22eb1
ld64: ensure ld64 checks pass with the new SDK
The SDK library path is normally add by the ld wrapper, but ld64 is
being used unwrapped in this check phase. Ensure it can find the
requires SDK stubs by passing them via the clang wrapper.
2024-10-10 16:23:07 -04:00
Randy Eckenrode
39041627fe
cctools: move libtool to its own output
Many packages need only libtool from cctools, which is different from
GNU libtool (commonly used with other autotools), so it can’t be
provided by default with the Darwin bintools. Providing it as a separate
output allows packages to use cctools’s libtool without pulling other
tools they may not want.
2024-10-10 16:23:07 -04:00
Randy Eckenrode
9d376e2c53
cctools: drop darwin.objc4 from build inputs
It’s not necessary with the new SDK.
2024-10-10 16:23:07 -04:00
Randy Eckenrode
29a87d6751
darwin.top: convert to Meson and use mkAppleDerivation 2024-10-10 16:23:07 -04:00
Randy Eckenrode
97da1bdf09
darwin.text_cmds: convert to Meson and use mkAppleDerivation 2024-10-10 16:23:07 -04:00
Randy Eckenrode
9ea9221a1e
darwin.system_cmds: use mkAppleDerivation 2024-10-10 16:23:06 -04:00
Randy Eckenrode
a19b0a7345
darwin.shell_cmds: convert to Meson and use mkAppleDerivation 2024-10-10 16:23:06 -04:00
Randy Eckenrode
149eb5aef4
darwin.removefile: convert to Meson and use mkAppleDerivation 2024-10-10 16:23:06 -04:00