nixpkgs/pkgs/development/libraries/gtk-sharp/2.0.nix

72 lines
1.3 KiB
Nix
Raw Normal View History

2018-12-25 00:57:04 +01:00
{ stdenv
, lib
, fetchFromGitHub
, pkgconfig
, mono
, glib
, pango
, gtk2
, GConf ? null
, libglade ? null
, libgtkhtml ? null
, gtkhtml ? null
, libgnomecanvas ? null
, libgnomeui ? null
, libgnomeprint ? null
, libgnomeprintui ? null
, libxml2
, monoDLLFixer
2018-12-25 00:57:04 +01:00
, autoconf
, automake
, libtool
, which
}:
2018-12-25 00:57:04 +01:00
stdenv.mkDerivation rec {
pname = "gtk-sharp";
2018-12-25 00:57:04 +01:00
version = "2.12.45";
builder = ./builder.sh;
2018-12-25 00:57:04 +01:00
src = fetchFromGitHub {
owner = "mono";
repo = "gtk-sharp";
rev = version;
sha256 = "1vy6yfwkfv6bb45bzf4g6dayiqkvqqvlr02rsnhd10793hlpqlgg";
};
gtk-sharp: wrap output executables Fixes the below build error in gnome-sharp which appeared after #52712 /nix/store/wsqld4bccm0bwjnn1gj9cr32qscz4qk7-gtk-sharp-2.12.10/bin/gapi2-fixup --api=art-api.xml --metadata=./Art.metadata --symbols=./art-symbols.xml rm -f generated/* && \ /nix/store/wsqld4bccm0bwjnn1gj9cr32qscz4qk7-gtk-sharp-2.12.10/bin/gapi2-codegen --generate art-api.xml \ -I:/nix/store/wsqld4bccm0bwjnn1gj9cr32qscz4qk7-gtk-sharp-2.12.10/lib/pkgconfig/../../share/gapi-2.0/pango-api.xml -I:/nix/store/wsqld4bccm0bwjnn1gj9cr32qscz4qk7-gtk-sharp-2.12.10/lib/pkgconfig/../../share/gapi-2.0/atk-api.xml -I:/nix/store/wsqld4bccm0bwjnn1gj9cr32qscz4qk7-gtk-sharp-2.12.10/lib/pkgconfig/../../share/gapi-2.0/gdk-api.xml -I:/nix/store/wsqld4bccm0bwjnn1gj9cr32qscz4qk7-gtk-sharp-2.12.10/lib/pkgconfig/../../share/gapi-2.0/gtk-api.xml -I:/nix/store/wsqld4bccm0bwjnn1gj9cr32qscz4qk7-gtk-sharp-2.12.10/lib/pkgconfig/../../share/gapi-2.0/glib-api.xml \ --outdir=generated --customdir=. --assembly-name=art-sharp \ --gluelib-name=artsharpglue-2 --glue-filename=glue/generated.c \ --glue-includes= \ && touch generated-stamp Unhandled Exception: System.MissingMethodException: Method 'string.Split' not found. at GtkSharp.Generation.SimpleGen..ctor (System.String ctype, System.String type, System.String default_value) [0x00000] in <d117698e7b8a4f9b867143c99aa161ba>:0 at GtkSharp.Generation.SymbolTable..ctor () [0x00011] in <d117698e7b8a4f9b867143c99aa161ba>:0 at GtkSharp.Generation.SymbolTable.get_Table () [0x0000a] in <d117698e7b8a4f9b867143c99aa161ba>:0 at GtkSharp.Generation.CodeGenerator.Main (System.String[] args) [0x0003e] in <d117698e7b8a4f9b867143c99aa161ba>:0 [ERROR] FATAL UNHANDLED EXCEPTION: System.MissingMethodException: Method 'string.Split' not found. at GtkSharp.Generation.SimpleGen..ctor (System.String ctype, System.String type, System.String default_value) [0x00000] in <d117698e7b8a4f9b867143c99aa161ba>:0
2018-12-25 00:31:40 +01:00
postInstall = ''
pushd $out/bin
for f in gapi2-*
do
substituteInPlace $f --replace mono ${mono}/bin/mono
done
popd
'';
2018-12-25 00:57:04 +01:00
nativeBuildInputs = [ pkgconfig autoconf automake libtool which ];
gtk-sharp: wrap output executables Fixes the below build error in gnome-sharp which appeared after #52712 /nix/store/wsqld4bccm0bwjnn1gj9cr32qscz4qk7-gtk-sharp-2.12.10/bin/gapi2-fixup --api=art-api.xml --metadata=./Art.metadata --symbols=./art-symbols.xml rm -f generated/* && \ /nix/store/wsqld4bccm0bwjnn1gj9cr32qscz4qk7-gtk-sharp-2.12.10/bin/gapi2-codegen --generate art-api.xml \ -I:/nix/store/wsqld4bccm0bwjnn1gj9cr32qscz4qk7-gtk-sharp-2.12.10/lib/pkgconfig/../../share/gapi-2.0/pango-api.xml -I:/nix/store/wsqld4bccm0bwjnn1gj9cr32qscz4qk7-gtk-sharp-2.12.10/lib/pkgconfig/../../share/gapi-2.0/atk-api.xml -I:/nix/store/wsqld4bccm0bwjnn1gj9cr32qscz4qk7-gtk-sharp-2.12.10/lib/pkgconfig/../../share/gapi-2.0/gdk-api.xml -I:/nix/store/wsqld4bccm0bwjnn1gj9cr32qscz4qk7-gtk-sharp-2.12.10/lib/pkgconfig/../../share/gapi-2.0/gtk-api.xml -I:/nix/store/wsqld4bccm0bwjnn1gj9cr32qscz4qk7-gtk-sharp-2.12.10/lib/pkgconfig/../../share/gapi-2.0/glib-api.xml \ --outdir=generated --customdir=. --assembly-name=art-sharp \ --gluelib-name=artsharpglue-2 --glue-filename=glue/generated.c \ --glue-includes= \ && touch generated-stamp Unhandled Exception: System.MissingMethodException: Method 'string.Split' not found. at GtkSharp.Generation.SimpleGen..ctor (System.String ctype, System.String type, System.String default_value) [0x00000] in <d117698e7b8a4f9b867143c99aa161ba>:0 at GtkSharp.Generation.SymbolTable..ctor () [0x00011] in <d117698e7b8a4f9b867143c99aa161ba>:0 at GtkSharp.Generation.SymbolTable.get_Table () [0x0000a] in <d117698e7b8a4f9b867143c99aa161ba>:0 at GtkSharp.Generation.CodeGenerator.Main (System.String[] args) [0x0003e] in <d117698e7b8a4f9b867143c99aa161ba>:0 [ERROR] FATAL UNHANDLED EXCEPTION: System.MissingMethodException: Method 'string.Split' not found. at GtkSharp.Generation.SimpleGen..ctor (System.String ctype, System.String type, System.String default_value) [0x00000] in <d117698e7b8a4f9b867143c99aa161ba>:0
2018-12-25 00:31:40 +01:00
buildInputs = [
mono glib pango gtk2 GConf libglade libgnomecanvas
libgtkhtml libgnomeui libgnomeprint libgnomeprintui gtkhtml libxml2
];
2018-12-25 00:57:04 +01:00
preConfigure = ''
./bootstrap-${lib.versions.majorMinor version}
'';
dontStrip = true;
inherit monoDLLFixer;
passthru = {
gtk = gtk2;
};
2018-10-12 22:36:57 +02:00
meta = with stdenv.lib; {
description = "Graphical User Interface Toolkit for mono and .Net";
homepage = https://www.mono-project.com/docs/gui/gtksharp;
platforms = platforms.linux;
license = licenses.gpl2;
};
}