From 3cb23cec239d4f73bb1b51f26ac7599384fdadd6 Mon Sep 17 00:00:00 2001 From: Reno Dakota <170618376+paparodeo@users.noreply.github.com> Date: Sun, 30 Jun 2024 23:42:02 +0000 Subject: [PATCH 1/3] 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 --- .../darwin/apple-sdk-11.0/default.nix | 4 +- .../darwin/apple-source-releases/default.nix | 12 +- .../apple-source-releases/xnu/default.nix | 16 +- ...rs-x86_64.txt => headers-10.12-x86_64.txt} | 0 ...aders-arm64.txt => headers-11.0-arm64.txt} | 0 .../xnu/headers-11.0-x86_64.txt | 1481 +++++++++++++++++ pkgs/stdenv/darwin/default.nix | 2 +- pkgs/top-level/darwin-packages.nix | 8 +- 8 files changed, 1508 insertions(+), 15 deletions(-) rename pkgs/os-specific/darwin/apple-source-releases/xnu/{headers-x86_64.txt => headers-10.12-x86_64.txt} (100%) rename pkgs/os-specific/darwin/apple-source-releases/xnu/{headers-arm64.txt => headers-11.0-arm64.txt} (100%) create mode 100644 pkgs/os-specific/darwin/apple-source-releases/xnu/headers-11.0-x86_64.txt diff --git a/pkgs/os-specific/darwin/apple-sdk-11.0/default.nix b/pkgs/os-specific/darwin/apple-sdk-11.0/default.nix index 238c1b7e460b0e4..7262400c3eb02c0 100644 --- a/pkgs/os-specific/darwin/apple-sdk-11.0/default.nix +++ b/pkgs/os-specific/darwin/apple-sdk-11.0/default.nix @@ -51,7 +51,7 @@ let }; mkCc = cc: - if stdenv.isAarch64 then cc + if lib.versionAtLeast stdenv.hostPlatform.darwinSdkVersion "11" then cc else cc.override { bintools = stdenv.cc.bintools.override { libc = packages.Libsystem; }; @@ -59,7 +59,7 @@ let }; mkStdenv = stdenv: - if stdenv.isAarch64 then stdenv + if lib.versionAtLeast stdenv.hostPlatform.darwinSdkVersion "11" then stdenv else let darwinMinVersion = "10.12"; diff --git a/pkgs/os-specific/darwin/apple-source-releases/default.nix b/pkgs/os-specific/darwin/apple-source-releases/default.nix index 3eae8749c4e4d4a..aae3d515a6f904c 100644 --- a/pkgs/os-specific/darwin/apple-source-releases/default.nix +++ b/pkgs/os-specific/darwin/apple-source-releases/default.nix @@ -1,6 +1,10 @@ { lib, stdenv, fetchurl, fetchFromGitHub, pkgs }: let + + isSdk10_12 = stdenv.hostPlatform.darwinSdkVersion == "10.12"; + + # This attrset can in theory be computed automatically, but for that to work nicely we need # import-from-derivation to work properly. Currently it's rather ugly when we try to bootstrap # a stdenv out of something like this. With some care we can probably get rid of this, but for @@ -271,10 +275,10 @@ developerToolsPackages_11_3_1 // macosPackages_11_0_1 // { Libinfo = applePackage "Libinfo" "osx-10.11.6" "sha256-6F7wiwerv4nz/xXHtp1qCHSaFzZgzcRN+jbmXA5oWOQ=" {}; Libm = applePackage "Libm" "osx-10.7.4" "sha256-KjMETfT4qJm0m0Ux/F6Rq8bI4Q4UVnFx6IKbKxXd+Es=" {}; Libnotify = applePackage "Libnotify" "osx-10.12.6" "sha256-6wvMBxAUfiYcQtmlfYCj1d3kFmFM/jdboTd7hRvi3e4=" {}; - libmalloc = if stdenv.isx86_64 then + libmalloc = if isSdk10_12 then applePackage "libmalloc" "osx-10.12.6" "sha256-brfG4GEF2yZipKdhlPq6DhT2z5hKYSb2MAmffaikdO4=" {} else macosPackages_11_0_1.libmalloc; - libplatform = if stdenv.isx86_64 then + libplatform = if isSdk10_12 then applePackage "libplatform" "osx-10.12.6" "sha256-6McMTjw55xtnCsFI3AB1osRagnuB5pSTqeMKD3gpGtM=" {} else macosPackages_11_0_1.libplatform; libpthread = applePackage "libpthread" "osx-10.12.6" "sha256-QvJ9PERmrCWBiDmOWrLvQUKZ4JxHuh8gS5nlZKDLqE8=" {}; @@ -286,7 +290,7 @@ developerToolsPackages_11_3_1 // macosPackages_11_0_1 // { objc4 = applePackage "objc4" "osx-10.12.6" "sha256-ZsxRpdsfv3Dxs7yBBCkjbKXKR6aXwkEpxc1XYXz7ueM=" {}; ppp = applePackage "ppp" "osx-10.12.6" "sha256-M1zoEjjeKIDUEP6ACbpUJk3OXjobw4g/qzUmxGdX1J0=" {}; removefile = applePackage "removefile" "osx-10.12.6" "sha256-UpNk27kGXnZss1ZXWVJU9jLz/NW63ZAZEDLhyCYoi9M=" {}; - xnu = if stdenv.isx86_64 then + xnu = if isSdk10_12 then applePackage "xnu" "osx-10.12.6" "sha256-C8TPQlUT3RbzAy8YnZPNtr70hpaVG9Llv0h42s3NENI=" {} else macosPackages_11_0_1.xnu; hfs = applePackage "hfs" "osx-10.12.6" "sha256-eGi18HQFJrU5UHoBOE0LqO5gQ0xOf8+OJuAWQljfKE4=" {}; @@ -297,7 +301,7 @@ developerToolsPackages_11_3_1 // macosPackages_11_0_1 // { diskdev_cmds = applePackage "diskdev_cmds" "osx-10.11.6" "sha256-VX+hcZ7JhOA8EhwLloPlM3Yx79RXp9OYHV9Mi10uw3Q=" { macosPackages_11_0_1 = macosPackages_11_0_1; }; - network_cmds = if stdenv.isx86_64 then + network_cmds = if isSdk10_12 then applePackage "network_cmds" "osx-10.11.6" "sha256-I89CLIswGheewOjiNZwQTgWvWbhm0qtB5+KUqzxnQ5M=" {} else macosPackages_11_0_1.network_cmds; file_cmds = applePackage "file_cmds" "osx-10.11.6" "sha256-JYy6HwmultKeZtLfaysbsyLoWg+OaTh7eJu54JkJC0Q=" {}; diff --git a/pkgs/os-specific/darwin/apple-source-releases/xnu/default.nix b/pkgs/os-specific/darwin/apple-source-releases/xnu/default.nix index 14ede7949d0f91e..2820df1db1b19bc 100644 --- a/pkgs/os-specific/darwin/apple-source-releases/xnu/default.nix +++ b/pkgs/os-specific/darwin/apple-source-releases/xnu/default.nix @@ -1,4 +1,4 @@ -{ appleDerivation', lib, stdenv, stdenvNoCC, buildPackages +{ appleDerivation', lib, stdenv, stdenvNoCC, buildPackages, pkgsBuildBuild , bootstrap_cmds, bison, flex , gnum4, unifdef, perl, python3 , headersOnly ? true @@ -12,7 +12,7 @@ appleDerivation' (if headersOnly then stdenvNoCC else stdenv) ( nativeBuildInputs = [ bootstrap_cmds bison flex gnum4 unifdef perl python3 ]; - patches = lib.optionals stdenv.isx86_64 [ ./python3.patch ]; + patches = lib.optionals (lib.versionOlder stdenv.hostPlatform.darwinSdkVersion "11") [ ./python3.patch ]; postPatch = '' substituteInPlace Makefile \ @@ -48,7 +48,7 @@ appleDerivation' (if headersOnly then stdenvNoCC else stdenv) ( --replace 'MACHINE_ARCH=armv7' 'MACHINE_ARCH=arm64' # this might break the comments saying 32-bit is required patchShebangs . - '' + lib.optionalString stdenv.isAarch64 '' + '' + lib.optionalString (lib.versionAtLeast stdenv.hostPlatform.darwinSdkVersion "11") '' # iig is closed-sourced, we don't have it # create an empty file to the header instead # this line becomes: echo "" > $@; echo --header ... @@ -72,7 +72,11 @@ appleDerivation' (if headersOnly then stdenvNoCC else stdenv) ( HOST_FLEX = "flex"; HOST_BISON = "bison"; HOST_GM4 = "m4"; - MIGCC = "cc"; + # use unwrapped clang to generate headers because wrapper is not compatible with a 32 bit -arch. + # aarch64 should likely do this as well and remove the --replace MACHINE_ARCH above + MIGCC = if stdenv.isx86_64 && lib.versionAtLeast stdenv.hostPlatform.darwinSdkVersion "11" + then "${lib.getBin pkgsBuildBuild.stdenv.cc.cc}/bin/clang" + else "cc"; ARCHS = arch; ARCH_CONFIGS = arch; @@ -80,7 +84,7 @@ appleDerivation' (if headersOnly then stdenvNoCC else stdenv) ( preBuild = let macosVersion = "10.0 10.1 10.2 10.3 10.4 10.5 10.6 10.7 10.8 10.9 10.10 10.11" + - lib.optionalString stdenv.isAarch64 " 10.12 10.13 10.14 10.15 11.0"; + lib.optionalString (lib.versionAtLeast stdenv.hostPlatform.darwinSdkVersion "11") " 10.12 10.13 10.14 10.15 11.0"; in '' # This is a bit of a hack... mkdir -p sdk/usr/local/libexec @@ -150,7 +154,7 @@ appleDerivation' (if headersOnly then stdenvNoCC else stdenv) ( mv $out/Library/Frameworks/IOKit.framework $out/Library/PrivateFrameworks ''; - appleHeaders = builtins.readFile (./. + "/headers-${arch}.txt"); + appleHeaders = builtins.readFile (./. + "/headers-${stdenv.hostPlatform.darwinSdkVersion}-${arch}.txt"); } // lib.optionalAttrs headersOnly { HOST_CODESIGN = "echo"; HOST_CODESIGN_ALLOCATE = "echo"; diff --git a/pkgs/os-specific/darwin/apple-source-releases/xnu/headers-x86_64.txt b/pkgs/os-specific/darwin/apple-source-releases/xnu/headers-10.12-x86_64.txt similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/xnu/headers-x86_64.txt rename to pkgs/os-specific/darwin/apple-source-releases/xnu/headers-10.12-x86_64.txt diff --git a/pkgs/os-specific/darwin/apple-source-releases/xnu/headers-arm64.txt b/pkgs/os-specific/darwin/apple-source-releases/xnu/headers-11.0-arm64.txt similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/xnu/headers-arm64.txt rename to pkgs/os-specific/darwin/apple-source-releases/xnu/headers-11.0-arm64.txt diff --git a/pkgs/os-specific/darwin/apple-source-releases/xnu/headers-11.0-x86_64.txt b/pkgs/os-specific/darwin/apple-source-releases/xnu/headers-11.0-x86_64.txt new file mode 100644 index 000000000000000..f2ab4917845eb10 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/xnu/headers-11.0-x86_64.txt @@ -0,0 +1,1481 @@ +AssertMacros.h +_errno.h +_libkernel_init.h +atm/atm_notification.defs +atm/atm_types.defs +atm/atm_types.h +bank/bank_types.h +bsd/bsm/audit.h +bsd/crypto/entropy/diag_entropy_sysctl.h +bsd/dev/random/randomdev.h +bsd/i386/_limits.h +bsd/i386/_mcontext.h +bsd/i386/_param.h +bsd/i386/_types.h +bsd/i386/endian.h +bsd/i386/limits.h +bsd/i386/param.h +bsd/i386/profile.h +bsd/i386/signal.h +bsd/i386/types.h +bsd/i386/vmparam.h +bsd/libkern/copyio.h +bsd/libkern/libkern.h +bsd/machine/_limits.h +bsd/machine/_mcontext.h +bsd/machine/_param.h +bsd/machine/_types.h +bsd/machine/byte_order.h +bsd/machine/disklabel.h +bsd/machine/endian.h +bsd/machine/limits.h +bsd/machine/param.h +bsd/machine/profile.h +bsd/machine/signal.h +bsd/machine/types.h +bsd/machine/vmparam.h +bsd/miscfs/devfs/devfs.h +bsd/miscfs/devfs/devfs_proto.h +bsd/miscfs/devfs/devfsdefs.h +bsd/miscfs/devfs/fdesc.h +bsd/miscfs/fifofs/fifo.h +bsd/miscfs/specfs/specdev.h +bsd/miscfs/union/union.h +bsd/net/bpf.h +bsd/net/dlil.h +bsd/net/ethernet.h +bsd/net/if.h +bsd/net/if_arp.h +bsd/net/if_dl.h +bsd/net/if_ether.h +bsd/net/if_llc.h +bsd/net/if_media.h +bsd/net/if_mib.h +bsd/net/if_types.h +bsd/net/if_utun.h +bsd/net/if_var.h +bsd/net/init.h +bsd/net/kext_net.h +bsd/net/kpi_interface.h +bsd/net/kpi_interfacefilter.h +bsd/net/kpi_protocol.h +bsd/net/ndrv.h +bsd/net/net_kev.h +bsd/net/pfkeyv2.h +bsd/net/radix.h +bsd/net/route.h +bsd/netinet/bootp.h +bsd/netinet/icmp6.h +bsd/netinet/icmp_var.h +bsd/netinet/if_ether.h +bsd/netinet/igmp.h +bsd/netinet/igmp_var.h +bsd/netinet/in.h +bsd/netinet/in_arp.h +bsd/netinet/in_pcb.h +bsd/netinet/in_systm.h +bsd/netinet/in_var.h +bsd/netinet/ip.h +bsd/netinet/ip6.h +bsd/netinet/ip_icmp.h +bsd/netinet/ip_var.h +bsd/netinet/kpi_ipfilter.h +bsd/netinet/tcp.h +bsd/netinet/tcp_fsm.h +bsd/netinet/tcp_seq.h +bsd/netinet/tcp_timer.h +bsd/netinet/tcp_var.h +bsd/netinet/tcpip.h +bsd/netinet/udp.h +bsd/netinet/udp_var.h +bsd/netinet6/ah.h +bsd/netinet6/esp.h +bsd/netinet6/in6.h +bsd/netinet6/in6_var.h +bsd/netinet6/ipcomp.h +bsd/netinet6/ipsec.h +bsd/netinet6/nd6.h +bsd/netinet6/raw_ip6.h +bsd/netinet6/scope6_var.h +bsd/netkey/keysock.h +bsd/pthread/bsdthread_private.h +bsd/pthread/priority_private.h +bsd/pthread/workqueue_internal.h +bsd/pthread/workqueue_syscalls.h +bsd/pthread/workqueue_trace.h +bsd/security/audit/audit.h +bsd/security/audit/audit_bsd.h +bsd/security/audit/audit_ioctl.h +bsd/security/audit/audit_private.h +bsd/sys/_endian.h +bsd/sys/_select.h +bsd/sys/_structs.h +bsd/sys/_types.h +bsd/sys/_types/_blkcnt_t.h +bsd/sys/_types/_blksize_t.h +bsd/sys/_types/_caddr_t.h +bsd/sys/_types/_clock_t.h +bsd/sys/_types/_ct_rune_t.h +bsd/sys/_types/_dev_t.h +bsd/sys/_types/_errno_t.h +bsd/sys/_types/_fd_clr.h +bsd/sys/_types/_fd_copy.h +bsd/sys/_types/_fd_def.h +bsd/sys/_types/_fd_isset.h +bsd/sys/_types/_fd_set.h +bsd/sys/_types/_fd_setsize.h +bsd/sys/_types/_fd_zero.h +bsd/sys/_types/_filesec_t.h +bsd/sys/_types/_fsblkcnt_t.h +bsd/sys/_types/_fsfilcnt_t.h +bsd/sys/_types/_fsid_t.h +bsd/sys/_types/_fsobj_id_t.h +bsd/sys/_types/_gid_t.h +bsd/sys/_types/_guid_t.h +bsd/sys/_types/_id_t.h +bsd/sys/_types/_in_addr_t.h +bsd/sys/_types/_in_port_t.h +bsd/sys/_types/_ino64_t.h +bsd/sys/_types/_ino_t.h +bsd/sys/_types/_int16_t.h +bsd/sys/_types/_int32_t.h +bsd/sys/_types/_int64_t.h +bsd/sys/_types/_int8_t.h +bsd/sys/_types/_intptr_t.h +bsd/sys/_types/_iovec_t.h +bsd/sys/_types/_key_t.h +bsd/sys/_types/_mach_port_t.h +bsd/sys/_types/_mbstate_t.h +bsd/sys/_types/_mode_t.h +bsd/sys/_types/_nlink_t.h +bsd/sys/_types/_null.h +bsd/sys/_types/_o_dsync.h +bsd/sys/_types/_o_sync.h +bsd/sys/_types/_off_t.h +bsd/sys/_types/_offsetof.h +bsd/sys/_types/_os_inline.h +bsd/sys/_types/_pid_t.h +bsd/sys/_types/_posix_vdisable.h +bsd/sys/_types/_ptrdiff_t.h +bsd/sys/_types/_rsize_t.h +bsd/sys/_types/_rune_t.h +bsd/sys/_types/_s_ifmt.h +bsd/sys/_types/_sa_family_t.h +bsd/sys/_types/_seek_set.h +bsd/sys/_types/_sigaltstack.h +bsd/sys/_types/_sigset_t.h +bsd/sys/_types/_size_t.h +bsd/sys/_types/_socklen_t.h +bsd/sys/_types/_ssize_t.h +bsd/sys/_types/_suseconds_t.h +bsd/sys/_types/_time_t.h +bsd/sys/_types/_timespec.h +bsd/sys/_types/_timeval.h +bsd/sys/_types/_timeval32.h +bsd/sys/_types/_timeval64.h +bsd/sys/_types/_u_char.h +bsd/sys/_types/_u_int.h +bsd/sys/_types/_u_int16_t.h +bsd/sys/_types/_u_int32_t.h +bsd/sys/_types/_u_int64_t.h +bsd/sys/_types/_u_int8_t.h +bsd/sys/_types/_u_short.h +bsd/sys/_types/_ucontext.h +bsd/sys/_types/_ucontext64.h +bsd/sys/_types/_uid_t.h +bsd/sys/_types/_uintptr_t.h +bsd/sys/_types/_useconds_t.h +bsd/sys/_types/_user32_itimerval.h +bsd/sys/_types/_user32_ntptimeval.h +bsd/sys/_types/_user32_timespec.h +bsd/sys/_types/_user32_timeval.h +bsd/sys/_types/_user32_timex.h +bsd/sys/_types/_user64_itimerval.h +bsd/sys/_types/_user64_ntptimeval.h +bsd/sys/_types/_user64_timespec.h +bsd/sys/_types/_user64_timeval.h +bsd/sys/_types/_user64_timex.h +bsd/sys/_types/_user_timespec.h +bsd/sys/_types/_user_timeval.h +bsd/sys/_types/_uuid_t.h +bsd/sys/_types/_va_list.h +bsd/sys/_types/_wchar_t.h +bsd/sys/_types/_wint_t.h +bsd/sys/appleapiopts.h +bsd/sys/attr.h +bsd/sys/bsdtask_info.h +bsd/sys/buf.h +bsd/sys/cdefs.h +bsd/sys/codesign.h +bsd/sys/commpage.h +bsd/sys/conf.h +bsd/sys/content_protection.h +bsd/sys/cprotect.h +bsd/sys/csr.h +bsd/sys/decmpfs.h +bsd/sys/dir.h +bsd/sys/dirent.h +bsd/sys/disk.h +bsd/sys/disklabel.h +bsd/sys/disktab.h +bsd/sys/dkstat.h +bsd/sys/doc_tombstone.h +bsd/sys/domain.h +bsd/sys/errno.h +bsd/sys/ev.h +bsd/sys/event.h +bsd/sys/eventhandler.h +bsd/sys/eventvar.h +bsd/sys/fbt.h +bsd/sys/fcntl.h +bsd/sys/file.h +bsd/sys/file_internal.h +bsd/sys/filedesc.h +bsd/sys/fileport.h +bsd/sys/filio.h +bsd/sys/fsctl.h +bsd/sys/fsevents.h +bsd/sys/fslog.h +bsd/sys/guarded.h +bsd/sys/imgact.h +bsd/sys/ioccom.h +bsd/sys/ioctl.h +bsd/sys/ioctl_compat.h +bsd/sys/ipc.h +bsd/sys/kasl.h +bsd/sys/kauth.h +bsd/sys/kdebug.h +bsd/sys/kdebug_kernel.h +bsd/sys/kdebug_private.h +bsd/sys/kern_control.h +bsd/sys/kern_event.h +bsd/sys/kern_memorystatus.h +bsd/sys/kern_memorystatus_freeze.h +bsd/sys/kern_memorystatus_notify.h +bsd/sys/kern_sysctl.h +bsd/sys/kernel.h +bsd/sys/kernel_types.h +bsd/sys/kpi_mbuf.h +bsd/sys/kpi_private.h +bsd/sys/kpi_socket.h +bsd/sys/kpi_socketfilter.h +bsd/sys/ktrace.h +bsd/sys/linker_set.h +bsd/sys/lock.h +bsd/sys/lockf.h +bsd/sys/mach_swapon.h +bsd/sys/malloc.h +bsd/sys/mbuf.h +bsd/sys/md5.h +bsd/sys/memory_maintenance.h +bsd/sys/mman.h +bsd/sys/monotonic.h +bsd/sys/mount.h +bsd/sys/mount_internal.h +bsd/sys/msg.h +bsd/sys/msgbuf.h +bsd/sys/munge.h +bsd/sys/namei.h +bsd/sys/netport.h +bsd/sys/param.h +bsd/sys/paths.h +bsd/sys/persona.h +bsd/sys/pgo.h +bsd/sys/pipe.h +bsd/sys/posix_sem.h +bsd/sys/posix_shm.h +bsd/sys/priv.h +bsd/sys/proc.h +bsd/sys/proc_info.h +bsd/sys/proc_internal.h +bsd/sys/proc_require.h +bsd/sys/protosw.h +bsd/sys/pthread_internal.h +bsd/sys/pthread_shims.h +bsd/sys/queue.h +bsd/sys/quota.h +bsd/sys/random.h +bsd/sys/reason.h +bsd/sys/reboot.h +bsd/sys/resource.h +bsd/sys/resourcevar.h +bsd/sys/sbuf.h +bsd/sys/select.h +bsd/sys/sem.h +bsd/sys/sem_internal.h +bsd/sys/semaphore.h +bsd/sys/shm.h +bsd/sys/shm_internal.h +bsd/sys/signal.h +bsd/sys/signalvar.h +bsd/sys/socket.h +bsd/sys/socketvar.h +bsd/sys/sockio.h +bsd/sys/spawn.h +bsd/sys/spawn_internal.h +bsd/sys/stackshot.h +bsd/sys/stat.h +bsd/sys/stdio.h +bsd/sys/sys_domain.h +bsd/sys/syscall.h +bsd/sys/sysctl.h +bsd/sys/syslimits.h +bsd/sys/syslog.h +bsd/sys/sysproto.h +bsd/sys/systm.h +bsd/sys/termios.h +bsd/sys/time.h +bsd/sys/timex.h +bsd/sys/tree.h +bsd/sys/tty.h +bsd/sys/ttychars.h +bsd/sys/ttycom.h +bsd/sys/ttydefaults.h +bsd/sys/ttydev.h +bsd/sys/types.h +bsd/sys/ubc.h +bsd/sys/ucontext.h +bsd/sys/ucred.h +bsd/sys/uio.h +bsd/sys/uio_internal.h +bsd/sys/ulock.h +bsd/sys/un.h +bsd/sys/unicode.h +bsd/sys/unistd.h +bsd/sys/unpcb.h +bsd/sys/user.h +bsd/sys/utfconv.h +bsd/sys/ux_exception.h +bsd/sys/vfs_context.h +bsd/sys/vm.h +bsd/sys/vmmeter.h +bsd/sys/vmparam.h +bsd/sys/vnode.h +bsd/sys/vnode_if.h +bsd/sys/vnode_internal.h +bsd/sys/vsock.h +bsd/sys/vsock_domain.h +bsd/sys/vsock_transport.h +bsd/sys/wait.h +bsd/sys/work_interval.h +bsd/sys/xattr.h +bsd/uuid/uuid.h +bsd/vfs/vfs_disk_conditioner.h +bsd/vfs/vfs_support.h +bsd/vm/vnode_pager.h +bsm/audit.h +bsm/audit_domain.h +bsm/audit_errno.h +bsm/audit_fcntl.h +bsm/audit_internal.h +bsm/audit_kevents.h +bsm/audit_record.h +bsm/audit_socket_type.h +corecrypto/cc.h +corecrypto/cc_config.h +corecrypto/cc_error.h +corecrypto/cc_fault_canary.h +corecrypto/cc_macros.h +corecrypto/cc_priv.h +corecrypto/cc_runtime_config.h +corecrypto/ccaes.h +corecrypto/ccasn1.h +corecrypto/ccchacha20poly1305.h +corecrypto/cccmac.h +corecrypto/ccdes.h +corecrypto/ccdigest.h +corecrypto/ccdigest_priv.h +corecrypto/ccdrbg.h +corecrypto/ccdrbg_impl.h +corecrypto/cchmac.h +corecrypto/cckprng.h +corecrypto/ccmd4.h +corecrypto/ccmode.h +corecrypto/ccmode_impl.h +corecrypto/ccmode_siv.h +corecrypto/ccmode_siv_hmac.h +corecrypto/ccn.h +corecrypto/ccpad.h +corecrypto/ccrng.h +corecrypto/ccrsa.h +corecrypto/ccsha1.h +corecrypto/ccsha2.h +corecrypto/cczp.h +corecrypto/fipspost_trace.h +corpses/task_corpse.h +default_pager/default_pager_types.h +device/device.defs +device/device_port.h +device/device_types.defs +device/device_types.h +gethostuuid.h +gethostuuid_private.h +i386/_limits.h +i386/_mcontext.h +i386/_param.h +i386/_types.h +i386/eflags.h +i386/endian.h +i386/fasttrap_isa.h +i386/limits.h +i386/param.h +i386/profile.h +i386/signal.h +i386/types.h +i386/user_ldt.h +i386/vmparam.h +iokit/DriverKit/IOBufferMemoryDescriptor.h +iokit/DriverKit/IODMACommand.h +iokit/DriverKit/IODataQueueDispatchSource.h +iokit/DriverKit/IODispatchQueue.h +iokit/DriverKit/IODispatchSource.h +iokit/DriverKit/IOInterruptDispatchSource.h +iokit/DriverKit/IOKitKeys.h +iokit/DriverKit/IOMemoryDescriptor.h +iokit/DriverKit/IOMemoryMap.h +iokit/DriverKit/IORPC.h +iokit/DriverKit/IOReturn.h +iokit/DriverKit/IOService.h +iokit/DriverKit/IOServiceNotificationDispatchSource.h +iokit/DriverKit/IOTypes.h +iokit/DriverKit/IOUserClient.h +iokit/DriverKit/IOUserServer.h +iokit/DriverKit/OSAction.h +iokit/DriverKit/OSObject.h +iokit/IOKit/AppleKeyStoreInterface.h +iokit/IOKit/IOBSD.h +iokit/IOKit/IOBufferMemoryDescriptor.h +iokit/IOKit/IOCPU.h +iokit/IOKit/IOCatalogue.h +iokit/IOKit/IOCommand.h +iokit/IOKit/IOCommandGate.h +iokit/IOKit/IOCommandPool.h +iokit/IOKit/IOCommandQueue.h +iokit/IOKit/IOConditionLock.h +iokit/IOKit/IODMACommand.h +iokit/IOKit/IODMAController.h +iokit/IOKit/IODMAEventSource.h +iokit/IOKit/IODataQueue.h +iokit/IOKit/IODataQueueShared.h +iokit/IOKit/IODeviceMemory.h +iokit/IOKit/IODeviceTreeSupport.h +iokit/IOKit/IOEventSource.h +iokit/IOKit/IOFilterInterruptEventSource.h +iokit/IOKit/IOHibernatePrivate.h +iokit/IOKit/IOInterleavedMemoryDescriptor.h +iokit/IOKit/IOInterruptAccounting.h +iokit/IOKit/IOInterruptController.h +iokit/IOKit/IOInterruptEventSource.h +iokit/IOKit/IOInterrupts.h +iokit/IOKit/IOKernelReportStructs.h +iokit/IOKit/IOKernelReporters.h +iokit/IOKit/IOKitDebug.h +iokit/IOKit/IOKitDiagnosticsUserClient.h +iokit/IOKit/IOKitKeys.h +iokit/IOKit/IOKitKeysPrivate.h +iokit/IOKit/IOKitServer.h +iokit/IOKit/IOLib.h +iokit/IOKit/IOLocks.h +iokit/IOKit/IOLocksPrivate.h +iokit/IOKit/IOMapper.h +iokit/IOKit/IOMemoryCursor.h +iokit/IOKit/IOMemoryDescriptor.h +iokit/IOKit/IOMessage.h +iokit/IOKit/IOMultiMemoryDescriptor.h +iokit/IOKit/IONVRAM.h +iokit/IOKit/IONotifier.h +iokit/IOKit/IOPMGR.h +iokit/IOKit/IOPlatformActions.h +iokit/IOKit/IOPlatformExpert.h +iokit/IOKit/IOPolledInterface.h +iokit/IOKit/IORPC.h +iokit/IOKit/IORangeAllocator.h +iokit/IOKit/IORegistryEntry.h +iokit/IOKit/IOReportMacros.h +iokit/IOKit/IOReportTypes.h +iokit/IOKit/IOReturn.h +iokit/IOKit/IOService.h +iokit/IOKit/IOServicePM.h +iokit/IOKit/IOSharedDataQueue.h +iokit/IOKit/IOSharedLock.h +iokit/IOKit/IOStatistics.h +iokit/IOKit/IOStatisticsPrivate.h +iokit/IOKit/IOSubMemoryDescriptor.h +iokit/IOKit/IOSyncer.h +iokit/IOKit/IOTimeStamp.h +iokit/IOKit/IOTimerEventSource.h +iokit/IOKit/IOTypes.h +iokit/IOKit/IOUserClient.h +iokit/IOKit/IOUserServer.h +iokit/IOKit/IOWorkLoop.h +iokit/IOKit/OSMessageNotification.h +iokit/IOKit/PassthruInterruptController.h +iokit/IOKit/assert.h +iokit/IOKit/nvram/IONVRAMController.h +iokit/IOKit/platform/AppleMacIO.h +iokit/IOKit/platform/AppleMacIODevice.h +iokit/IOKit/platform/AppleNMI.h +iokit/IOKit/platform/ApplePlatformExpert.h +iokit/IOKit/platform/IOPlatformIO.h +iokit/IOKit/power/IOPwrController.h +iokit/IOKit/pwr_mgt/IOPM.h +iokit/IOKit/pwr_mgt/IOPMLibDefs.h +iokit/IOKit/pwr_mgt/IOPMPowerSource.h +iokit/IOKit/pwr_mgt/IOPMPowerSourceList.h +iokit/IOKit/pwr_mgt/IOPMpowerState.h +iokit/IOKit/pwr_mgt/IOPowerConnection.h +iokit/IOKit/pwr_mgt/RootDomain.h +iokit/IOKit/rtc/IORTCController.h +iokit/IOKit/system.h +iokit/IOKit/system_management/IOWatchDogTimer.h +kern/exc_guard.h +kern/exc_resource.h +kern/kcdata.h +kern/kern_cdata.h +libkern/OSByteOrder.h +libkern/OSDebug.h +libkern/OSKextLib.h +libkern/OSReturn.h +libkern/OSTypes.h +libkern/_OSByteOrder.h +libkern/firehose/chunk_private.h +libkern/firehose/firehose_types_private.h +libkern/firehose/ioctl_private.h +libkern/firehose/tracepoint_private.h +libkern/i386/OSByteOrder.h +libkern/i386/_OSByteOrder.h +libkern/libkern/Block.h +libkern/libkern/Block_private.h +libkern/libkern/OSAtomic.h +libkern/libkern/OSBase.h +libkern/libkern/OSByteOrder.h +libkern/libkern/OSDebug.h +libkern/libkern/OSKextLib.h +libkern/libkern/OSKextLibPrivate.h +libkern/libkern/OSMalloc.h +libkern/libkern/OSReturn.h +libkern/libkern/OSSerializeBinary.h +libkern/libkern/OSTypes.h +libkern/libkern/_OSByteOrder.h +libkern/libkern/c++/OSAllocation.h +libkern/libkern/c++/OSArray.h +libkern/libkern/c++/OSBoolean.h +libkern/libkern/c++/OSBoundedArray.h +libkern/libkern/c++/OSBoundedArrayRef.h +libkern/libkern/c++/OSBoundedPtr.h +libkern/libkern/c++/OSBoundedPtrFwd.h +libkern/libkern/c++/OSCPPDebug.h +libkern/libkern/c++/OSCollection.h +libkern/libkern/c++/OSCollectionIterator.h +libkern/libkern/c++/OSContainers.h +libkern/libkern/c++/OSData.h +libkern/libkern/c++/OSDictionary.h +libkern/libkern/c++/OSEndianTypes.h +libkern/libkern/c++/OSIterator.h +libkern/libkern/c++/OSKext.h +libkern/libkern/c++/OSLib.h +libkern/libkern/c++/OSMetaClass.h +libkern/libkern/c++/OSNumber.h +libkern/libkern/c++/OSObject.h +libkern/libkern/c++/OSOrderedSet.h +libkern/libkern/c++/OSPtr.h +libkern/libkern/c++/OSSerialize.h +libkern/libkern/c++/OSSet.h +libkern/libkern/c++/OSSharedPtr.h +libkern/libkern/c++/OSString.h +libkern/libkern/c++/OSSymbol.h +libkern/libkern/c++/OSUnserialize.h +libkern/libkern/c++/bounded_array.h +libkern/libkern/c++/bounded_array_ref.h +libkern/libkern/c++/bounded_ptr.h +libkern/libkern/c++/bounded_ptr_fwd.h +libkern/libkern/c++/intrusive_shared_ptr.h +libkern/libkern/c++/safe_allocation.h +libkern/libkern/crc.h +libkern/libkern/crypto/aes.h +libkern/libkern/crypto/aesxts.h +libkern/libkern/crypto/chacha20poly1305.h +libkern/libkern/crypto/crypto_internal.h +libkern/libkern/crypto/des.h +libkern/libkern/crypto/md5.h +libkern/libkern/crypto/rand.h +libkern/libkern/crypto/register_crypto.h +libkern/libkern/crypto/rsa.h +libkern/libkern/crypto/sha1.h +libkern/libkern/crypto/sha2.h +libkern/libkern/i386/OSByteOrder.h +libkern/libkern/i386/_OSByteOrder.h +libkern/libkern/img4/interface.h +libkern/libkern/kernel_mach_header.h +libkern/libkern/kext_request_keys.h +libkern/libkern/kxld.h +libkern/libkern/kxld_types.h +libkern/libkern/locks.h +libkern/libkern/machine/OSByteOrder.h +libkern/libkern/mkext.h +libkern/libkern/prelink.h +libkern/libkern/ptrauth_utils.h +libkern/libkern/section_keywords.h +libkern/libkern/stack_protector.h +libkern/libkern/sysctl.h +libkern/libkern/tree.h +libkern/libkern/version.h +libkern/libkern/zconf.h +libkern/libkern/zlib.h +libkern/machine/OSByteOrder.h +libkern/os/atomic.h +libkern/os/atomic_private.h +libkern/os/atomic_private_arch.h +libkern/os/atomic_private_impl.h +libkern/os/base.h +libkern/os/base_private.h +libkern/os/cpp_util.h +libkern/os/hash.h +libkern/os/log.h +libkern/os/log_private.h +libkern/os/object.h +libkern/os/overflow.h +libkern/os/ptrtools.h +libkern/os/reason_private.h +libkern/os/refcnt.h +libkern/os/refcnt_internal.h +libkern/os/trace.h +libproc.h +mach/audit_triggers.defs +mach/audit_triggers_types.h +mach/boolean.h +mach/bootstrap.h +mach/clock.defs +mach/clock.h +mach/clock_priv.defs +mach/clock_priv.h +mach/clock_reply.defs +mach/clock_reply.h +mach/clock_types.defs +mach/clock_types.h +mach/dyld_kernel.h +mach/error.h +mach/exc.defs +mach/exc.h +mach/exception.h +mach/exception_types.h +mach/host_info.h +mach/host_notify.h +mach/host_notify_reply.defs +mach/host_priv.defs +mach/host_priv.h +mach/host_reboot.h +mach/host_security.defs +mach/host_security.h +mach/host_special_ports.h +mach/i386/_structs.h +mach/i386/asm.h +mach/i386/boolean.h +mach/i386/exception.h +mach/i386/fp_reg.h +mach/i386/kern_return.h +mach/i386/ndr_def.h +mach/i386/processor_info.h +mach/i386/rpc.h +mach/i386/sdt_isa.h +mach/i386/thread_state.h +mach/i386/thread_status.h +mach/i386/vm_param.h +mach/i386/vm_types.h +mach/kern_return.h +mach/kmod.h +mach/lock_set.defs +mach/lock_set.h +mach/mach.h +mach/mach_error.h +mach/mach_eventlink.h +mach/mach_exc.defs +mach/mach_host.defs +mach/mach_host.h +mach/mach_init.h +mach/mach_interface.h +mach/mach_param.h +mach/mach_port.defs +mach/mach_port.h +mach/mach_port_internal.h +mach/mach_right.h +mach/mach_syscalls.h +mach/mach_time.h +mach/mach_traps.h +mach/mach_types.defs +mach/mach_types.h +mach/mach_vm.defs +mach/mach_vm.h +mach/mach_vm_internal.h +mach/mach_voucher.defs +mach/mach_voucher.h +mach/mach_voucher_attr_control.defs +mach/mach_voucher_types.h +mach/machine.h +mach/machine/_structs.h +mach/machine/asm.h +mach/machine/boolean.h +mach/machine/exception.h +mach/machine/kern_return.h +mach/machine/machine_types.defs +mach/machine/ndr_def.h +mach/machine/processor_info.h +mach/machine/rpc.h +mach/machine/sdt.h +mach/machine/sdt_isa.h +mach/machine/thread_state.h +mach/machine/thread_status.h +mach/machine/vm_param.h +mach/machine/vm_types.h +mach/memory_entry.defs +mach/memory_entry.h +mach/memory_object_types.h +mach/message.h +mach/mig.h +mach/mig_errors.h +mach/mig_strncpy_zerofill_support.h +mach/mig_voucher_support.h +mach/ndr.h +mach/notify.defs +mach/notify.h +mach/policy.h +mach/port.h +mach/port_obj.h +mach/processor.defs +mach/processor.h +mach/processor_info.h +mach/processor_set.defs +mach/processor_set.h +mach/rpc.h +mach/sdt.h +mach/semaphore.h +mach/shared_memory_server.h +mach/shared_region.h +mach/std_types.defs +mach/std_types.h +mach/sync.h +mach/sync_policy.h +mach/task.defs +mach/task.h +mach/task_access.defs +mach/task_info.h +mach/task_inspect.h +mach/task_policy.h +mach/task_special_ports.h +mach/telemetry_notification.defs +mach/thread_act.defs +mach/thread_act.h +mach/thread_act_internal.h +mach/thread_info.h +mach/thread_policy.h +mach/thread_special_ports.h +mach/thread_state.h +mach/thread_status.h +mach/thread_switch.h +mach/time_value.h +mach/vm_attributes.h +mach/vm_behavior.h +mach/vm_inherit.h +mach/vm_map.defs +mach/vm_map.h +mach/vm_map_internal.h +mach/vm_page_size.h +mach/vm_param.h +mach/vm_prot.h +mach/vm_purgable.h +mach/vm_region.h +mach/vm_statistics.h +mach/vm_sync.h +mach/vm_task.h +mach/vm_types.h +mach_debug/hash_info.h +mach_debug/ipc_info.h +mach_debug/lockgroup_info.h +mach_debug/mach_debug.h +mach_debug/mach_debug_types.defs +mach_debug/mach_debug_types.h +mach_debug/page_info.h +mach_debug/vm_info.h +mach_debug/zone_info.h +machine/_limits.h +machine/_mcontext.h +machine/_param.h +machine/_types.h +machine/byte_order.h +machine/endian.h +machine/fasttrap_isa.h +machine/limits.h +machine/param.h +machine/profile.h +machine/signal.h +machine/types.h +machine/vmparam.h +machine_types.modulemap +miscfs/devfs/devfs.h +miscfs/specfs/specdev.h +miscfs/union/union.h +net/bpf.h +net/dlil.h +net/ethernet.h +net/if.h +net/if_arp.h +net/if_dl.h +net/if_llc.h +net/if_media.h +net/if_mib.h +net/if_types.h +net/if_utun.h +net/if_var.h +net/kext_net.h +net/ndrv.h +net/net_kev.h +net/pfkeyv2.h +net/route.h +netinet/bootp.h +netinet/icmp6.h +netinet/icmp_var.h +netinet/if_ether.h +netinet/igmp.h +netinet/igmp_var.h +netinet/in.h +netinet/in_pcb.h +netinet/in_systm.h +netinet/in_var.h +netinet/ip.h +netinet/ip6.h +netinet/ip_icmp.h +netinet/ip_var.h +netinet/tcp.h +netinet/tcp_fsm.h +netinet/tcp_seq.h +netinet/tcp_timer.h +netinet/tcp_var.h +netinet/tcpip.h +netinet/udp.h +netinet/udp_var.h +netinet6/ah.h +netinet6/esp.h +netinet6/in6.h +netinet6/in6_var.h +netinet6/ipcomp.h +netinet6/ipsec.h +netinet6/nd6.h +netinet6/raw_ip6.h +netinet6/scope6_var.h +netkey/keysock.h +nfs/krpc.h +nfs/nfs.h +nfs/nfs_gss.h +nfs/nfs_ioctl.h +nfs/nfs_lock.h +nfs/nfsdiskless.h +nfs/nfsm_subs.h +nfs/nfsmount.h +nfs/nfsnode.h +nfs/nfsproto.h +nfs/nfsrvcache.h +nfs/rpcv2.h +nfs/xdr_subs.h +os/atomic.h +os/base.h +os/overflow.h +os/tsd.h +osfmk/UserNotification/KUNCUserNotifications.h +osfmk/UserNotification/UNDReply.defs +osfmk/UserNotification/UNDRequest.defs +osfmk/UserNotification/UNDTypes.defs +osfmk/UserNotification/UNDTypes.h +osfmk/atm/atm_internal.h +osfmk/atm/atm_notification.defs +osfmk/atm/atm_types.defs +osfmk/atm/atm_types.h +osfmk/bank/bank_types.h +osfmk/console/serial_protos.h +osfmk/console/video_console.h +osfmk/corpses/task_corpse.h +osfmk/default_pager/default_pager_types.h +osfmk/device/device.defs +osfmk/device/device_port.h +osfmk/device/device_types.defs +osfmk/device/device_types.h +osfmk/gssd/gssd_mach.defs +osfmk/gssd/gssd_mach.h +osfmk/gssd/gssd_mach_types.h +osfmk/i386/apic.h +osfmk/i386/asm.h +osfmk/i386/atomic.h +osfmk/i386/bit_routines.h +osfmk/i386/cpu_capabilities.h +osfmk/i386/cpu_data.h +osfmk/i386/cpu_number.h +osfmk/i386/cpu_topology.h +osfmk/i386/cpuid.h +osfmk/i386/eflags.h +osfmk/i386/fpu.h +osfmk/i386/io_map_entries.h +osfmk/i386/lapic.h +osfmk/i386/lock.h +osfmk/i386/locks.h +osfmk/i386/locks_i386_inlines.h +osfmk/i386/machine_cpu.h +osfmk/i386/machine_routines.h +osfmk/i386/memory_types.h +osfmk/i386/mp.h +osfmk/i386/mp_desc.h +osfmk/i386/mp_events.h +osfmk/i386/mtrr.h +osfmk/i386/pal_hibernate.h +osfmk/i386/pal_native.h +osfmk/i386/pal_routines.h +osfmk/i386/panic_hooks.h +osfmk/i386/pmCPU.h +osfmk/i386/pmap.h +osfmk/i386/proc_reg.h +osfmk/i386/rtclock_protos.h +osfmk/i386/seg.h +osfmk/i386/simple_lock.h +osfmk/i386/smp.h +osfmk/i386/trap.h +osfmk/i386/tsc.h +osfmk/i386/tss.h +osfmk/i386/ucode.h +osfmk/i386/vmx.h +osfmk/ipc/ipc_types.h +osfmk/kdp/kdp_callout.h +osfmk/kdp/kdp_dyld.h +osfmk/kdp/kdp_en_debugger.h +osfmk/kern/affinity.h +osfmk/kern/arcade.h +osfmk/kern/arithmetic_128.h +osfmk/kern/assert.h +osfmk/kern/audit_sessionport.h +osfmk/kern/backtrace.h +osfmk/kern/bits.h +osfmk/kern/block_hint.h +osfmk/kern/btlog.h +osfmk/kern/cambria_layout.h +osfmk/kern/circle_queue.h +osfmk/kern/clock.h +osfmk/kern/coalition.h +osfmk/kern/cpu_data.h +osfmk/kern/cpu_number.h +osfmk/kern/cpu_quiesce.h +osfmk/kern/cs_blobs.h +osfmk/kern/debug.h +osfmk/kern/ecc.h +osfmk/kern/energy_perf.h +osfmk/kern/exc_guard.h +osfmk/kern/exc_resource.h +osfmk/kern/extmod_statistics.h +osfmk/kern/host.h +osfmk/kern/hv_support.h +osfmk/kern/hv_support_kext.h +osfmk/kern/ipc_kobject.h +osfmk/kern/ipc_mig.h +osfmk/kern/ipc_misc.h +osfmk/kern/kalloc.h +osfmk/kern/kcdata.h +osfmk/kern/kern_cdata.h +osfmk/kern/kern_types.h +osfmk/kern/kext_alloc.h +osfmk/kern/kpc.h +osfmk/kern/ledger.h +osfmk/kern/lock.h +osfmk/kern/lock_group.h +osfmk/kern/lock_stat.h +osfmk/kern/locks.h +osfmk/kern/mach_param.h +osfmk/kern/macro_help.h +osfmk/kern/monotonic.h +osfmk/kern/mpqueue.h +osfmk/kern/mpsc_queue.h +osfmk/kern/page_decrypt.h +osfmk/kern/percpu.h +osfmk/kern/pms.h +osfmk/kern/policy_internal.h +osfmk/kern/priority_queue.h +osfmk/kern/processor.h +osfmk/kern/queue.h +osfmk/kern/remote_time.h +osfmk/kern/restartable.h +osfmk/kern/sched_clutch.h +osfmk/kern/sched_prim.h +osfmk/kern/sfi.h +osfmk/kern/simple_lock.h +osfmk/kern/startup.h +osfmk/kern/task.h +osfmk/kern/telemetry.h +osfmk/kern/thread.h +osfmk/kern/thread_call.h +osfmk/kern/thread_group.h +osfmk/kern/timer_call.h +osfmk/kern/trustcache.h +osfmk/kern/turnstile.h +osfmk/kern/ux_handler.h +osfmk/kern/waitq.h +osfmk/kern/work_interval.h +osfmk/kern/zalloc.h +osfmk/kextd/kextd_mach.defs +osfmk/kextd/kextd_mach.h +osfmk/kperf/action.h +osfmk/kperf/context.h +osfmk/kperf/kdebug_trigger.h +osfmk/kperf/kperf.h +osfmk/kperf/kperfbsd.h +osfmk/kperf/kptimer.h +osfmk/kperf/lazy.h +osfmk/kperf/pet.h +osfmk/lockd/lockd_mach.defs +osfmk/lockd/lockd_mach.h +osfmk/lockd/lockd_mach_types.h +osfmk/mach/arcade_upcall_server.h +osfmk/mach/audit_triggers.defs +osfmk/mach/audit_triggers_server.h +osfmk/mach/audit_triggers_types.h +osfmk/mach/boolean.h +osfmk/mach/clock.defs +osfmk/mach/clock.h +osfmk/mach/clock_priv.defs +osfmk/mach/clock_priv.h +osfmk/mach/clock_reply.defs +osfmk/mach/clock_reply_server.h +osfmk/mach/clock_types.defs +osfmk/mach/clock_types.h +osfmk/mach/coalition.h +osfmk/mach/coalition_notification_server.h +osfmk/mach/dyld_kernel.h +osfmk/mach/error.h +osfmk/mach/exc.defs +osfmk/mach/exc_server.h +osfmk/mach/exception.h +osfmk/mach/exception_types.h +osfmk/mach/fairplayd_notification_server.h +osfmk/mach/host_info.h +osfmk/mach/host_notify.h +osfmk/mach/host_notify_reply.defs +osfmk/mach/host_priv.defs +osfmk/mach/host_priv.h +osfmk/mach/host_reboot.h +osfmk/mach/host_security.defs +osfmk/mach/host_security.h +osfmk/mach/host_special_ports.h +osfmk/mach/i386/_structs.h +osfmk/mach/i386/asm.h +osfmk/mach/i386/boolean.h +osfmk/mach/i386/exception.h +osfmk/mach/i386/fp_reg.h +osfmk/mach/i386/kern_return.h +osfmk/mach/i386/ndr_def.h +osfmk/mach/i386/processor_info.h +osfmk/mach/i386/rpc.h +osfmk/mach/i386/sdt_isa.h +osfmk/mach/i386/syscall_sw.h +osfmk/mach/i386/thread_state.h +osfmk/mach/i386/thread_status.h +osfmk/mach/i386/vm_param.h +osfmk/mach/i386/vm_types.h +osfmk/mach/kern_return.h +osfmk/mach/kmod.h +osfmk/mach/ktrace_background.h +osfmk/mach/lock_set.defs +osfmk/mach/lock_set.h +osfmk/mach/mach_eventlink_types.h +osfmk/mach/mach_exc.defs +osfmk/mach/mach_exc_server.h +osfmk/mach/mach_host.defs +osfmk/mach/mach_host.h +osfmk/mach/mach_interface.h +osfmk/mach/mach_param.h +osfmk/mach/mach_port.defs +osfmk/mach/mach_port.h +osfmk/mach/mach_syscalls.h +osfmk/mach/mach_time.h +osfmk/mach/mach_traps.h +osfmk/mach/mach_types.defs +osfmk/mach/mach_types.h +osfmk/mach/mach_vm.defs +osfmk/mach/mach_vm.h +osfmk/mach/mach_voucher.defs +osfmk/mach/mach_voucher.h +osfmk/mach/mach_voucher_attr_control.defs +osfmk/mach/mach_voucher_attr_control.h +osfmk/mach/mach_voucher_types.h +osfmk/mach/machine.h +osfmk/mach/machine/_structs.h +osfmk/mach/machine/asm.h +osfmk/mach/machine/boolean.h +osfmk/mach/machine/exception.h +osfmk/mach/machine/kern_return.h +osfmk/mach/machine/machine_types.defs +osfmk/mach/machine/ndr_def.h +osfmk/mach/machine/processor_info.h +osfmk/mach/machine/rpc.h +osfmk/mach/machine/sdt.h +osfmk/mach/machine/sdt_isa.h +osfmk/mach/machine/syscall_sw.h +osfmk/mach/machine/thread_state.h +osfmk/mach/machine/thread_status.h +osfmk/mach/machine/vm_param.h +osfmk/mach/machine/vm_types.h +osfmk/mach/memory_entry.defs +osfmk/mach/memory_entry.h +osfmk/mach/memory_object_control.h +osfmk/mach/memory_object_default_server.h +osfmk/mach/memory_object_types.h +osfmk/mach/message.h +osfmk/mach/mig.h +osfmk/mach/mig_errors.h +osfmk/mach/mig_strncpy_zerofill_support.h +osfmk/mach/mig_voucher_support.h +osfmk/mach/ndr.h +osfmk/mach/notify.defs +osfmk/mach/notify.h +osfmk/mach/notify_server.h +osfmk/mach/policy.h +osfmk/mach/port.h +osfmk/mach/processor.defs +osfmk/mach/processor.h +osfmk/mach/processor_info.h +osfmk/mach/processor_set.defs +osfmk/mach/processor_set.h +osfmk/mach/resource_monitors.h +osfmk/mach/rpc.h +osfmk/mach/sdt.h +osfmk/mach/semaphore.h +osfmk/mach/sfi_class.h +osfmk/mach/shared_memory_server.h +osfmk/mach/shared_region.h +osfmk/mach/std_types.defs +osfmk/mach/std_types.h +osfmk/mach/sync_policy.h +osfmk/mach/syscall_sw.h +osfmk/mach/sysdiagnose_notification_server.h +osfmk/mach/task.defs +osfmk/mach/task.h +osfmk/mach/task_access.defs +osfmk/mach/task_access.h +osfmk/mach/task_access_server.h +osfmk/mach/task_info.h +osfmk/mach/task_inspect.h +osfmk/mach/task_policy.h +osfmk/mach/task_special_ports.h +osfmk/mach/telemetry_notification.defs +osfmk/mach/telemetry_notification_server.h +osfmk/mach/thread_act.defs +osfmk/mach/thread_act.h +osfmk/mach/thread_info.h +osfmk/mach/thread_policy.h +osfmk/mach/thread_special_ports.h +osfmk/mach/thread_status.h +osfmk/mach/thread_switch.h +osfmk/mach/time_value.h +osfmk/mach/upl.h +osfmk/mach/vfs_nspace.h +osfmk/mach/vfs_nspace_server.h +osfmk/mach/vm_attributes.h +osfmk/mach/vm_behavior.h +osfmk/mach/vm_inherit.h +osfmk/mach/vm_map.defs +osfmk/mach/vm_map.h +osfmk/mach/vm_param.h +osfmk/mach/vm_prot.h +osfmk/mach/vm_purgable.h +osfmk/mach/vm_region.h +osfmk/mach/vm_statistics.h +osfmk/mach/vm_sync.h +osfmk/mach/vm_types.h +osfmk/mach_debug/hash_info.h +osfmk/mach_debug/ipc_info.h +osfmk/mach_debug/lockgroup_info.h +osfmk/mach_debug/mach_debug.h +osfmk/mach_debug/mach_debug_types.defs +osfmk/mach_debug/mach_debug_types.h +osfmk/mach_debug/page_info.h +osfmk/mach_debug/vm_info.h +osfmk/mach_debug/zone_info.h +osfmk/machine/atomic.h +osfmk/machine/config.h +osfmk/machine/cpu_capabilities.h +osfmk/machine/cpu_number.h +osfmk/machine/io_map_entries.h +osfmk/machine/lock.h +osfmk/machine/locks.h +osfmk/machine/machine_cpuid.h +osfmk/machine/machine_kpc.h +osfmk/machine/machine_remote_time.h +osfmk/machine/machine_routines.h +osfmk/machine/memory_types.h +osfmk/machine/monotonic.h +osfmk/machine/pal_hibernate.h +osfmk/machine/pal_routines.h +osfmk/machine/simple_lock.h +osfmk/machine/smp.h +osfmk/machine/trap.h +osfmk/prng/entropy.h +osfmk/prng/random.h +osfmk/string.h +osfmk/tests/ktest.h +osfmk/tests/xnupost.h +osfmk/vm/WKdm_new.h +osfmk/vm/memory_types.h +osfmk/vm/pmap.h +osfmk/vm/vm_compressor_algorithms.h +osfmk/vm/vm_fault.h +osfmk/vm/vm_kern.h +osfmk/vm/vm_map.h +osfmk/vm/vm_options.h +osfmk/vm/vm_pageout.h +osfmk/vm/vm_protos.h +osfmk/vm/vm_shared_region.h +osfmk/voucher/ipc_pthread_priority_types.h +osfmk/x86_64/machine_kpc.h +osfmk/x86_64/machine_remote_time.h +osfmk/x86_64/monotonic.h +pexpert/boot.h +pexpert/i386/boot.h +pexpert/i386/efi.h +pexpert/i386/protos.h +pexpert/machine/boot.h +pexpert/machine/protos.h +pexpert/pexpert.h +pexpert/pexpert/boot.h +pexpert/pexpert/device_tree.h +pexpert/pexpert/i386/boot.h +pexpert/pexpert/i386/efi.h +pexpert/pexpert/i386/protos.h +pexpert/pexpert/machine/boot.h +pexpert/pexpert/machine/protos.h +pexpert/pexpert/pexpert.h +pexpert/pexpert/protos.h +pexpert/protos.h +san/san/kasan.h +san/san/ksancov.h +san/san/memintrinsics.h +security/audit/audit_ioctl.h +security/security/_label.h +security/security/mac.h +security/security/mac_data.h +security/security/mac_framework.h +security/security/mac_internal.h +security/security/mac_mach_internal.h +security/security/mac_policy.h +servers/key_defs.h +servers/ls_defs.h +servers/netname.h +servers/netname_defs.h +servers/nm_defs.h +spawn.h +sys/_endian.h +sys/_posix_availability.h +sys/_select.h +sys/_structs.h +sys/_symbol_aliasing.h +sys/_types.h +sys/_types/_blkcnt_t.h +sys/_types/_blksize_t.h +sys/_types/_caddr_t.h +sys/_types/_clock_t.h +sys/_types/_ct_rune_t.h +sys/_types/_dev_t.h +sys/_types/_errno_t.h +sys/_types/_fd_clr.h +sys/_types/_fd_copy.h +sys/_types/_fd_def.h +sys/_types/_fd_isset.h +sys/_types/_fd_set.h +sys/_types/_fd_setsize.h +sys/_types/_fd_zero.h +sys/_types/_filesec_t.h +sys/_types/_fsblkcnt_t.h +sys/_types/_fsfilcnt_t.h +sys/_types/_fsid_t.h +sys/_types/_fsobj_id_t.h +sys/_types/_gid_t.h +sys/_types/_guid_t.h +sys/_types/_id_t.h +sys/_types/_in_addr_t.h +sys/_types/_in_port_t.h +sys/_types/_ino64_t.h +sys/_types/_ino_t.h +sys/_types/_int16_t.h +sys/_types/_int32_t.h +sys/_types/_int64_t.h +sys/_types/_int8_t.h +sys/_types/_intptr_t.h +sys/_types/_iovec_t.h +sys/_types/_key_t.h +sys/_types/_mach_port_t.h +sys/_types/_mbstate_t.h +sys/_types/_mode_t.h +sys/_types/_nlink_t.h +sys/_types/_null.h +sys/_types/_o_dsync.h +sys/_types/_o_sync.h +sys/_types/_off_t.h +sys/_types/_offsetof.h +sys/_types/_os_inline.h +sys/_types/_pid_t.h +sys/_types/_posix_vdisable.h +sys/_types/_ptrdiff_t.h +sys/_types/_rsize_t.h +sys/_types/_rune_t.h +sys/_types/_s_ifmt.h +sys/_types/_sa_family_t.h +sys/_types/_seek_set.h +sys/_types/_sigaltstack.h +sys/_types/_sigset_t.h +sys/_types/_size_t.h +sys/_types/_socklen_t.h +sys/_types/_ssize_t.h +sys/_types/_suseconds_t.h +sys/_types/_time_t.h +sys/_types/_timespec.h +sys/_types/_timeval.h +sys/_types/_timeval32.h +sys/_types/_timeval64.h +sys/_types/_u_char.h +sys/_types/_u_int.h +sys/_types/_u_int16_t.h +sys/_types/_u_int32_t.h +sys/_types/_u_int64_t.h +sys/_types/_u_int8_t.h +sys/_types/_u_short.h +sys/_types/_ucontext.h +sys/_types/_ucontext64.h +sys/_types/_uid_t.h +sys/_types/_uintptr_t.h +sys/_types/_useconds_t.h +sys/_types/_uuid_t.h +sys/_types/_va_list.h +sys/_types/_wchar_t.h +sys/_types/_wint_t.h +sys/acct.h +sys/aio.h +sys/appleapiopts.h +sys/attr.h +sys/buf.h +sys/cdefs.h +sys/clonefile.h +sys/commpage.h +sys/conf.h +sys/dir.h +sys/dirent.h +sys/disk.h +sys/dkstat.h +sys/domain.h +sys/dtrace.h +sys/dtrace_glue.h +sys/dtrace_impl.h +sys/errno.h +sys/ev.h +sys/event.h +sys/fasttrap.h +sys/fasttrap_isa.h +sys/fcntl.h +sys/file.h +sys/filedesc.h +sys/filio.h +sys/fsgetpath.h +sys/gmon.h +sys/ioccom.h +sys/ioctl.h +sys/ioctl_compat.h +sys/ipc.h +sys/kauth.h +sys/kdebug.h +sys/kdebug_signpost.h +sys/kern_control.h +sys/kern_event.h +sys/kernel.h +sys/kernel_types.h +sys/lctx.h +sys/loadable_fs.h +sys/lock.h +sys/lockf.h +sys/lockstat.h +sys/log_data.h +sys/malloc.h +sys/mbuf.h +sys/mman.h +sys/mount.h +sys/msg.h +sys/msgbuf.h +sys/netport.h +sys/param.h +sys/paths.h +sys/pipe.h +sys/poll.h +sys/posix_sem.h +sys/posix_shm.h +sys/proc.h +sys/proc_info.h +sys/protosw.h +sys/ptrace.h +sys/queue.h +sys/quota.h +sys/random.h +sys/reboot.h +sys/resource.h +sys/resourcevar.h +sys/sbuf.h +sys/sdt.h +sys/select.h +sys/sem.h +sys/semaphore.h +sys/shm.h +sys/signal.h +sys/signalvar.h +sys/snapshot.h +sys/socket.h +sys/socketvar.h +sys/sockio.h +sys/spawn.h +sys/stat.h +sys/stdio.h +sys/sys_domain.h +sys/syscall.h +sys/sysctl.h +sys/syslimits.h +sys/syslog.h +sys/termios.h +sys/time.h +sys/timeb.h +sys/times.h +sys/timex.h +sys/tprintf.h +sys/trace.h +sys/tty.h +sys/ttychars.h +sys/ttycom.h +sys/ttydefaults.h +sys/ttydev.h +sys/types.h +sys/ubc.h +sys/ucontext.h +sys/ucred.h +sys/uio.h +sys/un.h +sys/unistd.h +sys/unpcb.h +sys/user.h +sys/utfconv.h +sys/utsname.h +sys/vadvise.h +sys/vcmd.h +sys/vm.h +sys/vmmeter.h +sys/vmparam.h +sys/vnioctl.h +sys/vnode.h +sys/vnode_if.h +sys/vsock.h +sys/vstat.h +sys/wait.h +sys/xattr.h +sys__types.modulemap +sys_cdefs.modulemap +sys_types.modulemap +system-version-compat-support.h +uuid/uuid.h +vfs/vfs_support.h +voucher/ipc_pthread_priority_types.h diff --git a/pkgs/stdenv/darwin/default.nix b/pkgs/stdenv/darwin/default.nix index 45cc6742c7205b4..8af0000397bbcea 100644 --- a/pkgs/stdenv/darwin/default.nix +++ b/pkgs/stdenv/darwin/default.nix @@ -25,7 +25,7 @@ assert crossSystem == localSystem; let inherit (localSystem) system; - useAppleSDKLibs = localSystem.isAarch64; + useAppleSDKLibs = lib.versionAtLeast localSystem.darwinSdkVersion "11"; commonImpureHostDeps = [ "/bin/sh" diff --git a/pkgs/top-level/darwin-packages.nix b/pkgs/top-level/darwin-packages.nix index cca74e047dbddd2..8fcfd8b5dd46720 100644 --- a/pkgs/top-level/darwin-packages.nix +++ b/pkgs/top-level/darwin-packages.nix @@ -48,11 +48,15 @@ makeScopeWithSplicing' { }; # Pick an SDK - apple_sdk = if stdenv.hostPlatform.isAarch64 then apple_sdk_11_0 else apple_sdk_10_12; + apple_sdk = { + "10.12" = apple_sdk_10_12; + "11.0" = apple_sdk_11_0; + }.${stdenv.hostPlatform.darwinSdkVersion} + or (throw "Unsupported sdk: ${stdenv.hostPlatform.darwinSdkVersion}"); # Pick the source of libraries: either Apple's open source releases, or the # SDK. - useAppleSDKLibs = stdenv.hostPlatform.isAarch64; + useAppleSDKLibs = lib.versionAtLeast stdenv.hostPlatform.darwinSdkVersion "11"; selectAttrs = attrs: names: lib.listToAttrs (lib.concatMap (n: lib.optionals (attrs ? "${n}") [(lib.nameValuePair n attrs."${n}")]) names); From 07cba9376f1288686d1f8cec8f79e2829de0b176 Mon Sep 17 00:00:00 2001 From: Reno Dakota <170618376+paparodeo@users.noreply.github.com> Date: Tue, 2 Jul 2024 22:34:38 +0000 Subject: [PATCH 2/3] treewide: only access apple_sdk.sdk when sdk < 11 update code to not assume that x64 darwin uses sdk 10.12. These changes want to reach into apple_sdk.sdk to grab a header file which is only required for sdk 10.12. --- pkgs/development/compilers/llvm/13/default.nix | 3 +-- pkgs/development/compilers/llvm/14/default.nix | 3 +-- pkgs/development/compilers/llvm/15/default.nix | 3 +-- pkgs/development/compilers/llvm/16/default.nix | 3 +-- pkgs/development/compilers/llvm/17/default.nix | 3 +-- pkgs/development/compilers/llvm/18/default.nix | 3 +-- pkgs/development/compilers/llvm/common/lldb.nix | 2 +- pkgs/development/compilers/llvm/git/default.nix | 3 +-- pkgs/development/libraries/webkitgtk/default.nix | 6 +++++- pkgs/os-specific/darwin/pam-reattach/default.nix | 7 +++++-- 10 files changed, 18 insertions(+), 18 deletions(-) diff --git a/pkgs/development/compilers/llvm/13/default.nix b/pkgs/development/compilers/llvm/13/default.nix index ffbbe1deb0d4e06..4f347745117f51a 100644 --- a/pkgs/development/compilers/llvm/13/default.nix +++ b/pkgs/development/compilers/llvm/13/default.nix @@ -236,8 +236,7 @@ in let # https://github.com/NixOS/nixpkgs/pull/194634#issuecomment-1272129132 ++ lib.optional ( stdenv.targetPlatform.isDarwin - && !stdenv.targetPlatform.isAarch64 - && (lib.versionOlder darwin.apple_sdk.sdk.version "11.0") + && lib.versionOlder stdenv.targetPlatform.darwinSdkVersion "11.0" ) ./lldb/cpu_subtype_arm64e_replacement.patch; }; diff --git a/pkgs/development/compilers/llvm/14/default.nix b/pkgs/development/compilers/llvm/14/default.nix index 06972af065c98b7..2c27096938fe8c3 100644 --- a/pkgs/development/compilers/llvm/14/default.nix +++ b/pkgs/development/compilers/llvm/14/default.nix @@ -208,8 +208,7 @@ in let # https://github.com/NixOS/nixpkgs/pull/194634#issuecomment-1272129132 ++ lib.optional ( stdenv.targetPlatform.isDarwin - && !stdenv.targetPlatform.isAarch64 - && (lib.versionOlder darwin.apple_sdk.sdk.version "11.0") + && lib.versionOlder stdenv.targetPlatform.darwinSdkVersion "11.0" ) ./lldb/cpu_subtype_arm64e_replacement.patch; }; diff --git a/pkgs/development/compilers/llvm/15/default.nix b/pkgs/development/compilers/llvm/15/default.nix index e50e35b2c4eb0f8..eec490bc1795a87 100644 --- a/pkgs/development/compilers/llvm/15/default.nix +++ b/pkgs/development/compilers/llvm/15/default.nix @@ -250,8 +250,7 @@ in let # https://github.com/NixOS/nixpkgs/pull/194634#issuecomment-1272129132 ++ lib.optional ( stdenv.targetPlatform.isDarwin - && !stdenv.targetPlatform.isAarch64 - && (lib.versionOlder darwin.apple_sdk.sdk.version "11.0") + && lib.versionOlder stdenv.targetPlatform.darwinSdkVersion "11.0" ) ./lldb/cpu_subtype_arm64e_replacement.patch; }; diff --git a/pkgs/development/compilers/llvm/16/default.nix b/pkgs/development/compilers/llvm/16/default.nix index 80b2424b14cc055..32b44f81563752e 100644 --- a/pkgs/development/compilers/llvm/16/default.nix +++ b/pkgs/development/compilers/llvm/16/default.nix @@ -251,8 +251,7 @@ in let # https://github.com/NixOS/nixpkgs/pull/194634#issuecomment-1272129132 ++ lib.optional ( stdenv.targetPlatform.isDarwin - && !stdenv.targetPlatform.isAarch64 - && (lib.versionOlder darwin.apple_sdk.sdk.version "11.0") + && lib.versionOlder stdenv.targetPlatform.darwinSdkVersion "11.0" ) ./lldb/cpu_subtype_arm64e_replacement.patch; }; diff --git a/pkgs/development/compilers/llvm/17/default.nix b/pkgs/development/compilers/llvm/17/default.nix index 84979d24b197130..de175892a918b23 100644 --- a/pkgs/development/compilers/llvm/17/default.nix +++ b/pkgs/development/compilers/llvm/17/default.nix @@ -235,8 +235,7 @@ in let # https://github.com/NixOS/nixpkgs/pull/194634#issuecomment-1272129132 ++ lib.optional ( stdenv.targetPlatform.isDarwin - && !stdenv.targetPlatform.isAarch64 - && (lib.versionOlder darwin.apple_sdk.sdk.version "11.0") + && lib.versionOlder stdenv.targetPlatform.darwinSdkVersion "11.0" ) ./lldb/cpu_subtype_arm64e_replacement.patch; }; diff --git a/pkgs/development/compilers/llvm/18/default.nix b/pkgs/development/compilers/llvm/18/default.nix index 878f1e3a8e7e4ff..981111cbaf09647 100644 --- a/pkgs/development/compilers/llvm/18/default.nix +++ b/pkgs/development/compilers/llvm/18/default.nix @@ -234,8 +234,7 @@ in let # https://github.com/NixOS/nixpkgs/pull/194634#issuecomment-1272129132 ++ lib.optional ( stdenv.targetPlatform.isDarwin - && !stdenv.targetPlatform.isAarch64 - && (lib.versionOlder darwin.apple_sdk.sdk.version "11.0") + && lib.versionOlder stdenv.targetPlatform.darwinSdkVersion "11.0" ) ./lldb/cpu_subtype_arm64e_replacement.patch; }; diff --git a/pkgs/development/compilers/llvm/common/lldb.nix b/pkgs/development/compilers/llvm/common/lldb.nix index 71afcb159a440d5..064ed4ec5a81af8 100644 --- a/pkgs/development/compilers/llvm/common/lldb.nix +++ b/pkgs/development/compilers/llvm/common/lldb.nix @@ -101,7 +101,7 @@ stdenv.mkDerivation (rec { ++ lib.optional ( stdenv.targetPlatform.isDarwin - && !stdenv.targetPlatform.isAarch64 + && lib.versionOlder stdenv.targetPlatform.darwinSdkVersion "11.0" && (lib.versionAtLeast release_version "15") ) ( diff --git a/pkgs/development/compilers/llvm/git/default.nix b/pkgs/development/compilers/llvm/git/default.nix index ff76aad22a718dc..152bcaffaf42e80 100644 --- a/pkgs/development/compilers/llvm/git/default.nix +++ b/pkgs/development/compilers/llvm/git/default.nix @@ -239,8 +239,7 @@ in let # https://github.com/NixOS/nixpkgs/pull/194634#issuecomment-1272129132 ++ lib.optional ( stdenv.targetPlatform.isDarwin - && !stdenv.targetPlatform.isAarch64 - && (lib.versionOlder darwin.apple_sdk.sdk.version "11.0") + && lib.versionOlder stdenv.targetPlatform.darwinSdkVersion "11.0" ) ./lldb/cpu_subtype_arm64e_replacement.patch; }; diff --git a/pkgs/development/libraries/webkitgtk/default.nix b/pkgs/development/libraries/webkitgtk/default.nix index 98c28ca67997d28..2b80e05f0d4dfa8 100644 --- a/pkgs/development/libraries/webkitgtk/default.nix +++ b/pkgs/development/libraries/webkitgtk/default.nix @@ -151,7 +151,11 @@ stdenv.mkDerivation (finalAttrs: { ] ++ lib.optionals stdenv.isDarwin [ libedit readline - ] ++ lib.optional (stdenv.isDarwin && !stdenv.isAarch64) ( + ] ++ lib.optional (stdenv.isDarwin && lib.versionOlder stdenv.hostPlatform.darwinSdkVersion "11.0") ( + # this can likely be removed as: + # "libproc.h is included in the 10.12 SDK Libsystem and should be identical to this one." + # but the package is marked broken on darwin so unable to test + # Pull a header that contains a definition of proc_pid_rusage(). # (We pick just that one because using the other headers from `sdk` is not # compatible with our C++ standard library. This header is already in diff --git a/pkgs/os-specific/darwin/pam-reattach/default.nix b/pkgs/os-specific/darwin/pam-reattach/default.nix index 4350865080f00ec..0b1a5d22690a119 100644 --- a/pkgs/os-specific/darwin/pam-reattach/default.nix +++ b/pkgs/os-specific/darwin/pam-reattach/default.nix @@ -1,5 +1,8 @@ { lib, stdenv, fetchFromGitHub, cmake, openpam, darwin }: +let + sdkOlderThan11 = lib.versionOlder stdenv.hostPlatform.darwinSdkVersion "11.0"; +in stdenv.mkDerivation rec { pname = "pam_reattach"; version = "1.3"; @@ -19,10 +22,10 @@ stdenv.mkDerivation rec { "arm64" }" "-DENABLE_CLI=ON" - ] ++ lib.optional (!stdenv.isAarch64) "-DCMAKE_LIBRARY_PATH=${darwin.apple_sdk.sdk}/usr/lib"; + ] ++ lib.optional sdkOlderThan11 "-DCMAKE_LIBRARY_PATH=${darwin.apple_sdk.sdk}/usr/lib"; buildInputs = [ openpam ] - ++ lib.optional (!stdenv.isAarch64) darwin.apple_sdk.sdk; + ++ lib.optional sdkOlderThan11 darwin.apple_sdk.sdk; nativeBuildInputs = [ cmake ]; From d44ffe57b2f0f166d1cc84d7058a00291a9c9a3e Mon Sep 17 00:00:00 2001 From: Reno Dakota <170618376+paparodeo@users.noreply.github.com> Date: Wed, 3 Jul 2024 00:16:31 +0000 Subject: [PATCH 3/3] pam-reattach: minor cmakeFlags cleanup --- pkgs/os-specific/darwin/pam-reattach/default.nix | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/pkgs/os-specific/darwin/pam-reattach/default.nix b/pkgs/os-specific/darwin/pam-reattach/default.nix index 0b1a5d22690a119..b077ac031b62c80 100644 --- a/pkgs/os-specific/darwin/pam-reattach/default.nix +++ b/pkgs/os-specific/darwin/pam-reattach/default.nix @@ -15,12 +15,7 @@ stdenv.mkDerivation rec { }; cmakeFlags = [ - "-DCMAKE_OSX_ARCHITECTURES=${ - if stdenv.hostPlatform.system == "x86_64-darwin" then - "x86_64" - else - "arm64" - }" + "-DCMAKE_OSX_ARCHITECTURES=${stdenv.hostPlatform.darwinArch}" "-DENABLE_CLI=ON" ] ++ lib.optional sdkOlderThan11 "-DCMAKE_LIBRARY_PATH=${darwin.apple_sdk.sdk}/usr/lib";