about summary refs log tree commit diff
path: root/pkgs/misc/ghostscript
diff options
context:
space:
mode:
authorVladimír Čunát <vcunat@gmail.com>2013-05-09 13:58:08 +0200
committerVladimír Čunát <vcunat@gmail.com>2013-05-09 14:03:35 +0200
commitec3965d8d0b5594a9db11e6c9cd1c28d36e91cde (patch)
tree9bb0bc5ac4f3c6aaa170a9df5562f10e30ade47f /pkgs/misc/ghostscript
parent84b0bf63b7f07dc1d9d19458dcbba6d02b4e2811 (diff)
downloadnixlib-ec3965d8d0b5594a9db11e6c9cd1c28d36e91cde.tar
nixlib-ec3965d8d0b5594a9db11e6c9cd1c28d36e91cde.tar.gz
nixlib-ec3965d8d0b5594a9db11e6c9cd1c28d36e91cde.tar.bz2
nixlib-ec3965d8d0b5594a9db11e6c9cd1c28d36e91cde.tar.lz
nixlib-ec3965d8d0b5594a9db11e6c9cd1c28d36e91cde.tar.xz
nixlib-ec3965d8d0b5594a9db11e6c9cd1c28d36e91cde.tar.zst
nixlib-ec3965d8d0b5594a9db11e6c9cd1c28d36e91cde.zip
Revert Merge x-updates into master due to mesa bloat
See #490 discussion.

This reverts commit 1278859d3167b9f84bfab680d9c8c463adf64a60, reversing
changes made to 0c020c98f9d4f49d5c9907db5f4b35aac7df959b.

Conflicts:
	pkgs/desktops/xfce/core/xfce4-session.nix (take master)
	pkgs/lib/misc.nix (auto)
