ghostscript: minor update, replace more internal libraries by nix ones

This commit is contained in:
Vladimír Čunát 2013-01-29 16:40:26 +01:00
parent a4709b8cd6
commit a95c85fe94
2 changed files with 21 additions and 39 deletions

View file

@ -1,4 +1,5 @@
{ stdenv, fetchurl, libjpeg, libpng, libtiff, zlib, pkgconfig, fontconfig, openssl, lcms, freetype
{ stdenv, fetchurl, libjpeg, libpng, libtiff, zlib, pkgconfig, fontconfig, openssl
, lcms2, freetype, libpaper, jbig2dec, expat
, x11Support, x11 ? null
, cupsSupport ? false, cups ? null
, gnuFork ? true
@ -38,11 +39,11 @@ let
patches = [ ./purity.patch ];
};
mainlineSrc = {
name = "ghostscript-9.05";
mainlineSrc = rec {
name = "ghostscript-9.06";
src = fetchurl {
url = "http://downloads.ghostscript.com/public/ghostscript-9.05.tar.bz2";
sha256 = "1b6fi76x6pn9dmr9k9lh8kimn968dmh91k824fmm59d5ycm22h8g";
url = "http://downloads.ghostscript.com/public/${name}.tar.bz2";
sha256 = "014f10rxn4ihvcr1frby4szd1jvkrwvmdhnbivpp55c9fssx3b05";
};
meta = meta // {
homepage = "http://www.ghostscript.com/";
@ -50,9 +51,12 @@ let
};
preConfigure = ''
rm -R libpng jpeg lcms tiff freetype
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
'';
patches = [ ./purity-9.05.patch ];
patches = [];
};
variant = if gnuFork then gnuForkSrc else mainlineSrc;
@ -64,8 +68,8 @@ stdenv.mkDerivation rec {
fonts = [
(fetchurl {
url = "mirror://gnu/ghostscript/gnu-gs-fonts-std-6.0.tar.gz";
sha256 = "1lxr1y52r26qjif8kdqkfhsb5llakdcx3f5b9ppdyn59bb83ivsc";
url = "mirror://sourceforge/gs-fonts/ghostscript-fonts-std-8.11.tar.gz";
sha256 = "00f4l10xd826kak51wsmaz69szzm2wp8a41jasr4jblz25bg7dhf";
})
(fetchurl {
url = "mirror://gnu/ghostscript/gnu-gs-fonts-other-6.0.tar.gz";
@ -74,9 +78,13 @@ stdenv.mkDerivation rec {
# ... add other fonts here
];
buildInputs = [libjpeg libpng libtiff zlib pkgconfig fontconfig openssl lcms]
++ stdenv.lib.optionals x11Support [x11 freetype]
++ stdenv.lib.optional cupsSupport cups;
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
;
CFLAGS = "-fPIC";
NIX_LDFLAGS =
@ -100,6 +108,7 @@ 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)

View file

@ -1,27 +0,0 @@
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