summaryrefslogtreecommitdiff
path: root/print/ghostscript-gpl/files
diff options
context:
space:
mode:
authorYing-Chieh Liao <ijliao@FreeBSD.org>2003-01-03 19:37:31 +0000
committerYing-Chieh Liao <ijliao@FreeBSD.org>2003-01-03 19:37:31 +0000
commit22ce79a5ec50177752f5d80bfa7f24bad1c31960 (patch)
treef090134a7b14398b671320983acffcd554e94f3f /print/ghostscript-gpl/files
parentupgrade to 1.0.1 (diff)
upgrade to 8.00
PR: 46435 Submitted by: Ports Fury
Notes
Notes: svn path=/head/; revision=72450
Diffstat (limited to 'print/ghostscript-gpl/files')
-rw-r--r--print/ghostscript-gpl/files/chp2200.contrib.mak (renamed from print/ghostscript-gpl/files/cdj850.contrib.mak)6
-rw-r--r--print/ghostscript-gpl/files/patch-bjc250:src:gdevbjc_.c14
-rw-r--r--print/ghostscript-gpl/files/patch-bjc250:src:gdevbjc_.h93
-rw-r--r--print/ghostscript-gpl/files/patch-bjc250:src:gdevbjca.c17
-rw-r--r--print/ghostscript-gpl/files/patch-eplaser:gdevescv.c68
-rw-r--r--print/ghostscript-gpl/files/patch-eplaser:gdevesmv.c68
-rw-r--r--print/ghostscript-gpl/files/patch-hp2200:gdevcd8.c296
-rw-r--r--print/ghostscript-gpl/files/patch-lib:gs_statd.ps23
-rw-r--r--print/ghostscript-gpl/files/patch-lib:ps2epsi27
-rw-r--r--print/ghostscript-gpl/files/patch-lib:ps2epsi.ps203
-rw-r--r--print/ghostscript-gpl/files/patch-lips:gdevl4r.c13
-rw-r--r--print/ghostscript-gpl/files/patch-lips:gdevl4v.c65
-rw-r--r--print/ghostscript-gpl/files/patch-lips:gdevlprn.h11
-rw-r--r--print/ghostscript-gpl/files/patch-md2k:gdevmd2k.c50
-rw-r--r--print/ghostscript-gpl/files/patch-mjc:gdevmjc.c74
-rw-r--r--print/ghostscript-gpl/files/patch-src:contrib.mak-5.94.add14
-rw-r--r--print/ghostscript-gpl/files/patch-src:cpca_gdevl4v.c65
-rw-r--r--print/ghostscript-gpl/files/patch-src:dviprlib.c123
-rw-r--r--print/ghostscript-gpl/files/patch-src:dviprlib.h38
-rw-r--r--print/ghostscript-gpl/files/patch-src:gdevccr.c15
-rw-r--r--print/ghostscript-gpl/files/patch-src:gdevcp50.c18
-rw-r--r--print/ghostscript-gpl/files/patch-src:gdevdj9.c255
-rw-r--r--print/ghostscript-gpl/files/patch-src:gdevdmpr.c29
-rw-r--r--print/ghostscript-gpl/files/patch-src:gdevgdi.c15
-rw-r--r--print/ghostscript-gpl/files/patch-src:gdevifno.c15
-rw-r--r--print/ghostscript-gpl/files/patch-src:gdevmgr.c17
-rw-r--r--print/ghostscript-gpl/files/patch-src:gdevsgi.c16
-rw-r--r--print/ghostscript-gpl/files/patch-src:gxobj.h17
-rw-r--r--print/ghostscript-gpl/files/patch-src:unix-gcc.mak60
29 files changed, 1418 insertions, 307 deletions
diff --git a/print/ghostscript-gpl/files/cdj850.contrib.mak b/print/ghostscript-gpl/files/chp2200.contrib.mak
index 8faefec5fe4e..c71ea8ac3512 100644
--- a/print/ghostscript-gpl/files/cdj850.contrib.mak
+++ b/print/ghostscript-gpl/files/chp2200.contrib.mak
@@ -1,4 +1,5 @@
-###- cdj850 - HP 850 Driver under development -------- ###
+### --------------- The H-P Buisiness Inkjet 2200 devices --------------- ###
+
cdeskjet8_=$(GLOBJ)gdevcd8.$(OBJ) $(HPPCL)
$(DD)cdj670.dev : $(cdeskjet8_) $(DD)page.dev
@@ -16,6 +17,9 @@ $(DD)cdj890.dev : $(cdeskjet8_) $(DD)page.dev
$(DD)cdj1600.dev : $(cdeskjet8_) $(DD)page.dev
$(SETPDEV2) $(DD)cdj1600 $(cdeskjet8_)
+$(DD)chp2200.dev : $(cdeskjet8_) $(DD)page.dev
+ $(SETPDEV2) $(DD)chp2200 $(cdeskjet8_)
+
$(GLOBJ)gdevcd8.$(OBJ) : $(GLSRC)gdevcd8.c $(PDEVH) $(math__h)\
$(gsparam_h) $(gxlum_h) $(gdevpcl_h)
$(GLCC) $(GLO_)gdevcd8.$(OBJ) $(C_) $(GLSRC)gdevcd8.c
diff --git a/print/ghostscript-gpl/files/patch-bjc250:src:gdevbjc_.c b/print/ghostscript-gpl/files/patch-bjc250:src:gdevbjc_.c
new file mode 100644
index 000000000000..8eaf44e181c0
--- /dev/null
+++ b/print/ghostscript-gpl/files/patch-bjc250:src:gdevbjc_.c
@@ -0,0 +1,14 @@
+--- bjc250/src/gdevbjc_.c.orig Fri Nov 8 06:15:15 2002
++++ bjc250/src/gdevbjc_.c Fri Nov 8 07:43:31 2002
+@@ -54,9 +54,9 @@
+ private dev_proc_put_params(gdev_bjc_put_params);
+ private dev_proc_get_params(gdev_bjc_get_params);
+ const stringParamDescription *
+- paramValueToParam(P2(const stringParamDescription *, int));
++ paramValueToParam(const stringParamDescription *, int);
+ const stringParamDescription *
+- paramStringToParam(P3(const stringParamDescription *, const char *, uint));
++ paramStringToParam(const stringParamDescription *, const char *, uint);
+
+ BJL_command BJL_command_set[] = {
+ { "@Cleaning=1", BJC_BJL_CLEANING, 11},
diff --git a/print/ghostscript-gpl/files/patch-bjc250:src:gdevbjc_.h b/print/ghostscript-gpl/files/patch-bjc250:src:gdevbjc_.h
new file mode 100644
index 000000000000..26af2028cebc
--- /dev/null
+++ b/print/ghostscript-gpl/files/patch-bjc250:src:gdevbjc_.h
@@ -0,0 +1,93 @@
+--- bjc250/src/gdevbjc_.h.orig Fri Nov 8 06:15:15 2002
++++ bjc250/src/gdevbjc_.h Fri Nov 8 07:44:18 2002
+@@ -183,48 +183,48 @@
+
+ /* Put a BJL command to stream */
+
+-void bjc_put_bjl_command(P2(FILE * file, int bjl_command));
++void bjc_put_bjl_command(FILE * file, int bjl_command);
+
+-void bjc_put_LF(P1(FILE *file));
+-void bjc_put_FF(P1(FILE *file));
+-void bjc_put_CR(P1(FILE *file));
+-void bjc_put_initialize(P1(FILE *file));
+-void bjc_put_set_initial(P1(FILE *file));
+-void bjc_put_set_compression(P2(FILE *file, char compression));
+-void bjc_put_print_method_short(P2(FILE *file, char color));
+-void bjc_put_print_method(P5(FILE *file, char color, char media, char quality, char density));
+-void bjc_put_raster_resolution(P3(FILE *file, int x_resolution, int y_resolution));
+-void bjc_put_raster_skip(P2(FILE *file, int skip));
+-void bjc_put_page_margins(P5(FILE *file, int length, int lm, int rm, int top));
+-void bjc_put_media_supply(P3(FILE *file, char supply, char type));
+-void bjc_put_cmyk_image(P4(FILE *file, char component, const char *data, int count));
+-void bjc_put_move_lines(P2(FILE *file, int lines));
+-void bjc_put_move_lines_unit(P2(FILE *file, int unit));
+-void bjc_put_extended_margins(P5(FILE *file, int length, int lm, int rm, int top));
+-void bjc_put_image_format(P4(FILE *file, char depth, char format, char ink));
+-void bjc_put_page_id(P2(FILE *file, int id));
+-void bjc_put_continue_image(P3(FILE *file, const char *data, int count));
+-void bjc_put_indexed_image(P4(FILE *file, int dot_rows, int dot_cols, int layers));
+-
+-bool bjc_invert_bytes(P4(byte *row, uint raster, bool inverse, byte lastmask));
+-bool bjc_invert_cmyk_bytes(P8(byte *rowC,byte *rowM, byte *rowY, byte *rowK, uint raster,
+- bool inverse, byte lastmask, skip_t *skip));
+-uint bjc_compress(P3(const byte *row, uint raster, byte *compressed));
+-
+-int FloydSteinbergInitG(P1(gx_device_printer * pdev));
+-void FloydSteinbergDitheringG(P5(byte *row, byte *dithered, uint width, uint raster, bool limit_extr));
+-void FloydSteinbergCloseG(P1(gx_device_printer *pdev));
+-
+-int FloydSteinbergForwardCut(P5(int error, int *Errors, int i, byte *dithered, byte bitmask));
+-int FloydSteinbergBckwardCut(P5(int error, int *Errors, int i, byte *dithered, byte bitmask));
+-int FloydSteinbergInitC(P1(gx_device_printer * pdev));
+-void FloydSteinbergDitheringC(P6(byte *row, byte *dithered, uint width, uint raster,
+- bool limit_extr, bool composeK));
+-void FloydSteinbergCloseC(P1(gx_device_printer *pdev));
+-
+-void bjc_build_gamma_table(P2(float gamma, char color));
+-void bjc_rgb_to_cmy (P6(byte r, byte g, byte b, int *c, int *m, int *y));
+-void bjc_rgb_to_gray(P4(byte r, byte g, byte b, int *k));
++void bjc_put_LF(FILE *file);
++void bjc_put_FF(FILE *file);
++void bjc_put_CR(FILE *file);
++void bjc_put_initialize(FILE *file);
++void bjc_put_set_initial(FILE *file);
++void bjc_put_set_compression(FILE *file, char compression);
++void bjc_put_print_method_short(FILE *file, char color);
++void bjc_put_print_method(FILE *file, char color, char media, char quality, char density);
++void bjc_put_raster_resolution(FILE *file, int x_resolution, int y_resolution);
++void bjc_put_raster_skip(FILE *file, int skip);
++void bjc_put_page_margins(FILE *file, int length, int lm, int rm, int top);
++void bjc_put_media_supply(FILE *file, char supply, char type);
++void bjc_put_cmyk_image(FILE *file, char component, const char *data, int count);
++void bjc_put_move_lines(FILE *file, int lines);
++void bjc_put_move_lines_unit(FILE *file, int unit);
++void bjc_put_extended_margins(FILE *file, int length, int lm, int rm, int top);
++void bjc_put_image_format(FILE *file, char depth, char format, char ink);
++void bjc_put_page_id(FILE *file, int id);
++void bjc_put_continue_image(FILE *file, const char *data, int count);
++void bjc_put_indexed_image(FILE *file, int dot_rows, int dot_cols, int layers);
++
++bool bjc_invert_bytes(byte *row, uint raster, bool inverse, byte lastmask);
++bool bjc_invert_cmyk_bytes(byte *rowC,byte *rowM, byte *rowY, byte *rowK, uint raster,
++ bool inverse, byte lastmask, skip_t *skip);
++uint bjc_compress(const byte *row, uint raster, byte *compressed);
++
++int FloydSteinbergInitG(gx_device_printer * pdev);
++void FloydSteinbergDitheringG(byte *row, byte *dithered, uint width, uint raster, bool limit_extr);
++void FloydSteinbergCloseG(gx_device_printer *pdev);
++
++int FloydSteinbergForwardCut(int error, int *Errors, int i, byte *dithered, byte bitmask);
++int FloydSteinbergBckwardCut(int error, int *Errors, int i, byte *dithered, byte bitmask);
++int FloydSteinbergInitC(gx_device_printer * pdev);
++void FloydSteinbergDitheringC(byte *row, byte *dithered, uint width, uint raster,
++ bool limit_extr, bool composeK);
++void FloydSteinbergCloseC(gx_device_printer *pdev);
++
++void bjc_build_gamma_table(float gamma, char color);
++void bjc_rgb_to_cmy (byte r, byte g, byte b, int *c, int *m, int *y);
++void bjc_rgb_to_gray(byte r, byte g, byte b, int *k);
+ uint bjc_rand(void);
+-void bjc_init_tresh(P1(int rnd));
++void bjc_init_tresh(int rnd);
+ #endif /* gdevbjc_INCLUDED */
diff --git a/print/ghostscript-gpl/files/patch-bjc250:src:gdevbjca.c b/print/ghostscript-gpl/files/patch-bjc250:src:gdevbjca.c
new file mode 100644
index 000000000000..37f525bfeb42
--- /dev/null
+++ b/print/ghostscript-gpl/files/patch-bjc250:src:gdevbjca.c
@@ -0,0 +1,17 @@
+--- bjc250/src/gdevbjca.c.orig Fri Nov 8 06:15:15 2002
++++ bjc250/src/gdevbjca.c Fri Nov 8 07:47:41 2002
+@@ -46,10 +46,10 @@
+ #include <math.h>
+ #include <time.h>
+
+-private void bjc_put_bytes(P3(FILE *file, const char *data, int count));
+-private void bjc_put_hi_lo(P2(FILE *file, int value));
+-private void bjc_put_lo_hi(P2(FILE *file, int value));
+-private void bjc_put_command(P3(FILE *file, char command, int count));
++private void bjc_put_bytes(FILE *file, const char *data, int count);
++private void bjc_put_hi_lo(FILE *file, int value);
++private void bjc_put_lo_hi(FILE *file, int value);
++private void bjc_put_command(FILE *file, char command, int count);
+
+ /* ---------------- Utilities ---------------- */
+
diff --git a/print/ghostscript-gpl/files/patch-eplaser:gdevescv.c b/print/ghostscript-gpl/files/patch-eplaser:gdevescv.c
index dbc3f4a109a9..84685e9df007 100644
--- a/print/ghostscript-gpl/files/patch-eplaser:gdevescv.c
+++ b/print/ghostscript-gpl/files/patch-eplaser:gdevescv.c
@@ -1,5 +1,5 @@
---- eplaser/gdevescv.c.orig Fri Dec 21 15:50:22 2001
-+++ eplaser/gdevescv.c Sat Apr 27 13:45:53 2002
+--- eplaser/gdevescv.c.orig Wed Jul 3 13:17:26 2002
++++ eplaser/gdevescv.c Fri Nov 29 21:59:00 2002
@@ -37,8 +37,7 @@
*/
@@ -10,7 +10,65 @@
#include "math_.h"
#include "gx.h"
-@@ -1760,13 +1759,13 @@
+@@ -305,30 +304,30 @@
+ };
+
+ /* Vector device implementation */
+-private int escv_beginpage(P1(gx_device_vector * vdev));
+-private int escv_setfillcolor(P2(gx_device_vector * vdev, const gx_drawing_color * pdc));
+-private int escv_setstrokecolor(P2(gx_device_vector * vdev, const gx_drawing_color * pdc));
+-private int escv_setdash(P4(gx_device_vector * vdev, const float *pattern,
+- uint count, floatp offset));
+-private int escv_setflat(P2(gx_device_vector * vdev, floatp flatness));
+-private int escv_setlogop(P3(gx_device_vector * vdev, gs_logical_operation_t lop,
+- gs_logical_operation_t diff));
++private int escv_beginpage(gx_device_vector * vdev);
++private int escv_setfillcolor(gx_device_vector * vdev, const gx_drawing_color * pdc);
++private int escv_setstrokecolor(gx_device_vector * vdev, const gx_drawing_color * pdc);
++private int escv_setdash(gx_device_vector * vdev, const float *pattern,
++ uint count, floatp offset);
++private int escv_setflat(gx_device_vector * vdev, floatp flatness);
++private int escv_setlogop(gx_device_vector * vdev, gs_logical_operation_t lop,
++ gs_logical_operation_t diff);
+ private int escv_vector_dorect(gx_device_vector * vdev, fixed x0, fixed y0, fixed x1,
+ fixed y1, gx_path_type_t type);
+ private int escv_vector_dopath(gx_device_vector * vdev, const gx_path * ppath,
+ gx_path_type_t type);
+-private int escv_beginpath(P2(gx_device_vector * vdev, gx_path_type_t type));
+-private int escv_moveto(P6(gx_device_vector * vdev, floatp x0, floatp y0,
+- floatp x, floatp y, gx_path_type_t type));
+-private int escv_lineto(P6(gx_device_vector * vdev, floatp x0, floatp y0,
+- floatp x, floatp y, gx_path_type_t type));
+-private int escv_curveto(P10(gx_device_vector * vdev, floatp x0, floatp y0,
++private int escv_beginpath(gx_device_vector * vdev, gx_path_type_t type);
++private int escv_moveto(gx_device_vector * vdev, floatp x0, floatp y0,
++ floatp x, floatp y, gx_path_type_t type);
++private int escv_lineto(gx_device_vector * vdev, floatp x0, floatp y0,
++ floatp x, floatp y, gx_path_type_t type);
++private int escv_curveto(gx_device_vector * vdev, floatp x0, floatp y0,
+ floatp x1, floatp y1, floatp x2, floatp y2,
+- floatp x3, floatp y3, gx_path_type_t type));
+-private int escv_closepath(P6(gx_device_vector * vdev, floatp x, floatp y,
+- floatp x_start, floatp y_start, gx_path_type_t type));
++ floatp x3, floatp y3, gx_path_type_t type);
++private int escv_closepath(gx_device_vector * vdev, floatp x, floatp y,
++ floatp x_start, floatp y_start, gx_path_type_t type);
+
+-private int escv_endpath(P2(gx_device_vector * vdev, gx_path_type_t type));
++private int escv_endpath(gx_device_vector * vdev, gx_path_type_t type);
+ private int escv_setlinewidth(gx_device_vector * vdev, floatp width);
+ private int escv_setlinecap(gx_device_vector * vdev, gs_line_cap cap);
+ private int escv_setlinejoin(gx_device_vector * vdev, gs_line_join join);
+@@ -585,6 +584,8 @@
+ {421, 595, 15, "A5"}, /* A5 */
+ {709, 1002, 24, "B4"}, /* B4 */
+ {501, 709, 25, "B5"}, /* B5 */
++ {729, 1032, 24, "B5"}, /* JIS B4 */
++ {516, 729, 25, "B5"}, /* JIS B5 */
+ {612, 792, 30, "LT"}, /* Letter */
+ {396, 612, 31, "HLT"}, /* Half Letter */
+ {612, 1008, 32, "LGL"}, /* Legal */
+@@ -1849,13 +1850,13 @@
/* Process the next piece of an image. */
private int
@@ -26,7 +84,7 @@
gx_device *dev = info->dev;
#endif
gx_device_vector *const vdev = (gx_device_vector *) dev;
-@@ -1784,7 +1783,7 @@
+@@ -1873,7 +1874,7 @@
{
@@ -35,7 +93,7 @@
if (height == 260)
height = 1;
#endif
-@@ -1922,13 +1921,13 @@
+@@ -2011,13 +2012,13 @@
private int
diff --git a/print/ghostscript-gpl/files/patch-eplaser:gdevesmv.c b/print/ghostscript-gpl/files/patch-eplaser:gdevesmv.c
index bce92ff8358c..ec97843811b5 100644
--- a/print/ghostscript-gpl/files/patch-eplaser:gdevesmv.c
+++ b/print/ghostscript-gpl/files/patch-eplaser:gdevesmv.c
@@ -1,5 +1,5 @@
---- eplaser/gdevesmv.c.orig Fri Dec 14 10:50:14 2001
-+++ eplaser/gdevesmv.c Sat Apr 27 13:46:31 2002
+--- eplaser/gdevesmv.c.orig Wed Jul 3 13:20:55 2002
++++ eplaser/gdevesmv.c Fri Nov 29 22:00:34 2002
@@ -34,8 +34,7 @@
*/
@@ -10,7 +10,65 @@
#include "math_.h"
#include "gx.h"
-@@ -1799,13 +1798,13 @@
+@@ -385,30 +384,30 @@
+
+
+ /* Vector device implementation */
+-private int esmv_beginpage(P1(gx_device_vector * vdev));
+-private int esmv_setfillcolor(P2(gx_device_vector * vdev, const gx_drawing_color * pdc));
+-private int esmv_setstrokecolor(P2(gx_device_vector * vdev, const gx_drawing_color * pdc));
+-private int esmv_setdash(P4(gx_device_vector * vdev, const float *pattern,
+- uint count, floatp offset));
+-private int esmv_setflat(P2(gx_device_vector * vdev, floatp flatness));
+-private int esmv_setlogop(P3(gx_device_vector * vdev, gs_logical_operation_t lop,
+- gs_logical_operation_t diff));
++private int esmv_beginpage(gx_device_vector * vdev);
++private int esmv_setfillcolor(gx_device_vector * vdev, const gx_drawing_color * pdc);
++private int esmv_setstrokecolor(gx_device_vector * vdev, const gx_drawing_color * pdc);
++private int esmv_setdash(gx_device_vector * vdev, const float *pattern,
++ uint count, floatp offset);
++private int esmv_setflat(gx_device_vector * vdev, floatp flatness);
++private int esmv_setlogop(gx_device_vector * vdev, gs_logical_operation_t lop,
++ gs_logical_operation_t diff);
+ private int esmv_vector_dorect(gx_device_vector * vdev, fixed x0, fixed y0, fixed x1,
+ fixed y1, gx_path_type_t type);
+ private int esmv_vector_dopath(gx_device_vector * vdev, const gx_path * ppath,
+ gx_path_type_t type);
+-private int esmv_beginpath(P2(gx_device_vector * vdev, gx_path_type_t type));
+-private int esmv_moveto(P6(gx_device_vector * vdev, floatp x0, floatp y0,
+- floatp x, floatp y, gx_path_type_t type));
+-private int esmv_lineto(P6(gx_device_vector * vdev, floatp x0, floatp y0,
+- floatp x, floatp y, gx_path_type_t type));
+-private int esmv_curveto(P10(gx_device_vector * vdev, floatp x0, floatp y0,
++private int esmv_beginpath(gx_device_vector * vdev, gx_path_type_t type);
++private int esmv_moveto(gx_device_vector * vdev, floatp x0, floatp y0,
++ floatp x, floatp y, gx_path_type_t type);
++private int esmv_lineto(gx_device_vector * vdev, floatp x0, floatp y0,
++ floatp x, floatp y, gx_path_type_t type);
++private int esmv_curveto(gx_device_vector * vdev, floatp x0, floatp y0,
+ floatp x1, floatp y1, floatp x2, floatp y2,
+- floatp x3, floatp y3, gx_path_type_t type));
+-private int esmv_closepath(P6(gx_device_vector * vdev, floatp x, floatp y,
+- floatp x_start, floatp y_start, gx_path_type_t type));
++ floatp x3, floatp y3, gx_path_type_t type);
++private int esmv_closepath(gx_device_vector * vdev, floatp x, floatp y,
++ floatp x_start, floatp y_start, gx_path_type_t type);
+
+-private int esmv_endpath(P2(gx_device_vector * vdev, gx_path_type_t type));
++private int esmv_endpath(gx_device_vector * vdev, gx_path_type_t type);
+ private int esmv_setlinewidth(gx_device_vector * vdev, floatp width);
+ private int esmv_setlinecap(gx_device_vector * vdev, gs_line_cap cap);
+ private int esmv_setlinejoin(gx_device_vector * vdev, gs_line_join join);
+@@ -665,6 +664,8 @@
+ {421, 595, 15, "A5"}, /* A5 */
+ {709, 1002, 24, "B4"}, /* B4 */
+ {501, 709, 25, "B5"}, /* B5 */
++ {729, 1032, 24, "B4"}, /* JIS B4 */
++ {516, 729, 25, "B5"}, /* JIS B5 */
+ {612, 792, 30, "LT"}, /* Letter */
+ {396, 612, 31, "HLT"}, /* Half Letter */
+ {612, 1008, 32, "LGL"}, /* Legal */
+@@ -1933,13 +1934,13 @@
/* Process the next piece of an image. */
private int
@@ -26,7 +84,7 @@
gx_device *dev = info->dev;
#endif
gx_device_vector *const vdev = (gx_device_vector *) dev;
-@@ -1823,7 +1822,7 @@
+@@ -1957,7 +1958,7 @@
{
@@ -35,7 +93,7 @@
if (height == 260)
height = 1;
#endif
-@@ -1980,13 +1979,13 @@
+@@ -2114,13 +2115,13 @@
private int
diff --git a/print/ghostscript-gpl/files/patch-hp2200:gdevcd8.c b/print/ghostscript-gpl/files/patch-hp2200:gdevcd8.c
new file mode 100644
index 000000000000..497acc7d3b65
--- /dev/null
+++ b/print/ghostscript-gpl/files/patch-hp2200:gdevcd8.c
@@ -0,0 +1,296 @@
+--- hp2200/gdevcd8.c.orig Wed Jun 21 20:39:33 2000
++++ hp2200/gdevcd8.c Sat Nov 23 03:03:58 2002
+@@ -409,19 +409,19 @@
+ };
+
+ private int
+- rescale_byte_wise1x1(P4(int bytecount, const byte * inbytea,
+- const byte * inbyteb, byte * outbyte));
++ rescale_byte_wise1x1(int bytecount, const byte * inbytea,
++ const byte * inbyteb, byte * outbyte);
+ private int
+- rescale_byte_wise2x1(P4(int bytecount, const byte * inbytea,
+- const byte * inbyteb, byte * outbyte));
++ rescale_byte_wise2x1(int bytecount, const byte * inbytea,
++ const byte * inbyteb, byte * outbyte);
+ private int
+- rescale_byte_wise1x2(P4(int bytecount, const byte * inbytea,
+- const byte * inbyteb, byte * outbyte));
++ rescale_byte_wise1x2(int bytecount, const byte * inbytea,
++ const byte * inbyteb, byte * outbyte);
+ private int
+- rescale_byte_wise2x2(P4(int bytecount, const byte * inbytea,
+- const byte * inbyteb, byte * outbyte));
++ rescale_byte_wise2x2(int bytecount, const byte * inbytea,
++ const byte * inbyteb, byte * outbyte);
+
+-private int (* const rescale_color_plane[2][2]) (P4(int, const byte *, const byte *, byte *)) = {
++private int (* const rescale_color_plane[2][2]) (int, const byte *, const byte *, byte *) = {
+ {
+ rescale_byte_wise1x1, rescale_byte_wise1x2
+ },
+@@ -574,16 +574,16 @@
+ };
+
+ /* function pointer typedefs for device driver struct */
+-typedef void (*StartRasterMode) (P3(gx_device_printer * pdev, int paper_size,
+- FILE * prn_stream));
+-typedef void (*PrintNonBlankLines) (P6(gx_device_printer * pdev,
++typedef void (*StartRasterMode) (gx_device_printer * pdev, int paper_size,
++ FILE * prn_stream);
++typedef void (*PrintNonBlankLines) (gx_device_printer * pdev,
+ struct ptr_arrays *data_ptrs,
+ struct misc_struct *misc_vars,
+ struct error_val_field *error_values,
+ const Gamma *gamma,
+- FILE * prn_stream));
++ FILE * prn_stream);
+
+-typedef void (*TerminatePage) (P2(gx_device_printer * pdev, FILE * prn_stream));
++typedef void (*TerminatePage) (gx_device_printer * pdev, FILE * prn_stream);
+
+ typedef struct gx_device_cdj850_s {
+ gx_device_common;
+@@ -729,60 +729,60 @@
+ * functions.
+ */
+ private void
+- cdj850_start_raster_mode(P3(gx_device_printer * pdev,
+- int papersize, FILE * prn_stream));
++ cdj850_start_raster_mode(gx_device_printer * pdev,
++ int papersize, FILE * prn_stream);
+
+ private void
+- cdj850_print_non_blank_lines(P6(gx_device_printer * pdev,
++ cdj850_print_non_blank_lines(gx_device_printer * pdev,
+ struct ptr_arrays *data_ptrs,
+ struct misc_struct *misc_vars,
+ struct error_val_field *error_values,
+ const Gamma *gamma,
+- FILE * prn_stream));
++ FILE * prn_stream);
+
+ private void
+- cdj850_terminate_page(P2(gx_device_printer * pdev, FILE * prn_stream));
++ cdj850_terminate_page(gx_device_printer * pdev, FILE * prn_stream);
+
+ /* The 880C and siblings need a separate set of functions because they seem
+ * to require a somewhat different version of PCL3+.
+ */
+ private void
+- cdj880_start_raster_mode(P3(gx_device_printer * pdev,
+- int papersize, FILE * prn_stream));
++ cdj880_start_raster_mode(gx_device_printer * pdev,
++ int papersize, FILE * prn_stream);
+
+ private void
+- cdj880_print_non_blank_lines(P6(gx_device_printer * pdev,
++ cdj880_print_non_blank_lines(gx_device_printer * pdev,
+ struct ptr_arrays *data_ptrs,
+ struct misc_struct *misc_vars,
+ struct error_val_field *error_values,
+ const Gamma *gamma,
+- FILE * prn_stream));
++ FILE * prn_stream);
+
+ private void
+- cdj880_terminate_page(P2(gx_device_printer * pdev, FILE * prn_stream));
++ cdj880_terminate_page(gx_device_printer * pdev, FILE * prn_stream);
+
+ /* Functions for the 1600C.
+ */
+ private void
+- cdj1600_start_raster_mode(P3(gx_device_printer * pdev,
+- int papersize, FILE * prn_stream));
++ cdj1600_start_raster_mode(gx_device_printer * pdev,
++ int papersize, FILE * prn_stream);
+ private void
+- cdj1600_print_non_blank_lines(P6(gx_device_printer * pdev,
++ cdj1600_print_non_blank_lines(gx_device_printer * pdev,
+ struct ptr_arrays *data_ptrs,
+ struct misc_struct *misc_vars,
+ struct error_val_field *error_values,
+ const Gamma *gamma,
+- FILE * prn_stream));
++ FILE * prn_stream);
+ private void
+- cdj1600_terminate_page(P2(gx_device_printer * pdev, FILE * prn_stream));
++ cdj1600_terminate_page(gx_device_printer * pdev, FILE * prn_stream);
+
+ /* Functions for the HP2200C */
+ private void
+- chp2200_start_raster_mode(P3(gx_device_printer * pdev,
+- int papersize, FILE * prn_stream));
++ chp2200_start_raster_mode(gx_device_printer * pdev,
++ int papersize, FILE * prn_stream);
+
+ private void
+- chp2200_terminate_page(P2(gx_device_printer * pdev, FILE * prn_stream));
++ chp2200_terminate_page(gx_device_printer * pdev, FILE * prn_stream);
+
+
+ private const gx_device_procs cdj670_procs =
+@@ -855,12 +855,12 @@
+ chp2200_terminate_page);
+
+ /* Forward references */
+-private int cdj_put_param_int(P6(gs_param_list *, gs_param_name,
+- int *, int, int, int));
+-private int cdj_put_param_float(P6(gs_param_list *, gs_param_name, float
+- *, float, float, int));
+-private int cdj_put_param_bpp(P5(gx_device *, gs_param_list *, int, int, int));
+-private int cdj_set_bpp(P3(gx_device *, int, int));
++private int cdj_put_param_int(gs_param_list *, gs_param_name,
++ int *, int, int, int);
++private int cdj_put_param_float(gs_param_list *, gs_param_name, float
++ *, float, float, int);
++private int cdj_put_param_bpp(gx_device *, gs_param_list *, int, int, int);
++private int cdj_set_bpp(gx_device *, int, int);
+
+
+ /* hp_colour_open()
+@@ -1102,73 +1102,73 @@
+
+ /* internal functions */
+ private void
+- FSDlinebw(P7(int scan, int plane_size,
++ FSDlinebw(int scan, int plane_size,
+ struct error_val_field *error_values,
+ byte * kP,
+- int n, int *ep, byte * dp));
++ int n, int *ep, byte * dp);
+ private void
+- FSDlinec2(P9(int scan, int plane_size,
++ FSDlinec2(int scan, int plane_size,
+ struct error_val_field *error_values,
+ byte * cPa, byte * mPa, byte * yPa, int n,
+- byte * dp, int *ep));
++ byte * dp, int *ep);
+ private void
+- FSDlinec3(P12(int scan, int plane_size,
++ FSDlinec3(int scan, int plane_size,
+ struct error_val_field *error_values,
+ byte * cPa, byte * mPa, byte * yPa,
+ byte * cPb, byte * mPb, byte * yPb,
+- int n, byte * dp, int *ep));
++ int n, byte * dp, int *ep);
+ private void
+- FSDlinec4(P12(int scan, int plane_size,
++ FSDlinec4(int scan, int plane_size,
+ struct error_val_field *error_values,
+ byte * cPa, byte * mPa, byte * yPa,
+ byte * cPb, byte * mPb, byte * yPb,
+- int n, byte * dp, int *ep));
++ int n, byte * dp, int *ep);
+ private void
+ init_error_buffer(struct misc_struct *misc_vars,
+ struct ptr_arrays *data_ptrs);
+ private void
+- do_floyd_steinberg(P8(int scan, int cscan, int plane_size,
++ do_floyd_steinberg(int scan, int cscan, int plane_size,
+ int plane_size_c, int n,
+ struct ptr_arrays *data_ptrs,
+ gx_device_printer * pdev,
+- struct error_val_field *error_values));
++ struct error_val_field *error_values);
+ private int
+- do_gcr(P8(int bytecount, byte * inbyte, const byte * kvalues,
++ do_gcr(int bytecount, byte * inbyte, const byte * kvalues,
+ const byte * cvalues, const byte * mvalues,
+ const byte * yvalues, const int *kcorrect,
+- word * inword));
++ word * inword);
+
+ /* UNUSED
+ *private int
+- *test_scan (P4(int size,
++ *test_scan (int size,
+ * byte * current,
+ * byte * last,
+- * byte * control));
++ * byte * control);
+ *private void
+- *save_color_data(P3(int size,
++ *save_color_data(int size,
+ * byte * current,
+- * byte * saved));
++ * byte * saved);
+ *
+ */
+ private void
+- send_scan_lines(P6(gx_device_printer * pdev,
++ send_scan_lines(gx_device_printer * pdev,
+ struct ptr_arrays *data_ptrs,
+ struct misc_struct *misc_vars,
+ struct error_val_field *error_values,
+ const Gamma *gamma,
+- FILE * prn_stream));
++ FILE * prn_stream);
+ private void
+- do_gamma(P3(float mastergamma, float gammaval, byte * values));
++ do_gamma(float mastergamma, float gammaval, byte * values);
+ private void
+- do_black_correction(P2(float kvalue, int *kcorrect));
++ do_black_correction(float kvalue, int *kcorrect);
+
+ private void
+- init_data_structure(P3(gx_device_printer * pdev,
++ init_data_structure(gx_device_printer * pdev,
+ struct ptr_arrays *data_ptrs,
+- struct misc_struct *misc_vars));
++ struct misc_struct *misc_vars);
+ private void
+- calculate_memory_size(P2(gx_device_printer * pdev,
+- struct misc_struct *misc_vars));
++ calculate_memory_size(gx_device_printer * pdev,
++ struct misc_struct *misc_vars);
+
+
+ private void
+@@ -3393,13 +3393,14 @@
+ (y) = gx_bits_to_color_value((v) & ((1 << (b)) - 1), (b))
+
+ private gx_color_index
+-gdev_cmyk_map_cmyk_color(gx_device * pdev,
+- gx_color_value cyan, gx_color_value magenta,
+- gx_color_value yellow,
+- gx_color_value black)
++gdev_cmyk_map_cmyk_color(gx_device * pdev, const gx_color_value cv[])
+ {
+
+ gx_color_index color;
++ gx_color_value cyan = cv[0];
++ gx_color_value magenta = cv[1];
++ gx_color_value yellow = cv[2];
++ gx_color_value black = cv[3];
+
+ switch (pdev->color_info.depth) {
+ case 1:
+@@ -3432,9 +3433,11 @@
+ /* Mapping of RGB colors to gray values. */
+
+ private gx_color_index
+-gdev_cmyk_map_rgb_color(gx_device * pdev, gx_color_value r, gx_color_value
+- g, gx_color_value b)
++gdev_cmyk_map_rgb_color(gx_device * pdev, const gx_color_value cv[])
+ {
++ gx_color_value r = cv[0];
++ gx_color_value g = cv[1];
++ gx_color_value b = cv[2];
+ if (gx_color_value_to_byte(r & g & b) == 0xff) {
+ return (gx_color_index) 0; /* White */
+ } else {
+@@ -3522,9 +3525,11 @@
+ }
+
+ private gx_color_index
+-gdev_pcl_map_rgb_color(gx_device * pdev, gx_color_value r,
+- gx_color_value g, gx_color_value b)
++gdev_pcl_map_rgb_color(gx_device * pdev, const gx_color_value cv[])
+ {
++ gx_color_value r = cv[0];
++ gx_color_value g = cv[1];
++ gx_color_value b = cv[2];
+ if (gx_color_value_to_byte(r & g & b) == 0xff)
+ return (gx_color_index) 0; /* white */
+ else {
diff --git a/print/ghostscript-gpl/files/patch-lib:gs_statd.ps b/print/ghostscript-gpl/files/patch-lib:gs_statd.ps
new file mode 100644
index 000000000000..d78c6e16bfc0
--- /dev/null
+++ b/print/ghostscript-gpl/files/patch-lib:gs_statd.ps
@@ -0,0 +1,23 @@
+--- lib/gs_statd.ps.orig Fri Oct 11 02:29:39 2002
++++ lib/gs_statd.ps Fri Dec 6 04:53:01 2002
+@@ -105,6 +105,12 @@
+ /flsa {612 936 //.setpagesize exec} bind def % U.S. foolscap
+ /flse {612 936 //.setpagesize exec} bind def % European foolscap
+ /halfletter {396 612 //.setpagesize exec} bind def
++ /postcard {284 419 //.setpagesize exec} bind def
++ /dbl_postcard {419 568 //.setpagesize exec} bind def
++ /Executive {522 756 //.setpagesize exec} bind def
++ /jenv_you4 {298 666 //.setpagesize exec} bind def
++ /jenv_you2 {324 460 //.setpagesize exec} bind def
++ /jenv_kaku2 {682 942 //.setpagesize exec} bind def
+ % /tabloid {792 1224 //.setpagesize exec} bind def % 11x17 portrait
+ % /csheet {1224 1584 //.setpagesize exec} bind def % ANSI C 17x22
+ % /dsheet {1584 2448 //.setpagesize exec} bind def % ANSI D 22x34
+@@ -121,6 +127,7 @@
+ [ /letter /note %do not change this line, needed by 'setpagetype'
+ /legal /lettersmall
+ /11x17 /ledger
++ /postcard /dbl_postcard /Executive /jenv_you4 /jenv_you2 /jenv_kaku2
+ /a4small /a3 /a4
+ STRICT { (%END SIZES) .skipeof } if
+ /a0 /a1 /a2 /a5 /a6 /a7 /a8 /a9 /a10
diff --git a/print/ghostscript-gpl/files/patch-lib:ps2epsi b/print/ghostscript-gpl/files/patch-lib:ps2epsi
deleted file mode 100644
index 06389642bb93..000000000000
--- a/print/ghostscript-gpl/files/patch-lib:ps2epsi
+++ /dev/null
@@ -1,27 +0,0 @@
---- lib/ps2epsi.orig Sat Jun 23 01:09:22 2001
-+++ lib/ps2epsi Tue Apr 23 05:18:24 2002
-@@ -1,5 +1,5 @@
- #!/bin/sh
--# $Id: ps2epsi,v 1.7 2001/06/22 16:09:22 lpd Exp $
-+# $Id: ps2epsi,v 1.7.2.1 2002/04/22 20:18:24 giles Exp $
-
- tmpfile=/tmp/ps2epsi$$
-
-@@ -58,7 +58,8 @@
- cat << BEGINEPS
- save countdictstack mark newpath /showpage {} def /setpagedevice {pop} def
- %%EndProlog
--%%Page 1 1
-+%%Page: 1 1
-+%%BeginDocument: ${infile}
- BEGINEPS
-
- cat "${infile}" |
-@@ -66,6 +67,7 @@
- -e '/^%%[A-Za-z][A-Za-z]*[^!-~]*$/d' -e '/^%%[A-Za-z][A-Za-z]*: /d'
-
- cat << ENDEPS
-+%%EndDocument
- %%Trailer
- cleartomark countdictstack exch sub { end } repeat restore
- %%EOF
diff --git a/print/ghostscript-gpl/files/patch-lib:ps2epsi.ps b/print/ghostscript-gpl/files/patch-lib:ps2epsi.ps
deleted file mode 100644
index 19ccc7d0b022..000000000000
--- a/print/ghostscript-gpl/files/patch-lib:ps2epsi.ps
+++ /dev/null
@@ -1,203 +0,0 @@
---- lib/ps2epsi.ps.orig Wed Apr 4 13:45:42 2001
-+++ lib/ps2epsi.ps Tue Apr 23 05:30:39 2002
-@@ -1,27 +1,31 @@
--% Copyright (C) 1990, 2000 Aladdin Enterprises. All rights reserved.
-+% Copyright (C) 1990-2002 artofcode LLC. All rights reserved.
- %
--% This file is part of AFPL Ghostscript.
-+% This software is provided AS-IS with no warranty, either express or
-+% implied.
- %
--% AFPL Ghostscript is distributed with NO WARRANTY OF ANY KIND. No author or
--% distributor accepts any responsibility for the consequences of using it, or
--% for whether it serves any particular purpose or works at all, unless he or
--% she says so in writing. Refer to the Aladdin Free Public License (the
--% "License") for full details.
-+% This software is distributed under license and may not be copied,
-+% modified or distributed except as expressly authorized under the terms
-+% of the license contained in the file LICENSE in this distribution.
- %
--% Every copy of AFPL Ghostscript must include a copy of the License, normally
--% in a plain ASCII text file named PUBLIC. The License grants you the right
--% to copy, modify and redistribute AFPL Ghostscript, but only under certain
--% conditions described in the License. Among other things, the License
--% requires that the copyright notice and this notice be preserved on all
--% copies.
-+% For more information about licensing, please refer to
-+% http://www.ghostscript.com/licensing/. For information on
-+% commercial licensing, go to http://www.artifex.com/licensing/ or
-+% contact Artifex Software, Inc., 101 Lucas Valley Road #110,
-+% San Rafael, CA 94903, U.S.A., +1(415)492-9861.
-
--% $Id: ps2epsi.ps,v 1.5 2001/04/04 04:45:42 alexcher Exp $
-+% $Id: ps2epsi.ps,v 1.5.2.3 2002/04/22 20:30:39 giles Exp $
- % Convert an arbitrary PostScript file to an EPSI file.
- %
- % Please do not contact these users if you have questions. They no longer
- % have the time, interest, or current expertise to keep this code working.
- % If you find bugs, please send proposed fixes to bug-gs@aladdin.com.
- %
-+% Bug fix 2002-04-20 by rayjj: Bounding box was incorrect since it depended
-+% on the dither pattern and gray shade at the boundary. Changed to use
-+% 8-bit grayscale preview image to allow correct bounding box (at the
-+% expense of a 8x larger preview image). Also moved .setsafe until after
-+% the device and file operations are complete (but still before the input
-+% file is processed.
- % Bug fix 2000-04-11 by lpd: if a font didn't have a FontName (which is the
- % case for bitmap fonts produced by recent versions of dvips), setfont
- % caused an error.
-@@ -51,7 +55,6 @@
- /ps2epsi
- { % Open the file
- outfile (w) file /epsifile exch def
-- //systemdict /.setsafe known { .setsafe } if
- % Get the device parameters
- currentdevice getdeviceprops .dicttomark
- /HWSize get aload pop
-@@ -59,17 +62,23 @@
- /devwidth exch def
- matrix defaultmatrix
- /devmatrix exch def
-- % Make a corresponding memory device
-- devmatrix devwidth devheight <ff 00>
-+ % Make a corresponding 8-bit deep memory device
-+ devmatrix devwidth devheight
-+ 256 string 0 1 255 { 1 index exch dup 255 exch sub put } for
- makeimagedevice
- /arraydevice exch def
-- arraydevice setdevice % (does an erasepage)
-- /rowwidth devwidth 7 add 8 idiv def
-+ arraydevice
-+ % Turn on anti-aliasing
-+ mark /TextAlphaBits 4 /GraphicsAlphaBits 4 6 -1 roll
-+ putdeviceprops
-+ setdevice % (does an erasepage)
-+ /rowwidth devwidth def
- /row rowwidth string def
- /zerorow rowwidth string def % all zero
- % Replace the definition of showpage
- userdict /showpage { ps2edict begin epsipage end } bind put
- userdict /setfont { ps2edict begin epsisetfont end } bind put
-+ //systemdict /.setsafe known { .setsafe } if
- } bind def
-
- /epsifontdict 100 dict def
-@@ -125,8 +134,8 @@
-
- % Initialise limit variables
- /loopcount rowwidth 1 sub def
-- /lm loopcount def /lmb 0 def
-- /rm 0 def /rmb 0 def
-+ /lm loopcount def
-+ /rm 0 def
-
- % Find left and right boundaries of image
- tm 1 bm
-@@ -135,47 +144,29 @@
- % Scan from left to find first non-zero element
- % We save first the element, then the index
- -1 0 1 loopcount
-- { dup row exch get dup 0 ne { exch exit }{ pop pop } ifelse
-+ { dup row exch get 0 ne { exch pop exit }{ pop } ifelse
- } for
- % If we found -1, row is blank ..
- dup -1 ne
- { % Find the leftmost index
- dup lm lt
- % If the new index is less, we save index and element
-- { /lm exch def /lmb exch def }
-- % If the index is equal, we or the bits together
-- { lm eq { lmb or /lmb exch def }{ pop } ifelse
-- } ifelse
-+ { /lm exch def } { pop } ifelse
- % Now find the rightmost index
- loopcount -1 0
-- { dup row exch get dup 0 ne { exch exit }{ pop pop } ifelse
-+ { dup row exch get 0 ne { exit }{ pop } ifelse
- } for
- dup rm gt
- % If the new index is greater, we save index and element
-- { /rm exch def /rmb exch def }
-- % If the index is equal, or the bits
-- { rm eq { rmb or /rmb exch def } { pop } ifelse
-- } ifelse
-+ { /rm exch def } { pop } ifelse
- } if
-- pop
- } for
-
-- % Now we find the real left & right bit positions
-- 256 0 1 7
-- { exch 2 div dup lmb le { pop exit }{ exch pop } ifelse
-- } for
-- /lmb exch def
--
-- 1 7 -1 0
-- { exch dup dup rmb and eq { pop exit }{ 2 mul exch pop } ifelse
-- } for
-- /rmb exch def
--
- % Calculate the bounding box values.
- % Note that these must be corrected to produce closed-open intervals.
-- /llx lm 8 mul lmb add def
-+ /llx lm def
- /lly devheight bm sub 1 sub def
-- /urx rm 8 mul rmb add 1 add def
-+ /urx rm 1 add def
- /ury devheight tm sub def
-
- % Write out the magic string and bounding box information
-@@ -206,38 +197,31 @@
- epsifile lly write==only epsifile ( ) writestring
- epsifile urx write==only epsifile ( ) writestring
- epsifile ury write==
-- epsifile (%%BeginPreview: ) writestring
-- epsifile urx llx sub write==only epsifile ( ) writestring
-- epsifile bm tm sub 1 add write==only epsifile ( 1 ) writestring
-- epsifile bm tm sub 1 add write==
-- epsifile flushfile
-
- % Define character and bit widths for the output line buffer:
- /cwidth rm lm sub 1 add def
-- /bwidth cwidth 8 mul def
-- /owidth urx llx sub 7 add 8 idiv def
- /out cwidth string def
-
-- % Create a 1-bit-high device for bitblt to align with the bbox
-- gsave
-- matrix cwidth 8 mul 1 <00 ff> makeimagedevice setdevice
-+ epsifile (%%BeginPreview: ) writestring
-+ epsifile cwidth write==only epsifile ( ) writestring
-+ epsifile bm tm sub 1 add write==only epsifile ( 8 ) writestring
-+ epsifile bm tm sub 1 add
-+ cwidth 39 add 40 idiv mul write==
-+ epsifile flushfile
-
-- % 'image' a zero string to clear the line device
-- bwidth 1 1 matrix cwidth string image
-+ gsave
-
- tm 1 bm
- { % Get a scan line interval from the array device
- arraydevice exch row copyscanlines lm cwidth getinterval
-- lmb 0 gt
-- { % 'image' it into the line device with the lmb offset
-- bwidth 1 1 [1 0 0 1 lmb 0] 5 -1 roll image
-- % Now we get the modified scan line
-- currentdevice 0 out copyscanlines 0 owidth getinterval
-- } if
-- % Write out the hex data
-- epsifile (% ) writestring
-- epsifile exch writehexstring
-- epsifile (\n) writestring
-+ % Write out the hex data as 40 bytes per line (82 chars)
-+ 0 40 cwidth
-+ { epsifile (% ) writestring
-+ epsifile exch 2 index exch
-+ dup cwidth exch sub 40 .min getinterval writehexstring
-+ epsifile (\n) writestring
-+ } for
-+ pop
- } for
-
- epsifile (%%EndImage\n) writestring
diff --git a/print/ghostscript-gpl/files/patch-lips:gdevl4r.c b/print/ghostscript-gpl/files/patch-lips:gdevl4r.c
new file mode 100644
index 000000000000..018f0f93c495
--- /dev/null
+++ b/print/ghostscript-gpl/files/patch-lips:gdevl4r.c
@@ -0,0 +1,13 @@
+--- lips/gdevl4r.c.orig Thu Nov 2 12:09:18 2000
++++ lips/gdevl4r.c Sun Nov 10 21:12:14 2002
+@@ -178,8 +178,8 @@
+ private int lips4c_output_page(gx_device_printer * pdev, FILE * prn_stream);
+ private int lips_delta_encode(byte * inBuff, byte * prevBuff, byte * outBuff, byte * diffBuff, int Length);
+ private int lips_byte_cat(byte * TotalBuff, byte * Buff, int TotalLen, int Len);
+-private int lips_print_page_copies(P4(gx_device_printer * pdev, FILE * prn_stream, lips_printer_type ptype, int numcopies));
+-private int lips_print_page_copies(P4(gx_device_printer * pdev, FILE * prn_stream, lips_printer_type ptype, int numcopies));
++private int lips_print_page_copies(gx_device_printer * pdev, FILE * prn_stream, lips_printer_type ptype, int numcopies);
++private int lips_print_page_copies(gx_device_printer * pdev, FILE * prn_stream, lips_printer_type ptype, int numcopies);
+ private int lips4type_print_page_copies(gx_device_printer * pdev, FILE * prn_stream, int num_copies, int ptype);
+
+ private int
diff --git a/print/ghostscript-gpl/files/patch-lips:gdevl4v.c b/print/ghostscript-gpl/files/patch-lips:gdevl4v.c
new file mode 100644
index 000000000000..c4b3bfb38e76
--- /dev/null
+++ b/print/ghostscript-gpl/files/patch-lips:gdevl4v.c
@@ -0,0 +1,65 @@
+--- lips/gdevl4v.c.orig Thu Nov 2 12:09:18 2000
++++ lips/gdevl4v.c Sun Nov 10 21:17:34 2002
+@@ -230,41 +230,35 @@
+ };
+
+ /* Vector device implementation */
+-private int lips4v_beginpage(P1(gx_device_vector * vdev));
+-private int lips4v_setfillcolor(P2(gx_device_vector * vdev,
+- const gx_drawing_color * pdc));
+-private int lips4v_setstrokecolor(P2(gx_device_vector * vdev,
+- const gx_drawing_color * pdc));
+-private int lips4v_setdash(P4(gx_device_vector * vdev, const float *pattern,
+- uint count, floatp offset));
+-private int lips4v_setflat(P2(gx_device_vector * vdev, floatp flatness));
++private int lips4v_beginpage(gx_device_vector * vdev);
++private int lips4v_setfillcolor(gx_device_vector * vdev,
++ const gx_drawing_color * pdc);
++private int lips4v_setstrokecolor(gx_device_vector * vdev,
++ const gx_drawing_color * pdc);
++private int lips4v_setdash(gx_device_vector * vdev, const float *pattern,
++ uint count, floatp offset);
++private int lips4v_setflat(gx_device_vector * vdev, floatp flatness);
+ private int
+-lips4v_setlogop(P3
+-
+- (gx_device_vector * vdev, gs_logical_operation_t lop,
+- gs_logical_operation_t diff));
++lips4v_setlogop(gx_device_vector * vdev, gs_logical_operation_t lop,
++ gs_logical_operation_t diff);
+ private int
+
+-lips4v_beginpath(P2(gx_device_vector * vdev, gx_path_type_t type));
++lips4v_beginpath(gx_device_vector * vdev, gx_path_type_t type);
++private int
++lips4v_moveto(gx_device_vector * vdev, floatp x0, floatp y0, floatp x,
++ floatp y, gx_path_type_t type);
+ private int
+-lips4v_moveto(P6
+- (gx_device_vector * vdev, floatp x0, floatp y0, floatp x,
+- floatp y, gx_path_type_t type));
+-private int
+-lips4v_lineto(P6
+- (gx_device_vector * vdev, floatp x0, floatp y0, floatp x,
+- floatp y, gx_path_type_t type));
++lips4v_lineto(gx_device_vector * vdev, floatp x0, floatp y0, floatp x,
++ floatp y, gx_path_type_t type);
+ private int
+-lips4v_curveto(P10
+- (gx_device_vector * vdev, floatp x0, floatp y0, floatp x1,
++lips4v_curveto(gx_device_vector * vdev, floatp x0, floatp y0, floatp x1,
+ floatp y1, floatp x2, floatp y2, floatp x3, floatp y3,
+- gx_path_type_t type));
++ gx_path_type_t type);
+ private int
+-lips4v_closepath(P6
+- (gx_device_vector * vdev, floatp x, floatp y, floatp x_start,
+- floatp y_start, gx_path_type_t type));
++lips4v_closepath(gx_device_vector * vdev, floatp x, floatp y, floatp x_start,
++ floatp y_start, gx_path_type_t type);
+
+-private int lips4v_endpath(P2(gx_device_vector * vdev, gx_path_type_t type));
++private int lips4v_endpath(gx_device_vector * vdev, gx_path_type_t type);
+ private int lips4v_setlinewidth(gx_device_vector * vdev, floatp width);
+ private int lips4v_setlinecap(gx_device_vector * vdev, gs_line_cap cap);
+ private int lips4v_setlinejoin(gx_device_vector * vdev, gs_line_join join);
diff --git a/print/ghostscript-gpl/files/patch-lips:gdevlprn.h b/print/ghostscript-gpl/files/patch-lips:gdevlprn.h
new file mode 100644
index 000000000000..f8169e113db7
--- /dev/null
+++ b/print/ghostscript-gpl/files/patch-lips:gdevlprn.h
@@ -0,0 +1,11 @@
+--- lips/gdevlprn.h.orig Thu Nov 2 12:09:18 2000
++++ lips/gdevlprn.h Sun Nov 10 21:11:22 2002
+@@ -29,7 +29,7 @@
+ #include "gdevprn.h"
+
+ #define lprn_dev_proc_image_out(proc)\
+- void proc(P6(gx_device_printer *, FILE *, int, int, int, int))
++ void proc(gx_device_printer *, FILE *, int, int, int, int)
+
+ #define dev_proc_image_out(proc) lprn_dev_proc_image_out(proc)
+
diff --git a/print/ghostscript-gpl/files/patch-md2k:gdevmd2k.c b/print/ghostscript-gpl/files/patch-md2k:gdevmd2k.c
new file mode 100644
index 000000000000..4b1049db015c
--- /dev/null
+++ b/print/ghostscript-gpl/files/patch-md2k:gdevmd2k.c
@@ -0,0 +1,50 @@
+--- md2k/gdevmd2k.c.orig Sun May 2 14:07:57 1999
++++ md2k/gdevmd2k.c Fri Nov 8 07:29:13 2002
+@@ -638,11 +638,13 @@
+ (k) = gx_bits_to_color_value((v) & ((1 << (b)) - 1), (b))
+
+ private gx_color_index
+-alps_map_cmyk_color(gx_device* pdev,
+- gx_color_value c, gx_color_value m,
+- gx_color_value y, gx_color_value k)
++alps_map_cmyk_color(gx_device* pdev, const gx_color_value cv[])
+ {
+ gx_color_index color;
++ gx_color_value c = cv[0];
++ gx_color_value m = cv[1];
++ gx_color_value y = cv[2];
++ gx_color_value k = cv[3];
+
+ switch (pdev->color_info.depth) {
+ case 1:
+@@ -675,10 +677,12 @@
+ }
+
+ private gx_color_index
+-alps_map_cmy_color(gx_device* pdev,
+- gx_color_value c, gx_color_value m,
+- gx_color_value y, gx_color_value k)
++alps_map_cmy_color(gx_device* pdev, const gx_color_value cv[])
+ {
++ gx_color_value c = cv[0];
++ gx_color_value m = cv[1];
++ gx_color_value y = cv[2];
++ gx_color_value k = cv[3];
+ int nbits = pdev->color_info.depth;
+ ulong weight = ((gx_max_color_value - k) << 10) / gx_max_color_value;
+ c = ((c * weight) >> 10) + k;
+@@ -694,10 +698,12 @@
+ /* Mapping of RGB colors to gray values. */
+
+ private gx_color_index
+-alps_map_rgb_color(gx_device *pdev,
+- gx_color_value r, gx_color_value g, gx_color_value b)
++alps_map_rgb_color(gx_device *pdev, const gx_color_value cv[])
+ {
+
++ gx_color_value r = cv[0];
++ gx_color_value g = cv[1];
++ gx_color_value b = cv[2];
+ if (gx_color_value_to_byte(r & g & b) == 0xff) {
+ return (gx_color_index) 0; /* White */
+ } else {
diff --git a/print/ghostscript-gpl/files/patch-mjc:gdevmjc.c b/print/ghostscript-gpl/files/patch-mjc:gdevmjc.c
index 99ff0bcb245f..ffdae781ffa1 100644
--- a/print/ghostscript-gpl/files/patch-mjc:gdevmjc.c
+++ b/print/ghostscript-gpl/files/patch-mjc:gdevmjc.c
@@ -1,5 +1,5 @@
---- mjc/gdevmjc.c.orig Tue May 23 19:16:52 2000
-+++ mjc/gdevmjc.c Tue May 23 19:17:44 2000
+--- mjc/gdevmjc.c.orig Sat Nov 2 17:58:50 1996
++++ mjc/gdevmjc.c Sun Nov 10 21:37:22 2002
@@ -43,7 +43,8 @@
#include <limits.h>
#include "gdevprn.h"
@@ -20,25 +20,32 @@
#define PAPER_SIZE_B4 30
#define PAPER_SIZE_B5 31
-@@ -190,14 +193,12 @@
+@@ -190,18 +193,16 @@
private dev_proc_print_page(mjc720_print_page);
private dev_proc_print_page(mj500c_print_page);
-private dev_proc_get_props(mj_get_props);
-private dev_proc_put_props(mj_put_props);
+-
+-private void expand_line(P4(word*, int, int, int));
+-private int put_prop_float(P5(gs_prop_item *, float *, float, float, int));
+-private int put_prop_int(P5(gs_prop_item *, int *, int, int, int));
+private dev_proc_get_params(mj_get_params);
+private dev_proc_put_params(mj_put_params);
- private void expand_line(P4(word*, int, int, int));
--private int put_prop_float(P5(gs_prop_item *, float *, float, float, int));
--private int put_prop_int(P5(gs_prop_item *, int *, int, int, int));
--
-private void set_bpp(P2(gx_device *, int));
-+private int mj_put_param_int(P6(gs_param_list *, gs_param_name, int *, int, int, int));
-+private void mj_set_bpp(P2(gx_device *, int));
++private void expand_line(word*, int, int, int);
++private int mj_put_param_int(gs_param_list *, gs_param_name, int *, int, int, int);
++private void mj_set_bpp(gx_device *, int);
+
+-private uint gdev_prn_rasterwidth(P2(const gx_device_printer *, int ));
++private uint gdev_prn_rasterwidth(const gx_device_printer *, int );
- private uint gdev_prn_rasterwidth(P2(const gx_device_printer *, int ));
+-private gx_color_index mjc_correct_color(P2(gx_device_printer *, gx_color_index));
++private gx_color_index mjc_correct_color(gx_device_printer *, gx_color_index);
+ /* The device descriptors */
+ struct gx_device_mj_s {
@@ -224,7 +225,7 @@
#define mj ((gx_device_mj *) pdev)
@@ -70,8 +77,10 @@
+ proc_put_params\
}
- private int mjc_open(P1(gx_device *));
- private int mj_colour_open(P1(gx_device *));
+-private int mjc_open(P1(gx_device *));
+-private int mj_colour_open(P1(gx_device *));
++private int mjc_open(gx_device *);
++private int mj_colour_open(gx_device *);
private gx_device_procs mj_procs =
-mj_colour_procs(mjc_open, mj_get_props, mj_put_props);
@@ -108,7 +117,7 @@
switch (mj->colorcomp) {
case 1:
-@@ -360,80 +358,74 @@
+@@ -360,84 +358,78 @@
* and control over the bits-per-pixel used in output rendering */
/* Added properties for DeskJet 5xxC */
@@ -245,6 +254,11 @@
}
/* ------ Internal routines ------ */
+-private int mj_colour_print_page(P3(gx_device_printer *, FILE *, int));
++private int mj_colour_print_page(gx_device_printer *, FILE *, int);
+
+
+ private int
@@ -1163,7 +1155,8 @@
/* Send each scan line in turn */
@@ -255,7 +269,35 @@
int cErr, mErr, yErr, kErr;
int this_pass, i;
long int lnum;
-@@ -1685,39 +1678,25 @@
+@@ -1412,10 +1405,10 @@
+
+ void
+ mj_color_correct(gx_color_value *Rptr ,gx_color_value *Gptr , gx_color_value *Bptr )
+- /* R,G,B : 0`255 */
++ /* R,G,B : 0)B`255 */
+ {
+- short R,G,B; /* R,G,B : 0`255 */
+- short C,M,Y; /* C,M,Y : 0`1023 */
++ short R,G,B; /* R,G,B : 0)B`255 */
++ short C,M,Y; /* C,M,Y : 0)B`1023 */
+ short H,D,Wa; /* ese-HSV */
+ long S; /* HSV */
+
+@@ -1517,9 +1510,11 @@
+ * c, m, y, inks by reducing the cyan component to give a truer black.
+ */
+ private gx_color_index
+-gdev_mjc_map_rgb_color(gx_device *pdev, gx_color_value r,
+- gx_color_value g, gx_color_value b)
++gdev_mjc_map_rgb_color(gx_device *pdev, const gx_color_value cv[])
+ {
++ gx_color_value r = cv[0];
++ gx_color_value g = cv[1];
++ gx_color_value b = cv[2];
+ if (gx_color_value_to_byte(r & g & b) == 0xff)
+ return (gx_color_index)0; /* white */
+ else {
+@@ -1685,39 +1680,25 @@
}
private int
@@ -311,7 +353,7 @@
{ gx_device_color_info *ci = &pdev->color_info;
/* Only valid bits-per-pixel are 1, 3, 8, 16, 24, 32 */
int bpp = bits_per_pixel < 3 ? 1 : bits_per_pixel < 8 ? 3 :
-@@ -1725,9 +1704,9 @@
+@@ -1725,9 +1706,9 @@
ci->num_components = ((bpp == 1) || (bpp == 8) ? 1 : 3);
ci->depth = ((bpp > 1) && (bpp < 8) ? 8 : bpp);
ci->max_gray = (bpp >= 8 ? 255 : 1);
@@ -324,7 +366,7 @@
}
/* This returns either the number of pixels in a scan line, or the number
-@@ -1736,7 +1715,7 @@
+@@ -1736,7 +1717,7 @@
gdev_prn_rasterwidth(const gx_device_printer *pdev, int pixelcount)
{
word raster_width =
diff --git a/print/ghostscript-gpl/files/patch-src:contrib.mak-5.94.add b/print/ghostscript-gpl/files/patch-src:contrib.mak-5.94.add
deleted file mode 100644
index 1d2c46b8ea2e..000000000000
--- a/print/ghostscript-gpl/files/patch-src:contrib.mak-5.94.add
+++ /dev/null
@@ -1,14 +0,0 @@
---- src/contrib.mak-5.94.add.orig Sun Oct 17 05:20:06 1999
-+++ src/contrib.mak-5.94.add Tue Jun 19 03:20:13 2001
-@@ -102,11 +102,6 @@
- $(GLOBJ)hpdjprn.$(OBJ): $(GLSRC)hpdjprn.c
- $(GLCC) $(C_) $(O_)$@ $(hpdj_opts) $(GLSRC)hpdjprn.c
-
--$(GLOBJ)pclcomp.$(OBJ): $(GLSRC)pclcomp.c
-- $(GLCC) $(C_) $(O_)$@ $(hpdj_opts) $(GLSRC)pclcomp.c
--
--$(GLOBJ)pagecount.$(OBJ): $(GLSRC)pagecount.c
-- $(GLCC) $(C_) $(O_)$@ $(hpdj_opts) $(GLSRC)pagecount.c
-
-
- $(DD)hpdj.dev: $(hpdj_) $(DD)page.dev
diff --git a/print/ghostscript-gpl/files/patch-src:cpca_gdevl4v.c b/print/ghostscript-gpl/files/patch-src:cpca_gdevl4v.c
new file mode 100644
index 000000000000..005f7cdf39dc
--- /dev/null
+++ b/print/ghostscript-gpl/files/patch-src:cpca_gdevl4v.c
@@ -0,0 +1,65 @@
+--- src/cpca_gdevl4v.c.orig Tue May 7 00:30:00 2002
++++ src/cpca_gdevl4v.c Fri Dec 6 04:59:34 2002
+@@ -316,41 +316,35 @@
+ };
+
+ /* Vector device implementation */
+-private int lips4v_beginpage(P1(gx_device_vector * vdev));
+-private int lips4v_setfillcolor(P2(gx_device_vector * vdev,
+- const gx_drawing_color * pdc));
+-private int lips4v_setstrokecolor(P2(gx_device_vector * vdev,
+- const gx_drawing_color * pdc));
+-private int lips4v_setdash(P4(gx_device_vector * vdev, const float *pattern,
+- uint count, floatp offset));
+-private int lips4v_setflat(P2(gx_device_vector * vdev, floatp flatness));
++private int lips4v_beginpage(gx_device_vector * vdev);
++private int lips4v_setfillcolor(gx_device_vector * vdev,
++ const gx_drawing_color * pdc);
++private int lips4v_setstrokecolor(gx_device_vector * vdev,
++ const gx_drawing_color * pdc);
++private int lips4v_setdash(gx_device_vector * vdev, const float *pattern,
++ uint count, floatp offset);
++private int lips4v_setflat(gx_device_vector * vdev, floatp flatness);
+ private int
+-lips4v_setlogop(P3
+-
+- (gx_device_vector * vdev, gs_logical_operation_t lop,
+- gs_logical_operation_t diff));
++lips4v_setlogop(gx_device_vector * vdev, gs_logical_operation_t lop,
++ gs_logical_operation_t diff);
+ private int
+
+-lips4v_beginpath(P2(gx_device_vector * vdev, gx_path_type_t type));
++lips4v_beginpath(gx_device_vector * vdev, gx_path_type_t type);
++private int
++lips4v_moveto(gx_device_vector * vdev, floatp x0, floatp y0, floatp x,
++ floatp y, gx_path_type_t type);
+ private int
+-lips4v_moveto(P6
+- (gx_device_vector * vdev, floatp x0, floatp y0, floatp x,
+- floatp y, gx_path_type_t type));
+-private int
+-lips4v_lineto(P6
+- (gx_device_vector * vdev, floatp x0, floatp y0, floatp x,
+- floatp y, gx_path_type_t type));
++lips4v_lineto(gx_device_vector * vdev, floatp x0, floatp y0, floatp x,
++ floatp y, gx_path_type_t type);
+ private int
+-lips4v_curveto(P10
+- (gx_device_vector * vdev, floatp x0, floatp y0, floatp x1,
++lips4v_curveto(gx_device_vector * vdev, floatp x0, floatp y0, floatp x1,
+ floatp y1, floatp x2, floatp y2, floatp x3, floatp y3,
+- gx_path_type_t type));
++ gx_path_type_t type);
+ private int
+-lips4v_closepath(P6
+- (gx_device_vector * vdev, floatp x, floatp y, floatp x_start,
+- floatp y_start, gx_path_type_t type));
++lips4v_closepath(gx_device_vector * vdev, floatp x, floatp y, floatp x_start,
++ floatp y_start, gx_path_type_t type);
+
+-private int lips4v_endpath(P2(gx_device_vector * vdev, gx_path_type_t type));
++private int lips4v_endpath(gx_device_vector * vdev, gx_path_type_t type);
+ private int lips4v_setlinewidth(gx_device_vector * vdev, floatp width);
+ private int lips4v_setlinecap(gx_device_vector * vdev, gs_line_cap cap);
+ private int lips4v_setlinejoin(gx_device_vector * vdev, gs_line_join join);
diff --git a/print/ghostscript-gpl/files/patch-src:dviprlib.c b/print/ghostscript-gpl/files/patch-src:dviprlib.c
index 67662665f273..c61ca748cbc2 100644
--- a/print/ghostscript-gpl/files/patch-src:dviprlib.c
+++ b/print/ghostscript-gpl/files/patch-src:dviprlib.c
@@ -1,5 +1,47 @@
--- src/dviprlib.c.orig Tue May 13 16:14:09 1997
-+++ src/dviprlib.c Mon Apr 22 23:02:58 2002
++++ src/dviprlib.c Sun Nov 10 23:26:06 2002
+@@ -39,8 +39,8 @@
+
+
+ /*--- forward declarations ---*/
+-private int dviprt_read_S_cfg(P2(dviprt_cfg_t *,dviprt_cfg_i *));
+-private int dviprt_read_QR_cfg(P2(dviprt_cfg_t *,dviprt_cfg_i *));
++private int dviprt_read_S_cfg(dviprt_cfg_t *,dviprt_cfg_i *);
++private int dviprt_read_QR_cfg(dviprt_cfg_t *,dviprt_cfg_i *);
+
+ /*--- library functions ---*/
+ int
+@@ -429,21 +429,21 @@
+
+ /*--- forward declarations ---*/
+ private int dviprt_set_select
+- (P4(dviprt_cfg_item_t *,uchar **,dviprt_cfg_t *,dviprt_cfg_i *));
++ (dviprt_cfg_item_t *,uchar **,dviprt_cfg_t *,dviprt_cfg_i *);
+ private int dviprt_set_integer
+- (P4(dviprt_cfg_item_t *, uchar *, dviprt_cfg_t *,dviprt_cfg_i *));
++ (dviprt_cfg_item_t *, uchar *, dviprt_cfg_t *,dviprt_cfg_i *);
+ private int dviprt_set_strings
+- (P4(dviprt_cfg_item_t *,uchar *,dviprt_cfg_t *,dviprt_cfg_i *));
++ (dviprt_cfg_item_t *,uchar *,dviprt_cfg_t *,dviprt_cfg_i *);
+ private int dviprt_set_rpexpr
+- (P6(dviprt_cfg_item_t *,uchar *,int , dviprt_cfg_t *,dviprt_cfg_i *,int));
++ (dviprt_cfg_item_t *,uchar *,int , dviprt_cfg_t *,dviprt_cfg_i *,int);
+ private int dviprt_set_code
+- (P4(dviprt_cfg_item_t *,uchar *,dviprt_cfg_t *,dviprt_cfg_i *));
++ (dviprt_cfg_item_t *,uchar *,dviprt_cfg_t *,dviprt_cfg_i *);
+
+-private long dviprt_oct2long(P3(uchar *,uchar *,uchar **));
+-private long dviprt_dec2long(P3(uchar *,uchar *,uchar **));
+-private long dviprt_hex2long(P3(uchar *,uchar *,uchar **));
++private long dviprt_oct2long(uchar *,uchar *,uchar **);
++private long dviprt_dec2long(uchar *,uchar *,uchar **);
++private long dviprt_hex2long(uchar *,uchar *,uchar **);
+
+-private int dviprt_printtokenerror(P4(dviprt_cfg_i *,char *,int ,int));
++private int dviprt_printtokenerror(dviprt_cfg_i *,char *,int ,int);
+
+ /*--- macros ---*/
+ #define strlcmp(tmplt,str,len) \
@@ -1433,7 +1433,9 @@
char *dviprt_prtcodename[] = { CFG_PRTCODE_NAME, NULL };
char *dviprt_encodename[] = { CFG_ENCODE_NAME, NULL };
@@ -11,3 +53,82 @@
/*--- library functions ---*/
int
+@@ -1568,16 +1570,16 @@
+
+
+ /*--- forward declarations ---*/
+-private int dviprt_getmaximalwidth(P1(dviprt_print *));
+-private int dviprt_flush_buffer(P2(dviprt_print *,uchar far *));
+-private int dviprt_output_transpose(P3(dviprt_print *,uchar far *,uint ));
+-private int dviprt_output_nontranspose(P3(dviprt_print *,uchar far *,uint ));
+-private int dviprt_output_nontranspose_reverse(P3(dviprt_print *,uchar far *,uint ));
+-private int dviprt_reverse_bits(P2(uchar far *,uint));
+-private int dviprt_transpose8x8(P4(uchar far *,uint, uchar far *,uint));
+-private int dviprt_output_expr(P4(dviprt_print *,int,uint,uint));
+-private int dviprt_default_outputproc(P3(uchar far *,long ,void *));
+-private long dviprt_getbuffersize(P1(dviprt_print *));
++private int dviprt_getmaximalwidth(dviprt_print *);
++private int dviprt_flush_buffer(dviprt_print *,uchar far *);
++private int dviprt_output_transpose(dviprt_print *,uchar far *,uint );
++private int dviprt_output_nontranspose(dviprt_print *,uchar far *,uint );
++private int dviprt_output_nontranspose_reverse(dviprt_print *,uchar far *,uint );
++private int dviprt_reverse_bits(uchar far *,uint);
++private int dviprt_transpose8x8(uchar far *,uint, uchar far *,uint);
++private int dviprt_output_expr(dviprt_print *,int,uint,uint);
++private int dviprt_default_outputproc(uchar far *,long ,void *);
++private long dviprt_getbuffersize(dviprt_print *);
+
+ /*--- library functions ---*/
+ long
+@@ -1618,7 +1620,7 @@
+ int
+ dviprt_setstream
+ #ifdef __PROTOTYPES__
+- (dviprt_print *pprint,int (*func)(P3(uchar far *,long ,void*)),void *pstream)
++ (dviprt_print *pprint,int (*func)(uchar far *,long ,void*),void *pstream)
+ #else
+ (pprint,func,pstream)
+ dviprt_print *pprint;
+@@ -2264,19 +2266,19 @@
+ #define DVIPRT_SUPPORT_PCL 1
+
+ /*--- forward declarations ---*/
+-private long dviprt_null_getworksize(P2(dviprt_print *,long ));
+-private long dviprt_null_encode(P3(dviprt_print *,long ,int ));
+-private long dviprt_hex_getworksize(P2(dviprt_print *,long ));
+-private long dviprt_hex_encode(P3(dviprt_print *,long ,int ));
++private long dviprt_null_getworksize(dviprt_print *,long );
++private long dviprt_null_encode(dviprt_print *,long ,int );
++private long dviprt_hex_getworksize(dviprt_print *,long );
++private long dviprt_hex_encode(dviprt_print *,long ,int );
+ #if DVIPRT_SUPPORT_FAX
+-private long dviprt_fax_getworksize(P2(dviprt_print *,long ));
+-private long dviprt_fax_encode(P3(dviprt_print *,long ,int ));
++private long dviprt_fax_getworksize(dviprt_print *,long );
++private long dviprt_fax_encode(dviprt_print *,long ,int );
+ #endif
+ #if DVIPRT_SUPPORT_PCL
+-private long dviprt_pcl1_getworksize(P2(dviprt_print *,long ));
+-private long dviprt_pcl1_encode(P3(dviprt_print *,long ,int ));
+-private long dviprt_pcl2_getworksize(P2(dviprt_print *,long ));
+-private long dviprt_pcl2_encode(P3(dviprt_print *,long ,int ));
++private long dviprt_pcl1_getworksize(dviprt_print *,long );
++private long dviprt_pcl1_encode(dviprt_print *,long ,int );
++private long dviprt_pcl2_getworksize(dviprt_print *,long );
++private long dviprt_pcl2_encode(dviprt_print *,long ,int );
+ #endif
+
+ private dviprt_encoder dviprt_encoder_list[] = {
+@@ -2468,9 +2470,9 @@
+ int o_count;
+ int o_bufcount;
+ } FaxEncodeInfo;
+-private int dviprt_fax_set_white(P2(int,FaxEncodeInfo *));
+-private int dviprt_fax_set_black(P2(int,FaxEncodeInfo *));
+-private int dviprt_fax_set_bitcount(P2(FaxEncode_t *,FaxEncodeInfo *));
++private int dviprt_fax_set_white(int,FaxEncodeInfo *);
++private int dviprt_fax_set_black(int,FaxEncodeInfo *);
++private int dviprt_fax_set_bitcount(FaxEncode_t *,FaxEncodeInfo *);
+
+ private long
+ dviprt_fax_encode(dviprt_print *pprint,long s,int f)
diff --git a/print/ghostscript-gpl/files/patch-src:dviprlib.h b/print/ghostscript-gpl/files/patch-src:dviprlib.h
new file mode 100644
index 000000000000..2a671205b46d
--- /dev/null
+++ b/print/ghostscript-gpl/files/patch-src:dviprlib.h
@@ -0,0 +1,38 @@
+--- src/dviprlib.h.orig Tue May 13 16:10:34 1997
++++ src/dviprlib.h Sun Nov 10 23:32:53 2002
+@@ -337,23 +337,23 @@
+ #ifdef dviprlib_implementation
+ typedef struct {
+ int no;
+- long (*getworksize)(P2(dviprt_print *,long ));
+- long (*encode)(P3(dviprt_print *,long,int));
++ long (*getworksize)(dviprt_print *,long );
++ long (*encode)(dviprt_print *,long,int);
+ } dviprt_encoder;
+
+ #define liblocal private
+
+-liblocal dviprt_encoder *dviprt_getencoder_(P1(int ));
+-liblocal int dviprt_setcfgbuffer_(P3(dviprt_cfg_i *,int ,int ));
+-liblocal int dviprt_resetcfgbuffer_(P1(dviprt_cfg_i *));
+-liblocal int dviprt_initcfg_(P2(dviprt_cfg_t *,dviprt_cfg_i *));
+-liblocal int dviprt_printmessage(P2(char *,int ));
+-liblocal int dviprt_printerror(P2(char *,int ));
+-liblocal int dviprt_printwarning(P2(char *,int ));
+-liblocal int dviprt_printcfgerror(P3(dviprt_cfg_i *,char *,int ));
+-liblocal int dviprt_printcfgwarning(P3(dviprt_cfg_i *,char *,int ));
++liblocal dviprt_encoder *dviprt_getencoder_(int );
++liblocal int dviprt_setcfgbuffer_(dviprt_cfg_i *,int ,int );
++liblocal int dviprt_resetcfgbuffer_(dviprt_cfg_i *);
++liblocal int dviprt_initcfg_(dviprt_cfg_t *,dviprt_cfg_i *);
++liblocal int dviprt_printmessage(char *,int );
++liblocal int dviprt_printerror(char *,int );
++liblocal int dviprt_printwarning(char *,int );
++liblocal int dviprt_printcfgerror(dviprt_cfg_i *,char *,int );
++liblocal int dviprt_printcfgwarning(dviprt_cfg_i *,char *,int );
+
+-extern int dviprt_print_headercomment_(P4(char *,char *,char *,FILE *));
++extern int dviprt_print_headercomment_(char *,char *,char *,FILE *);
+ extern char dviprt_message_buffer[];
+ #endif dviprlib_implementation
+
diff --git a/print/ghostscript-gpl/files/patch-src:gdevccr.c b/print/ghostscript-gpl/files/patch-src:gdevccr.c
new file mode 100644
index 000000000000..56bb760b8ac8
--- /dev/null
+++ b/print/ghostscript-gpl/files/patch-src:gdevccr.c
@@ -0,0 +1,15 @@
+--- src/gdevccr.c.orig Fri Feb 22 07:24:51 2002
++++ src/gdevccr.c Sun Nov 10 22:38:51 2002
+@@ -112,8 +112,11 @@
+ /* ------ Color mapping routines ------ */
+ /* map an rgb color to a ccr cmy bitmap */
+ private gx_color_index
+-ccr_map_rgb_color(gx_device *pdev, ushort r, ushort g, ushort b)
++ccr_map_rgb_color(gx_device *pdev, const ushort cv[])
+ {
++ ushort r = cv[0];
++ ushort g = cv[1];
++ ushort b = cv[2];
+ register int shift = gx_color_value_bits - 1;
+ r>>=shift;
+ g>>=shift;
diff --git a/print/ghostscript-gpl/files/patch-src:gdevcp50.c b/print/ghostscript-gpl/files/patch-src:gdevcp50.c
new file mode 100644
index 000000000000..ffc8308ec35d
--- /dev/null
+++ b/print/ghostscript-gpl/files/patch-src:gdevcp50.c
@@ -0,0 +1,18 @@
+--- src/gdevcp50.c.orig Fri Feb 22 07:24:51 2002
++++ src/gdevcp50.c Sun Nov 10 22:35:13 2002
+@@ -204,9 +204,12 @@
+
+ /* Map a r-g-b color to a color index. */
+ private gx_color_index
+-cp50_rgb_color(gx_device *dev, gx_color_value r, gx_color_value g,
+- gx_color_value b)
+-{ return ((ulong)gx_color_value_to_byte(r) << 16)+
++cp50_rgb_color(gx_device *dev, const gx_color_value cv[])
++{
++ gx_color_value r = cv[0];
++ gx_color_value g = cv[1];
++ gx_color_value b = cv[2];
++ return ((ulong)gx_color_value_to_byte(r) << 16)+
+ ((uint)gx_color_value_to_byte(g) << 8) +
+ gx_color_value_to_byte(b);
+ }
diff --git a/print/ghostscript-gpl/files/patch-src:gdevdj9.c b/print/ghostscript-gpl/files/patch-src:gdevdj9.c
new file mode 100644
index 000000000000..f58a6c7de792
--- /dev/null
+++ b/print/ghostscript-gpl/files/patch-src:gdevdj9.c
@@ -0,0 +1,255 @@
+--- src/gdevdj9.c.orig Fri Nov 8 06:15:08 2002
++++ src/gdevdj9.c Sun Nov 10 22:00:45 2002
+@@ -243,19 +243,19 @@
+ };
+
+ private int
+- rescale_byte_wise1x1(P4(int bytecount, const byte * inbytea,
+- const byte * inbyteb, byte * outbyte));
++ rescale_byte_wise1x1(int bytecount, const byte * inbytea,
++ const byte * inbyteb, byte * outbyte);
+ private int
+- rescale_byte_wise2x1(P4(int bytecount, const byte * inbytea,
+- const byte * inbyteb, byte * outbyte));
++ rescale_byte_wise2x1(int bytecount, const byte * inbytea,
++ const byte * inbyteb, byte * outbyte);
+ private int
+- rescale_byte_wise1x2(P4(int bytecount, const byte * inbytea,
+- const byte * inbyteb, byte * outbyte));
++ rescale_byte_wise1x2(int bytecount, const byte * inbytea,
++ const byte * inbyteb, byte * outbyte);
+ private int
+- rescale_byte_wise2x2(P4(int bytecount, const byte * inbytea,
+- const byte * inbyteb, byte * outbyte));
++ rescale_byte_wise2x2(int bytecount, const byte * inbytea,
++ const byte * inbyteb, byte * outbyte);
+
+-private int (* const rescale_color_plane[2][2]) (P4(int, const byte *, const byte *, byte *)) = {
++private int (* const rescale_color_plane[2][2]) (int, const byte *, const byte *, byte *) = {
+ {
+ rescale_byte_wise1x1, rescale_byte_wise1x2
+ },
+@@ -264,7 +264,7 @@
+ }
+ };
+ /*
+-private int (* const rescale_color_plane[2][2]) (P4(int, const byte *, const byte *, byte *)) = {
++private int (* const rescale_color_plane[2][2]) (int, const byte *, const byte *, byte *) = {
+ {
+ rescale_byte_wise1x1, rescale_byte_wise1x1
+ },
+@@ -273,8 +273,8 @@
+ }
+ };
+ */
+-private int cdj970_write_header(P2(gx_device *, FILE *));
+-private int cdj970_write_trailer(P2(gx_device *, FILE *));
++private int cdj970_write_header(gx_device *, FILE *);
++private int cdj970_write_trailer(gx_device *, FILE *);
+
+ /*
+ * Drivers stuff.
+@@ -422,16 +422,16 @@
+ };
+
+ /* function pointer typedefs for device driver struct */
+-typedef void (*StartRasterMode) (P3(gx_device_printer * pdev, int paper_size,
+- FILE * prn_stream));
+-typedef void (*PrintNonBlankLines) (P6(gx_device_printer * pdev,
++typedef void (*StartRasterMode) (gx_device_printer * pdev, int paper_size,
++ FILE * prn_stream);
++typedef void (*PrintNonBlankLines) (gx_device_printer * pdev,
+ struct ptr_arrays *data_ptrs,
+ struct misc_struct *misc_vars,
+ struct error_val_field *error_values,
+ const Gamma *gamma,
+- FILE * prn_stream));
++ FILE * prn_stream);
+
+-typedef void (*TerminatePage) (P2(gx_device_printer * pdev, FILE * prn_stream));
++typedef void (*TerminatePage) (gx_device_printer * pdev, FILE * prn_stream);
+
+ typedef struct gx_device_cdj970_s {
+ gx_device_common;
+@@ -529,18 +529,18 @@
+ }
+
+ private void
+- cdj970_start_raster_mode(P3(gx_device_printer * pdev,
+- int papersize, FILE * prn_stream));
++ cdj970_start_raster_mode(gx_device_printer * pdev,
++ int papersize, FILE * prn_stream);
+
+ private void
+- cdj970_print_non_blank_lines(P6(gx_device_printer * pdev,
++ cdj970_print_non_blank_lines(gx_device_printer * pdev,
+ struct ptr_arrays *data_ptrs,
+ struct misc_struct *misc_vars,
+ struct error_val_field *error_values,
+ const Gamma *gamma,
+- FILE * prn_stream));
++ FILE * prn_stream);
+ private void
+- cdj970_terminate_page(P2(gx_device_printer * pdev, FILE * prn_stream));
++ cdj970_terminate_page(gx_device_printer * pdev, FILE * prn_stream);
+
+
+ private const gx_device_procs cdj970_procs =
+@@ -555,12 +555,12 @@
+ cdj970_terminate_page);
+
+ /* Forward references */
+-private int cdj_put_param_int(P6(gs_param_list *, gs_param_name,
+- int *, int, int, int));
+-private int cdj_put_param_float(P6(gs_param_list *, gs_param_name, float
+- *, float, float, int));
+-private int cdj_put_param_bpp(P5(gx_device *, gs_param_list *, int, int, int));
+-private int cdj_set_bpp(P3(gx_device *, int, int));
++private int cdj_put_param_int(gs_param_list *, gs_param_name,
++ int *, int, int, int);
++private int cdj_put_param_float(gs_param_list *, gs_param_name, float
++ *, float, float, int);
++private int cdj_put_param_bpp(gx_device *, gs_param_list *, int, int, int);
++private int cdj_set_bpp(gx_device *, int, int);
+
+ static int PageCtr = 0;
+
+@@ -692,70 +692,70 @@
+
+ /* internal functions */
+ private void
+- FSDlinebw(P7(int scan, int plane_size,
++ FSDlinebw(int scan, int plane_size,
+ struct error_val_field *error_values,
+ byte * kP,
+- int n, int *ep, byte * dp));
++ int n, int *ep, byte * dp);
+
+ private void
+- FSDlinec2(P9(int scan, int plane_size,
++ FSDlinec2(int scan, int plane_size,
+ struct error_val_field *error_values,
+ byte * cPa, byte * mPa, byte * yPa, int n,
+- byte * dp, int *ep));
++ byte * dp, int *ep);
+
+ private void
+- FSDlinec3(P12(int scan, int plane_size,
++ FSDlinec3(int scan, int plane_size,
+ struct error_val_field *error_values,
+ byte * cPa, byte * mPa, byte * yPa,
+ byte * cPb, byte * mPb, byte * yPb,
+- int n, byte * dp, int *ep));
++ int n, byte * dp, int *ep);
+
+ private void
+- FSDlinec4(P12(int scan, int plane_size,
++ FSDlinec4(int scan, int plane_size,
+ struct error_val_field *error_values,
+ byte * cPa, byte * mPa, byte * yPa,
+ byte * cPb, byte * mPb, byte * yPb,
+- int n, byte * dp, int *ep));
++ int n, byte * dp, int *ep);
+
+ private void
+ init_error_buffer(struct misc_struct *misc_vars,
+ struct ptr_arrays *data_ptrs);
+
+ private void
+- do_floyd_steinberg(P8(int scan, int cscan, int plane_size,
++ do_floyd_steinberg(int scan, int cscan, int plane_size,
+ int plane_size_c, int n,
+ struct ptr_arrays *data_ptrs,
+ gx_device_printer * pdev,
+- struct error_val_field *error_values));
++ struct error_val_field *error_values);
+
+
+ private int
+- do_gcr(P7(int bytecount, byte * inbyte, const byte * kvalues,
++ do_gcr(int bytecount, byte * inbyte, const byte * kvalues,
+ const byte * cvalues, const byte * mvalues,
+- const byte * yvalues, const int *kcorrect));
++ const byte * yvalues, const int *kcorrect);
+
+ private void
+- send_scan_lines(P6(gx_device_printer * pdev,
++ send_scan_lines(gx_device_printer * pdev,
+ struct ptr_arrays *data_ptrs,
+ struct misc_struct *misc_vars,
+ struct error_val_field *error_values,
+ const Gamma *gamma,
+- FILE * prn_stream));
++ FILE * prn_stream);
+
+ private void
+- do_gamma(P3(float mastergamma, float gammaval, byte * values));
++ do_gamma(float mastergamma, float gammaval, byte * values);
+
+ private void
+- do_black_correction(P2(float kvalue, int *kcorrect));
++ do_black_correction(float kvalue, int *kcorrect);
+
+ private void
+- init_data_structure(P3(gx_device_printer * pdev,
++ init_data_structure(gx_device_printer * pdev,
+ struct ptr_arrays *data_ptrs,
+- struct misc_struct *misc_vars));
++ struct misc_struct *misc_vars);
+
+ private void
+- calculate_memory_size(P2(gx_device_printer * pdev,
+- struct misc_struct *misc_vars));
++ calculate_memory_size(gx_device_printer * pdev,
++ struct misc_struct *misc_vars);
+
+
+ /* assign_dpi:
+@@ -2292,12 +2292,13 @@
+ /* gdev_cmyk_map_cmyk_color:
+ ----------------------------------------------------------------------------------*/
+ private gx_color_index gdev_cmyk_map_cmyk_color(gx_device *pdev,
+- gx_color_value cyan,
+- gx_color_value magenta,
+- gx_color_value yellow,
+- gx_color_value black)
++ const gx_color_value cv[])
+ {
+ gx_color_index color;
++ gx_color_value cyan = cv[0];
++ gx_color_value magenta = cv[1];
++ gx_color_value yellow = cv[2];
++ gx_color_value black = cv[3];
+
+ switch (pdev->color_info.depth) {
+ case 1:
+@@ -2331,10 +2332,11 @@
+ /* gdev_cmyk_map_rgb_color: Mapping of RGB colors to gray values.
+ ----------------------------------------------------------------------------------*/
+ private gx_color_index gdev_cmyk_map_rgb_color( gx_device *pdev,
+- gx_color_value r,
+- gx_color_value g,
+- gx_color_value b)
++ const gx_color_value cv[])
+ {
++ gx_color_value r = cv[0];
++ gx_color_value g = cv[1];
++ gx_color_value b = cv[2];
+ if (gx_color_value_to_byte(r & g & b) == 0xff) {
+ return (gx_color_index) 0; /* White */
+ } else {
+@@ -2427,10 +2429,11 @@
+ /* gdev_pcl_map_rgb_color:
+ ----------------------------------------------------------------------------------*/
+ private gx_color_index gdev_pcl_map_rgb_color( gx_device *pdev,
+- gx_color_value r,
+- gx_color_value g,
+- gx_color_value b)
++ const gx_color_value cv[])
+ {
++ gx_color_value r = cv[0];
++ gx_color_value g = cv[1];
++ gx_color_value b = cv[2];
+ if (gx_color_value_to_byte(r & g & b) == 0xff)
+ return (gx_color_index) 0; /* white */
+ else {
diff --git a/print/ghostscript-gpl/files/patch-src:gdevdmpr.c b/print/ghostscript-gpl/files/patch-src:gdevdmpr.c
index 05e3bb12dc13..47e980154ccd 100644
--- a/print/ghostscript-gpl/files/patch-src:gdevdmpr.c
+++ b/print/ghostscript-gpl/files/patch-src:gdevdmpr.c
@@ -1,5 +1,32 @@
--- src/gdevdmpr.c.orig Tue May 13 20:43:37 1997
-+++ src/gdevdmpr.c Tue Apr 2 01:16:25 2002
++++ src/gdevdmpr.c Sun Nov 10 21:19:41 2002
+@@ -41,7 +41,7 @@
+ /* include library header. */
+ #include "dviprlib.h"
+
+-extern FILE *lib_fopen(P1(const char *));
++extern FILE *lib_fopen(const char *);
+
+ #define LOCAL_DEBUG 0
+
+@@ -87,12 +87,12 @@
+ private dev_proc_close_device(gdev_dmprt_close);
+
+ /* declarations of sub functions to get printer properties. */
+-private void gdev_dmprt_init_printer_props(P1(gx_device_dmprt *));
+-private int gdev_dmprt_get_printer_props(P2(gx_device_dmprt *,char *));
+-private int gdev_dmprt_check_code_props(P2(byte * ,int ));
+-private FILE *gdev_dmprt_dviprt_lib_fopen(P2(const char *,char *));
++private void gdev_dmprt_init_printer_props(gx_device_dmprt *);
++private int gdev_dmprt_get_printer_props(gx_device_dmprt *,char *);
++private int gdev_dmprt_check_code_props(byte * ,int );
++private FILE *gdev_dmprt_dviprt_lib_fopen(const char *,char *);
+
+-private int gdev_dmprt_error_no_dviprt_to_gs(P1(int ));
++private int gdev_dmprt_error_no_dviprt_to_gs(int );
+
+ /* The device descriptor */
+ gx_device_procs prn_dmprt_procs = {
@@ -846,7 +846,7 @@
if (env) {
strcpy(fname,env);
diff --git a/print/ghostscript-gpl/files/patch-src:gdevgdi.c b/print/ghostscript-gpl/files/patch-src:gdevgdi.c
new file mode 100644
index 000000000000..f59111ee2591
--- /dev/null
+++ b/print/ghostscript-gpl/files/patch-src:gdevgdi.c
@@ -0,0 +1,15 @@
+--- src/gdevgdi.c.orig Wed Jun 19 19:32:49 2002
++++ src/gdevgdi.c Sun Nov 10 22:37:00 2002
+@@ -86,9 +86,9 @@
+
+ int GDI_BAND_WIDTH[] = {4768, 4928};
+
+-private int gdi_print_page(P2(gx_device_printer *pdev, FILE *prn_stream));
+-private int gdi_open(P1(gx_device *pdev));
+-private int gdi_close(P1(gx_device *pdev));
++private int gdi_print_page(gx_device_printer *pdev, FILE *prn_stream);
++private int gdi_open(gx_device *pdev);
++private int gdi_close(gx_device *pdev);
+
+ /* The device descriptors */
+ private dev_proc_open_device(gdi_open);
diff --git a/print/ghostscript-gpl/files/patch-src:gdevifno.c b/print/ghostscript-gpl/files/patch-src:gdevifno.c
new file mode 100644
index 000000000000..b3bc447dd27a
--- /dev/null
+++ b/print/ghostscript-gpl/files/patch-src:gdevifno.c
@@ -0,0 +1,15 @@
+--- src/gdevifno.c.orig Sun Jun 16 14:48:55 2002
++++ src/gdevifno.c Sun Nov 10 22:49:32 2002
+@@ -99,8 +99,10 @@
+ * rgb and color map entries
+ */
+ private gx_color_index
+-inferno_rgb2cmap(gx_device *dev, gx_color_value red,
+- gx_color_value green, gx_color_value blue) {
++inferno_rgb2cmap(gx_device *dev, const gx_color_value cv[]) {
++ gx_color_value red = cv[0];
++ gx_color_value green = cv[1];
++ gx_color_value blue = cv[2];
+ int shift;
+ inferno_device *bdev = (inferno_device*) dev;
+ int nbits = bdev->nbits;
diff --git a/print/ghostscript-gpl/files/patch-src:gdevmgr.c b/print/ghostscript-gpl/files/patch-src:gdevmgr.c
new file mode 100644
index 000000000000..8f2dc4028c34
--- /dev/null
+++ b/print/ghostscript-gpl/files/patch-src:gdevmgr.c
@@ -0,0 +1,17 @@
+--- src/gdevmgr.c.orig Sun Jun 16 14:48:55 2002
++++ src/gdevmgr.c Sun Nov 10 22:52:19 2002
+@@ -364,9 +364,11 @@
+ /* (1/6, 1/2, and 5/6), instead of the obvious 8x8x4. */
+
+ gx_color_index
+-mgr_8bit_map_rgb_color(gx_device *dev, gx_color_value r, gx_color_value g,
+- gx_color_value b)
+-{ uint rv = r / (gx_max_color_value / 7 + 1);
++mgr_8bit_map_rgb_color(gx_device *dev, const gx_color_value cv[])
++{ gx_color_value r = cv[0];
++ gx_color_value g = cv[1];
++ gx_color_value b = cv[2];
++ uint rv = r / (gx_max_color_value / 7 + 1);
+ uint gv = g / (gx_max_color_value / 7 + 1);
+ uint bv = b / (gx_max_color_value / 7 + 1);
+ return (gx_color_index)
diff --git a/print/ghostscript-gpl/files/patch-src:gdevsgi.c b/print/ghostscript-gpl/files/patch-src:gdevsgi.c
new file mode 100644
index 000000000000..96d3891fc9e5
--- /dev/null
+++ b/print/ghostscript-gpl/files/patch-src:gdevsgi.c
@@ -0,0 +1,16 @@
+--- src/gdevsgi.c.orig Fri Feb 22 07:24:52 2002
++++ src/gdevsgi.c Sun Nov 10 22:55:30 2002
+@@ -32,8 +32,11 @@
+ sgi_prn_device(sgi_procs, "sgirgb", 3, 24, 255, 255, sgi_print_page);
+
+ private gx_color_index
+-sgi_map_rgb_color(gx_device *dev, ushort r, ushort g, ushort b)
+-{ ushort bitspercolor = dev->color_info.depth / 3;
++sgi_map_rgb_color(gx_device *dev, const ushort cv[])
++{ ushort r = cv[0];
++ ushort g = cv[1];
++ ushort b = cv[2];
++ ushort bitspercolor = dev->color_info.depth / 3;
+ ulong max_value = (1 << bitspercolor) - 1;
+ return ((r*max_value / gx_max_color_value) << (bitspercolor * 2)) +
+ ((g*max_value / gx_max_color_value) << bitspercolor) +
diff --git a/print/ghostscript-gpl/files/patch-src:gxobj.h b/print/ghostscript-gpl/files/patch-src:gxobj.h
new file mode 100644
index 000000000000..e3dca6b573f6
--- /dev/null
+++ b/print/ghostscript-gpl/files/patch-src:gxobj.h
@@ -0,0 +1,17 @@
+--- src/gxobj.h.orig Fri Feb 22 07:24:53 2002
++++ src/gxobj.h Fri Dec 20 22:56:03 2002
+@@ -103,10 +103,14 @@
+ * required by the hardware, regardless of the value of obj_align_mod.
+ * See gsmemraw.h for more information about this.
+ */
++#if !defined(__ia64__)
+ #define obj_align_mod\
+ (((arch_align_memory_mod - 1) |\
+ (align_bitmap_mod - 1) |\
+ (obj_back_scale - 1)) + 1)
++#else
++#define obj_align_mod 16
++#endif
+ /* The only possible values for obj_align_mod are 4, 8, or 16.... */
+ #if obj_align_mod == 4
+ # define log2_obj_align_mod 2
diff --git a/print/ghostscript-gpl/files/patch-src:unix-gcc.mak b/print/ghostscript-gpl/files/patch-src:unix-gcc.mak
index c27a7c5e6610..0ef8d446ab00 100644
--- a/print/ghostscript-gpl/files/patch-src:unix-gcc.mak
+++ b/print/ghostscript-gpl/files/patch-src:unix-gcc.mak
@@ -1,6 +1,6 @@
---- src/unix-gcc.mak.orig Fri Feb 1 15:27:58 2002
-+++ src/unix-gcc.mak Fri Jun 7 05:20:39 2002
-@@ -26,14 +26,15 @@
+--- src/unix-gcc.mak.orig Thu Oct 24 21:57:57 2002
++++ src/unix-gcc.mak Sun Nov 17 22:01:58 2002
+@@ -24,14 +24,15 @@
# source, generated intermediate file, and object directories
# for the graphics library (GL) and the PostScript/PDF interpreter (PS).
@@ -24,39 +24,31 @@
# Do not edit the next group of lines.
-@@ -52,11 +53,10 @@
+@@ -50,11 +51,10 @@
# the directories also define the default search path for the
# initialization files (gs_*.ps) and the fonts.
-INSTALL = $(GLSRCDIR)/instcopy -c
-INSTALL_PROGRAM = $(INSTALL) -m 755
-INSTALL_DATA = $(INSTALL) -m 644
-+INSTALL_PROGRAM = $(BSD_INSTALL_SCRIPT)
-+INSTALL_DATA = $(BSD_INSTALL_DATA)
++INSTALL_PROGRAM = ${BSD_INSTALL_SCRIPT}
++INSTALL_DATA = ${BSD_INSTALL_DATA}
-prefix = /usr/local
-+prefix = $(PREFIX)
++prefix = ${PREFIX}
exec_prefix = $(prefix)
bindir = $(exec_prefix)/bin
scriptdir = $(bindir)
-@@ -137,7 +137,7 @@
- # You may need to change this if the IJG library version changes.
- # See jpeg.mak for more information.
+@@ -143,7 +143,7 @@
+ # some older JPEG streams that violate the standard. If the JPEG
+ # library built from local sources, the patch will be applied.
--JSRCDIR=jpeg
-+JSRCDIR=${.CURDIR}/jpeg
- JVERSION=6
+-SHARE_JPEG=0
++SHARE_JPEG=1
+ JPEG_NAME=jpeg
- # Choose whether to use a shared version of the IJG JPEG library (-ljpeg).
-@@ -157,14 +157,14 @@
- # You may need to change this if the libpng version changes.
- # See libpng.mak for more information.
-
--PSRCDIR=libpng
-+PSRCDIR=${LOCALBASE}/include
- PVERSION=10201
-
- # Choose whether to use a shared version of the PNG library, and if so,
+ # Define the directory where the PNG library sources are stored,
+@@ -158,7 +158,7 @@
# what its name is.
# See gs.mak and Make.htm for more information.
@@ -65,7 +57,7 @@
LIBPNG_NAME=png
# Define the directory where the zlib sources are stored.
-@@ -176,7 +176,7 @@
+@@ -170,7 +170,7 @@
# what its name is (usually libz, but sometimes libgz).
# See gs.mak and Make.htm for more information.
@@ -74,7 +66,7 @@
#ZLIB_NAME=gz
ZLIB_NAME=z
-@@ -203,7 +203,7 @@
+@@ -197,7 +197,7 @@
# Define the name of the C compiler.
@@ -83,12 +75,12 @@
# Define the name of the linker for the final link step.
# Normally this is the same as the C compiler.
-@@ -220,9 +220,9 @@
+@@ -214,9 +214,9 @@
# Define the added flags for standard, debugging, profiling
# and shared object builds.
-CFLAGS_STANDARD=-O2
--CFLAGS_DEBUG=-g -O
+-CFLAGS_DEBUG=-g -O0
-CFLAGS_PROFILE=-pg -O2
+CFLAGS_STANDARD?=-O2
+CFLAGS_DEBUG=-g
@@ -96,25 +88,25 @@
CFLAGS_SO=-fPIC
# Define the other compilation flags. Add at most one of the following:
-@@ -236,7 +236,7 @@
+@@ -230,7 +230,7 @@
# We don't include -ansi, because this gets in the way of the platform-
# specific stuff that <math.h> typically needs; nevertheless, we expect
# gcc to accept ANSI-style function prototypes and function definitions.
-XCFLAGS=
-+XCFLAGS+=-I${.CURDIR}/gimp-print
++XCFLAGS+=-I${LOCALBASE}/include
CFLAGS=$(CFLAGS_STANDARD) $(GCFLAGS) $(XCFLAGS)
-@@ -247,7 +247,7 @@
+@@ -241,7 +241,7 @@
# -R /usr/local/xxx/lib:/usr/local/lib
# giving the full path names of the shared library directories.
# XLDFLAGS can be set from the command line.
-XLDFLAGS=
-+XLDFLAGS=-L${.CURDIR}/gimp-print -L${LOCALBASE}/lib
++XLDFLAGS=-L${LOCALBASE}/lib
- LDFLAGS=$(XLDFLAGS) -fno-common
+ LDFLAGS=$(XLDFLAGS)
-@@ -280,7 +280,7 @@
+@@ -274,7 +274,7 @@
# Note that x_.h expects to find the header files in $(XINCLUDE)/X11,
# not in $(XINCLUDE).
@@ -123,7 +115,7 @@
# Define the directory/ies and library names for the X11 library files.
# XLIBDIRS is for ld and should include -L; XLIBDIR is for LD_RUN_PATH
-@@ -292,12 +292,12 @@
+@@ -286,12 +286,12 @@
# Solaris and other SVR4 systems with dynamic linking probably want
#XLIBDIRS=-L/usr/openwin/lib -R/usr/openwin/lib
# X11R6 (on any platform) may need