Diffstat (limited to 'pkgs/misc/ghostscript')
-rw-r--r--pkgs/misc/ghostscript/default.nix41
-rw-r--r--pkgs/misc/ghostscript/purity-9.05.patch27
2 files changed, 43 insertions, 25 deletions
diff --git a/pkgs/misc/ghostscript/default.nix b/pkgs/misc/ghostscript/default.nix
index cf2c40f785e0..ac171b2ff814 100644
--- a/pkgs/misc/ghostscript/default.nix
+++ b/pkgs/misc/ghostscript/default.nix
@@ -1,5 +1,4 @@
-{ stdenv, fetchurl, libjpeg, libpng, libtiff, zlib, pkgconfig, fontconfig, openssl
-, lcms2, freetype, libpaper, jbig2dec, expat
+{ stdenv, fetchurl, libjpeg, libpng, libtiff, zlib, pkgconfig, fontconfig, openssl, lcms, freetype
 , x11Support, x11 ? null
 , cupsSupport ? false, cups ? null
 , gnuFork ? true
@@ -9,7 +8,7 @@ assert x11Support -> x11 != null;
 assert cupsSupport -> cups != null;
 
 let
-  meta_common = {
+  meta = {
     homepage = "http://www.gnu.org/software/ghostscript/";
     description = "GNU Ghostscript, a PostScript interpreter";
 
@@ -35,28 +34,25 @@ let
       sha256 = "0zqa6ggbkdqiszsywgrra4ij0sddlmrfa50bx2mh568qid4ga0a2";
     };
 
-    meta = meta_common;
+    inherit meta;
     patches = [ ./purity.patch ];
   };
 
-  mainlineSrc = rec {
-    name = "ghostscript-9.06";
+  mainlineSrc = {
+    name = "ghostscript-9.05";
     src = fetchurl {
-      url = "http://downloads.ghostscript.com/public/${name}.tar.bz2";
-      sha256 = "014f10rxn4ihvcr1frby4szd1jvkrwvmdhnbivpp55c9fssx3b05";
+      url = "http://downloads.ghostscript.com/public/ghostscript-9.05.tar.bz2";
+      sha256 = "1b6fi76x6pn9dmr9k9lh8kimn968dmh91k824fmm59d5ycm22h8g";
     };
-    meta = meta_common // {
+    meta = meta // {
       homepage = "http://www.ghostscript.com/";
       description = "GPL Ghostscript, a PostScript interpreter";
     };
 
     preConfigure = ''
-      rm -R libpng jpeg lcms{,2} tiff freetype jbig2dec expat jasper openjpeg
-
-      substituteInPlace base/unix-aux.mak --replace "INCLUDE=/usr/include" "INCLUDE=/no-such-path"
-      sed "s@if ( test -f \$(INCLUDE)[^ ]* )@if ( true )@" -i base/unix-aux.mak
+      rm -R libpng jpeg lcms tiff freetype
     '';
-    patches = [];
+    patches = [ ./purity-9.05.patch ];
   };
 
   variant = if gnuFork then gnuForkSrc else mainlineSrc;
@@ -68,8 +64,8 @@ stdenv.mkDerivation rec {
 
   fonts = [
     (fetchurl {
-      url = "mirror://sourceforge/gs-fonts/ghostscript-fonts-std-8.11.tar.gz";
-      sha256 = "00f4l10xd826kak51wsmaz69szzm2wp8a41jasr4jblz25bg7dhf";
+      url = "mirror://gnu/ghostscript/gnu-gs-fonts-std-6.0.tar.gz";
+      sha256 = "1lxr1y52r26qjif8kdqkfhsb5llakdcx3f5b9ppdyn59bb83ivsc";
     })
     (fetchurl {
       url = "mirror://gnu/ghostscript/gnu-gs-fonts-other-6.0.tar.gz";
@@ -78,13 +74,9 @@ stdenv.mkDerivation rec {
     # ... add other fonts here
   ];
 
-  buildInputs = [
-    libjpeg libpng libtiff zlib pkgconfig fontconfig openssl lcms2
-    libpaper jbig2dec expat
-  ] ++ stdenv.lib.optionals x11Support [x11 freetype]
-    ++ stdenv.lib.optional cupsSupport cups
-    # [] # maybe sometimes jpeg2000 support
-    ;
+  buildInputs = [libjpeg libpng libtiff zlib pkgconfig fontconfig openssl lcms]
+    ++ stdenv.lib.optionals x11Support [x11 freetype]
+    ++ stdenv.lib.optional cupsSupport cups;
 
   CFLAGS = "-fPIC";
   NIX_LDFLAGS =
@@ -100,7 +92,7 @@ stdenv.mkDerivation rec {
     makeFlagsArray=(CUPSSERVERBIN=$out/lib/cups CUPSSERVERROOT=$out/etc/cups CUPSDATA=$out/share/cups)
   '' + stdenv.lib.optionalString (variant ? preConfigure) variant.preConfigure;
 
-  configureFlags = [ "--with-system-libtiff" ] ++
+  configureFlags =
     (if x11Support then [ "--with-x" ] else [ "--without-x" ]) ++
     (if cupsSupport then [ "--enable-cups" "--with-install-cups" ] else [ "--disable-cups" ]);
 
@@ -108,7 +100,6 @@ stdenv.mkDerivation rec {
 
   installTargets="install soinstall";
 
-  # ToDo: web says the fonts should be already included
   postInstall = ''
     for i in $fonts; do
       (cd $out/share/ghostscript && tar xvfz $i)
diff --git a/pkgs/misc/ghostscript/purity-9.05.patch b/pkgs/misc/ghostscript/purity-9.05.patch
new file mode 100644
index 000000000000..cae9df7110ba
--- /dev/null
+++ b/pkgs/misc/ghostscript/purity-9.05.patch
@@ -0,0 +1,27 @@
+diff --git a/base/unix-aux.mak b/base/unix-aux.mak
+index 18745bc..0a67942 100644
+--- a/base/unix-aux.mak
++++ b/base/unix-aux.mak
+@@ -111,15 +111,15 @@ $(MKROMFS_XE): $(MKROMFS_XE)_$(SHARE_ZLIB) $(MAKEDIRS)
+ # The "else true;" is required because Ultrix's implementation of sh -e
+ # terminates execution of a command if any error occurs, even if the command
+ # traps the error with ||.
+-INCLUDE=/usr/include
++INCLUDE=/no-such-path
+ $(gconfig__h): $(UNIX_AUX_MAK) $(ECHOGS_XE)
+ 	$(ECHOGS_XE) -w $(gconfig__h) -x 2f2a -s This file was generated automatically by unix-aux.mak. -s -x 2a2f
+-	if ( test -f $(INCLUDE)/dirent.h ); then $(ECHOGS_XE) -a $(gconfig__h) -x 23 define HAVE_DIRENT_H; else true; fi
+-	if ( test -f $(INCLUDE)/ndir.h ); then $(ECHOGS_XE) -a $(gconfig__h) -x 23 define HAVE_NDIR_H; else true; fi
+-	if ( test -f $(INCLUDE)/sys/dir.h ); then $(ECHOGS_XE) -a $(gconfig__h) -x 23 define HAVE_SYS_DIR_H; else true; fi
+-	if ( test -f $(INCLUDE)/sys/ndir.h ); then $(ECHOGS_XE) -a $(gconfig__h) -x 23 define HAVE_SYS_NDIR_H; else true; fi
+-	if ( test -f $(INCLUDE)/sys/time.h ); then $(ECHOGS_XE) -a $(gconfig__h) -x 23 ifndef HAVE_SYS_TIME_H ; \
++	if ( true ); then $(ECHOGS_XE) -a $(gconfig__h) -x 23 define HAVE_DIRENT_H; else true; fi
++	if ( true ); then $(ECHOGS_XE) -a $(gconfig__h) -x 23 define HAVE_NDIR_H; else true; fi
++	if ( true ); then $(ECHOGS_XE) -a $(gconfig__h) -x 23 define HAVE_SYS_DIR_H; else true; fi
++	if ( true ); then $(ECHOGS_XE) -a $(gconfig__h) -x 23 define HAVE_SYS_NDIR_H; else true; fi
++	if ( true ); then $(ECHOGS_XE) -a $(gconfig__h) -x 23 ifndef HAVE_SYS_TIME_H ; \
+              $(ECHOGS_XE) -a $(gconfig__h) -x 23 define HAVE_SYS_TIME_H ; \
+              $(ECHOGS_XE) -a $(gconfig__h) -x 23 endif; else true; fi
+-	if ( test -f $(INCLUDE)/sys/times.h ); then $(ECHOGS_XE) -a $(gconfig__h) -x 23 define HAVE_SYS_TIMES_H; else true; fi
++	if ( true ); then $(ECHOGS_XE) -a $(gconfig__h) -x 23 define HAVE_SYS_TIMES_H; else true; fi
+ 	if ( test -f $(JSRCDIR)/jmemsys.h); then true; else $(ECHOGS_XE) -a $(gconfig__h) -x 23 define DONT_HAVE_JMEMSYS_H; fi