From 19ac94dee3b0914ac3522e9ae1bddf64ddafabaa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Batlle=20i=20Rossell?= Date: Thu, 2 Apr 2009 15:20:19 +0000 Subject: [PATCH] Adding cinepaint 0.22.1 and as a dependency, also fltk 1.1.9 svn path=/nixpkgs/trunk/; revision=14841 --- .../graphics/cinepaint/default.nix | 39 ++++++++++++++++ .../graphics/cinepaint/fltk.patch | 13 ++++++ pkgs/development/libraries/fltk/fltk11.nix | 45 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 18 ++++++++ 4 files changed, 115 insertions(+) create mode 100644 pkgs/applications/graphics/cinepaint/default.nix create mode 100644 pkgs/applications/graphics/cinepaint/fltk.patch create mode 100644 pkgs/development/libraries/fltk/fltk11.nix diff --git a/pkgs/applications/graphics/cinepaint/default.nix b/pkgs/applications/graphics/cinepaint/default.nix new file mode 100644 index 00000000000..f3a2c980ab7 --- /dev/null +++ b/pkgs/applications/graphics/cinepaint/default.nix @@ -0,0 +1,39 @@ +{ stdenv, fetchurl, pkgconfig, gtk, freetype, fontconfig, lcms, fltk, + flex, libtiff, libjpeg, libpng, libexif, zlib, perl, libX11, + perlXMLParser, python, pygtk, gettext, intltool, babl, gegl, + glib, makedepend, xf86vidmodeproto, xineramaproto, libXmu, openexr, + mesa, libXext, libXpm, libXxf86vm } : + +stdenv.mkDerivation { + name = "cinepaint-0.22-1"; + + src = fetchurl { + url = mirror://sourceforge/cinepaint/cinepaint-0.22-1.tar.gz; + sha256 = "bb08a9210658959772df12408769d660999ede168b7431514e1f3cead07c0fea"; + }; + + buildInputs = [ pkgconfig gtk freetype fontconfig lcms fltk flex libtiff + libjpeg libpng libexif zlib perl libX11 perlXMLParser python pygtk gettext + intltool babl gegl glib makedepend xf86vidmodeproto xineramaproto libXmu + openexr mesa libXext libXpm libXxf86vm ]; + + patches = [ ./fltk.patch ]; + + prePatch = '' + sed -i -e s@/usr/X11R6/bin/makedepend@${makedepend}/bin/makedepend@ \ + -e s@/usr/X11R6/include/X11/extensions/xf86vmode@${xf86vidmodeproto}/include/X11/extensions/xf86vmode@ \ + -e s@/usr/X11R6/include/X11/Xlib.h@${libX11}/include/X11/Xlib.h@ \ + -e s@/usr/X11R6/include/X11/extensions/Xinerama.h@${xineramaproto}/include/X11/extensions/Xinerama.h@ \ + -e s@/usr/X11R6/lib/libfreetype.a@${freetype}/lib/libfreetype.a@ \ + plug-ins/icc_examin/icc_examin/configure \ + plug-ins/icc_examin/icc_examin/configure.sh + ''; + + configureFlags = [ "--disable-print" "--enable-gtk2" ]; + + meta = { + homepage = http://www.cinepaint.org/; + license = "free"; + description = "Image editor which supports images over 8bpp and ICC profiles"; + }; +} diff --git a/pkgs/applications/graphics/cinepaint/fltk.patch b/pkgs/applications/graphics/cinepaint/fltk.patch new file mode 100644 index 00000000000..2b007a7a65a --- /dev/null +++ b/pkgs/applications/graphics/cinepaint/fltk.patch @@ -0,0 +1,13 @@ +diff --git a/plug-ins/icc_examin/icc_examin/icc_helfer_fltk.cpp b/plug-ins/icc_examin/icc_examin/icc_helfer_fltk.cpp +index b507454..85f4441 100644 +--- a/plug-ins/icc_examin/icc_examin/icc_helfer_fltk.cpp ++++ b/plug-ins/icc_examin/icc_examin/icc_helfer_fltk.cpp +@@ -226,7 +226,7 @@ namespace icc_examin_ns { + + int awake(void) + { +- Fl::awake(0); ++ Fl::awake((void *)0); + return 0; + } + int leerWait(void) { return 0; } diff --git a/pkgs/development/libraries/fltk/fltk11.nix b/pkgs/development/libraries/fltk/fltk11.nix new file mode 100644 index 00000000000..4832410102d --- /dev/null +++ b/pkgs/development/libraries/fltk/fltk11.nix @@ -0,0 +1,45 @@ +args: with args; +let inherit (args.composableDerivation) composableDerivation edf; in +composableDerivation {} { + + name = "fltk-1.1.9"; + + src = args.fetchurl { + url = http://ftp.rz.tu-bs.de/pub/mirror/ftp.easysw.com/ftp/pub/fltk/1.1.9/fltk-1.1.9-source.tar.bz2; + sha256 = "1ppdqc4vg3g11px4dxm6czxi4sswfxs485q44nrr5ji0galsbjzs"; + }; + + propagatedBuildInputs=[x11 inputproto libXi freeglut]; + + buildInputs = [ args.pkgconfig ]; + + flags = + # this could be tidied up (?).. eg why does it require freeglut without glSupport? + edf { name = "cygwin"; } # use the CygWin libraries default=no + // edf { name = "debug"; } # turn on debugging default=no + // edf { name = "gl"; enable = { buildInputs = [ mesa ]; }; } # turn on OpenGL support default=yes + // edf { name = "shared"; } # turn on shared libraries default=no + // edf { name = "threads"; } # enable multi-threading support + // edf { name = "quartz"; enable = { buildInputs = "quartz"; }; } # don't konw yet what quartz is # use Quartz instead of Quickdraw (default=no) + // edf { name = "largefile"; } # omit support for large files + // edf { name = "localjpeg"; disable = { buildInputs = [libjpeg]; }; } # use local JPEG library, default=auto + // edf { name = "localzlib"; disable = { buildInputs = [zlib]; }; } # use local ZLIB library, default=auto + // edf { name = "localpng"; disable = { buildInputs = [libpng]; }; } # use local PNG library, default=auto + // edf { name = "xinerama"; enable = { buildInputs = [libXinerama]; }; } # turn on Xinerama support default=no + // edf { name = "xft"; enable = { buildInputs=[libXft]; }; } # turn on Xft support default=no + // edf { name = "xdbe"; }; # turn on Xdbe support default=no + cfg = { + largefileSupport = true; # is default + glSupport = true; # doesn't build without it. Why? + localjpegSupport = false; + localzlibSupport = false; + localpngSupport = false; + sharedSupport = true; + threadsSupport = true; + }; + + meta = { + description = "a C++ cross platform lightweight gui library binding"; + homepage = http://www.fltk.org; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 8c9d21b84ea..119e4399ad7 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2921,6 +2921,13 @@ let singlePrecision = true; }; + fltk11 = (import ../development/libraries/fltk/fltk11.nix) { + inherit composableDerivation x11 lib pkgconfig freeglut; + inherit fetchurl stdenv mesa mesaHeaders libpng libjpeg zlib ; + inherit (xlibs) inputproto libXi libXinerama libXft; + flags = [ "useNixLibs" "threads" "shared" "gl" ]; + }; + fltk20 = (import ../development/libraries/fltk) { inherit composableDerivation x11 lib pkgconfig freeglut; inherit fetchurl stdenv mesa mesaHeaders libpng libjpeg zlib ; @@ -7881,6 +7888,17 @@ let inherit fetchurl stdenv emacs texinfo ctags; }; + cinepaint = import ../applications/graphics/cinepaint { + inherit stdenv fetchurl pkgconfig freetype fontconfig lcms flex libtiff + libjpeg libpng libexif zlib perl mesa perlXMLParser python pygtk gettext + intltool babl gegl; + inherit (xlibs) makedepend libX11 xf86vidmodeproto xineramaproto libXmu + libXext libXpm libXxf86vm; + inherit (gtkLibs) gtk glib; + openexr = openexr_1_6_1; + fltk = fltk11; + }; + codeville = builderDefsPackage (selectVersion ../applications/version-management/codeville "0.8.0") { inherit makeWrapper; python = pythonFull;