summary refs log tree commit diff
path: root/pkgs/os-specific/darwin
diff options
context:
space:
mode:
authorDmitry Kalinkin <dmitry.kalinkin@gmail.com>2021-01-28 16:55:53 -0500
committerDmitry Kalinkin <dmitry.kalinkin@gmail.com>2021-01-28 16:55:53 -0500
commit684963881b19d2c93adf4423d293357a89b9f253 (patch)
tree83b52cea9e638f068c761e1db8e15577421488ef /pkgs/os-specific/darwin
parent798f7b136cc4f9cd482153fdd2889acd7a6c1a09 (diff)
downloadnixpkgs-684963881b19d2c93adf4423d293357a89b9f253.tar
nixpkgs-684963881b19d2c93adf4423d293357a89b9f253.tar.gz
nixpkgs-684963881b19d2c93adf4423d293357a89b9f253.tar.bz2
nixpkgs-684963881b19d2c93adf4423d293357a89b9f253.tar.lz
nixpkgs-684963881b19d2c93adf4423d293357a89b9f253.tar.xz
nixpkgs-684963881b19d2c93adf4423d293357a89b9f253.tar.zst
nixpkgs-684963881b19d2c93adf4423d293357a89b9f253.zip
darwin.CF: fix sandboxed build
Had to abandon the use of sourceRoot primarily because it prevents
stdenv from chmod'ing the ../configure into a writable file.
Diffstat (limited to 'pkgs/os-specific/darwin')
-rw-r--r--pkgs/os-specific/darwin/swift-corelibs/corefoundation.nix5
1 files changed, 3 insertions, 2 deletions
diff --git a/pkgs/os-specific/darwin/swift-corelibs/corefoundation.nix b/pkgs/os-specific/darwin/swift-corelibs/corefoundation.nix
index 9f0ee4db118..560be0c31ab 100644
--- a/pkgs/os-specific/darwin/swift-corelibs/corefoundation.nix
+++ b/pkgs/os-specific/darwin/swift-corelibs/corefoundation.nix
@@ -23,9 +23,9 @@ stdenv.mkDerivation {
   nativeBuildInputs = [ ninja python3 ];
   buildInputs = [ curl libxml2 objc4 ICU ];
 
-  sourceRoot = "source/CoreFoundation";
+  postPatch = ''
+    cd CoreFoundation
 
-  patchPhase = ''
     cp ${sysdir-free-system-directories} Base.subproj/CFSystemDirectories.c
 
     # In order, since I can't comment individual lines:
@@ -39,6 +39,7 @@ stdenv.mkDerivation {
     # Fix sandbox impurities.
     substituteInPlace ../lib/script.py \
       --replace '/bin/cp' cp
+    patchShebangs --build ../configure
 
     # Includes xpc for some initialization routine that they don't define anyway, so no harm here
     substituteInPlace PlugIn.subproj/CFBundlePriv.h \