about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJohn Wiegley <johnw@newartisans.com>2014-11-03 15:26:33 -0600
committerJohn Wiegley <johnw@newartisans.com>2014-11-03 15:27:31 -0600
commit4219c276328058dc8f7a4ab46f7ead11fc97a911 (patch)
treee22f8be2f072458a6b41685b8a1766fa4bb6f7ca
parent3a6a3815e9eb002d0bfd399b18c378e5a9890e4f (diff)
downloadnixlib-4219c276328058dc8f7a4ab46f7ead11fc97a911.tar
nixlib-4219c276328058dc8f7a4ab46f7ead11fc97a911.tar.gz
nixlib-4219c276328058dc8f7a4ab46f7ead11fc97a911.tar.bz2
nixlib-4219c276328058dc8f7a4ab46f7ead11fc97a911.tar.lz
nixlib-4219c276328058dc8f7a4ab46f7ead11fc97a911.tar.xz
nixlib-4219c276328058dc8f7a4ab46f7ead11fc97a911.tar.zst
nixlib-4219c276328058dc8f7a4ab46f7ead11fc97a911.zip
threadscope: allow building with GHC 7.8.3, and on recent OS X
-rw-r--r--pkgs/development/libraries/haskell/cairo/0.12.5.3.nix21
-rw-r--r--pkgs/development/libraries/haskell/cairo/0.13.0.4.nix (renamed from pkgs/development/libraries/haskell/cairo/default.nix)0
-rw-r--r--pkgs/development/libraries/haskell/glib/0.12.5.4.nix21
-rw-r--r--pkgs/development/libraries/haskell/glib/0.13.0.5.nix (renamed from pkgs/development/libraries/haskell/glib/default.nix)0
-rw-r--r--pkgs/development/libraries/haskell/glib/gtk2hs.patch15
-rw-r--r--pkgs/development/libraries/haskell/gtk/0.12.5.7.nix22
-rw-r--r--pkgs/development/libraries/haskell/gtk/0.13.0.3.nix (renamed from pkgs/development/libraries/haskell/gtk/default.nix)0
-rw-r--r--pkgs/development/libraries/haskell/gtk/gtk.patch10
-rw-r--r--pkgs/development/libraries/haskell/pango/0.12.5.3.nix22
-rw-r--r--pkgs/development/libraries/haskell/pango/0.13.0.3.nix (renamed from pkgs/development/libraries/haskell/pango/default.nix)0
-rw-r--r--pkgs/development/libraries/haskell/pango/pango.patch10
-rw-r--r--pkgs/development/tools/haskell/threadscope/default.nix1
-rw-r--r--pkgs/development/tools/haskell/threadscope/threadscope.patch14
-rw-r--r--pkgs/top-level/haskell-packages.nix40
14 files changed, 171 insertions, 5 deletions
diff --git a/pkgs/development/libraries/haskell/cairo/0.12.5.3.nix b/pkgs/development/libraries/haskell/cairo/0.12.5.3.nix
new file mode 100644
index 000000000000..5bb1394678e5
--- /dev/null
+++ b/pkgs/development/libraries/haskell/cairo/0.12.5.3.nix
@@ -0,0 +1,21 @@
+# This file was auto-generated by cabal2nix. Please do NOT edit manually!
+
+{ cabal, cairo, gtk2hsBuildtools, libc, mtl, pkgconfig, text
+, utf8String, zlib
+}:
+
+cabal.mkDerivation (self: {
+  pname = "cairo";
+  version = "0.12.5.3";
+  sha256 = "1g5wn7dzz8cc7my09igr284j96d795jlnmy1q2hhlvssfhwbbvg7";
+  buildDepends = [ mtl text utf8String ];
+  buildTools = [ gtk2hsBuildtools ];
+  extraLibraries = [ cairo libc pkgconfig zlib ];
+  pkgconfigDepends = [ cairo ];
+  meta = {
+    homepage = "http://projects.haskell.org/gtk2hs/";
+    description = "Binding to the Cairo library";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/cairo/default.nix b/pkgs/development/libraries/haskell/cairo/0.13.0.4.nix
index 10eedda6f24d..10eedda6f24d 100644
--- a/pkgs/development/libraries/haskell/cairo/default.nix
+++ b/pkgs/development/libraries/haskell/cairo/0.13.0.4.nix
diff --git a/pkgs/development/libraries/haskell/glib/0.12.5.4.nix b/pkgs/development/libraries/haskell/glib/0.12.5.4.nix
new file mode 100644
index 000000000000..c819af766c22
--- /dev/null
+++ b/pkgs/development/libraries/haskell/glib/0.12.5.4.nix
@@ -0,0 +1,21 @@
+# This file was auto-generated by cabal2nix. Please do NOT edit manually!
+
+{ cabal, glib, gtk2hsBuildtools, libc, pkgconfig, utf8String
+}:
+
+cabal.mkDerivation (self: {
+  pname = "glib";
+  version = "0.12.5.4";
+  sha256 = "1jbqfcsmsghq67lwnk6yifs34lxvh6xfbzxzfryalifb4zglccz6";
+  buildDepends = [ utf8String ];
+  buildTools = [ gtk2hsBuildtools ];
+  extraLibraries = [ libc pkgconfig ];
+  pkgconfigDepends = [ glib ];
+  patches = self.stdenv.lib.optionals self.stdenv.isDarwin [ ./gtk2hs.patch ];
+  meta = {
+    homepage = "http://projects.haskell.org/gtk2hs/";
+    description = "Binding to the GLIB library for Gtk2Hs";
+    license = self.stdenv.lib.licenses.lgpl21;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/glib/default.nix b/pkgs/development/libraries/haskell/glib/0.13.0.5.nix
index 1229b7c8506e..1229b7c8506e 100644
--- a/pkgs/development/libraries/haskell/glib/default.nix
+++ b/pkgs/development/libraries/haskell/glib/0.13.0.5.nix
diff --git a/pkgs/development/libraries/haskell/glib/gtk2hs.patch b/pkgs/development/libraries/haskell/glib/gtk2hs.patch
new file mode 100644
index 000000000000..210cf2eb571a
--- /dev/null
+++ b/pkgs/development/libraries/haskell/glib/gtk2hs.patch
@@ -0,0 +1,15 @@
+Author: Hamish Mackenzie <Hamish.K.Mackenzie@googlemail.com>
+Date:   Mon Jul 7 21:28:50 2014 +1200
+
+    Fixes #1
+
+--- a/glib.cabal.orig	2014-11-03 14:52:40.000000000 -0600
++++ b/glib.cabal	2014-11-03 14:52:51.000000000 -0600
+@@ -36,6 +36,7 @@
+                         utf8-string >= 0.2 && < 0.4,
+                         containers
+         build-tools:    gtk2hsC2hs >= 0.13.8
++        cpp-options:    -U__BLOCKS__ -D__attribute__(A)=
+         if flag(closure_signals)
+           cpp-options:  -DUSE_GCLOSURE_SIGNALS_IMPL
+           c-sources: System/Glib/hsgclosure.ccommit aa22754e04616c354557fc350f96a8f7f331e984
diff --git a/pkgs/development/libraries/haskell/gtk/0.12.5.7.nix b/pkgs/development/libraries/haskell/gtk/0.12.5.7.nix
new file mode 100644
index 000000000000..34c1480c8c34
--- /dev/null
+++ b/pkgs/development/libraries/haskell/gtk/0.12.5.7.nix
@@ -0,0 +1,22 @@
+# This file was auto-generated by cabal2nix. Please do NOT edit manually!
+
+{ cabal, cairo, gio, glib, gtk, gtk2hsBuildtools, libc, mtl, pango
+, pkgconfig, text
+}:
+
+cabal.mkDerivation (self: {
+  pname = "gtk";
+  version = "0.12.5.7";
+  sha256 = "0hax4ixdz523753rc774c8g76bjlj56lsabyl5nwkpnppffpa73w";
+  buildDepends = [ cairo gio glib mtl pango text ];
+  buildTools = [ gtk2hsBuildtools ];
+  extraLibraries = [ libc pkgconfig ];
+  pkgconfigDepends = [ glib gtk ];
+  patches = self.stdenv.lib.optionals self.stdenv.isDarwin [ ./gtk.patch ];
+  meta = {
+    homepage = "http://projects.haskell.org/gtk2hs/";
+    description = "Binding to the Gtk+ graphical user interface library";
+    license = self.stdenv.lib.licenses.lgpl21;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/gtk/default.nix b/pkgs/development/libraries/haskell/gtk/0.13.0.3.nix
index e9a90659a95f..e9a90659a95f 100644
--- a/pkgs/development/libraries/haskell/gtk/default.nix
+++ b/pkgs/development/libraries/haskell/gtk/0.13.0.3.nix
diff --git a/pkgs/development/libraries/haskell/gtk/gtk.patch b/pkgs/development/libraries/haskell/gtk/gtk.patch
new file mode 100644
index 000000000000..242552950df1
--- /dev/null
+++ b/pkgs/development/libraries/haskell/gtk/gtk.patch
@@ -0,0 +1,10 @@
+--- a/gtk.cabal.orig	2014-11-03 15:13:42.000000000 -0600
++++ b/gtk.cabal	2014-11-03 15:14:05.000000000 -0600
+@@ -148,6 +148,7 @@
+ 
+         build-tools:    gtk2hsC2hs >= 0.13.8,
+                         gtk2hsHookGenerator, gtk2hsTypeGen
++        cpp-options:    -U__BLOCKS__ -D__attribute__(A)=
+ 
+         exposed-modules:
+           Graphics.UI.Gtk
diff --git a/pkgs/development/libraries/haskell/pango/0.12.5.3.nix b/pkgs/development/libraries/haskell/pango/0.12.5.3.nix
new file mode 100644
index 000000000000..e95c590e3545
--- /dev/null
+++ b/pkgs/development/libraries/haskell/pango/0.12.5.3.nix
@@ -0,0 +1,22 @@
+# This file was auto-generated by cabal2nix. Please do NOT edit manually!
+
+{ cabal, cairo, glib, gtk2hsBuildtools, libc, mtl, pango, pkgconfig
+, text
+}:
+
+cabal.mkDerivation (self: {
+  pname = "pango";
+  version = "0.12.5.3";
+  sha256 = "1n64ppz0jqrbzvimbz4avwnx3z0n5z2gbmbmca0hw9wqf9j6y79a";
+  buildDepends = [ cairo glib mtl text ];
+  buildTools = [ gtk2hsBuildtools ];
+  extraLibraries = [ libc pkgconfig ];
+  pkgconfigDepends = [ cairo pango ];
+  patches = self.stdenv.lib.optionals self.stdenv.isDarwin [ ./pango.patch ];
+  meta = {
+    homepage = "http://projects.haskell.org/gtk2hs/";
+    description = "Binding to the Pango text rendering engine";
+    license = self.stdenv.lib.licenses.lgpl21;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/pango/default.nix b/pkgs/development/libraries/haskell/pango/0.13.0.3.nix
index c3ce339f7d55..c3ce339f7d55 100644
--- a/pkgs/development/libraries/haskell/pango/default.nix
+++ b/pkgs/development/libraries/haskell/pango/0.13.0.3.nix
diff --git a/pkgs/development/libraries/haskell/pango/pango.patch b/pkgs/development/libraries/haskell/pango/pango.patch
new file mode 100644
index 000000000000..af338cbe32ce
--- /dev/null
+++ b/pkgs/development/libraries/haskell/pango/pango.patch
@@ -0,0 +1,10 @@
+--- a/pango.cabal.orig	2014-11-03 15:11:35.000000000 -0600
++++ b/pango.cabal	2014-11-03 15:11:57.000000000 -0600
+@@ -52,6 +52,7 @@
+           build-depends:  base < 4
+ 
+         build-tools:    gtk2hsC2hs >= 0.13.8, gtk2hsTypeGen
++        cpp-options:    -U__BLOCKS__ -D__attribute__(A)=
+ 
+         exposed-modules: Graphics.Rendering.Pango
+                          Graphics.Rendering.Pango.Font
diff --git a/pkgs/development/tools/haskell/threadscope/default.nix b/pkgs/development/tools/haskell/threadscope/default.nix
index 892faca8e8cd..a4961440a3ec 100644
--- a/pkgs/development/tools/haskell/threadscope/default.nix
+++ b/pkgs/development/tools/haskell/threadscope/default.nix
@@ -14,6 +14,7 @@ cabal.mkDerivation (self: {
     binary cairo deepseq filepath ghcEvents glib gtk mtl pango time
   ];
   configureFlags = "--ghc-options=-rtsopts";
+  patches = [ ./threadscope.patch ];
   meta = {
     homepage = "http://www.haskell.org/haskellwiki/ThreadScope";
     description = "A graphical tool for profiling parallel Haskell programs";
diff --git a/pkgs/development/tools/haskell/threadscope/threadscope.patch b/pkgs/development/tools/haskell/threadscope/threadscope.patch
new file mode 100644
index 000000000000..af504a11f26e
--- /dev/null
+++ b/pkgs/development/tools/haskell/threadscope/threadscope.patch
@@ -0,0 +1,14 @@
+--- a/threadscope.cabal.orig	2014-11-03 15:23:29.000000000 -0600
++++ b/threadscope.cabal	2014-11-03 15:24:01.000000000 -0600
+@@ -41,7 +41,10 @@
+ Executable threadscope
+   Main-is:           Main.hs
+   Build-Depends:     base >= 4.0 && < 5,
+-                     gtk >= 0.12, cairo, glib, pango,
++                     gtk >= 0.12 && < 0.13,
++                     cairo < 0.13,
++                     glib < 0.13,
++                     pango < 0.13,
+                      binary, array, mtl, filepath,
+                      ghc-events >= 0.4.2,
+                      containers >= 0.2 && < 0.6,
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index 6749a1d4764b..a5036f6e4a51 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -361,10 +361,15 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   cabalMacosx = callPackage ../development/libraries/haskell/cabal-macosx {};
 
-  cairo = callPackage ../development/libraries/haskell/cairo {
+  cairo_0_12_5_3 = callPackage ../development/libraries/haskell/cairo/0.12.5.3.nix {
     inherit (pkgs) cairo zlib;
     libc = pkgs.stdenv.gcc.libc;
   };
+  cairo_0_13_0_4 = callPackage ../development/libraries/haskell/cairo/0.13.0.4.nix {
+    inherit (pkgs) cairo zlib;
+    libc = pkgs.stdenv.cc.libc;
+  };
+  cairo = self.cairo_0_13_0_4;
 
   carray = callPackage ../development/libraries/haskell/carray {};
 
@@ -966,10 +971,15 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   GLFWB = callPackage ../development/libraries/haskell/GLFW-b {};
 
-  glib = callPackage ../development/libraries/haskell/glib {
+  glib_0_12_5_4 = callPackage ../development/libraries/haskell/glib/0.12.5.4.nix {
     glib = pkgs.glib;
     libc = pkgs.stdenv.gcc.libc;
   };
+  glib_0_13_0_5 = callPackage ../development/libraries/haskell/glib/0.13.0.5.nix {
+    glib = pkgs.glib;
+    libc = pkgs.stdenv.cc.libc;
+  };
+  glib = self.glib_0_13_0_5;
 
   Glob = callPackage ../development/libraries/haskell/Glob {};
 
@@ -1020,10 +1030,18 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   gsasl = callPackage ../development/libraries/haskell/gsasl { inherit (pkgs) gsasl; };
 
-  gtk = callPackage ../development/libraries/haskell/gtk {
+  gtk_0_12_5_7 = callPackage ../development/libraries/haskell/gtk/0.12.5.7.nix {
     inherit (pkgs) gtk;
     libc = pkgs.stdenv.gcc.libc;
+    glib = self.glib_0_12_5_4;
+    cairo = self.cairo_0_12_5_3;
+    pango = self.pango_0_12_5_3;
   };
+  gtk_0_13_0_3 = callPackage ../development/libraries/haskell/gtk/0.13.0.3.nix {
+    inherit (pkgs) gtk;
+    libc = pkgs.stdenv.cc.libc;
+  };
+  gtk = self.gtk_0_13_0_3;
 
   gtk3 = callPackage ../development/libraries/haskell/gtk3 {
     inherit (pkgs) gtk3;
@@ -1896,10 +1914,17 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   pandocTypes = callPackage ../development/libraries/haskell/pandoc-types {};
 
-  pango = callPackage ../development/libraries/haskell/pango {
+  pango_0_12_5_3 = callPackage ../development/libraries/haskell/pango/0.12.5.3.nix {
+    inherit (pkgs) pango;
+    libc = pkgs.stdenv.cc.libc;
+    glib = self.glib_0_12_5_4;
+    cairo = self.cairo_0_12_5_3;
+  };
+  pango_0_13_0_3 = callPackage ../development/libraries/haskell/pango/0.13.0.3.nix {
     inherit (pkgs) pango;
     libc = pkgs.stdenv.gcc.libc;
   };
+  pango = self.pango_0_13_0_3;
 
   parallel_1_1_0_1 = callPackage ../development/libraries/haskell/parallel/1.1.0.1.nix {};
   parallel_2_2_0_1 = callPackage ../development/libraries/haskell/parallel/2.2.0.1.nix {};
@@ -3099,7 +3124,12 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   tar = callPackage ../development/libraries/haskell/tar {};
 
-  threadscope = callPackage ../development/tools/haskell/threadscope {};
+  threadscope = callPackage ../development/tools/haskell/threadscope {
+    gtk = self.gtk_0_12_5_7;
+    glib = self.glib_0_12_5_4;
+    cairo = self.cairo_0_12_5_3;
+    pango = self.pango_0_12_5_3;
+  };
 
   uuagcBootstrap = callPackage ../development/tools/haskell/uuagc/bootstrap.nix {};
   uuagcCabal = callPackage ../development/tools/haskell/uuagc/cabal.nix {};