summary refs log tree commit diff
diff options
context:
space:
mode:
authorJude Taylor <me@jude.bio>2015-10-28 17:15:05 -0700
committerJude Taylor <me@jude.bio>2015-10-28 17:15:16 -0700
commit74416dc40adfe5f656fa39dd9314ca33d23e553d (patch)
tree4f4d756457bd0e29fd7f9acbc8c46a1ea3f55276
parentb5c14e4e8ece36a65aaf53aa925ffc9d75aa93cf (diff)
downloadnixpkgs-74416dc40adfe5f656fa39dd9314ca33d23e553d.tar
nixpkgs-74416dc40adfe5f656fa39dd9314ca33d23e553d.tar.gz
nixpkgs-74416dc40adfe5f656fa39dd9314ca33d23e553d.tar.bz2
nixpkgs-74416dc40adfe5f656fa39dd9314ca33d23e553d.tar.lz
nixpkgs-74416dc40adfe5f656fa39dd9314ca33d23e553d.tar.xz
nixpkgs-74416dc40adfe5f656fa39dd9314ca33d23e553d.tar.zst
nixpkgs-74416dc40adfe5f656fa39dd9314ca33d23e553d.zip
wxmac: fix build
-rw-r--r--pkgs/development/libraries/wxmac/default.nix23
-rw-r--r--pkgs/os-specific/darwin/apple-sdk/frameworks.nix2
-rw-r--r--pkgs/os-specific/darwin/apple-sdk/impure-deps.nix6
-rw-r--r--pkgs/os-specific/darwin/derez/default.nix34
-rw-r--r--pkgs/os-specific/darwin/rez/default.nix33
-rw-r--r--pkgs/os-specific/darwin/setfile/default.nix33
-rw-r--r--pkgs/top-level/all-packages.nix9
7 files changed, 31 insertions, 109 deletions
diff --git a/pkgs/development/libraries/wxmac/default.nix b/pkgs/development/libraries/wxmac/default.nix
index 9734fd358ea..d3430f2fcdd 100644
--- a/pkgs/development/libraries/wxmac/default.nix
+++ b/pkgs/development/libraries/wxmac/default.nix
@@ -1,9 +1,16 @@
-{ stdenv, fetchurl, setfile, rez, derez,
+{ stdenv, fetchurl, writeScriptBin,
   expat, libiconv, libjpeg, libpng, libtiff, zlib
+, AGL, Cocoa, Kernel, QuickTime
 }:
 
 with stdenv.lib;
 
+let fake = name: writeScriptBin name ''
+  #!${stdenv.shell}
+  echo >&2 "Faking call to ${name} with arguments:"
+  echo >&2 "$@"
+''; in
+
 stdenv.mkDerivation rec {
   version = "3.0.2";
   name = "wxmac-${version}";
@@ -15,9 +22,19 @@ stdenv.mkDerivation rec {
 
   patches = [ ./wx.patch ];
 
-  buildInputs = [ setfile rez derez expat libiconv libjpeg libpng libtiff zlib ];
+  buildInputs = [
+    expat libiconv libjpeg libpng libtiff zlib
+    AGL Cocoa Kernel QuickTime
+    (fake "Rez") (fake "Setfile") (fake "DeRez") # not open source
+  ];
+
+  postPatch = ''
+    substituteInPlace configure --replace "-framework System" -lSystem
+  '';
 
   configureFlags = [
+    "wx_cv_std_libfullpath=/var/empty"
+    "--with-macosx-version-min=10.7"
     "--enable-unicode"
     "--with-osx_cocoa"
     "--enable-std_string"
@@ -44,6 +61,8 @@ stdenv.mkDerivation rec {
     ./wx-config --libs
   '';
 
+  NIX_CFLAGS_COMPILE = "-Wno-undef";
+
   doCheck = true;
 
   enableParallelBuilding = true;
diff --git a/pkgs/os-specific/darwin/apple-sdk/frameworks.nix b/pkgs/os-specific/darwin/apple-sdk/frameworks.nix
index 83665b7cf32..750adfe3cbf 100644
--- a/pkgs/os-specific/darwin/apple-sdk/frameworks.nix
+++ b/pkgs/os-specific/darwin/apple-sdk/frameworks.nix
@@ -108,7 +108,7 @@ with frameworks; with libs; {
   # Umbrellas
   Accelerate          = [ CoreWLAN IOBluetooth ];
   ApplicationServices = [ CF CoreServices CoreText ImageIO ];
-  Carbon              = [ ApplicationServices CF CoreServices IOKit Security QuartzCore ];
+  Carbon              = [ ApplicationServices CF CoreServices Foundation IOKit Security QuartzCore ];
   CoreBluetooth       = [];
   CoreServices        = [ CFNetwork CoreAudio CoreData CF DiskArbitration Security NetFS OpenDirectory ServiceManagement ];
   IOBluetooth         = [ IOKit ];
diff --git a/pkgs/os-specific/darwin/apple-sdk/impure-deps.nix b/pkgs/os-specific/darwin/apple-sdk/impure-deps.nix
index b3155b447ac..4e9e35c8092 100644
--- a/pkgs/os-specific/darwin/apple-sdk/impure-deps.nix
+++ b/pkgs/os-specific/darwin/apple-sdk/impure-deps.nix
@@ -7,6 +7,9 @@ rec {
   ForceFeedback = [
     "/System/Library/Frameworks/ForceFeedback.framework"
   ];
+  AGL = [
+    "/System/Library/Frameworks/AGL.framework"
+  ];
   IOKit = [
     "/System/Library/Frameworks/IOKit.framework"
   ];
@@ -16,6 +19,9 @@ rec {
   QuickLook = [
     "/System/Library/Frameworks/QuickLook.framework"
   ];
+  Kernel = [
+    "/System/Library/Frameworks/Kernel.framework"
+  ];
   Quartz = [
     "/System/Library/Frameworks/Quartz.framework"
     "/System/Library/PrivateFrameworks/AppleSystemInfo.framework/Versions/A/AppleSystemInfo"
diff --git a/pkgs/os-specific/darwin/derez/default.nix b/pkgs/os-specific/darwin/derez/default.nix
deleted file mode 100644
index f64f05aadf0..00000000000
--- a/pkgs/os-specific/darwin/derez/default.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-{ stdenv }:
-
-# this tool only exists on darwin
-assert stdenv.isDarwin;
-
-stdenv.mkDerivation {
-  name = "derez";
-
-  src = "/usr/bin/DeRez";
-
-  unpackPhase = "true";
-  configurePhase = "true";
-  buildPhase = "true";
-
-  installPhase = ''
-    mkdir -p "$out/bin"
-    ln -s $src "$out/bin"
-  '';
-
-  meta = with stdenv.lib; {
-    description = "Decompiles resources";
-    homepage    = "https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man1/DeRez.1.html";
-    maintainers = [ maintainers.lnl7 ];
-    platforms   = platforms.darwin;
-
-    longDescription = ''
-      The DeRez tool decompiles the resource fork of resourceFile according to the type declarations
-      supplied by the type declaration files. The resource description produced by this decompilation
-      contains the resource definitions (resource and data statements) associated with these type
-      declarations. If for some reason it cannot reproduce the appropriate resource statements, DeRez
-      generates hexadecimal data statements instead.
-    '';
-  };
-}
diff --git a/pkgs/os-specific/darwin/rez/default.nix b/pkgs/os-specific/darwin/rez/default.nix
deleted file mode 100644
index 847dfc6e6f3..00000000000
--- a/pkgs/os-specific/darwin/rez/default.nix
+++ /dev/null
@@ -1,33 +0,0 @@
-{ stdenv }:
-
-# this tool only exists on darwin
-assert stdenv.isDarwin;
-
-stdenv.mkDerivation {
-  name = "rez";
-
-  src = "/usr/bin/Rez";
-
-  unpackPhase = "true";
-  configurePhase = "true";
-  buildPhase = "true";
-
-  installPhase = ''
-    mkdir -p "$out/bin"
-    ln -s $src "$out/bin"
-  '';
-
-  meta = with stdenv.lib; {
-    description = "Compiles resources";
-    homepage    = "https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man1/Rez.1.html";
-    maintainers = [ maintainers.lnl7 ];
-    platforms   = platforms.darwin;
-
-    longDescription = ''
-      The Rez tool compiles the resource fork of a file according to the textual description contained in
-      the resource description files. These resource description files must contain both the type
-      declarations and the resource definitions needed to compile the resources. This data can come
-      directly from the resource description files.
-    '';
-  };
-}
diff --git a/pkgs/os-specific/darwin/setfile/default.nix b/pkgs/os-specific/darwin/setfile/default.nix
deleted file mode 100644
index 98dd6b3e2e7..00000000000
--- a/pkgs/os-specific/darwin/setfile/default.nix
+++ /dev/null
@@ -1,33 +0,0 @@
-{ stdenv }:
-
-# this tool only exists on darwin
-assert stdenv.isDarwin;
-
-stdenv.mkDerivation {
-  name = "setfile";
-
-  src = "/usr/bin/SetFile";
-
-  unpackPhase = "true";
-  configurePhase = "true";
-  buildPhase = "true";
-
-  installPhase = ''
-    mkdir -p "$out/bin"
-    ln -s $src "$out/bin"
-  '';
-
-  meta = with stdenv.lib; {
-    description = "Set attributes of files and directories";
-    homepage    = "http://developer.apple.com/library/mac/#documentation/Darwin/Reference/ManPages/man1/setfile.1.html";
-    maintainers = with maintainers; [ lovek323 ];
-    platforms   = platforms.darwin;
-
-    longDescription = ''
-      SetFile is a tool to set the file attributes on files in an HFS+
-      directory. It attempts to be similar to the setfile command in MPW. It can
-      apply rules to more than one file with the options apply- ing to all files
-      listed.
-    '';
-  };
-}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index d072e7e1824..f401e1ef49f 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -614,13 +614,8 @@ let
 
   oracle-instantclient = callPackage ../development/libraries/oracle-instantclient { };
 
-  derez = callPackage ../os-specific/darwin/derez { };
-  rez = callPackage ../os-specific/darwin/rez { };
-
   reattach-to-user-namespace = callPackage ../os-specific/darwin/reattach-to-user-namespace {};
 
-  setfile = callPackage ../os-specific/darwin/setfile { };
-
   install_name_tool = callPackage ../os-specific/darwin/install_name_tool { };
 
   xcodeenv = callPackage ../development/mobile/xcodeenv { };
@@ -8534,7 +8529,9 @@ let
     withMesa = lib.elem system lib.platforms.mesaPlatforms;
   };
 
-  wxmac = callPackage ../development/libraries/wxmac { };
+  wxmac = callPackage ../development/libraries/wxmac {
+    inherit (darwin.apple_sdk.frameworks) AGL Cocoa Kernel QuickTime;
+  };
 
   wtk = callPackage ../development/libraries/wtk { };