summaryrefslogtreecommitdiff
path: root/print
diff options
context:
space:
mode:
authorEdwin Groothuis <edwin@FreeBSD.org>2003-09-27 02:47:58 +0000
committerEdwin Groothuis <edwin@FreeBSD.org>2003-09-27 02:47:58 +0000
commit11dcdf79fac488130c0ada715e9f53ed013a0456 (patch)
tree50958f8889644247fb438eb1055144ea524c6b3b /print
parentUpdate port: print/ghostscript-gnu (diff)
Don't forget the patches for ports/57009
PR: ports/57009 Submmited by: KATO Tsuguru <tkato@prontomail.com>
Notes
Notes: svn path=/head/; revision=89499
Diffstat (limited to 'print')
-rw-r--r--print/ghostscript-gnu/files/patch-lips:gdevl4r.c47
-rw-r--r--print/ghostscript-gnu/files/patch-lips:gdevl4v.c122
-rw-r--r--print/ghostscript-gnu/files/patch-lips:gdevlips.mak57
-rw-r--r--print/ghostscript-gnu/files/patch-lips:gdevlprn.h16
-rw-r--r--print/ghostscript7/files/patch-lips:gdevl4r.c47
-rw-r--r--print/ghostscript7/files/patch-lips:gdevl4v.c122
-rw-r--r--print/ghostscript7/files/patch-lips:gdevlips.mak57
-rw-r--r--print/ghostscript7/files/patch-lips:gdevlprn.h16
8 files changed, 484 insertions, 0 deletions
diff --git a/print/ghostscript-gnu/files/patch-lips:gdevl4r.c b/print/ghostscript-gnu/files/patch-lips:gdevl4r.c
new file mode 100644
index 000000000000..267f26ac8a13
--- /dev/null
+++ b/print/ghostscript-gnu/files/patch-lips:gdevl4r.c
@@ -0,0 +1,47 @@
+--- lips/gdevl4r.c.orig Thu Nov 2 12:09:18 2000
++++ lips/gdevl4r.c Fri Sep 12 09:22:08 2003
+@@ -178,8 +178,13 @@
+ 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);
++#if GS_VERSION_MAJOR >= 8
++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);
++#else
+ 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));
++#endif
+ private int lips4type_print_page_copies(gx_device_printer * pdev, FILE * prn_stream, int num_copies, int ptype);
+
+ private int
+@@ -1065,11 +1070,11 @@
+ if (paper_size == USER_SIZE) {
+ fprintf(prn_stream, "%c2 I", LIPS_CSI);
+ fprintf(prn_stream, "%c80;%d;%dp", LIPS_CSI,
+- width * 10, height * 10);
++ height * 10, width * 10);
+ } else if (paper_size == USER_SIZE + LANDSCAPE) {
+ fprintf(prn_stream, "%c2 I", LIPS_CSI);
+ fprintf(prn_stream, "%c81;%d;%dp", LIPS_CSI,
+- height * 10, width * 10);
++ width * 10, height * 10);
+ } else {
+ fprintf(prn_stream, "%c%dp", LIPS_CSI, paper_size);
+ }
+@@ -1078,14 +1083,14 @@
+ prev_paper_height != height) {
+ fprintf(prn_stream, "%c2 I", LIPS_CSI);
+ fprintf(prn_stream, "%c80;%d;%dp", LIPS_CSI,
+- width * 10, height * 10);
++ height * 10, width * 10);
+ }
+ } else if (paper_size == USER_SIZE + LANDSCAPE) {
+ if (prev_paper_width != width ||
+ prev_paper_height != height) {
+ fprintf(prn_stream, "%c2 I", LIPS_CSI);
+ fprintf(prn_stream, "%c81;%d;%dp", LIPS_CSI,
+- height * 10, width * 10);
++ width * 10, height * 10);
+ }
+ }
+ /* desired number of copies */
diff --git a/print/ghostscript-gnu/files/patch-lips:gdevl4v.c b/print/ghostscript-gnu/files/patch-lips:gdevl4v.c
new file mode 100644
index 000000000000..91da63b0b63e
--- /dev/null
+++ b/print/ghostscript-gnu/files/patch-lips:gdevl4v.c
@@ -0,0 +1,122 @@
+--- lips/gdevl4v.c.orig Thu Nov 2 12:09:18 2000
++++ lips/gdevl4v.c Fri Sep 12 10:11:25 2003
+@@ -230,41 +230,66 @@
+ };
+
+ /* 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));
++#if GS_VERSION_MAJOR >= 8
++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(gx_device_vector * vdev, gs_logical_operation_t lop,
++ gs_logical_operation_t diff);
+ private int
+-lips4v_setlogop(P3
+
+- (gx_device_vector * vdev, gs_logical_operation_t lop,
+- gs_logical_operation_t diff));
++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_lineto(gx_device_vector * vdev, floatp x0, floatp y0, floatp x,
++ floatp y, gx_path_type_t type);
++private int
++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);
++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(gx_device_vector * vdev, gx_path_type_t type);
++#else
++private int lips4v_beginpage(P1(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(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(P6
+- (gx_device_vector * vdev, floatp x0, floatp y0, floatp x,
+- floatp y, gx_path_type_t type));
++lips4v_moveto(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);
++#endif
+ 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);
+@@ -758,10 +783,10 @@
+ /* 用紙サイズ */
+ if (pdev->prev_paper_size != paper_size) {
+ if (paper_size == USER_SIZE) {
+- sprintf(paper, "%c80;%d;%dp", LIPS_CSI, width * 10, height * 10);
++ sprintf(paper, "%c80;%d;%dp", LIPS_CSI, height * 10, width * 10);
+ lputs(s, paper);
+ } else if (paper_size == USER_SIZE + LANDSCAPE) {
+- sprintf(paper, "%c81;%d;%dp", LIPS_CSI, height * 10, width * 10);
++ sprintf(paper, "%c81;%d;%dp", LIPS_CSI, width * 10, height * 10);
+ lputs(s, paper);
+ } else {
+ sprintf(paper, "%c%dp", LIPS_CSI, paper_size);
+@@ -770,12 +795,12 @@
+ } else if (paper_size == USER_SIZE) {
+ if (pdev->prev_paper_width != width ||
+ pdev->prev_paper_height != height)
+- sprintf(paper, "%c80;%d;%dp", LIPS_CSI, width * 10, height * 10);
++ sprintf(paper, "%c80;%d;%dp", LIPS_CSI, height * 10, width * 10);
+ lputs(s, paper);
+ } else if (paper_size == USER_SIZE + LANDSCAPE) {
+ if (pdev->prev_paper_width != width ||
+ pdev->prev_paper_height != height)
+- sprintf(paper, "%c81;%d;%dp", LIPS_CSI, height * 10, width * 10);
++ sprintf(paper, "%c81;%d;%dp", LIPS_CSI, width * 10, height * 10);
+ lputs(s, paper);
+ }
+ pdev->prev_paper_size = paper_size;
diff --git a/print/ghostscript-gnu/files/patch-lips:gdevlips.mak b/print/ghostscript-gnu/files/patch-lips:gdevlips.mak
new file mode 100644
index 000000000000..ec0e03e7064d
--- /dev/null
+++ b/print/ghostscript-gnu/files/patch-lips:gdevlips.mak
@@ -0,0 +1,57 @@
+--- lips/gdevlips.mak.orig Thu Nov 2 12:12:13 2000
++++ lips/gdevlips.mak Fri Sep 12 09:34:24 2003
+@@ -1,6 +1,8 @@
+ # ---------------- Laser Printer devices ---------------- #
+ # $Id: gdevlips.mak $
+
++lips_opts=-DGS_VERSION_MAJOR=$(GS_VERSION_MAJOR)
++
+ $(GLOBJ)gdevlprn.$(OBJ): $(GLSRC)gdevlprn.c $(GLSRC)gdevlprn.h\
+ $(gdevprn_h) $(PDEVH)
+ $(GLCC) $(GLO_)gdevlprn.$(OBJ) $(C_) $(GLSRC)gdevlprn.c
+@@ -9,9 +11,9 @@
+
+ lipsr_=$(GLOBJ)gdevl4r.$(OBJ) $(GLOBJ)gdevlips.$(OBJ) $(GLOBJ)gdevlprn.$(OBJ)
+ $(GLOBJ)gdevl4r.$(OBJ): $(GLSRC)gdevl4r.c $(GLSRC)gdevlips.h $(PDEVH)
+- $(GLCC) -DA4 $(GLO_)gdevl4r.$(OBJ) $(C_) $(GLSRC)gdevl4r.c
++ $(GLCC) -DA4 $(GLO_)gdevl4r.$(OBJ) $(C_) $(lips_opts) $(GLSRC)gdevl4r.c
+ $(GLOBJ)gdevlips.$(OBJ): $(GLSRC)gdevlips.c
+- $(GLCC) $(GLO_)gdevlips.$(OBJ) $(C_) $(GLSRC)gdevlips.c
++ $(GLCC) $(GLO_)gdevlips.$(OBJ) $(C_) $(lips_opts) $(GLSRC)gdevlips.c
+ $(DD)lips2p.dev: $(lipsr_) $(DD)page.dev
+ $(SETPDEV) $(DD)lips2p $(lipsr_)
+ $(DD)lips3.dev: $(lipsr_) $(DD)page.dev
+@@ -29,13 +31,13 @@
+ $(GLOBJ)gdevl4v.$(OBJ): $(GLSRC)gdevl4v.c $(GLSRC)gdevlips.h $(GDEV) $(math__h)\
+ $(gscspace_h) $(gsutil_h) $(gsparam_h) $(gsmatrix_h) $(gdevvec_h)\
+ $(ghost_h) $(gzstate_h) $(igstate_h)
+- $(GLCC) -DA4 $(GLO_)gdevl4v.$(OBJ) $(C_) $(GLSRC)gdevl4v.c
++ $(GLCC) -DA4 $(GLO_)gdevl4v.$(OBJ) $(C_) $(lips_opts) $(GLSRC)gdevl4v.c
+
+ ### ------- Epson ESC/Page printer device ----------------- ###
+
+ escpage_=$(GLOBJ)gdevespg.$(OBJ) $(GLOBJ)gdevlprn.$(OBJ)
+ $(GLOBJ)gdevespg.$(OBJ): $(GLSRC)gdevespg.c $(GLSRC)gdevlprn.h $(PDEVH)
+- $(GLCC) -DA4 $(GLO_)gdevespg.$(OBJ) $(C_) $(GLSRC)gdevespg.c
++ $(GLCC) -DA4 $(GLO_)gdevespg.$(OBJ) $(C_) $(lips_opts) $(GLSRC)gdevespg.c
+
+ $(GLOBJ)escpage.dev: $(escpage_) $(DD)page.dev
+ $(SETPDEV) $(DD)escpage $(escpage_)
+@@ -47,7 +49,7 @@
+
+ npdl_=$(GLOBJ)gdevnpdl.$(OBJ) $(GLOBJ)gdevlprn.$(OBJ)
+ $(GLOBJ)gdevnpdl.$(OBJ): $(GLSRC)gdevnpdl.c $(GLSRC)gdevlprn.h $(PDEVH)
+- $(GLCC) -DA4 $(GLO_)gdevnpdl.$(OBJ) $(C_) $(GLSRC)gdevnpdl.c
++ $(GLCC) -DA4 $(GLO_)gdevnpdl.$(OBJ) $(C_) $(lips_opts) $(GLSRC)gdevnpdl.c
+
+ $(GLOBJ)npdl.dev: $(npdl_) $(DD)page.dev
+ $(SETPDEV) $(DD)npdl $(npdl_)
+@@ -56,7 +58,7 @@
+
+ rpdl_=$(GLOBJ)gdevrpdl.$(OBJ) $(GLOBJ)gdevlprn.$(OBJ)
+ $(GLOBJ)gdevrpdl.$(OBJ): $(GLSRC)gdevrpdl.c $(GLSRC)gdevlprn.h $(PDEVH)
+- $(GLCC) -DA4 $(GLO_)gdevrpdl.$(OBJ) $(C_) $(GLSRC)gdevrpdl.c
++ $(GLCC) -DA4 $(GLO_)gdevrpdl.$(OBJ) $(C_) $(lips_opts) $(GLSRC)gdevrpdl.c
+
+ $(GLOBJ)rpdl.dev: $(rpdl_) $(DD)page.dev
+ $(SETPDEV) $(DD)rpdl $(rpdl_)
diff --git a/print/ghostscript-gnu/files/patch-lips:gdevlprn.h b/print/ghostscript-gnu/files/patch-lips:gdevlprn.h
new file mode 100644
index 000000000000..f692dbe410a2
--- /dev/null
+++ b/print/ghostscript-gnu/files/patch-lips:gdevlprn.h
@@ -0,0 +1,16 @@
+--- lips/gdevlprn.h.orig Thu Nov 2 12:09:18 2000
++++ lips/gdevlprn.h Sat Sep 13 23:06:38 2003
+@@ -28,8 +28,13 @@
+
+ #include "gdevprn.h"
+
++#if GS_VERSION_MAJOR >= 8
++#define lprn_dev_proc_image_out(proc)\
++ void proc(gx_device_printer *, FILE *, int, int, int, int)
++#else
+ #define lprn_dev_proc_image_out(proc)\
+ void proc(P6(gx_device_printer *, FILE *, int, int, int, int))
++#endif
+
+ #define dev_proc_image_out(proc) lprn_dev_proc_image_out(proc)
+
diff --git a/print/ghostscript7/files/patch-lips:gdevl4r.c b/print/ghostscript7/files/patch-lips:gdevl4r.c
new file mode 100644
index 000000000000..267f26ac8a13
--- /dev/null
+++ b/print/ghostscript7/files/patch-lips:gdevl4r.c
@@ -0,0 +1,47 @@
+--- lips/gdevl4r.c.orig Thu Nov 2 12:09:18 2000
++++ lips/gdevl4r.c Fri Sep 12 09:22:08 2003
+@@ -178,8 +178,13 @@
+ 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);
++#if GS_VERSION_MAJOR >= 8
++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);
++#else
+ 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));
++#endif
+ private int lips4type_print_page_copies(gx_device_printer * pdev, FILE * prn_stream, int num_copies, int ptype);
+
+ private int
+@@ -1065,11 +1070,11 @@
+ if (paper_size == USER_SIZE) {
+ fprintf(prn_stream, "%c2 I", LIPS_CSI);
+ fprintf(prn_stream, "%c80;%d;%dp", LIPS_CSI,
+- width * 10, height * 10);
++ height * 10, width * 10);
+ } else if (paper_size == USER_SIZE + LANDSCAPE) {
+ fprintf(prn_stream, "%c2 I", LIPS_CSI);
+ fprintf(prn_stream, "%c81;%d;%dp", LIPS_CSI,
+- height * 10, width * 10);
++ width * 10, height * 10);
+ } else {
+ fprintf(prn_stream, "%c%dp", LIPS_CSI, paper_size);
+ }
+@@ -1078,14 +1083,14 @@
+ prev_paper_height != height) {
+ fprintf(prn_stream, "%c2 I", LIPS_CSI);
+ fprintf(prn_stream, "%c80;%d;%dp", LIPS_CSI,
+- width * 10, height * 10);
++ height * 10, width * 10);
+ }
+ } else if (paper_size == USER_SIZE + LANDSCAPE) {
+ if (prev_paper_width != width ||
+ prev_paper_height != height) {
+ fprintf(prn_stream, "%c2 I", LIPS_CSI);
+ fprintf(prn_stream, "%c81;%d;%dp", LIPS_CSI,
+- height * 10, width * 10);
++ width * 10, height * 10);
+ }
+ }
+ /* desired number of copies */
diff --git a/print/ghostscript7/files/patch-lips:gdevl4v.c b/print/ghostscript7/files/patch-lips:gdevl4v.c
new file mode 100644
index 000000000000..91da63b0b63e
--- /dev/null
+++ b/print/ghostscript7/files/patch-lips:gdevl4v.c
@@ -0,0 +1,122 @@
+--- lips/gdevl4v.c.orig Thu Nov 2 12:09:18 2000
++++ lips/gdevl4v.c Fri Sep 12 10:11:25 2003
+@@ -230,41 +230,66 @@
+ };
+
+ /* 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));
++#if GS_VERSION_MAJOR >= 8
++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(gx_device_vector * vdev, gs_logical_operation_t lop,
++ gs_logical_operation_t diff);
+ private int
+-lips4v_setlogop(P3
+
+- (gx_device_vector * vdev, gs_logical_operation_t lop,
+- gs_logical_operation_t diff));
++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_lineto(gx_device_vector * vdev, floatp x0, floatp y0, floatp x,
++ floatp y, gx_path_type_t type);
++private int
++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);
++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(gx_device_vector * vdev, gx_path_type_t type);
++#else
++private int lips4v_beginpage(P1(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(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(P6
+- (gx_device_vector * vdev, floatp x0, floatp y0, floatp x,
+- floatp y, gx_path_type_t type));
++lips4v_moveto(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);
++#endif
+ 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);
+@@ -758,10 +783,10 @@
+ /* 用紙サイズ */
+ if (pdev->prev_paper_size != paper_size) {
+ if (paper_size == USER_SIZE) {
+- sprintf(paper, "%c80;%d;%dp", LIPS_CSI, width * 10, height * 10);
++ sprintf(paper, "%c80;%d;%dp", LIPS_CSI, height * 10, width * 10);
+ lputs(s, paper);
+ } else if (paper_size == USER_SIZE + LANDSCAPE) {
+- sprintf(paper, "%c81;%d;%dp", LIPS_CSI, height * 10, width * 10);
++ sprintf(paper, "%c81;%d;%dp", LIPS_CSI, width * 10, height * 10);
+ lputs(s, paper);
+ } else {
+ sprintf(paper, "%c%dp", LIPS_CSI, paper_size);
+@@ -770,12 +795,12 @@
+ } else if (paper_size == USER_SIZE) {
+ if (pdev->prev_paper_width != width ||
+ pdev->prev_paper_height != height)
+- sprintf(paper, "%c80;%d;%dp", LIPS_CSI, width * 10, height * 10);
++ sprintf(paper, "%c80;%d;%dp", LIPS_CSI, height * 10, width * 10);
+ lputs(s, paper);
+ } else if (paper_size == USER_SIZE + LANDSCAPE) {
+ if (pdev->prev_paper_width != width ||
+ pdev->prev_paper_height != height)
+- sprintf(paper, "%c81;%d;%dp", LIPS_CSI, height * 10, width * 10);
++ sprintf(paper, "%c81;%d;%dp", LIPS_CSI, width * 10, height * 10);
+ lputs(s, paper);
+ }
+ pdev->prev_paper_size = paper_size;
diff --git a/print/ghostscript7/files/patch-lips:gdevlips.mak b/print/ghostscript7/files/patch-lips:gdevlips.mak
new file mode 100644
index 000000000000..ec0e03e7064d
--- /dev/null
+++ b/print/ghostscript7/files/patch-lips:gdevlips.mak
@@ -0,0 +1,57 @@
+--- lips/gdevlips.mak.orig Thu Nov 2 12:12:13 2000
++++ lips/gdevlips.mak Fri Sep 12 09:34:24 2003
+@@ -1,6 +1,8 @@
+ # ---------------- Laser Printer devices ---------------- #
+ # $Id: gdevlips.mak $
+
++lips_opts=-DGS_VERSION_MAJOR=$(GS_VERSION_MAJOR)
++
+ $(GLOBJ)gdevlprn.$(OBJ): $(GLSRC)gdevlprn.c $(GLSRC)gdevlprn.h\
+ $(gdevprn_h) $(PDEVH)
+ $(GLCC) $(GLO_)gdevlprn.$(OBJ) $(C_) $(GLSRC)gdevlprn.c
+@@ -9,9 +11,9 @@
+
+ lipsr_=$(GLOBJ)gdevl4r.$(OBJ) $(GLOBJ)gdevlips.$(OBJ) $(GLOBJ)gdevlprn.$(OBJ)
+ $(GLOBJ)gdevl4r.$(OBJ): $(GLSRC)gdevl4r.c $(GLSRC)gdevlips.h $(PDEVH)
+- $(GLCC) -DA4 $(GLO_)gdevl4r.$(OBJ) $(C_) $(GLSRC)gdevl4r.c
++ $(GLCC) -DA4 $(GLO_)gdevl4r.$(OBJ) $(C_) $(lips_opts) $(GLSRC)gdevl4r.c
+ $(GLOBJ)gdevlips.$(OBJ): $(GLSRC)gdevlips.c
+- $(GLCC) $(GLO_)gdevlips.$(OBJ) $(C_) $(GLSRC)gdevlips.c
++ $(GLCC) $(GLO_)gdevlips.$(OBJ) $(C_) $(lips_opts) $(GLSRC)gdevlips.c
+ $(DD)lips2p.dev: $(lipsr_) $(DD)page.dev
+ $(SETPDEV) $(DD)lips2p $(lipsr_)
+ $(DD)lips3.dev: $(lipsr_) $(DD)page.dev
+@@ -29,13 +31,13 @@
+ $(GLOBJ)gdevl4v.$(OBJ): $(GLSRC)gdevl4v.c $(GLSRC)gdevlips.h $(GDEV) $(math__h)\
+ $(gscspace_h) $(gsutil_h) $(gsparam_h) $(gsmatrix_h) $(gdevvec_h)\
+ $(ghost_h) $(gzstate_h) $(igstate_h)
+- $(GLCC) -DA4 $(GLO_)gdevl4v.$(OBJ) $(C_) $(GLSRC)gdevl4v.c
++ $(GLCC) -DA4 $(GLO_)gdevl4v.$(OBJ) $(C_) $(lips_opts) $(GLSRC)gdevl4v.c
+
+ ### ------- Epson ESC/Page printer device ----------------- ###
+
+ escpage_=$(GLOBJ)gdevespg.$(OBJ) $(GLOBJ)gdevlprn.$(OBJ)
+ $(GLOBJ)gdevespg.$(OBJ): $(GLSRC)gdevespg.c $(GLSRC)gdevlprn.h $(PDEVH)
+- $(GLCC) -DA4 $(GLO_)gdevespg.$(OBJ) $(C_) $(GLSRC)gdevespg.c
++ $(GLCC) -DA4 $(GLO_)gdevespg.$(OBJ) $(C_) $(lips_opts) $(GLSRC)gdevespg.c
+
+ $(GLOBJ)escpage.dev: $(escpage_) $(DD)page.dev
+ $(SETPDEV) $(DD)escpage $(escpage_)
+@@ -47,7 +49,7 @@
+
+ npdl_=$(GLOBJ)gdevnpdl.$(OBJ) $(GLOBJ)gdevlprn.$(OBJ)
+ $(GLOBJ)gdevnpdl.$(OBJ): $(GLSRC)gdevnpdl.c $(GLSRC)gdevlprn.h $(PDEVH)
+- $(GLCC) -DA4 $(GLO_)gdevnpdl.$(OBJ) $(C_) $(GLSRC)gdevnpdl.c
++ $(GLCC) -DA4 $(GLO_)gdevnpdl.$(OBJ) $(C_) $(lips_opts) $(GLSRC)gdevnpdl.c
+
+ $(GLOBJ)npdl.dev: $(npdl_) $(DD)page.dev
+ $(SETPDEV) $(DD)npdl $(npdl_)
+@@ -56,7 +58,7 @@
+
+ rpdl_=$(GLOBJ)gdevrpdl.$(OBJ) $(GLOBJ)gdevlprn.$(OBJ)
+ $(GLOBJ)gdevrpdl.$(OBJ): $(GLSRC)gdevrpdl.c $(GLSRC)gdevlprn.h $(PDEVH)
+- $(GLCC) -DA4 $(GLO_)gdevrpdl.$(OBJ) $(C_) $(GLSRC)gdevrpdl.c
++ $(GLCC) -DA4 $(GLO_)gdevrpdl.$(OBJ) $(C_) $(lips_opts) $(GLSRC)gdevrpdl.c
+
+ $(GLOBJ)rpdl.dev: $(rpdl_) $(DD)page.dev
+ $(SETPDEV) $(DD)rpdl $(rpdl_)
diff --git a/print/ghostscript7/files/patch-lips:gdevlprn.h b/print/ghostscript7/files/patch-lips:gdevlprn.h
new file mode 100644
index 000000000000..f692dbe410a2
--- /dev/null
+++ b/print/ghostscript7/files/patch-lips:gdevlprn.h
@@ -0,0 +1,16 @@
+--- lips/gdevlprn.h.orig Thu Nov 2 12:09:18 2000
++++ lips/gdevlprn.h Sat Sep 13 23:06:38 2003
+@@ -28,8 +28,13 @@
+
+ #include "gdevprn.h"
+
++#if GS_VERSION_MAJOR >= 8
++#define lprn_dev_proc_image_out(proc)\
++ void proc(gx_device_printer *, FILE *, int, int, int, int)
++#else
+ #define lprn_dev_proc_image_out(proc)\
+ void proc(P6(gx_device_printer *, FILE *, int, int, int, int))
++#endif
+
+ #define dev_proc_image_out(proc) lprn_dev_proc_image_out(proc)
+