diff --git a/pkgs/misc/ghostscript/default.nix b/pkgs/misc/ghostscript/default.nix index 0e2f22b9a295..c0d489d31f5d 100644 --- a/pkgs/misc/ghostscript/default.nix +++ b/pkgs/misc/ghostscript/default.nix @@ -7,15 +7,13 @@ assert x11Support -> x11 != null; assert cupsSupport -> cups != null; stdenv.mkDerivation rec { - name = "ghostscript-8.62.0"; + name = "ghostscript-8.64.0"; builder = ./builder.sh; - x = true; - src = fetchurl { url = "mirror://gnu/ghostscript/gnu-${name}.tar.bz2"; - sha256 = "0zgvmhrxzdxc3lp7im7qcdmv0jlmbnp1fk0zs0hr3fqa943ywyg2"; + sha256 = "0b94vlf03saa8vm9drz1kishh527g0brw2cg3jcy9mgpp764x2v1"; }; fonts = [ @@ -40,16 +38,7 @@ stdenv.mkDerivation rec { NIX_CFLAGS_COMPILE = "-fpic"; - patches = [ - - # This patch is required to make Ghostscript at least build in a - # pure environment (like NixOS). Ghostscript's build process - # performs various tests for the existence of files in - # /usr/include. - ./purity.patch - - ./mkromfs-zlib.patch - ]; + patches = [ ./purity.patch ./mkromfs-zlib.patch ]; doCheck = true; diff --git a/pkgs/misc/ghostscript/mkromfs-zlib.patch b/pkgs/misc/ghostscript/mkromfs-zlib.patch index 8614652b575c..7583113a9bc0 100644 --- a/pkgs/misc/ghostscript/mkromfs-zlib.patch +++ b/pkgs/misc/ghostscript/mkromfs-zlib.patch @@ -1,7 +1,7 @@ Current makefiles stupidly omit `-lz' when building `mkromfs'. ---- gnu-ghostscript-8.62.0/src/unix-aux.mak 2008-05-04 16:34:47.000000000 +0200 -+++ gnu-ghostscript-8.62.0/src/unix-aux.mak 2008-07-17 17:58:20.000000000 +0200 +--- gnu-ghostscript-8.64.0/base/unix-aux.mak 2008-05-04 16:34:47.000000000 +0200 ++++ gnu-ghostscript-8.64.0/base/unix-aux.mak 2008-07-17 17:58:20.000000000 +0200 @@ -97,7 +97,7 @@ MKROMFS_OBJS= $(MKROMFS_ZLIB_OBJS) $(GLO endif diff --git a/pkgs/misc/ghostscript/purity.patch b/pkgs/misc/ghostscript/purity.patch index bc41867dc3f6..1c92ecf593a7 100644 --- a/pkgs/misc/ghostscript/purity.patch +++ b/pkgs/misc/ghostscript/purity.patch @@ -1,32 +1,26 @@ -diff -rc ghostscript-8.54-gpl-orig/src/unix-aux.mak ghostscript-8.54-gpl/src/unix-aux.mak -*** ghostscript-8.54-gpl-orig/src/unix-aux.mak Tue Apr 18 17:32:25 2006 ---- ghostscript-8.54-gpl/src/unix-aux.mak Mon Sep 4 12:46:11 2006 -*************** -*** 88,100 **** - # 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 - $(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 define HAVE_SYS_TIME_H; 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 ( test -f $(JSRCDIR)/jmemsys.h); then true; else $(ECHOGS_XE) -a $(gconfig__h) -x 23 define DONT_HAVE_JMEMSYS_H; fi ---- 88,100 ---- - # 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=/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 ( true ); 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 ( true ); 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 ( true ); then $(ECHOGS_XE) -a $(gconfig__h) -x 23 define HAVE_SYS_TIME_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 +Don't look for files under `/usr/include' since we don't have that directory +under NixOS. + +--- gnu-ghostscript-8.64.0/base/unix-aux.mak 2009-04-19 19:00:20.000000000 +0200 ++++ gnu-ghostscript-8.64.0/base/unix-aux.mak 2009-04-27 11:58:31.000000000 +0200 +@@ -103,13 +103,13 @@ $(MKROMFS_XE): $(GLSRC)mkromfs.c $(MKROM + # 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 define HAVE_SYS_TIME_H; 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_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 define HAVE_SYS_TIME_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