Compare commits
33 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
0f8fea5165 | ||
|
a1357dbea1 | ||
|
e9c2f323c5 | ||
|
3e19af8221 | ||
|
27a6cd7f77 | ||
|
eb8cd4fd96 | ||
|
5b7c3e807d | ||
|
5a3b65b7ce | ||
|
551fd47f5a | ||
|
1b61e46e1a | ||
|
d20342f07d | ||
|
a78a0dff91 | ||
|
4485e761b1 | ||
|
ad6353f0ab | ||
|
6dc993bd2d | ||
|
537084bff8 | ||
|
f523a62b90 | ||
|
b657ff1b2d | ||
|
3a80a4894f | ||
|
64b6a3ff42 | ||
|
a47484a798 | ||
|
22b66c488c | ||
|
3326187922 | ||
|
683d357c21 | ||
|
08e3dbac4e | ||
|
453f820275 | ||
|
0005e93449 | ||
|
0e58e522dd | ||
|
ef59efa1b1 | ||
|
6eb2029509 | ||
|
152f2d635f | ||
|
41719abc8f | ||
|
57ea47741b |
3
.cvsignore → .gitignore
vendored
3
.cvsignore → .gitignore
vendored
@ -23,3 +23,6 @@ ghostscript-8.60.tar.bz2
|
||||
ghostscript-8.61.tar.bz2
|
||||
ghostscript-8.62.tar.bz2
|
||||
ghostscript-8.63.tar.bz2
|
||||
ghostscript-8.64.tar.bz2
|
||||
ghostscript-8.70.tar.xz
|
||||
ghostscript-8.71.tar.xz
|
21
Makefile
21
Makefile
@ -1,21 +0,0 @@
|
||||
# Makefile for source rpm: ghostscript
|
||||
# $Id: Makefile,v 1.1 2004/09/09 05:07:56 cvsdist Exp $
|
||||
NAME := ghostscript
|
||||
SPECFILE = $(firstword $(wildcard *.spec))
|
||||
|
||||
define find-makefile-common
|
||||
for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done
|
||||
endef
|
||||
|
||||
MAKEFILE_COMMON := $(shell $(find-makefile-common))
|
||||
|
||||
ifeq ($(MAKEFILE_COMMON),)
|
||||
# attempt a checkout
|
||||
define checkout-makefile-common
|
||||
test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2
|
||||
endef
|
||||
|
||||
MAKEFILE_COMMON := $(shell $(checkout-makefile-common))
|
||||
endif
|
||||
|
||||
include $(MAKEFILE_COMMON)
|
17
ghostscript-CVE-2009-4270.patch
Normal file
17
ghostscript-CVE-2009-4270.patch
Normal file
@ -0,0 +1,17 @@
|
||||
diff -up ghostscript-8.70/cups/gdevcups.c.gdevcups-debug ghostscript-8.70/cups/gdevcups.c
|
||||
--- ghostscript-8.70/cups/gdevcups.c.gdevcups-debug 2009-05-20 23:30:48.000000000 +0100
|
||||
+++ ghostscript-8.70/cups/gdevcups.c 2009-11-24 17:16:11.929250977 +0000
|
||||
@@ -2816,11 +2816,11 @@ cups_put_params(gx_device *pdev, /*
|
||||
} \
|
||||
else if (code == 0) \
|
||||
{ \
|
||||
- dprintf2("DEBUG: Setting %s to \"%s\"...\n", sname, \
|
||||
- (char *)stringval.data); \
|
||||
strncpy(cups->header.name, (const char *)stringval.data, \
|
||||
stringval.size); \
|
||||
cups->header.name[stringval.size] = '\0'; \
|
||||
+ dprintf2("DEBUG: Setting %s to \"%s\"...\n", sname, \
|
||||
+ cups->header.name); \
|
||||
}
|
||||
|
||||
#define intoption(name, sname, type) \
|
78
ghostscript-cups-realloc-color-depth.patch
Normal file
78
ghostscript-cups-realloc-color-depth.patch
Normal file
@ -0,0 +1,78 @@
|
||||
diff -up ghostscript-8.71/cups/gdevcups.c.cups-realloc-color-depth ghostscript-8.71/cups/gdevcups.c
|
||||
--- ghostscript-8.71/cups/gdevcups.c.cups-realloc-color-depth 2010-03-15 14:38:08.155372454 +0000
|
||||
+++ ghostscript-8.71/cups/gdevcups.c 2010-03-15 14:38:12.208372310 +0000
|
||||
@@ -975,7 +975,8 @@ cups_map_cmyk(gx_device *pdev, /* I - D
|
||||
frac k, /* I - Black value */
|
||||
frac *out) /* O - Device colors */
|
||||
{
|
||||
- int c0, c1, c2, c3; /* Temporary color values */
|
||||
+ int c0 = 0, c1 = 0,
|
||||
+ c2 = 0, c3 = 0; /* Temporary color values */
|
||||
float rr, rg, rb, /* Real RGB colors */
|
||||
ciex, ciey, ciez, /* CIE XYZ colors */
|
||||
ciey_yn, /* Normalized luminance */
|
||||
@@ -2703,9 +2704,13 @@ cups_put_params(gx_device *pdev, /*
|
||||
int color_set; /* Were the color attrs set? */
|
||||
gdev_prn_space_params sp; /* Space parameter data */
|
||||
int width, /* New width of page */
|
||||
- height; /* New height of page */
|
||||
+ height, /* New height of page */
|
||||
+ colorspace, /* New color space */
|
||||
+ bitspercolor; /* New bits per color */
|
||||
static int width_old = 0, /* Previous width */
|
||||
- height_old = 0; /* Previous height */
|
||||
+ height_old = 0, /* Previous height */
|
||||
+ colorspace_old = 0,/* Previous color space */
|
||||
+ bitspercolor_old = 0;/* Previous bits per color */
|
||||
ppd_attr_t *backside = NULL,
|
||||
*backsiderequiresflippedmargins = NULL;
|
||||
float swap;
|
||||
@@ -2800,9 +2805,10 @@ cups_put_params(gx_device *pdev, /*
|
||||
else if (code == 0) \
|
||||
{ \
|
||||
dprintf1("DEBUG: Setting %s to", sname); \
|
||||
- for (i = 0; i < count; i ++) \
|
||||
- dprintf1(" %d", (unsigned)(arrayval.data[i])); \
|
||||
- cups->header.name[i] = (unsigned)arrayval.data[i]; \
|
||||
+ for (i = 0; i < count; i ++) { \
|
||||
+ dprintf1(" %d", (unsigned)(arrayval.data[i])); \
|
||||
+ cups->header.name[i] = (unsigned)(arrayval.data[i]); \
|
||||
+ } \
|
||||
dprintf("...\n"); \
|
||||
}
|
||||
|
||||
@@ -3243,23 +3249,31 @@ cups_put_params(gx_device *pdev, /*
|
||||
}
|
||||
#endif /* CUPS_RASTER_SYNCv1 */
|
||||
|
||||
+ colorspace = cups->header.cupsColorSpace;
|
||||
+ bitspercolor = cups->header.cupsBitsPerColor;
|
||||
+
|
||||
/*
|
||||
* Don't reallocate memory unless the device has been opened...
|
||||
* Also reallocate only if the size has actually changed...
|
||||
*/
|
||||
|
||||
- if (pdev->is_open && (width != width_old || height != height_old))
|
||||
+ if (pdev->is_open &&
|
||||
+ (width != width_old || height != height_old ||
|
||||
+ colorspace != colorspace_old || bitspercolor != bitspercolor_old))
|
||||
{
|
||||
|
||||
width_old = width;
|
||||
height_old = height;
|
||||
+ colorspace_old = colorspace;
|
||||
+ bitspercolor_old = bitspercolor;
|
||||
|
||||
/*
|
||||
* Device is open and size has changed, so reallocate...
|
||||
*/
|
||||
|
||||
- dprintf4("DEBUG2: Reallocating memory, [%.0f %.0f] = %dx%d pixels...\n",
|
||||
- pdev->MediaSize[0], pdev->MediaSize[1], width, height);
|
||||
+ dprintf6("DEBUG2: Reallocating memory, [%.0f %.0f] = %dx%d pixels, color space: %d, bits per color: %d...\n",
|
||||
+ pdev->MediaSize[0], pdev->MediaSize[1], width, height,
|
||||
+ colorspace, bitspercolor);
|
||||
|
||||
sp = ((gx_device_printer *)pdev)->space_params;
|
||||
|
@ -1,26 +1,7 @@
|
||||
--- ghostscript-8.60-r8112/src/lib.mak.fPIC 2007-07-10 17:03:11.000000000 +0100
|
||||
+++ ghostscript-8.60-r8112/src/lib.mak 2007-07-10 17:05:56.000000000 +0100
|
||||
@@ -874,7 +874,7 @@
|
||||
$(GLOBJ)gsparamx.$(OBJ) : $(GLSRC)gsparamx.c $(string__h)\
|
||||
$(gserror_h) $(gserrors_h) $(gsmemory_h) $(gsparam_h) $(gsparamx_h)\
|
||||
$(gstypes_h)
|
||||
- $(GLCC) $(GLO_)gsparamx.$(OBJ) $(C_) $(GLSRC)gsparamx.c
|
||||
+ $(GLCCSHARED) $(GLO_)gsparamx.$(OBJ) $(C_) $(GLSRC)gsparamx.c
|
||||
|
||||
# Future replacement for gsparams.c
|
||||
$(GLOBJ)gsparam2.$(OBJ) : $(GLSRC)gsparam2.c $(GXERR) $(memory__h)\
|
||||
@@ -1077,7 +1077,7 @@
|
||||
|
||||
# Provide a mapping between StandardEncoding and ISOLatin1Encoding.
|
||||
$(GLOBJ)gdevemap.$(OBJ) : $(GLSRC)gdevemap.c $(AK) $(std_h)
|
||||
- $(GLCC) $(GLO_)gdevemap.$(OBJ) $(C_) $(GLSRC)gdevemap.c
|
||||
+ $(GLCCSHARED) $(GLO_)gdevemap.$(OBJ) $(C_) $(GLSRC)gdevemap.c
|
||||
|
||||
###### Create a pseudo-"feature" for the entire graphics library.
|
||||
|
||||
--- ghostscript-8.60-r8112/src/devs.mak.fPIC 2007-07-10 17:05:00.000000000 +0100
|
||||
+++ ghostscript-8.60-r8112/src/devs.mak 2007-07-10 17:05:07.000000000 +0100
|
||||
@@ -464,7 +464,7 @@
|
||||
diff -up ghostscript-8.64/base/devs.mak.fPIC ghostscript-8.64/base/devs.mak
|
||||
--- ghostscript-8.64/base/devs.mak.fPIC 2008-11-07 18:49:34.000000000 +0000
|
||||
+++ ghostscript-8.64/base/devs.mak 2009-02-04 11:34:21.000000000 +0000
|
||||
@@ -456,7 +456,7 @@ $(GLOBJ)gdevx.$(OBJ) : $(GLSRC)gdevx.c $
|
||||
$(GLCCSHARED) $(XINCLUDE) $(GLO_)gdevx.$(OBJ) $(C_) $(GLSRC)gdevx.c
|
||||
|
||||
$(GLOBJ)gdevxcmp.$(OBJ) : $(GLSRC)gdevxcmp.c $(GDEVX) $(math__h)
|
||||
@ -29,3 +10,24 @@
|
||||
|
||||
$(GLOBJ)gdevxini.$(OBJ) : $(GLSRC)gdevxini.c $(GDEVX) $(memory__h)\
|
||||
$(gserrors_h) $(gsparamx_h) $(gxdevmem_h) $(gdevbbox_h)
|
||||
diff -up ghostscript-8.64/base/lib.mak.fPIC ghostscript-8.64/base/lib.mak
|
||||
--- ghostscript-8.64/base/lib.mak.fPIC 2009-01-08 09:17:18.000000000 +0000
|
||||
+++ ghostscript-8.64/base/lib.mak 2009-02-04 11:34:21.000000000 +0000
|
||||
@@ -894,7 +894,7 @@ $(GLOBJ)gsparam.$(OBJ) : $(GLSRC)gsparam
|
||||
$(GLOBJ)gsparamx.$(OBJ) : $(GLSRC)gsparamx.c $(string__h)\
|
||||
$(gserror_h) $(gserrors_h) $(gsmemory_h) $(gsparam_h) $(gsparamx_h)\
|
||||
$(gstypes_h)
|
||||
- $(GLCC) $(GLO_)gsparamx.$(OBJ) $(C_) $(GLSRC)gsparamx.c
|
||||
+ $(GLCCSHARED) $(GLO_)gsparamx.$(OBJ) $(C_) $(GLSRC)gsparamx.c
|
||||
|
||||
# Future replacement for gsparams.c
|
||||
$(GLOBJ)gsparam2.$(OBJ) : $(GLSRC)gsparam2.c $(GXERR) $(memory__h)\
|
||||
@@ -1085,7 +1085,7 @@ $(GLOBJ)gdevnfwd.$(OBJ) : $(GLSRC)gdevnf
|
||||
|
||||
# Provide a mapping between StandardEncoding and ISOLatin1Encoding.
|
||||
$(GLOBJ)gdevemap.$(OBJ) : $(GLSRC)gdevemap.c $(AK) $(std_h)
|
||||
- $(GLCC) $(GLO_)gdevemap.$(OBJ) $(C_) $(GLSRC)gdevemap.c
|
||||
+ $(GLCCSHARED) $(GLO_)gdevemap.$(OBJ) $(C_) $(GLSRC)gdevemap.c
|
||||
|
||||
###### Create a pseudo-"feature" for the entire graphics library.
|
||||
|
||||
|
361
ghostscript-gs-executable.patch
Normal file
361
ghostscript-gs-executable.patch
Normal file
@ -0,0 +1,361 @@
|
||||
diff -up ghostscript-8.70/lib/bdftops.gs-executable ghostscript-8.70/lib/bdftops
|
||||
--- ghostscript-8.70/lib/bdftops.gs-executable 2007-07-05 20:04:29.000000000 +0100
|
||||
+++ ghostscript-8.70/lib/bdftops 2009-08-03 17:53:20.569875831 +0100
|
||||
@@ -6,8 +6,7 @@
|
||||
GS_EXECUTABLE=gs
|
||||
gs="`dirname $0`/$GS_EXECUTABLE"
|
||||
if test ! -x "$gs"; then
|
||||
- gs="$GS_EXECUTABLE"
|
||||
+ gs="$gs"
|
||||
fi
|
||||
-GS_EXECUTABLE="$gs"
|
||||
|
||||
-exec "$GS_EXECUTABLE" -q -dBATCH -dNODISPLAY -- bdftops.ps "$@"
|
||||
+exec "$gs" -q -dBATCH -dNODISPLAY -- bdftops.ps "$@"
|
||||
diff -up ghostscript-8.70/lib/dumphint.gs-executable ghostscript-8.70/lib/dumphint
|
||||
--- ghostscript-8.70/lib/dumphint.gs-executable 2009-01-04 20:11:57.000000000 +0000
|
||||
+++ ghostscript-8.70/lib/dumphint 2009-08-03 17:53:20.570875283 +0100
|
||||
@@ -7,9 +7,8 @@
|
||||
GS_EXECUTABLE=gs
|
||||
gs="`dirname $0`/$GS_EXECUTABLE"
|
||||
if test ! -x "$gs"; then
|
||||
- gs="$GS_EXECUTABLE"
|
||||
+ gs="$gs"
|
||||
fi
|
||||
-GS_EXECUTABLE="$gs"
|
||||
|
||||
|
||||
OPTIONS="-dSAFER -dDELAYSAFER"
|
||||
@@ -27,4 +26,4 @@ if [ $# -ne 1 ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
-exec "$GS_EXECUTABLE" -q -dNODISPLAY $OPTIONS -- "`dirname $0`/dumphint.ps" "$1"
|
||||
+exec "$gs" -q -dNODISPLAY $OPTIONS -- "`dirname $0`/dumphint.ps" "$1"
|
||||
diff -up ghostscript-8.70/lib/eps2eps.gs-executable ghostscript-8.70/lib/eps2eps
|
||||
--- ghostscript-8.70/lib/eps2eps.gs-executable 2009-01-10 22:11:18.000000000 +0000
|
||||
+++ ghostscript-8.70/lib/eps2eps 2009-08-03 17:53:20.573877995 +0100
|
||||
@@ -7,9 +7,8 @@
|
||||
GS_EXECUTABLE=gs
|
||||
gs="`dirname $0`/$GS_EXECUTABLE"
|
||||
if test ! -x "$gs"; then
|
||||
- gs="$GS_EXECUTABLE"
|
||||
+ gs="$gs"
|
||||
fi
|
||||
-GS_EXECUTABLE="$gs"
|
||||
|
||||
OPTIONS="-dDEVICEWIDTH=250000 -dDEVICEHEIGHT=250000"
|
||||
while true
|
||||
@@ -26,4 +25,4 @@ if [ $# -ne 2 ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
-exec "$GS_EXECUTABLE" -q -sDEVICE=epswrite -sstdout=%stderr "-sOutputFile=$2" -dNOPAUSE -dBATCH -dSAFER $OPTIONS "$1"
|
||||
+exec "$gs" -q -sDEVICE=epswrite -sstdout=%stderr "-sOutputFile=$2" -dNOPAUSE -dBATCH -dSAFER $OPTIONS "$1"
|
||||
diff -up ghostscript-8.70/lib/font2c.gs-executable ghostscript-8.70/lib/font2c
|
||||
--- ghostscript-8.70/lib/font2c.gs-executable 2007-07-05 20:04:29.000000000 +0100
|
||||
+++ ghostscript-8.70/lib/font2c 2009-08-03 17:53:20.576874823 +0100
|
||||
@@ -6,8 +6,7 @@
|
||||
GS_EXECUTABLE=gs
|
||||
gs="`dirname $0`/$GS_EXECUTABLE"
|
||||
if test ! -x "$gs"; then
|
||||
- gs="$GS_EXECUTABLE"
|
||||
+ gs="$gs"
|
||||
fi
|
||||
-GS_EXECUTABLE="$gs"
|
||||
|
||||
-exec "$GS_EXECUTABLE" -q -dNODISPLAY -dWRITESYSTEMDICT -- font2c.ps "$@"
|
||||
+exec "$gs" -q -dNODISPLAY -dWRITESYSTEMDICT -- font2c.ps "$@"
|
||||
diff -up ghostscript-8.70/lib/gsbj.gs-executable ghostscript-8.70/lib/gsbj
|
||||
--- ghostscript-8.70/lib/gsbj.gs-executable 2007-07-05 20:04:29.000000000 +0100
|
||||
+++ ghostscript-8.70/lib/gsbj 2009-08-03 17:53:20.579874829 +0100
|
||||
@@ -6,8 +6,7 @@
|
||||
GS_EXECUTABLE=gs
|
||||
gs="`dirname $0`/$GS_EXECUTABLE"
|
||||
if test ! -x "$gs"; then
|
||||
- gs="$GS_EXECUTABLE"
|
||||
+ gs="$gs"
|
||||
fi
|
||||
-GS_EXECUTABLE="$gs"
|
||||
|
||||
-exec "$GS_EXECUTABLE" -q -sDEVICE=bj10e -r180 -dNOPAUSE -sPROGNAME=$0 -- gslp.ps --heading-center "`date`" "$@"
|
||||
+exec "$gs" -q -sDEVICE=bj10e -r180 -dNOPAUSE -sPROGNAME=$0 -- gslp.ps --heading-center "`date`" "$@"
|
||||
diff -up ghostscript-8.70/lib/gsdj500.gs-executable ghostscript-8.70/lib/gsdj500
|
||||
--- ghostscript-8.70/lib/gsdj500.gs-executable 2007-07-05 20:04:29.000000000 +0100
|
||||
+++ ghostscript-8.70/lib/gsdj500 2009-08-03 17:53:20.582874574 +0100
|
||||
@@ -6,8 +6,7 @@
|
||||
GS_EXECUTABLE=gs
|
||||
gs="`dirname $0`/$GS_EXECUTABLE"
|
||||
if test ! -x "$gs"; then
|
||||
- gs="$GS_EXECUTABLE"
|
||||
+ gs="$gs"
|
||||
fi
|
||||
-GS_EXECUTABLE="$gs"
|
||||
|
||||
-exec "$GS_EXECUTABLE" -q -sDEVICE=djet500 -r300 -dNOPAUSE -sPROGNAME=$0 -- gslp.ps --heading-center "`date`" "$@"
|
||||
+exec "$gs" -q -sDEVICE=djet500 -r300 -dNOPAUSE -sPROGNAME=$0 -- gslp.ps --heading-center "`date`" "$@"
|
||||
diff -up ghostscript-8.70/lib/gsdj.gs-executable ghostscript-8.70/lib/gsdj
|
||||
--- ghostscript-8.70/lib/gsdj.gs-executable 2007-07-05 20:04:29.000000000 +0100
|
||||
+++ ghostscript-8.70/lib/gsdj 2009-08-03 17:53:20.585875161 +0100
|
||||
@@ -6,8 +6,7 @@
|
||||
GS_EXECUTABLE=gs
|
||||
gs="`dirname $0`/$GS_EXECUTABLE"
|
||||
if test ! -x "$gs"; then
|
||||
- gs="$GS_EXECUTABLE"
|
||||
+ gs="$gs"
|
||||
fi
|
||||
-GS_EXECUTABLE="$gs"
|
||||
|
||||
-exec "$GS_EXECUTABLE" -q -sDEVICE=deskjet -r300 -dNOPAUSE -sPROGNAME=$0 -- gslp.ps --heading-center "`date`" "$@"
|
||||
+exec "$gs" -q -sDEVICE=deskjet -r300 -dNOPAUSE -sPROGNAME=$0 -- gslp.ps --heading-center "`date`" "$@"
|
||||
diff -up ghostscript-8.70/lib/gslj.gs-executable ghostscript-8.70/lib/gslj
|
||||
--- ghostscript-8.70/lib/gslj.gs-executable 2007-07-05 20:04:29.000000000 +0100
|
||||
+++ ghostscript-8.70/lib/gslj 2009-08-03 17:53:20.588874966 +0100
|
||||
@@ -6,8 +6,7 @@
|
||||
GS_EXECUTABLE=gs
|
||||
gs="`dirname $0`/$GS_EXECUTABLE"
|
||||
if test ! -x "$gs"; then
|
||||
- gs="$GS_EXECUTABLE"
|
||||
+ gs="$gs"
|
||||
fi
|
||||
-GS_EXECUTABLE="$gs"
|
||||
|
||||
-exec "$GS_EXECUTABLE" -q -sDEVICE=laserjet -r300 -dNOPAUSE -sPROGNAME=$0 -- gslp.ps --heading-center "`date`" "$@"
|
||||
+exec "$gs" -q -sDEVICE=laserjet -r300 -dNOPAUSE -sPROGNAME=$0 -- gslp.ps --heading-center "`date`" "$@"
|
||||
diff -up ghostscript-8.70/lib/gslp.gs-executable ghostscript-8.70/lib/gslp
|
||||
--- ghostscript-8.70/lib/gslp.gs-executable 2007-07-05 20:04:29.000000000 +0100
|
||||
+++ ghostscript-8.70/lib/gslp 2009-08-03 17:53:20.591874666 +0100
|
||||
@@ -6,8 +6,7 @@
|
||||
GS_EXECUTABLE=gs
|
||||
gs="`dirname $0`/$GS_EXECUTABLE"
|
||||
if test ! -x "$gs"; then
|
||||
- gs="$GS_EXECUTABLE"
|
||||
+ gs="$gs"
|
||||
fi
|
||||
-GS_EXECUTABLE="$gs"
|
||||
|
||||
-exec "$GS_EXECUTABLE" -q -sDEVICE=epson -r180 -dNOPAUSE -sPROGNAME=$0 -- gslp.ps --heading-center "`date`" "$@"
|
||||
+exec "$gs" -q -sDEVICE=epson -r180 -dNOPAUSE -sPROGNAME=$0 -- gslp.ps --heading-center "`date`" "$@"
|
||||
diff -up ghostscript-8.70/lib/gsnd.gs-executable ghostscript-8.70/lib/gsnd
|
||||
--- ghostscript-8.70/lib/gsnd.gs-executable 2007-07-05 20:04:29.000000000 +0100
|
||||
+++ ghostscript-8.70/lib/gsnd 2009-08-03 17:53:20.594874682 +0100
|
||||
@@ -6,8 +6,7 @@
|
||||
GS_EXECUTABLE=gs
|
||||
gs="`dirname $0`/$GS_EXECUTABLE"
|
||||
if test ! -x "$gs"; then
|
||||
- gs="$GS_EXECUTABLE"
|
||||
+ gs="$gs"
|
||||
fi
|
||||
-GS_EXECUTABLE="$gs"
|
||||
|
||||
-exec "$GS_EXECUTABLE" -dNODISPLAY "$@"
|
||||
+exec "$gs" -dNODISPLAY "$@"
|
||||
diff -up ghostscript-8.70/lib/pdf2dsc.gs-executable ghostscript-8.70/lib/pdf2dsc
|
||||
--- ghostscript-8.70/lib/pdf2dsc.gs-executable 2007-07-05 20:04:29.000000000 +0100
|
||||
+++ ghostscript-8.70/lib/pdf2dsc 2009-08-03 17:53:20.597874954 +0100
|
||||
@@ -11,9 +11,8 @@
|
||||
GS_EXECUTABLE=gs
|
||||
gs="`dirname $0`/$GS_EXECUTABLE"
|
||||
if test ! -x "$gs"; then
|
||||
- gs="$GS_EXECUTABLE"
|
||||
+ gs="$gs"
|
||||
fi
|
||||
-GS_EXECUTABLE="$gs"
|
||||
|
||||
me=`basename $0`
|
||||
|
||||
@@ -31,5 +30,5 @@ pdffile=$1
|
||||
dscfile=$2
|
||||
: ${dscfile:=`echo $pdffile | sed 's,\.[^/.]*,,'`.dsc}
|
||||
|
||||
-exec "$GS_EXECUTABLE" -q -dNODISPLAY -dSAFER -dDELAYSAFER\
|
||||
+exec "$gs" -q -dNODISPLAY -dSAFER -dDELAYSAFER\
|
||||
-sPDFname="$pdffile" -sDSCname="$dscfile" pdf2dsc.ps -c quit
|
||||
diff -up ghostscript-8.70/lib/pdf2ps.gs-executable ghostscript-8.70/lib/pdf2ps
|
||||
--- ghostscript-8.70/lib/pdf2ps.gs-executable 2007-07-05 20:04:29.000000000 +0100
|
||||
+++ ghostscript-8.70/lib/pdf2ps 2009-08-03 17:53:20.601874677 +0100
|
||||
@@ -7,9 +7,8 @@
|
||||
GS_EXECUTABLE=gs
|
||||
gs="`dirname $0`/$GS_EXECUTABLE"
|
||||
if test ! -x "$gs"; then
|
||||
- gs="$GS_EXECUTABLE"
|
||||
+ gs="$gs"
|
||||
fi
|
||||
-GS_EXECUTABLE="$gs"
|
||||
|
||||
OPTIONS=""
|
||||
while true
|
||||
@@ -35,4 +34,4 @@ fi
|
||||
# Doing an initial 'save' helps keep fonts from being flushed between pages.
|
||||
# We have to include the options twice because -I only takes effect if it
|
||||
# appears before other options.
|
||||
-exec "$GS_EXECUTABLE" $OPTIONS -q -dNOPAUSE -dBATCH -dSAFER -sDEVICE=pswrite "-sOutputFile=$outfile" $OPTIONS -c save pop -f "$1"
|
||||
+exec "$gs" $OPTIONS -q -dNOPAUSE -dBATCH -dSAFER -sDEVICE=pswrite "-sOutputFile=$outfile" $OPTIONS -c save pop -f "$1"
|
||||
diff -up ghostscript-8.70/lib/pdfopt.gs-executable ghostscript-8.70/lib/pdfopt
|
||||
--- ghostscript-8.70/lib/pdfopt.gs-executable 2008-05-25 03:17:14.000000000 +0100
|
||||
+++ ghostscript-8.70/lib/pdfopt 2009-08-03 17:53:20.604874898 +0100
|
||||
@@ -7,9 +7,8 @@
|
||||
GS_EXECUTABLE=gs
|
||||
gs="`dirname $0`/$GS_EXECUTABLE"
|
||||
if test ! -x "$gs"; then
|
||||
- gs="$GS_EXECUTABLE"
|
||||
+ gs="$gs"
|
||||
fi
|
||||
-GS_EXECUTABLE="$gs"
|
||||
|
||||
OPTIONS="-dSAFER -dDELAYSAFER"
|
||||
while true
|
||||
@@ -26,4 +25,4 @@ if [ $# -ne 2 ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
-exec "$GS_EXECUTABLE" -q -dNODISPLAY $OPTIONS -- pdfopt.ps "$1" "$2"
|
||||
+exec "$gs" -q -dNODISPLAY $OPTIONS -- pdfopt.ps "$1" "$2"
|
||||
diff -up ghostscript-8.70/lib/pf2afm.gs-executable ghostscript-8.70/lib/pf2afm
|
||||
--- ghostscript-8.70/lib/pf2afm.gs-executable 2007-07-05 20:04:29.000000000 +0100
|
||||
+++ ghostscript-8.70/lib/pf2afm 2009-08-03 17:53:20.608874740 +0100
|
||||
@@ -10,8 +10,7 @@
|
||||
GS_EXECUTABLE=gs
|
||||
gs="`dirname $0`/$GS_EXECUTABLE"
|
||||
if test ! -x "$gs"; then
|
||||
- gs="$GS_EXECUTABLE"
|
||||
+ gs="$gs"
|
||||
fi
|
||||
-GS_EXECUTABLE="$gs"
|
||||
|
||||
-exec "$GS_EXECUTABLE" -q -dNODISPLAY -dSAFER -dDELAYSAFER -- pf2afm.ps "$@"
|
||||
+exec "$gs" -q -dNODISPLAY -dSAFER -dDELAYSAFER -- pf2afm.ps "$@"
|
||||
diff -up ghostscript-8.70/lib/pfbtopfa.gs-executable ghostscript-8.70/lib/pfbtopfa
|
||||
--- ghostscript-8.70/lib/pfbtopfa.gs-executable 2007-07-05 20:04:29.000000000 +0100
|
||||
+++ ghostscript-8.70/lib/pfbtopfa 2009-08-03 17:53:20.612874691 +0100
|
||||
@@ -7,9 +7,8 @@
|
||||
GS_EXECUTABLE=gs
|
||||
gs="`dirname $0`/$GS_EXECUTABLE"
|
||||
if test ! -x "$gs"; then
|
||||
- gs="$GS_EXECUTABLE"
|
||||
+ gs="$gs"
|
||||
fi
|
||||
-GS_EXECUTABLE="$gs"
|
||||
|
||||
if [ $# -eq 2 ]
|
||||
then
|
||||
@@ -22,4 +21,4 @@ else
|
||||
exit 1
|
||||
fi
|
||||
|
||||
-exec "$GS_EXECUTABLE" -q -dNODISPLAY -- pfbtopfa.ps "$1" "$outfile"
|
||||
+exec "$gs" -q -dNODISPLAY -- pfbtopfa.ps "$1" "$outfile"
|
||||
diff -up ghostscript-8.70/lib/pphs.gs-executable ghostscript-8.70/lib/pphs
|
||||
--- ghostscript-8.70/lib/pphs.gs-executable 2007-07-05 20:04:29.000000000 +0100
|
||||
+++ ghostscript-8.70/lib/pphs 2009-08-03 17:53:20.616874647 +0100
|
||||
@@ -9,8 +9,7 @@
|
||||
GS_EXECUTABLE=gs
|
||||
gs="`dirname $0`/$GS_EXECUTABLE"
|
||||
if test ! -x "$gs"; then
|
||||
- gs="$GS_EXECUTABLE"
|
||||
+ gs="$gs"
|
||||
fi
|
||||
-GS_EXECUTABLE="$gs"
|
||||
|
||||
-exec "$GS_EXECUTABLE" -q -dNODISPLAY -- pphs.ps "$@"
|
||||
+exec "$gs" -q -dNODISPLAY -- pphs.ps "$@"
|
||||
diff -up ghostscript-8.70/lib/printafm.gs-executable ghostscript-8.70/lib/printafm
|
||||
--- ghostscript-8.70/lib/printafm.gs-executable 2007-07-05 20:04:29.000000000 +0100
|
||||
+++ ghostscript-8.70/lib/printafm 2009-08-03 17:53:20.619874766 +0100
|
||||
@@ -9,8 +9,7 @@
|
||||
GS_EXECUTABLE=gs
|
||||
gs="`dirname $0`/$GS_EXECUTABLE"
|
||||
if test ! -x "$gs"; then
|
||||
- gs="$GS_EXECUTABLE"
|
||||
+ gs="$gs"
|
||||
fi
|
||||
-GS_EXECUTABLE="$gs"
|
||||
|
||||
-exec "$GS_EXECUTABLE" -q -dNODISPLAY -- printafm.ps "$@"
|
||||
+exec "$gs" -q -dNODISPLAY -- printafm.ps "$@"
|
||||
diff -up ghostscript-8.70/lib/ps2epsi.gs-executable ghostscript-8.70/lib/ps2epsi
|
||||
--- ghostscript-8.70/lib/ps2epsi.gs-executable 2009-04-07 11:20:02.000000000 +0100
|
||||
+++ ghostscript-8.70/lib/ps2epsi 2009-08-03 17:54:48.355750266 +0100
|
||||
@@ -6,9 +6,8 @@
|
||||
GS_EXECUTABLE=gs
|
||||
gs="`dirname $0`/$GS_EXECUTABLE"
|
||||
if test ! -x "$gs"; then
|
||||
- gs="$GS_EXECUTABLE"
|
||||
+ gs="$gs"
|
||||
fi
|
||||
-GS_EXECUTABLE="$gs"
|
||||
|
||||
# try to create a temporary file securely
|
||||
if test -z "$TMPDIR"; then
|
||||
@@ -50,7 +49,7 @@ else
|
||||
outfile=$2
|
||||
fi
|
||||
|
||||
-"$GS_EXECUTABLE" -q -dBATCH -dNOPAUSE -dSAFER -dDELAYSAFER -sDEVICE=bbox -sOutputFile=/dev/null "${infile}" 2>${outfile}
|
||||
+"$gs" -q -dBATCH -dNOPAUSE -dSAFER -dDELAYSAFER -sDEVICE=bbox -sOutputFile=/dev/null "${infile}" 2>${outfile}
|
||||
|
||||
ls -l "${infile}" |
|
||||
awk 'F==1 {
|
||||
@@ -92,7 +91,7 @@ awk 'F==1 {
|
||||
}
|
||||
' F=1 - F=2 "${outfile}" >>"$tmpfile"
|
||||
|
||||
-"$GS_EXECUTABLE" -q -dNOPAUSE -dSAFER -dDELAYSAFER -r72 -sDEVICE=bit -sOutputFile=/dev/null "$tmpfile" ps2epsi.ps "$tmpfile" <"${infile}" 1>&2
|
||||
+"$gs" -q -dNOPAUSE -dSAFER -dDELAYSAFER -r72 -sDEVICE=bit -sOutputFile=/dev/null "$tmpfile" ps2epsi.ps "$tmpfile" <"${infile}" 1>&2
|
||||
rm -f "$tmpfile"
|
||||
rm -rf "$tmpdir"
|
||||
|
||||
diff -up ghostscript-8.70/lib/ps2pdfwr.gs-executable ghostscript-8.70/lib/ps2pdfwr
|
||||
--- ghostscript-8.70/lib/ps2pdfwr.gs-executable 2009-01-10 22:11:18.000000000 +0000
|
||||
+++ ghostscript-8.70/lib/ps2pdfwr 2009-08-03 17:53:20.626874926 +0100
|
||||
@@ -7,9 +7,8 @@
|
||||
GS_EXECUTABLE=gs
|
||||
gs="`dirname $0`/$GS_EXECUTABLE"
|
||||
if test ! -x "$gs"; then
|
||||
- gs="$GS_EXECUTABLE"
|
||||
+ gs="$gs"
|
||||
fi
|
||||
-GS_EXECUTABLE="$gs"
|
||||
|
||||
OPTIONS="-dSAFER"
|
||||
while true
|
||||
@@ -42,4 +41,4 @@ fi
|
||||
|
||||
# We have to include the options twice because -I only takes effect if it
|
||||
# appears before other options.
|
||||
-exec "$GS_EXECUTABLE" $OPTIONS -q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sstdout=%stderr "-sOutputFile=$outfile" $OPTIONS -c .setpdfwrite -f "$infile"
|
||||
+exec "$gs" $OPTIONS -q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sstdout=%stderr "-sOutputFile=$outfile" $OPTIONS -c .setpdfwrite -f "$infile"
|
||||
diff -up ghostscript-8.70/lib/ps2ps.gs-executable ghostscript-8.70/lib/ps2ps
|
||||
--- ghostscript-8.70/lib/ps2ps.gs-executable 2009-01-10 22:11:18.000000000 +0000
|
||||
+++ ghostscript-8.70/lib/ps2ps 2009-08-03 17:53:20.630875037 +0100
|
||||
@@ -7,9 +7,8 @@
|
||||
GS_EXECUTABLE=gs
|
||||
gs="`dirname $0`/$GS_EXECUTABLE"
|
||||
if test ! -x "$gs"; then
|
||||
- gs="$GS_EXECUTABLE"
|
||||
+ gs="$gs"
|
||||
fi
|
||||
-GS_EXECUTABLE="$gs"
|
||||
|
||||
OPTIONS="-dSAFER"
|
||||
while true
|
||||
@@ -27,4 +26,4 @@ if [ $# -ne 2 ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
-exec "$GS_EXECUTABLE" -q -sDEVICE=pswrite -sstdout=%stderr "-sOutputFile=$2" -dNOPAUSE -dBATCH $OPTIONS "$1"
|
||||
+exec "$gs" -q -sDEVICE=pswrite -sstdout=%stderr "-sOutputFile=$2" -dNOPAUSE -dBATCH $OPTIONS "$1"
|
||||
diff -up ghostscript-8.70/lib/wftopfa.gs-executable ghostscript-8.70/lib/wftopfa
|
||||
--- ghostscript-8.70/lib/wftopfa.gs-executable 2007-07-05 20:04:29.000000000 +0100
|
||||
+++ ghostscript-8.70/lib/wftopfa 2009-08-03 17:53:20.633874780 +0100
|
||||
@@ -6,8 +6,7 @@
|
||||
GS_EXECUTABLE=gs
|
||||
gs="`dirname $0`/$GS_EXECUTABLE"
|
||||
if test ! -x "$gs"; then
|
||||
- gs="$GS_EXECUTABLE"
|
||||
+ gs="$gs"
|
||||
fi
|
||||
-GS_EXECUTABLE="$gs"
|
||||
|
||||
-exec "$GS_EXECUTABLE" -q -dNODISPLAY -- wftopfa.ps "$@"
|
||||
+exec "$gs" -q -dNODISPLAY -- wftopfa.ps "$@"
|
44
ghostscript-jbig2dec-nullderef.patch
Normal file
44
ghostscript-jbig2dec-nullderef.patch
Normal file
@ -0,0 +1,44 @@
|
||||
diff -up ghostscript-8.71/jbig2dec/jbig2_symbol_dict.c.jbig2dec-nullderef ghostscript-8.71/jbig2dec/jbig2_symbol_dict.c
|
||||
--- ghostscript-8.71/jbig2dec/jbig2_symbol_dict.c.jbig2dec-nullderef 2009-05-29 07:48:44.000000000 +0100
|
||||
+++ ghostscript-8.71/jbig2dec/jbig2_symbol_dict.c 2010-02-17 12:06:42.040614797 +0000
|
||||
@@ -367,6 +367,11 @@ jbig2_decode_symbol_dict(Jbig2Ctx *ctx,
|
||||
memcpy(region_params.gbat, params->sdat, sdat_bytes);
|
||||
|
||||
image = jbig2_image_new(ctx, SYMWIDTH, HCHEIGHT);
|
||||
+ if (image == NULL) {
|
||||
+ jbig2_error(ctx, JBIG2_SEVERITY_FATAL, segment->number,
|
||||
+ "failed to allocate image storage");
|
||||
+ return NULL;
|
||||
+ }
|
||||
|
||||
code = jbig2_decode_generic_region(ctx, segment, ®ion_params,
|
||||
as, image, GB_stats);
|
||||
@@ -517,6 +522,11 @@ jbig2_decode_symbol_dict(Jbig2Ctx *ctx,
|
||||
ID, RDX, RDY);
|
||||
|
||||
image = jbig2_image_new(ctx, SYMWIDTH, HCHEIGHT);
|
||||
+ if (image == NULL) {
|
||||
+ jbig2_error(ctx, JBIG2_SEVERITY_FATAL, segment->number,
|
||||
+ "failed to allocate image storage");
|
||||
+ return NULL;
|
||||
+ }
|
||||
|
||||
/* Table 18 */
|
||||
rparams.GRTEMPLATE = params->SDRTEMPLATE;
|
||||
@@ -635,6 +645,16 @@ jbig2_decode_symbol_dict(Jbig2Ctx *ctx,
|
||||
for (j = HCFIRSTSYM; j < NSYMSDECODED; j++) {
|
||||
Jbig2Image *glyph;
|
||||
glyph = jbig2_image_new(ctx, SDNEWSYMWIDTHS[j], HCHEIGHT);
|
||||
+ if (glyph == NULL) {
|
||||
+ jbig2_error(ctx, JBIG2_SEVERITY_FATAL, segment->number,
|
||||
+ "error allocating image storage for glyph");
|
||||
+ while (--j >= HCFIRSTSYM) {
|
||||
+ jbig2_image_release(ctx, SDNEWSYMS->glyphs[j]);
|
||||
+ SDNEWSYMS->glyphs[j] = NULL;
|
||||
+ }
|
||||
+ jbig2_image_release(ctx, image);
|
||||
+ return NULL;
|
||||
+ }
|
||||
jbig2_image_compose(ctx, glyph, image,
|
||||
-x, 0, JBIG2_COMPOSE_REPLACE);
|
||||
x += SDNEWSYMWIDTHS[j];
|
24
ghostscript-ldflags.patch
Normal file
24
ghostscript-ldflags.patch
Normal file
@ -0,0 +1,24 @@
|
||||
--- ghostscript-8.71/base/unix-dll.mak 2009-10-19 21:24:53.000000000 +0100
|
||||
+++ ghostscript-8.71/base/unix-dll.mak.ldflags 2010-02-19 10:07:06.645044318 +0000
|
||||
@@ -88,8 +88,9 @@ $(GSSOX_XE): $(GS_SO) $(PSSRC)$(SOC_LOAD
|
||||
|
||||
# ------------------------- Recursive make targets ------------------------- #
|
||||
|
||||
-SODEFS=LDFLAGS='$(LDFLAGS) $(LDFLAGS_SO)'\
|
||||
+SODEFS=\
|
||||
GS_XE=$(BINDIR)/$(SOBINRELDIR)/$(GS_SONAME_MAJOR_MINOR)\
|
||||
+ GS_XE_LDFLAGS='$(LDFLAGS_SO)'\
|
||||
STDIO_IMPLEMENTATION=c\
|
||||
DISPLAY_DEV=$(DD)$(SOOBJRELDIR)/display.dev\
|
||||
BINDIR=$(BINDIR)/$(SOBINRELDIR)\
|
||||
--- ghostscript-8.71/base/unixlink.mak 2008-02-29 08:13:08.000000000 +0000
|
||||
+++ ghostscript-8.71/base/unixlink.mak.ldflags 2010-02-19 10:07:06.646044276 +0000
|
||||
@@ -50,7 +50,7 @@ $(GS_A): $(obj_tr) $(ECHOGS_XE) $(INT_AR
|
||||
# which has limited environment space.
|
||||
ldt_tr=$(PSOBJ)ldt.tr
|
||||
$(GS_XE): $(ld_tr) $(ECHOGS_XE) $(XE_ALL) $(PSOBJ)gsromfs$(COMPILE_INITS).$(OBJ)
|
||||
- $(ECHOGS_XE) -w $(ldt_tr) -n - $(CCLD) $(LDFLAGS) -o $(GS_XE)
|
||||
+ $(ECHOGS_XE) -w $(ldt_tr) -n - $(CCLD) $(GS_XE_LDFLAGS) $(LDFLAGS) -o $(GS_XE)
|
||||
$(ECHOGS_XE) -a $(ldt_tr) -n -s $(PSOBJ)gsromfs$(COMPILE_INITS).$(OBJ) $(PSOBJ)gs.$(OBJ) -s
|
||||
cat $(ld_tr) >>$(ldt_tr)
|
||||
$(ECHOGS_XE) -a $(ldt_tr) -s - $(EXTRALIBS) $(STDLIBS)
|
@ -1,6 +1,7 @@
|
||||
--- ghostscript-7.07/src/int.mak.noopt 2005-03-10 17:22:53.000000000 +0000
|
||||
+++ ghostscript-7.07/src/int.mak 2005-03-10 17:24:10.000000000 +0000
|
||||
@@ -105,7 +105,7 @@
|
||||
diff -up ghostscript-8.64/psi/int.mak.noopt ghostscript-8.64/psi/int.mak
|
||||
--- ghostscript-8.64/psi/int.mak.noopt 2008-12-26 07:25:31.000000000 +0000
|
||||
+++ ghostscript-8.64/psi/int.mak 2009-02-04 11:33:48.000000000 +0000
|
||||
@@ -111,7 +111,7 @@ $(PSOBJ)igc.$(OBJ) : $(PSSRC)igc.c $(GH)
|
||||
$(PSOBJ)igcref.$(OBJ) : $(PSSRC)igcref.c $(GH) $(memory__h)\
|
||||
$(gsexit_h) $(gsstruct_h)\
|
||||
$(iastate_h) $(idebug_h) $(igc_h) $(iname_h) $(ipacked_h) $(store_h)
|
||||
|
12
ghostscript-pdf2dsc.patch
Normal file
12
ghostscript-pdf2dsc.patch
Normal file
@ -0,0 +1,12 @@
|
||||
diff -up ghostscript-8.71/lib/pdf2dsc.ps.pdf2dsc ghostscript-8.71/lib/pdf2dsc.ps
|
||||
--- ghostscript-8.71/lib/pdf2dsc.ps.pdf2dsc 2010-02-20 15:50:51.287734970 +0000
|
||||
+++ ghostscript-8.71/lib/pdf2dsc.ps 2010-02-20 15:51:02.902609964 +0000
|
||||
@@ -116,7 +116,7 @@ systemdict /.setsafe known { .setsafe }
|
||||
DSCfile PDFname write==only
|
||||
( \(r\) file { DELAYSAFER { .setsafe } if } stopped pop\n) puts
|
||||
( pdfopen begin\n) puts
|
||||
- ( copy_trailer_attrs\n) puts
|
||||
+ ( process_trailer_attrs\n) puts
|
||||
(%%EndSetup\n) puts
|
||||
|
||||
/.hasPageLabels false def % see "Page Labels" in the PDF Reference
|
39
ghostscript-pdftoraster-exit.patch
Normal file
39
ghostscript-pdftoraster-exit.patch
Normal file
@ -0,0 +1,39 @@
|
||||
diff -up ghostscript-8.70/cups/pdftoraster.c.pdftoraster-exit ghostscript-8.70/cups/pdftoraster.c
|
||||
--- ghostscript-8.70/cups/pdftoraster.c.pdftoraster-exit 2008-10-17 23:58:21.000000000 +0100
|
||||
+++ ghostscript-8.70/cups/pdftoraster.c 2010-01-25 10:15:42.269209639 +0000
|
||||
@@ -35,6 +35,8 @@ MIT Open Source License - http://www.o
|
||||
#include <stdarg.h>
|
||||
#include <fcntl.h>
|
||||
#include <cups/raster.h>
|
||||
+#include <sys/types.h>
|
||||
+#include <sys/wait.h>
|
||||
|
||||
#define MAX_CHECK_COMMENT_LINES 20
|
||||
#ifndef GS
|
||||
@@ -123,6 +125,7 @@ int main(int argc, char *argv[], char *e
|
||||
const char* apos;
|
||||
int fds[2];
|
||||
int pid;
|
||||
+ int status;
|
||||
|
||||
parseOpts(argc, argv);
|
||||
|
||||
@@ -502,8 +505,17 @@ int main(int argc, char *argv[], char *e
|
||||
}
|
||||
}
|
||||
fclose(fp);
|
||||
+ close (fds[1]);
|
||||
}
|
||||
|
||||
- exit(0);
|
||||
+ if (waitpid (pid, &status, 0) == -1) {
|
||||
+ perror (GS);
|
||||
+ exit (1);
|
||||
+ }
|
||||
+
|
||||
+ if (WIFEXITED (status))
|
||||
+ exit(WEXITSTATUS (status));
|
||||
+ else
|
||||
+ exit(1);
|
||||
}
|
||||
|
@ -1,7 +1,7 @@
|
||||
diff -up ghostscript-8.62/src/gxclrast.c.pksmraw ghostscript-8.62/src/gxclrast.c
|
||||
--- ghostscript-8.62/src/gxclrast.c.pksmraw 2008-03-31 17:24:32.000000000 +0100
|
||||
+++ ghostscript-8.62/src/gxclrast.c 2008-03-31 17:25:33.000000000 +0100
|
||||
@@ -2606,8 +2606,6 @@ static int apply_create_compositor(gx_de
|
||||
diff -up ghostscript-8.64/base/gxclrast.c.pksmraw ghostscript-8.64/base/gxclrast.c
|
||||
--- ghostscript-8.64/base/gxclrast.c.pksmraw 2008-12-13 20:05:37.000000000 +0000
|
||||
+++ ghostscript-8.64/base/gxclrast.c 2009-02-04 11:36:25.000000000 +0000
|
||||
@@ -2685,8 +2685,6 @@ static int apply_create_compositor(gx_de
|
||||
rc_increment(tdev);
|
||||
*ptarget = tdev;
|
||||
}
|
||||
|
@ -1,7 +1,7 @@
|
||||
diff -up ghostscript-8.61/lib/gs_init.ps.runlibfileifexists ghostscript-8.61/lib/gs_init.ps
|
||||
--- ghostscript-8.61/lib/gs_init.ps.runlibfileifexists 2007-10-31 17:00:55.000000000 +0000
|
||||
+++ ghostscript-8.61/lib/gs_init.ps 2007-11-30 09:02:19.000000000 +0000
|
||||
@@ -671,6 +671,14 @@ systemdict /internaldict dup .makeintern
|
||||
diff -up ghostscript-8.64/Resource/Init/gs_init.ps.runlibfileifexists ghostscript-8.64/Resource/Init/gs_init.ps
|
||||
--- ghostscript-8.64/Resource/Init/gs_init.ps.runlibfileifexists 2009-01-08 09:17:18.000000000 +0000
|
||||
+++ ghostscript-8.64/Resource/Init/gs_init.ps 2009-02-04 11:35:19.000000000 +0000
|
||||
@@ -672,6 +672,14 @@ systemdict /internaldict dup .makeintern
|
||||
{ /undefinedfilename signalerror }
|
||||
ifelse
|
||||
} bind def
|
||||
@ -16,7 +16,7 @@ diff -up ghostscript-8.61/lib/gs_init.ps.runlibfileifexists ghostscript-8.61/lib
|
||||
/selectdevice
|
||||
{ finddevice setdevice .setdefaultscreen } bind def
|
||||
/signalerror % <object> <errorname> signalerror -
|
||||
@@ -839,6 +847,7 @@ userdict /.currentresourcefile //null pu
|
||||
@@ -840,6 +848,7 @@ userdict /.currentresourcefile //null pu
|
||||
} bind def
|
||||
% Temporarily substitute it for the real runlibfile.
|
||||
/.runlibfile /runlibfile load def
|
||||
|
@ -1,6 +1,16 @@
|
||||
--- ghostscript-8.60-r8112/lib/pv.sh.scripts 2007-07-05 11:41:52.000000000 +0100
|
||||
+++ ghostscript-8.60-r8112/lib/pv.sh 2007-07-10 16:08:47.000000000 +0100
|
||||
@@ -31,7 +31,7 @@
|
||||
diff -up ghostscript-8.64/lib/dvipdf.scripts ghostscript-8.64/lib/dvipdf
|
||||
--- ghostscript-8.64/lib/dvipdf.scripts 2009-01-10 22:11:18.000000000 +0000
|
||||
+++ ghostscript-8.64/lib/dvipdf 2009-02-04 11:32:31.000000000 +0000
|
||||
@@ -44,4 +44,4 @@ fi
|
||||
|
||||
# We have to include the options twice because -I only takes effect if it
|
||||
# appears before other options.
|
||||
-exec dvips -Ppdf $DVIPSOPTIONS -q -f "$infile" | $GS_EXECUTABLE $OPTIONS -q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sstdout=%stderr -sOutputFile="$outfile" $OPTIONS -c .setpdfwrite -
|
||||
+exec dvips -R -Ppdf $DVIPSOPTIONS -q -f "$infile" | $GS_EXECUTABLE $OPTIONS -q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sstdout=%stderr -sOutputFile="$outfile" $OPTIONS -c .setpdfwrite -
|
||||
diff -up ghostscript-8.64/lib/pv.sh.scripts ghostscript-8.64/lib/pv.sh
|
||||
--- ghostscript-8.64/lib/pv.sh.scripts 2007-07-05 11:41:52.000000000 +0100
|
||||
+++ ghostscript-8.64/lib/pv.sh 2009-02-04 11:31:32.000000000 +0000
|
||||
@@ -31,7 +31,7 @@ fi
|
||||
GS_EXECUTABLE=gs
|
||||
|
||||
TEMPDIR=.
|
||||
@ -9,7 +19,7 @@
|
||||
shift
|
||||
FILE="$1"
|
||||
shift
|
||||
@@ -44,7 +44,7 @@
|
||||
@@ -44,7 +44,7 @@ else
|
||||
tmpfile="$TEMPDIR/$FILE.$$.pv"
|
||||
fi
|
||||
trap "rm -rf $tmpfile" 0 1 2 15
|
||||
@ -19,11 +29,3 @@
|
||||
+dvips -R -p $PAGE -n 1 "$FILE" "$@" -o $tmpfile
|
||||
$GS_EXECUTABLE $tmpfile
|
||||
exit 0
|
||||
--- ghostscript-8.60-r8112/lib/dvipdf.scripts 2007-07-10 16:08:57.000000000 +0100
|
||||
+++ ghostscript-8.60-r8112/lib/dvipdf 2007-07-10 16:09:17.000000000 +0100
|
||||
@@ -44,4 +44,4 @@
|
||||
|
||||
# We have to include the options twice because -I only takes effect if it
|
||||
# appears before other options.
|
||||
-exec dvips $DVIPSOPTIONS -q -f "$infile" | $GS_EXECUTABLE $OPTIONS -q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile="$outfile" $OPTIONS -c .setpdfwrite -
|
||||
+exec dvips -R $DVIPSOPTIONS -q -f "$infile" | $GS_EXECUTABLE $OPTIONS -q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile="$outfile" $OPTIONS -c .setpdfwrite -
|
||||
|
@ -1,6 +1,6 @@
|
||||
diff -up ghostscript-8.61/src/sjpx.c.system-jasper ghostscript-8.61/src/sjpx.c
|
||||
--- ghostscript-8.61/src/sjpx.c.system-jasper 2008-02-22 14:10:00.000000000 +0000
|
||||
+++ ghostscript-8.61/src/sjpx.c 2008-02-22 14:10:15.000000000 +0000
|
||||
diff -up ghostscript-8.64/base/sjpx.c.system-jasper ghostscript-8.64/base/sjpx.c
|
||||
--- ghostscript-8.64/base/sjpx.c.system-jasper 2008-08-21 00:22:49.000000000 +0100
|
||||
+++ ghostscript-8.64/base/sjpx.c 2009-02-04 11:35:56.000000000 +0000
|
||||
@@ -34,14 +34,6 @@ static void s_jpxd_set_defaults(stream_s
|
||||
private_st_jpxd_state(); /* creates a gc object for our state,
|
||||
defined in sjpx.h */
|
||||
|
13
ghostscript-tif-fail-close.patch
Normal file
13
ghostscript-tif-fail-close.patch
Normal file
@ -0,0 +1,13 @@
|
||||
diff -up ghostscript-8.71/base/gdevtfax.c.tif-fail-close ghostscript-8.71/base/gdevtfax.c
|
||||
--- ghostscript-8.71/base/gdevtfax.c.tif-fail-close 2010-03-12 10:57:43.514750465 +0000
|
||||
+++ ghostscript-8.71/base/gdevtfax.c 2010-03-12 10:58:38.253627230 +0000
|
||||
@@ -97,7 +97,8 @@ tfax_close(gx_device * pdev)
|
||||
{
|
||||
gx_device_tfax *const tfdev = (gx_device_tfax *)pdev;
|
||||
|
||||
- TIFFCleanup(tfdev->tif);
|
||||
+ if (tfdev->tif)
|
||||
+ TIFFCleanup(tfdev->tif);
|
||||
|
||||
return gdev_prn_close(pdev);
|
||||
}
|
12
ghostscript-tiff-default-strip-size.patch
Normal file
12
ghostscript-tiff-default-strip-size.patch
Normal file
@ -0,0 +1,12 @@
|
||||
diff -up ghostscript-8.71/base/gdevtifs.h.tiff-default-strip-size ghostscript-8.71/base/gdevtifs.h
|
||||
--- ghostscript-8.71/base/gdevtifs.h.tiff-default-strip-size 2010-02-04 17:47:57.000000000 +0000
|
||||
+++ ghostscript-8.71/base/gdevtifs.h 2010-03-16 09:58:29.269600052 +0000
|
||||
@@ -50,7 +50,7 @@ int tiff_print_page(gx_device_printer *d
|
||||
* Sets the compression tag for TIFF and updates the rows_per_strip tag to
|
||||
* reflect max_strip_size under the new compression scheme.
|
||||
*/
|
||||
-#define TIFF_DEFAULT_STRIP_SIZE 8192
|
||||
+#define TIFF_DEFAULT_STRIP_SIZE 1048576
|
||||
|
||||
int tiff_set_compression(gx_device_printer *pdev,
|
||||
TIFF *tif,
|
59
ghostscript-tiff-fixes.patch
Normal file
59
ghostscript-tiff-fixes.patch
Normal file
@ -0,0 +1,59 @@
|
||||
diff -up ghostscript-8.71/base/gdevtfnx.c.tiff-fixes ghostscript-8.71/base/gdevtfnx.c
|
||||
--- ghostscript-8.71/base/gdevtfnx.c.tiff-fixes 2010-02-04 17:47:57.000000000 +0000
|
||||
+++ ghostscript-8.71/base/gdevtfnx.c 2010-03-16 10:04:00.686600827 +0000
|
||||
@@ -105,6 +105,8 @@ tiff12_print_page(gx_device_printer * pd
|
||||
TIFFSetField(tfdev->tif, TIFFTAG_BITSPERSAMPLE, 4);
|
||||
tiff_set_rgb_fields(tfdev);
|
||||
|
||||
+ TIFFCheckpointDirectory(tfdev->tif);
|
||||
+
|
||||
/* Write the page data. */
|
||||
{
|
||||
int y;
|
||||
diff -up ghostscript-8.71/base/gdevtifs.c.tiff-fixes ghostscript-8.71/base/gdevtifs.c
|
||||
--- ghostscript-8.71/base/gdevtifs.c.tiff-fixes 2010-02-04 17:47:57.000000000 +0000
|
||||
+++ ghostscript-8.71/base/gdevtifs.c 2010-03-16 10:04:00.689600292 +0000
|
||||
@@ -243,8 +243,8 @@ int tiff_set_fields_for_printer(gx_devic
|
||||
TIFFSetField(tif, TIFFTAG_PLANARCONFIG, PLANARCONFIG_CONTIG);
|
||||
|
||||
TIFFSetField(tif, TIFFTAG_RESOLUTIONUNIT, RESUNIT_INCH);
|
||||
- TIFFSetField(tif, TIFFTAG_XRESOLUTION, pdev->x_pixels_per_inch);
|
||||
- TIFFSetField(tif, TIFFTAG_YRESOLUTION, pdev->y_pixels_per_inch);
|
||||
+ TIFFSetField(tif, TIFFTAG_XRESOLUTION, (float)pdev->x_pixels_per_inch);
|
||||
+ TIFFSetField(tif, TIFFTAG_YRESOLUTION, (float)pdev->y_pixels_per_inch);
|
||||
|
||||
{
|
||||
char revs[10];
|
||||
@@ -293,6 +293,8 @@ tiff_print_page(gx_device_printer *dev,
|
||||
if (data == NULL)
|
||||
return_error(gs_error_VMerror);
|
||||
|
||||
+ TIFFCheckpointDirectory(tif);
|
||||
+
|
||||
memset(data, 0, max_size);
|
||||
for (row = 0; row < dev->height; row++) {
|
||||
code = gdev_prn_copy_scan_lines(dev, row, data, size);
|
||||
diff -up ghostscript-8.71/base/gdevtsep.c.tiff-fixes ghostscript-8.71/base/gdevtsep.c
|
||||
--- ghostscript-8.71/base/gdevtsep.c.tiff-fixes 2010-02-04 17:47:57.000000000 +0000
|
||||
+++ ghostscript-8.71/base/gdevtsep.c 2010-03-16 10:04:00.700601143 +0000
|
||||
@@ -1438,6 +1438,10 @@ tiffsep_print_page(gx_device_printer * p
|
||||
return_error(gs_error_VMerror);
|
||||
}
|
||||
|
||||
+ for (comp_num = 0; comp_num < num_comp; comp_num++ )
|
||||
+ TIFFCheckpointDirectory(tfdev->tiff[comp_num]);
|
||||
+ TIFFCheckpointDirectory(tfdev->tiff_comp);
|
||||
+
|
||||
/* Write the page data. */
|
||||
for (y = 0; y < pdev->height; ++y) {
|
||||
code = gdev_prn_get_bits(pdev, y, line, &row);
|
||||
@@ -1603,6 +1607,9 @@ tiffsep1_print_page(gx_device_printer *
|
||||
if (line == NULL || unpacked == NULL || dithered_line == NULL)
|
||||
return_error(gs_error_VMerror);
|
||||
|
||||
+ for (comp_num = 0; comp_num < num_comp; comp_num++ )
|
||||
+ TIFFCheckpointDirectory(tfdev->tiff[comp_num]);
|
||||
+
|
||||
/* Loop for the lines */
|
||||
for (y = 0; y < pdev->height; ++y) {
|
||||
code = gdev_prn_get_bits(pdev, y, line, &row);
|
36
ghostscript-vsnprintf.patch
Normal file
36
ghostscript-vsnprintf.patch
Normal file
@ -0,0 +1,36 @@
|
||||
diff -up ghostscript-8.71/base/gsmisc.c.vsnprintf ghostscript-8.71/base/gsmisc.c
|
||||
--- ghostscript-8.71/base/gsmisc.c.vsnprintf 2010-01-05 00:52:07.000000000 +0000
|
||||
+++ ghostscript-8.71/base/gsmisc.c 2010-02-17 11:30:13.777615156 +0000
|
||||
@@ -235,7 +235,7 @@ int gs_throw_imp(const char *func, const
|
||||
va_list ap;
|
||||
|
||||
va_start(ap, fmt);
|
||||
- vsprintf(msg, fmt, ap);
|
||||
+ vsnprintf(msg, sizeof (msg), fmt, ap);
|
||||
msg[sizeof(msg) - 1] = 0;
|
||||
va_end(ap);
|
||||
|
||||
diff -up ghostscript-8.71/base/gxttfb.c.vsnprintf ghostscript-8.71/base/gxttfb.c
|
||||
--- ghostscript-8.71/base/gxttfb.c.vsnprintf 2009-12-06 19:12:08.000000000 +0000
|
||||
+++ ghostscript-8.71/base/gxttfb.c 2010-02-17 11:30:13.778616076 +0000
|
||||
@@ -246,7 +246,7 @@ static int DebugPrint(ttfFont *ttf, cons
|
||||
|
||||
if (gs_debug_c('Y')) {
|
||||
va_start(args, fmt);
|
||||
- count = vsprintf(buf, fmt, args);
|
||||
+ count = vsnprintf(buf, sizeof (buf), fmt, args);
|
||||
/* NB: moved debug output from stdout to stderr
|
||||
*/
|
||||
errwrite(buf, count);
|
||||
diff -up ghostscript-8.71/base/rinkj/rinkj-byte-stream.c.vsnprintf ghostscript-8.71/base/rinkj/rinkj-byte-stream.c
|
||||
--- ghostscript-8.71/base/rinkj/rinkj-byte-stream.c.vsnprintf 2008-04-04 02:02:16.000000000 +0100
|
||||
+++ ghostscript-8.71/base/rinkj/rinkj-byte-stream.c 2010-02-17 11:30:13.791615392 +0000
|
||||
@@ -43,7 +43,7 @@ rinkj_byte_stream_printf (RinkjByteStrea
|
||||
va_list ap;
|
||||
|
||||
va_start (ap, fmt);
|
||||
- len = vsprintf (str, fmt, ap);
|
||||
+ len = vsnprintf (str, sizeof (str), fmt, ap);
|
||||
va_end (ap);
|
||||
return rinkj_byte_stream_write (bs, str, len);
|
||||
}
|
190
ghostscript.spec
190
ghostscript.spec
@ -1,16 +1,18 @@
|
||||
%define gs_ver 8.63
|
||||
%define gs_dot_ver 8.63
|
||||
%define gs_ver 8.71
|
||||
%define gs_dot_ver 8.71
|
||||
%{expand: %%define build_with_freetype %{?_with_freetype:1}%{!?_with_freetype:0}}
|
||||
Summary: A PostScript(TM) interpreter and renderer.
|
||||
Summary: A PostScript interpreter and renderer.
|
||||
Name: ghostscript
|
||||
Version: %{gs_ver}
|
||||
|
||||
Release: 4%{?dist}
|
||||
Release: 6%{?dist}
|
||||
|
||||
License: GPLv2
|
||||
# Included CMap data is Redistributable, no modification permitted,
|
||||
# see http://bugzilla.redhat.com/487510
|
||||
License: GPLv3+ and Redistributable, no modification permitted
|
||||
URL: http://www.ghostscript.com/
|
||||
Group: Applications/Publishing
|
||||
Source0: ghostscript-%{gs_ver}.tar.bz2
|
||||
Source0: ghostscript-%{gs_ver}.tar.xz
|
||||
Source2: CIDFnmap
|
||||
Source4: cidfmap
|
||||
|
||||
@ -21,8 +23,20 @@ Patch4: ghostscript-fPIC.patch
|
||||
Patch5: ghostscript-runlibfileifexists.patch
|
||||
Patch6: ghostscript-system-jasper.patch
|
||||
Patch7: ghostscript-pksmraw.patch
|
||||
Patch8: ghostscript-jbig2dec-nullderef.patch
|
||||
Patch9: ghostscript-gs-executable.patch
|
||||
Patch10: ghostscript-CVE-2009-4270.patch
|
||||
Patch11: ghostscript-vsnprintf.patch
|
||||
Patch12: ghostscript-pdftoraster-exit.patch
|
||||
Patch13: ghostscript-ldflags.patch
|
||||
Patch14: ghostscript-pdf2dsc.patch
|
||||
Patch15: ghostscript-cups-realloc-color-depth.patch
|
||||
Patch16: ghostscript-tif-fail-close.patch
|
||||
Patch17: ghostscript-tiff-default-strip-size.patch
|
||||
Patch18: ghostscript-tiff-fixes.patch
|
||||
|
||||
Requires: urw-fonts >= 1.1, ghostscript-fonts
|
||||
BuildRequires: xz
|
||||
BuildRequires: libjpeg-devel, libXt-devel
|
||||
BuildRequires: zlib-devel, libpng-devel, unzip, gtk2-devel
|
||||
BuildRequires: glib2-devel, gnutls-devel
|
||||
@ -42,7 +56,7 @@ Conflicts: ttfonts-zh_CN < 2.12-2
|
||||
Conflicts: ttfonts-zh_TW < 2.11-20
|
||||
|
||||
%description
|
||||
Ghostscript is a set of software that provides a PostScript(TM)
|
||||
Ghostscript is a set of software that provides a PostScript
|
||||
interpreter, a set of C procedures (the Ghostscript library, which
|
||||
implements the graphics capabilities in the PostScript language) and
|
||||
an interpreter for Portable Document Format (PDF) files. Ghostscript
|
||||
@ -73,7 +87,7 @@ Group: Documentation
|
||||
The documentation files that come with ghostscript.
|
||||
|
||||
%package gtk
|
||||
Summary: A GTK-enabled PostScript(TM) interpreter and renderer.
|
||||
Summary: A GTK-enabled PostScript interpreter and renderer.
|
||||
Requires: %{name} = %{version}-%{release}
|
||||
Group: Applications/Publishing
|
||||
|
||||
@ -97,13 +111,46 @@ rm -rf libpng zlib jpeg jasper
|
||||
%patch4 -p1 -b .fPIC
|
||||
|
||||
# Define .runlibfileifexists.
|
||||
%patch5 -p1 -b .runlibfileifexists
|
||||
%patch5 -p1
|
||||
|
||||
%patch6 -p1 -b .system-jasper
|
||||
|
||||
# Fix pksmraw output (bug #308211). Still needed in 8.63.
|
||||
%patch7 -p1 -b .pksmraw
|
||||
|
||||
# Applied patch to fix NULL dereference in JBIG2 decoder (bug #501710).
|
||||
%patch8 -p1 -b .jbig2dec-nullderef
|
||||
|
||||
# Fix scripts so they don't get broken on install (bug #502550).
|
||||
%patch9 -p1 -b .gs-executable
|
||||
|
||||
# Fix debugging output from gdevcups (bug #540760).
|
||||
%patch10 -p1 -b .CVE-2009-4270
|
||||
|
||||
# Harden ghostscript's debugging output functions (bug #540760).
|
||||
%patch11 -p1 -b .vsnprintf
|
||||
|
||||
# Fixed pdftoraster so that it waits for its sub-process to exit.
|
||||
%patch12 -p1 -b .pdftoraster-exit
|
||||
|
||||
# Fixed LDFLAGS when building dynamically linked executables (bug #565935).
|
||||
%patch13 -p1 -b .ldflags
|
||||
|
||||
# Fixed pdf2dsc.ps (bug #565935).
|
||||
%patch14 -p1 -b .pdf2dsc
|
||||
|
||||
# Reallocate memory in gdevcups when color depth changes (bug #563313).
|
||||
%patch15 -p1 -b .cups-realloc-color-depth
|
||||
|
||||
# Don't segfault closing tiffg3 device if opening failed (bug #571520).
|
||||
%patch16 -p1 -b .tif-fail-close
|
||||
|
||||
# Restore the TIFF default strip size of 0 (bug #571520).
|
||||
%patch17 -p1 -b .tiff-default-strip-size
|
||||
|
||||
# Backported some more TIFF fixes (bug #573970).
|
||||
%patch18 -p1 -b .tiff-fixes
|
||||
|
||||
# Convert manual pages to UTF-8
|
||||
from8859_1() {
|
||||
iconv -f iso-8859-1 -t utf-8 < "$1" > "${1}_"
|
||||
@ -137,7 +184,7 @@ do
|
||||
FONTPATH="$FONTPATH${FONTPATH:+:}$path"
|
||||
done
|
||||
%configure --with-ijs --enable-dynamic --with-fontpath="$FONTPATH" \
|
||||
--with-drivers=ALL --disable-compile-inits \
|
||||
--with-drivers=ALL --disable-compile-inits --with-system-libtiff \
|
||||
CFLAGS="$CFLAGS $EXTRACFLAGS"
|
||||
|
||||
# Build IJS
|
||||
@ -157,6 +204,7 @@ make RPM_OPT_FLAGS="$RPM_OPT_FLAGS $EXTRAFLAGS" prefix=%{_prefix} \
|
||||
make so RPM_OPT_FLAGS="$RPM_OPT_FLAGS $EXTRAFLAGS" prefix=%{_prefix}
|
||||
make RPM_OPT_FLAGS="$RPM_OPT_FLAGS $EXTRAFLAGS" prefix=%{_prefix}
|
||||
%endif
|
||||
make cups
|
||||
|
||||
%install
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
@ -169,7 +217,7 @@ make install soinstall \
|
||||
prefix=$RPM_BUILD_ROOT%{_prefix} \
|
||||
mandir=$RPM_BUILD_ROOT%{_mandir} \
|
||||
datadir=$RPM_BUILD_ROOT%{_datadir} \
|
||||
gsincludedir=$RPM_BUILD_ROOT%{_includedir}/ghostscript \
|
||||
gsincludedir=$RPM_BUILD_ROOT%{_includedir}/ghostscript/ \
|
||||
bindir=$RPM_BUILD_ROOT%{_bindir} \
|
||||
libdir=$RPM_BUILD_ROOT%{_libdir} \
|
||||
docdir=$RPM_BUILD_ROOT%{_docdir}/%{name}-%{gs_dot_ver} \
|
||||
@ -190,18 +238,15 @@ echo ".so man1/gs.1" > $RPM_BUILD_ROOT/%{_mandir}/man1/ghostscript.1
|
||||
ln -sf gs $RPM_BUILD_ROOT/usr/bin/ghostscript
|
||||
|
||||
# Rename an original cidfmap to cidfmap.GS
|
||||
mv $RPM_BUILD_ROOT%{_datadir}/%{name}/%{gs_dot_ver}/lib/cidfmap{,.GS}
|
||||
mv $RPM_BUILD_ROOT%{_datadir}/%{name}/%{gs_dot_ver}/Resource/Init/cidfmap{,.GS}
|
||||
# Install our own cidfmap to allow the separated
|
||||
# cidfmap which the font packages own.
|
||||
install -m0644 %{SOURCE2} $RPM_BUILD_ROOT%{_datadir}/%{name}/%{gs_dot_ver}/lib/CIDFnmap
|
||||
install -m0644 %{SOURCE4} $RPM_BUILD_ROOT%{_datadir}/%{name}/%{gs_dot_ver}/lib/cidfmap
|
||||
install -m0644 %{SOURCE2} $RPM_BUILD_ROOT%{_datadir}/%{name}/%{gs_dot_ver}/Resource/Init/CIDFnmap
|
||||
install -m0644 %{SOURCE4} $RPM_BUILD_ROOT%{_datadir}/%{name}/%{gs_dot_ver}/Resource/Init/cidfmap
|
||||
|
||||
# Header files.
|
||||
mkdir -p $RPM_BUILD_ROOT%{_includedir}/ghostscript
|
||||
install -m0644 src/iapi.h $RPM_BUILD_ROOT%{_includedir}/ghostscript
|
||||
install -m0644 src/ierrors.h $RPM_BUILD_ROOT%{_includedir}/ghostscript
|
||||
install -m0644 src/errors.h $RPM_BUILD_ROOT%{_includedir}/ghostscript
|
||||
install -m0644 src/gdevdsp.h $RPM_BUILD_ROOT%{_includedir}/ghostscript
|
||||
install -m0644 base/errors.h $RPM_BUILD_ROOT%{_includedir}/ghostscript
|
||||
|
||||
# Don't ship pkgconfig files.
|
||||
rm -f $RPM_BUILD_ROOT%{_libdir}/pkgconfig/ijs.pc
|
||||
@ -214,9 +259,6 @@ rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/cups
|
||||
rm -f $RPM_BUILD_ROOT%{_libdir}/cups/filter/pstoraster
|
||||
rm -f $RPM_BUILD_ROOT/usr/lib/cups/filter/pstoraster
|
||||
|
||||
# Don't ship two copies of Resource. Just the versioned one will do.
|
||||
rm -rf $RPM_BUILD_ROOT%{_datadir}/ghostscript/Resource
|
||||
|
||||
# Don't ship URW fonts; we already have them.
|
||||
rm -rf $RPM_BUILD_ROOT%{_datadir}/ghostscript/%{gs_dot_ver}/Resource/Font
|
||||
|
||||
@ -233,8 +275,8 @@ find $RPM_BUILD_ROOT%{_mandir}/de/man1 -type l | xargs rm -f
|
||||
rm -f $RPM_BUILD_ROOT%{_bindir}/fixmswrd.pl
|
||||
|
||||
MAIN_PWD=`pwd`
|
||||
(cd $RPM_BUILD_ROOT; find ./usr/share/ghostscript/%{gs_dot_ver}/lib -type f | \
|
||||
sed -e 's/\.//;' | grep -v lib/Fontmap* | grep -v gs_init.ps > $MAIN_PWD/rpm.sharelist
|
||||
(cd $RPM_BUILD_ROOT; find ./usr/share/ghostscript/%{gs_dot_ver}/Resource -type f | \
|
||||
sed -e 's/\.//;' | grep -v Fontmap | grep -v gs_init.ps > $MAIN_PWD/rpm.sharelist
|
||||
find .%{_bindir}/ | sed -e 's/\.//;' | \
|
||||
grep -v '/$\|/hpijs$\|/gsx$\|/ijs-config$' \
|
||||
>> $MAIN_PWD/rpm.sharelist)
|
||||
@ -253,11 +295,11 @@ rm -rf $RPM_BUILD_ROOT
|
||||
%dir %{_datadir}/ghostscript
|
||||
%dir %{_datadir}/ghostscript/conf.d
|
||||
%dir %{_datadir}/ghostscript/%{gs_dot_ver}
|
||||
%dir %{_datadir}/ghostscript/%{gs_dot_ver}/lib
|
||||
%config %{_datadir}/ghostscript/%{gs_dot_ver}/lib/gs_init.ps
|
||||
%config %{_datadir}/ghostscript/%{gs_dot_ver}/lib/Fontmap*
|
||||
%{_datadir}/ghostscript/%{gs_dot_ver}/Resource/
|
||||
%{_datadir}/ghostscript/%{gs_dot_ver}/examples
|
||||
%dir %{_datadir}/ghostscript/%{gs_dot_ver}/Resource
|
||||
%dir %{_datadir}/ghostscript/%{gs_dot_ver}/Resource/Init
|
||||
%config %{_datadir}/ghostscript/%{gs_dot_ver}/Resource/Init/gs_init.ps
|
||||
%config %{_datadir}/ghostscript/%{gs_dot_ver}/Resource/Init/Fontmap*
|
||||
%{_datadir}/ghostscript/%{gs_dot_ver}/lib
|
||||
%{_mandir}/man*/*
|
||||
%lang(de) %{_mandir}/de/man*/*
|
||||
%{_libdir}/libgs.so.*
|
||||
@ -267,9 +309,11 @@ rm -rf $RPM_BUILD_ROOT
|
||||
/usr/lib/cups/filter/pstopxl
|
||||
%{_datadir}/cups/model/pxl*
|
||||
%config(noreplace) /etc/ghostscript/%{gs_dot_ver}/*
|
||||
/usr/lib/cups/filter/pdftoraster
|
||||
|
||||
%files doc
|
||||
%defattr(-,root,root)
|
||||
%doc %{_datadir}/ghostscript/%{gs_dot_ver}/examples
|
||||
%doc %{_docdir}/%{name}-%{gs_dot_ver}
|
||||
|
||||
%files gtk
|
||||
@ -288,6 +332,94 @@ rm -rf $RPM_BUILD_ROOT
|
||||
%{_libdir}/libgs.so
|
||||
|
||||
%changelog
|
||||
* Tue Mar 16 2010 Tim Waugh <twaugh@redhat.com> 8.71-6
|
||||
- Backported some more TIFF fixes (bug #573970).
|
||||
- Use upstream fix for TIFF default strip size (bug #571520).
|
||||
|
||||
* Mon Mar 15 2010 Tim Waugh <twaugh@redhat.com> 8.71-5
|
||||
- Restore the TIFF default strip size of 0 (bug #571520).
|
||||
- Don't segfault closing tiffg3 device if opening failed (bug #571520).
|
||||
- Don't revert gdevcups y-axis change (bug #541604).
|
||||
- Reallocate memory in gdevcups when color depth changes (bug #563313).
|
||||
|
||||
* Sat Feb 20 2010 Tim Waugh <twaugh@redhat.com> 8.71-4
|
||||
- Actually revert the upstream gdevcups changes (bug #563313).
|
||||
- Fixed pdf2dsc.ps (bug #565935).
|
||||
- Use fixed patch for LDFLAGS to make sure libgs.so gets a soname
|
||||
(bug #565935).
|
||||
|
||||
* Fri Feb 19 2010 Tim Waugh <twaugh@redhat.com> 8.71-2
|
||||
- Fixed LDFLAGS when building dynamically linked executables (bug #565935).
|
||||
|
||||
* Wed Feb 17 2010 Tim Waugh <twaugh@redhat.com> 8.71-1
|
||||
- 8.71 (bug #565935).
|
||||
|
||||
* Tue Feb 16 2010 Tim Waugh <twaugh@redhat.com> 8.70-5
|
||||
- Reverted gdevcups duplex changes as they cause a regression
|
||||
(see bug #563313).
|
||||
|
||||
* Mon Jan 25 2010 Tim Waugh <twaugh@redhat.com> 8.70-4
|
||||
- Fixed pdftoraster so that it waits for its sub-process to exit.
|
||||
- Another gdevcups duplex fix from upstream revision 10631
|
||||
(bug #541604).
|
||||
|
||||
* Thu Jan 21 2010 Tim Waugh <twaugh@redhat.com> 8.70-3
|
||||
- Fixed gdevcups duplex output (bug #541604) by backporting upstream
|
||||
revision 10625.
|
||||
|
||||
* Thu Dec 24 2009 Tim Waugh <twaugh@redhat.com> 8.70-2
|
||||
- Fix debugging output from gdevcups (CVE-2009-4270, bug #540760).
|
||||
- Harden ghostscript's debugging output functions (bug #540760).
|
||||
|
||||
* Mon Aug 3 2009 Tim Waugh <twaugh@redhat.com> 8.70-1
|
||||
- 8.70.
|
||||
- License has changed to GPLv3+. Packages containing programs that
|
||||
link to libgs/libijs are:
|
||||
- foomatic (GPLv2+)
|
||||
- libspectre (GPLv2+)
|
||||
- ImageMagick (ImageMagick, listed on Licensing wiki page under
|
||||
"Good Licenses" and marked as GPLv3 compat)
|
||||
- gutenprint (GPLv2+)
|
||||
|
||||
* Mon Aug 3 2009 Tim Waugh <twaugh@redhat.com> 8.64-12
|
||||
- Moved examples to doc subpackage (bug #515167).
|
||||
- Converted spec file to UTF-8.
|
||||
|
||||
* Thu Jul 30 2009 Tim Waugh <twaugh@redhat.com> 8.64-11
|
||||
- Fixed CVE-2009-0583,0584 patch by using 255 as the maximum number of
|
||||
points, not 100, and by not treating a missing black point tag as an
|
||||
error (bug #487744).
|
||||
|
||||
* Thu Jul 30 2009 Rex Dieter <rdieter@fedoraproject.org> - 8.64-10
|
||||
- License: GPLv2 and Redistributable, no modification permitted (bug #487510)
|
||||
|
||||
* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 8.64-9
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
|
||||
|
||||
* Wed Jun 10 2009 Tim Waugh <twaugh@redhat.com> 8.64-8
|
||||
- Fix scripts so they don't get broken on install (bug #502550).
|
||||
|
||||
* Thu Jun 4 2009 Tim Waugh <twaugh@redhat.com> 8.64-7
|
||||
- Applied patch to fix NULL dereference in JBIG2 decoder (bug #503995).
|
||||
|
||||
* Wed Apr 15 2009 Tim Waugh <twaugh@redhat.com> 8.64-6
|
||||
- Applied patch to fix CVE-2009-0792 (bug #491853).
|
||||
- Applied patch to fix CVE-2009-0196 (bug #493379).
|
||||
|
||||
* Fri Mar 20 2009 Tim Waugh <twaugh@redhat.com> 8.64-5
|
||||
- Applied patch to fix CVE-2009-0583 (bug #487742) and CVE-2009-0584
|
||||
(bug #487744).
|
||||
|
||||
* Tue Feb 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 8.64-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
|
||||
|
||||
* Tue Feb 17 2009 Tim Waugh <twaugh@redhat.com> 8.64-3
|
||||
- Fix bitcmyk driver (bug #486644).
|
||||
|
||||
* Wed Feb 4 2009 Tim Waugh <twaugh@redhat.com> 8.64-2
|
||||
- 8.64 (bug #483958).
|
||||
- Removed trade marks to avoid any potential confusion.
|
||||
|
||||
* Fri Oct 17 2008 Tim Waugh <twaugh@redhat.com>
|
||||
- Removed last patch (unsuccessful).
|
||||
|
||||
@ -994,7 +1126,7 @@ rm -rf $RPM_BUILD_ROOT
|
||||
* Thu Jul 13 2000 Prospector <bugzilla@redhat.com>
|
||||
- automatic rebuild
|
||||
|
||||
* Fri Jul 07 2000 Trond Eivind Glomsrød <teg@redhat.com>
|
||||
* Fri Jul 07 2000 Trond Eivind Glomsrød <teg@redhat.com>
|
||||
- fixed the broken inclusion of files in /usr/doc
|
||||
- Build requires freetype-devel
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user