darwin.objc4: remove and replace with stubs

This commit is contained in:
Randy Eckenrode 2024-09-02 19:27:03 -04:00
parent 4c77578a9f
commit 7be27dc225
No known key found for this signature in database
GPG Key ID: 64C1CD4EC2A600D9
5 changed files with 3 additions and 104 deletions

View File

@ -264,7 +264,6 @@ developerToolsPackages_11_3_1 // macosPackages_11_0_1 // {
Csu = callPackage ./Csu/package.nix { };
libresolv = callPackage ./libresolv/package.nix { };
libutil = callPackage ./libutil/package.nix { };
objc4 = applePackage "objc4" "osx-10.12.6" "sha256-ZsxRpdsfv3Dxs7yBBCkjbKXKR6aXwkEpxc1XYXz7ueM=" {};
ppp = applePackage "ppp" "osx-10.12.6" "sha256-M1zoEjjeKIDUEP6ACbpUJk3OXjobw4g/qzUmxGdX1J0=" {};
removefile = callPackage ./removefile/package.nix { };
xnu = if isSdk10_12 then

View File

@ -15,7 +15,6 @@ file_cmds = applePackage' "file_cmds" "321.40.3" "macos-11.0.1" "0p077lnbcy8266m
libresolv = applePackage' "libresolv" "68" "macos-11.0.1" "045ahh8nvaam9whryc2f5g5xagwp7d187r80kcff82snp5p66aq1" {};
libutil = applePackage' "libutil" "58.40.2" "macos-11.0.1" "11s0vizk7bg0k0yjx21j8vaji4j4vk57131qbp07i9lpksb3bcy4" {};
network_cmds = applePackage' "network_cmds" "606.40.2" "macos-11.0.1" "1jsy13nraarafq6wmgh3wyir8wrwfra148xsjns7cw7q5xn40a1w" {};
objc4 = applePackage' "objc4" "818.2" "macos-11.0.1" "0m8mk1qd18wqjfn2jsq2lx6fxvllhmadmvz11jzg8vjw8pq91nw2" {};
ppp = applePackage' "ppp" "877.40.2" "macos-11.0.1" "06xznc77j45zzi12m4cmr3jj853qlc8dbmynbg1z6m9qf5phdbgk" {};
removefile = applePackage' "removefile" "49.40.3" "macos-11.0.1" "0870ihxpmvj8ggaycwlismbgbw9768lz7w6mc9vxf8l6nlc43z4f" {};
shell_cmds = applePackage' "shell_cmds" "216.40.4" "macos-11.0.1" "0wbysc9lwf1xgl686r3yn95rndcmqlp17zc1ig9gsl5fxyy5bghh" {};

View File

@ -1,35 +0,0 @@
{ appleDerivation, darwin-stubs }:
appleDerivation {
# Not strictly necessary, since libSystem depends on it, but it's nice to be explicit so we
# can easily find out what's impure.
__propagatedImpureHostDeps = [
"/usr/lib/libauto.dylib"
"/usr/lib/libc++abi.dylib"
"/usr/lib/libc++.1.dylib"
"/usr/lib/libSystem.B.dylib"
];
installPhase = ''
mkdir -p $out/include/objc $out/lib
cp ${darwin-stubs}/usr/lib/libobjc.A.tbd $out/lib/libobjc.A.tbd
ln -s libobjc.A.tbd $out/lib/libobjc.tbd
cp runtime/OldClasses.subproj/List.h $out/include/objc/List.h
cp runtime/NSObjCRuntime.h $out/include/objc/NSObjCRuntime.h
cp runtime/NSObject.h $out/include/objc/NSObject.h
cp runtime/Object.h $out/include/objc/Object.h
cp runtime/Protocol.h $out/include/objc/Protocol.h
cp runtime/hashtable.h $out/include/objc/hashtable.h
cp runtime/hashtable2.h $out/include/objc/hashtable2.h
cp runtime/message.h $out/include/objc/message.h
cp runtime/objc-api.h $out/include/objc/objc-api.h
cp runtime/objc-auto.h $out/include/objc/objc-auto.h
cp runtime/objc-class.h $out/include/objc/objc-class.h
cp runtime/objc-exception.h $out/include/objc/objc-exception.h
cp runtime/objc-load.h $out/include/objc/objc-load.h
cp runtime/objc-runtime.h $out/include/objc/objc-runtime.h
cp runtime/objc-sync.h $out/include/objc/objc-sync.h
cp runtime/objc.h $out/include/objc/objc.h
cp runtime/runtime.h $out/include/objc/runtime.h
'';
}

