threadscope: allow building with GHC 7.8.3, and on recent OS X

This commit is contained in:
John Wiegley 2014-11-03 15:26:33 -06:00
parent 3a6a3815e9
commit 4219c27632
14 changed files with 171 additions and 5 deletions

View File

@ -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;
};
})

View File

@ -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;
};
})

View File

@ -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

View File

@ -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;
};
})

View File

@ -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

View File

@ -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;
};
})

View File

@ -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

View File

@ -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";

View File

@ -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,

View File

@ -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 {};