summary refs log tree commit diff
path: root/pkgs/os-specific/darwin/apple-source-releases/libutil/new.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/os-specific/darwin/apple-source-releases/libutil/new.nix')
-rw-r--r--pkgs/os-specific/darwin/apple-source-releases/libutil/new.nix33
1 files changed, 33 insertions, 0 deletions
diff --git a/pkgs/os-specific/darwin/apple-source-releases/libutil/new.nix b/pkgs/os-specific/darwin/apple-source-releases/libutil/new.nix
new file mode 100644
index 000000000000..860a74f61f7f
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/libutil/new.nix
@@ -0,0 +1,33 @@
+{ stdenv, appleDerivation, xcbuild }:
+
+# TODO: make this the official libutil expression once we've integrated xcbuild in the bootstrap
+appleDerivation {
+  buildInputs = [ xcbuild ];
+
+  dontUseXcbuild = true;
+
+  prePatch = ''
+    substituteInPlace tzlink.c \
+      --replace '#include <xpc/xpc.h>' ""
+  '';
+
+  buildPhase = ''
+    xcodebuild -target util
+  '';
+
+  installPhase = ''
+    mkdir -p $out/lib $out/include
+
+    cp libutil-*/Build/Products/Release/*.dylib $out/lib
+    cp libutil-*/Build/Products/Release/*.h $out/include
+
+    # TODO: figure out how to get this to be right the first time around
+    install_name_tool -id $out/lib/libutil.dylib $out/lib/libutil.dylib
+  '';
+
+  meta = with stdenv.lib; {
+    maintainers = with maintainers; [ copumpkin ];
+    platforms   = platforms.darwin;
+    license     = licenses.apsl20;
+  };
+}