View File

@ -1,65 +0,0 @@
/*
* Generated by dtrace(1M).
*/
#ifndef _OBJC_PROBES_H
#define _OBJC_PROBES_H
#include <unistd.h>
#ifdef __cplusplus
extern "C" {
#endif
#define OBJC_RUNTIME_STABILITY "___dtrace_stability$objc_runtime$v1$1_1_0_1_1_0_1_1_0_1_1_0_1_1_0"
#define OBJC_RUNTIME_TYPEDEFS "___dtrace_typedefs$objc_runtime$v2"
#if !defined(DTRACE_PROBES_DISABLED) || !DTRACE_PROBES_DISABLED
#define OBJC_RUNTIME_OBJC_EXCEPTION_RETHROW() \
do { \
__asm__ volatile(".reference " OBJC_RUNTIME_TYPEDEFS); \
__dtrace_probe$objc_runtime$objc_exception_rethrow$v1(); \
__asm__ volatile(".reference " OBJC_RUNTIME_STABILITY); \
} while (0)
#define OBJC_RUNTIME_OBJC_EXCEPTION_RETHROW_ENABLED() \
({ int _r = __dtrace_isenabled$objc_runtime$objc_exception_rethrow$v1(); \
__asm__ volatile(""); \
_r; })
#define OBJC_RUNTIME_OBJC_EXCEPTION_THROW(arg0) \
do { \
__asm__ volatile(".reference " OBJC_RUNTIME_TYPEDEFS); \
__dtrace_probe$objc_runtime$objc_exception_throw$v1$766f6964202a(arg0); \
__asm__ volatile(".reference " OBJC_RUNTIME_STABILITY); \
} while (0)
#define OBJC_RUNTIME_OBJC_EXCEPTION_THROW_ENABLED() \
({ int _r = __dtrace_isenabled$objc_runtime$objc_exception_throw$v1(); \
__asm__ volatile(""); \
_r; })
extern void __dtrace_probe$objc_runtime$objc_exception_rethrow$v1(void);
extern int __dtrace_isenabled$objc_runtime$objc_exception_rethrow$v1(void);
extern void __dtrace_probe$objc_runtime$objc_exception_throw$v1$766f6964202a(const void *);
extern int __dtrace_isenabled$objc_runtime$objc_exception_throw$v1(void);
#else
#define OBJC_RUNTIME_OBJC_EXCEPTION_RETHROW() \
do { \
} while (0)
#define OBJC_RUNTIME_OBJC_EXCEPTION_RETHROW_ENABLED() (0)
#define OBJC_RUNTIME_OBJC_EXCEPTION_THROW(arg0) \
do { \
} while (0)
#define OBJC_RUNTIME_OBJC_EXCEPTION_THROW_ENABLED() (0)
#endif /* !defined(DTRACE_PROBES_DISABLED) || !DTRACE_PROBES_DISABLED */
#ifdef __cplusplus
}
#endif
#endif /* _OBJC_PROBES_H */

View File

@ -67,6 +67,7 @@ makeScopeWithSplicing' {
stubs = {
inherit apple_sdk apple_sdk_10_12 apple_sdk_11_0 apple_sdk_12_3;
libobjc = self.objc4;
} // lib.genAttrs [
"CF"
"CarbonHeaders"
@ -97,8 +98,10 @@ makeScopeWithSplicing' {
"libplatform"
"libpthread"
"mDNSResponder"
"objc4"
] (mkStub apple_sdk.version);
in
impure-cmds // appleSourcePackages // stubs // {
stdenvNoCF = stdenv.override {
@ -191,8 +194,6 @@ impure-cmds // appleSourcePackages // stubs // {
iproute2mac = callPackage ../os-specific/darwin/iproute2mac { };
libobjc = self.objc4;
lsusb = callPackage ../os-specific/darwin/lsusb { };
moltenvk = callPackage ../os-specific/darwin/moltenvk {