diff options
author | Matthew Bauer <mjbauer95@gmail.com> | 2018-04-12 17:16:49 -0500 |
---|---|---|
committer | Matthew Bauer <mjbauer95@gmail.com> | 2018-04-12 17:16:49 -0500 |
commit | 5c491ab529d475f1ae843e5abafae7e782385461 (patch) | |
tree | ba93b0229225bb208af6e573bc5168890f7cf369 /pkgs/os-specific/darwin/apple-source-releases/diskdev_cmds/default.nix | |
parent | ddbaa2dd33116570d6b34f529c8ac092d9fd58d1 (diff) | |
download | nixpkgs-5c491ab529d475f1ae843e5abafae7e782385461.tar nixpkgs-5c491ab529d475f1ae843e5abafae7e782385461.tar.gz nixpkgs-5c491ab529d475f1ae843e5abafae7e782385461.tar.bz2 nixpkgs-5c491ab529d475f1ae843e5abafae7e782385461.tar.lz nixpkgs-5c491ab529d475f1ae843e5abafae7e782385461.tar.xz nixpkgs-5c491ab529d475f1ae843e5abafae7e782385461.tar.zst nixpkgs-5c491ab529d475f1ae843e5abafae7e782385461.zip |
diskdev_cmds: init at 593
Diffstat (limited to 'pkgs/os-specific/darwin/apple-source-releases/diskdev_cmds/default.nix')
-rw-r--r-- | pkgs/os-specific/darwin/apple-source-releases/diskdev_cmds/default.nix | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/pkgs/os-specific/darwin/apple-source-releases/diskdev_cmds/default.nix b/pkgs/os-specific/darwin/apple-source-releases/diskdev_cmds/default.nix new file mode 100644 index 00000000000..aba2472af60 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/diskdev_cmds/default.nix @@ -0,0 +1,32 @@ +{ stdenv, appleDerivation, xcbuild, lib, hostPlatform, Libc, xnu, libutil-new }: + +appleDerivation { + buildInputs = [ xcbuild libutil-new ]; + + NIX_CFLAGS_COMPILE = "-I."; + NIX_LDFLAGS = "-lutil"; + patchPhase = '' + # ugly hacks for missing headers + # most are bsd related - probably should make this a drv + unpackFile ${Libc.src} + unpackFile ${xnu.src} + mkdir System sys machine i386 + cp xnu-*/bsd/sys/disklabel.h sys + cp xnu-*/bsd/machine/disklabel.h machine + cp xnu-*/bsd/i386/disklabel.h i386 + cp -r xnu-*/bsd/sys System + cp -r Libc-*/uuid System + ''; + installPhase = '' + install -D Products/Release/libdisk.a $out/lib/libdisk.a + rm Products/Release/libdisk.a + for bin in Products/Release/*; do + install -D $bin $out/bin/$(basename $bin) + done + ''; + + meta = { + platforms = stdenv.lib.platforms.darwin; + maintainers = with stdenv.lib.maintainers; [ matthewbauer ]; + }; +} |