From 6cfba00e1b39886249939977cb26690494bca076 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Batlle=20i=20Rossell?= Date: Wed, 6 Apr 2011 10:00:48 +0000 Subject: [PATCH] Adding giv. svn path=/nixpkgs/trunk/; revision=26709 --- pkgs/applications/graphics/giv/build.patch | 56 ++++++++++++++++++++ pkgs/applications/graphics/giv/default.nix | 35 ++++++++++++ pkgs/development/tools/misc/gob2/default.nix | 19 +++++++ pkgs/top-level/all-packages.nix | 6 +++ 4 files changed, 116 insertions(+) create mode 100644 pkgs/applications/graphics/giv/build.patch create mode 100644 pkgs/applications/graphics/giv/default.nix create mode 100644 pkgs/development/tools/misc/gob2/default.nix diff --git a/pkgs/applications/graphics/giv/build.patch b/pkgs/applications/graphics/giv/build.patch new file mode 100644 index 000000000000..ed47675296c6 --- /dev/null +++ b/pkgs/applications/graphics/giv/build.patch @@ -0,0 +1,56 @@ +Get the environment propagated to scons forked childs, and correct the dicom plugin about +a typedef of size_t that failed at least on x86_64-linux. + +diff --git a/SConstruct b/SConstruct +index 16eccd9..603e931 100644 +--- a/SConstruct ++++ b/SConstruct +@@ -7,8 +7,7 @@ else: + cppflags = ['-O2'] + variant = 'Release' + +-env = Environment(LIBPATH=[], +- CPPFLAGS = cppflags) ++env = Environment(ENV = os.environ) + + env['SBOX'] = False + +diff --git a/giv/SConstruct b/giv/SConstruct +index 047839a..2c267aa 100644 +--- a/giv/SConstruct ++++ b/giv/SConstruct +@@ -3,8 +3,9 @@ + + import sys + import re ++import os + +-env = Environment() ++env = Environment(ENV = os.environ) + + src = ["giv.c", + "giv-backstore.c", +diff --git a/src/plugins/dcmtk/SConstruct.standalone b/src/plugins/dcmtk/SConstruct.standalone +index ffce001..74246f8 100644 +--- a/src/plugins/dcmtk/SConstruct.standalone ++++ b/src/plugins/dcmtk/SConstruct.standalone +@@ -1,4 +1,6 @@ +-env = Environment() ++import os ++ ++env = Environment(ENV = os.environ) + + variant = "Debug" + +diff --git a/src/plugins/dcmtk/config/include/dcmtk/config/cfunix.h b/src/plugins/dcmtk/config/include/dcmtk/config/cfunix.h +index 32dbcbb..c456604 100644 +--- a/src/plugins/dcmtk/config/include/dcmtk/config/cfunix.h ++++ b/src/plugins/dcmtk/config/include/dcmtk/config/cfunix.h +@@ -332,7 +332,6 @@ typedef int pid_t; + #endif + + /* Define `size_t' to `unsigned' if does not define. */ +-#define HAVE_NO_TYPEDEF_SIZE_T 1 + #ifdef HAVE_NO_TYPEDEF_SIZE_T + typedef unsigned size_t; + #endif diff --git a/pkgs/applications/graphics/giv/default.nix b/pkgs/applications/graphics/giv/default.nix new file mode 100644 index 000000000000..c4c8afe4af0a --- /dev/null +++ b/pkgs/applications/graphics/giv/default.nix @@ -0,0 +1,35 @@ +{ stdenv, fetchurl, gdk_pixbuf, scons, pkgconfig, gtk, glib, + pcre, cfitsio, perl, gob2, vala, libtiff }: + +stdenv.mkDerivation rec { + name = "giv-0.9.18"; + + src = fetchurl { + url = "mirror://sourceforge/giv/${name}.tar.gz"; + sha256 = "0w81cc56mq8qiv36jljgarycly3fnpr5i7cjnsprgfm79icdi8nl"; + }; + + # It built code to be put in a shared object without -fPIC + NIX_CFLAGS_COMPILE = "-fPIC"; + + prePatch = '' + sed -i s,/usr/bin/perl,${perl}/bin/perl, doc/eperl + sed -i s,/usr/local,$out, SConstruct + ''; + + patches = [ /tmp/patch ]; + + buildPhase = "scons"; + + installPhase = "scons install"; + + buildInputs = [ gdk_pixbuf pkgconfig gtk glib scons pcre cfitsio perl gob2 vala libtiff ]; + + meta = { + description = "Cross platform image and hierarchical vector viewer based"; + homepage = http://giv.sourceforge.net/giv/; + license = "GPLv2+"; + maintainers = with stdenv.lib.maintainers; [viric]; + platforms = with stdenv.lib.platforms; linux; + }; +} diff --git a/pkgs/development/tools/misc/gob2/default.nix b/pkgs/development/tools/misc/gob2/default.nix new file mode 100644 index 000000000000..4308a559268e --- /dev/null +++ b/pkgs/development/tools/misc/gob2/default.nix @@ -0,0 +1,19 @@ +{ stdenv, fetchurl, pkgconfig, glib, bison, flex }: + +stdenv.mkDerivation rec { + name = "gob2-2.0.18"; + + src = fetchurl { + url = "http://ftp.5z.com/pub/gob/${name}.tar.gz"; + sha256 = "1r242s3rsxyqiw2ic2gdpvvrx903jgjd1aa4mkl26in5k9zk76fa"; + }; + + # configure script looks for d-bus but it is only needed for tests + buildInputs = [ glib bison flex pkgconfig ]; + + meta = { + description = "Preprocessor for making GObjects with inline C code"; + homepage = http://www.jirka.org/gob.html; + license = "GPLv2+"; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 528c05b828c0..0539baac6e81 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3293,6 +3293,8 @@ let gtkmm = callPackage ../development/libraries/gtkmm/2.18.x.nix { }; + gob2 = callPackage ../development/tools/misc/gob2 { }; + }); gtkmozembedsharp = callPackage ../development/libraries/gtkmozembed-sharp { @@ -6110,6 +6112,10 @@ let git = gitAndTools.git; gitFull = gitAndTools.gitFull; + giv = callPackage ../applications/graphics/giv { + inherit (gtkLibs) gdk_pixbuf gtk gob2; + }; + gnucash = callPackage ../applications/office/gnucash { inherit (gnome) gtk glib libglade libgnomeui libgtkhtml gtkhtml libgnomeprint;