network_cmds: unconditionally exclude Unbound

This fixes build failures caused by LibreSSL 3.4 being marked insecure
and allows it to be dropped from nixpkgs. Unbound is already not built
on aarch64-darwin, and it is not bundled with newer source releases.

Packages that require Unbound should depend on `unbound` from nixpkgs
instead of getting it indirectly from `darwin.network_cmds`.
This commit is contained in:
Randy Eckenrode 2023-04-02 20:34:42 -04:00
parent b1581c3618
commit 3753dfe6a9
No known key found for this signature in database
GPG key ID: 64C1CD4EC2A600D9

View file

@ -1,9 +1,9 @@
{ lib, appleDerivation, xcbuildHook, stdenv
, libressl_3_4, Librpcsvc, xnu, libpcap, developer_cmds }:
, Librpcsvc, xnu, libpcap, developer_cmds }:
appleDerivation {
nativeBuildInputs = [ xcbuildHook ];
buildInputs = [ libressl_3_4 xnu Librpcsvc libpcap developer_cmds ];
buildInputs = [ xnu Librpcsvc libpcap developer_cmds ];
# Work around error from <stdio.h> on aarch64-darwin:
# error: 'TARGET_OS_IPHONE' is not defined, evaluates to 0 [-Werror,-Wundef-prefix=TARGET_OS_]
@ -12,15 +12,13 @@ appleDerivation {
# "spray" requires some files that aren't compiling correctly in xcbuild.
# "rtadvd" seems to fail with some missing constants.
# "traceroute6" and "ping6" require ipsec which doesn't build correctly
# "unbound" doesnt build against supported versions of OpenSSL or LibreSSL
patchPhase = ''
substituteInPlace network_cmds.xcodeproj/project.pbxproj \
--replace "7294F0EA0EE8BAC80052EC88 /* PBXTargetDependency */," "" \
--replace "7216D34D0EE89FEC00AE70E4 /* PBXTargetDependency */," "" \
--replace "72CD1D9C0EE8C47C005F825D /* PBXTargetDependency */," "" \
--replace "7216D2C20EE89ADF00AE70E4 /* PBXTargetDependency */," ""
'' + lib.optionalString stdenv.isAarch64 ''
# "unbound" does not build on aarch64
substituteInPlace network_cmds.xcodeproj/project.pbxproj \
--replace "7216D2C20EE89ADF00AE70E4 /* PBXTargetDependency */," "" \
--replace "71D958C51A9455A000C9B286 /* PBXTargetDependency */," ""
'';