ports/69988: [PATCH] ghostscript-gnu fails to build with current after gcc 3.4 import

Johan Karlsson k at numeri.campus.luth.se
Wed Aug 4 08:10:27 UTC 2004


>Number:         69988
>Category:       ports
>Synopsis:       [PATCH] ghostscript-gnu fails to build with current after gcc 3.4 import
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          update
>Submitter-Id:   current-users
>Arrival-Date:   Wed Aug 04 08:10:24 GMT 2004
>Closed-Date:
>Last-Modified:
>Originator:     Johan Karlsson
>Release:        FreeBSD 5.2-CURRENT i386
>Organization:
>Environment:
System: FreeBSD numeri.campus.luth.se 5.2-CURRENT FreeBSD 5.2-CURRENT #4: Tue Aug 3 16:40:54 CEST 2004 k at numeri.campus.luth.se:/home/builds/home/k/FreeBSD-src/current/src/sys/NUMERI-WITNESS i386


>Description:

	The port print/ghostscript-gnu fails to build after the import
	of gcc 3.4.

>How-To-Repeat:


	Try to build on a recent -currnt.
>Fix:

	I had to modify two of the patches and add a third.
	In the attached shar archive you can find the three
	new patches.

	Note that I did not test build this on older releases
	but I see no reason why this should not work.

# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	files/patch-eplaser:gdevescv.c
#	files/patch-eplaser:gdevesmv.c
#	files/patch-src:gdevhl12.c
#
echo x - files/patch-eplaser:gdevescv.c
sed 's/^X//' >files/patch-eplaser:gdevescv.c << 'END-of-files/patch-eplaser:gdevescv.c'
X--- eplaser/gdevescv.c.orig	Mon May 17 07:25:19 2004
X+++ eplaser/gdevescv.c	Wed Aug  4 09:33:09 2004
X@@ -37,10 +37,6 @@
X 
X  */
X 
X-#include <stdlib.h>
X-#include <unistd.h>
X-#include <string.h>
X-
X #include "math_.h"
X #include "gx.h"
X #include "gserrors.h"
X@@ -62,6 +58,10 @@
X #include "gspath.h"
X #include "gzpath.h"
X 
X+#include <stdlib.h>
X+#include <unistd.h>
X+#include <string.h>
X+
X /* ---------------- Device definition ---------------- */
X 
X /* Device procedures */
X@@ -342,6 +342,16 @@
X };
X 
X /* Vector device implementation */
X+#if GS_VERSION_MAJOR >= 8
X+private int escv_beginpage(gx_device_vector * vdev);
X+private int escv_setfillcolor(gx_device_vector * vdev, const gx_drawing_color * pdc);
X+private int escv_setstrokecolor(gx_device_vector * vdev, const gx_drawing_color * pdc);
X+private int escv_setdash(gx_device_vector * vdev, const float *pattern, 
X+			      uint count, floatp offset);
X+private int escv_setflat(gx_device_vector * vdev, floatp flatness);
X+private int escv_setlogop(gx_device_vector * vdev, gs_logical_operation_t lop, 
X+			       gs_logical_operation_t diff);
X+#else
X private int escv_beginpage(P1(gx_device_vector * vdev));
X private int escv_setfillcolor(P2(gx_device_vector * vdev, const gx_drawing_color * pdc));
X private int escv_setstrokecolor(P2(gx_device_vector * vdev, const gx_drawing_color * pdc));
X@@ -350,10 +360,25 @@
X private int escv_setflat(P2(gx_device_vector * vdev, floatp flatness));
X private int escv_setlogop(P3(gx_device_vector * vdev, gs_logical_operation_t lop, 
X 			       gs_logical_operation_t diff));
X+#endif
X private int escv_vector_dorect(gx_device_vector * vdev, fixed x0, fixed y0, fixed x1,
X 			       fixed y1, gx_path_type_t type);
X private int escv_vector_dopath(gx_device_vector * vdev, const gx_path * ppath,
X 			       gx_path_type_t type);
X+#if GS_VERSION_MAJOR >= 8
X+private int escv_beginpath(gx_device_vector * vdev, gx_path_type_t type);
X+private int escv_moveto(gx_device_vector * vdev, floatp x0, floatp y0,
X+			   floatp x, floatp y, gx_path_type_t type);
X+private int escv_lineto(gx_device_vector * vdev, floatp x0, floatp y0,
X+			   floatp x, floatp y, gx_path_type_t type);
X+private int escv_curveto(gx_device_vector * vdev, floatp x0, floatp y0,
X+			       floatp x1, floatp y1, floatp x2, floatp y2,
X+			       floatp x3, floatp y3, gx_path_type_t type);
X+private int escv_closepath(gx_device_vector * vdev, floatp x, floatp y,
X+				floatp x_start, floatp y_start, gx_path_type_t type);
X+
X+private int escv_endpath(gx_device_vector * vdev, gx_path_type_t type);
X+#else
X private int escv_beginpath(P2(gx_device_vector * vdev, gx_path_type_t type));
X private int escv_moveto(P6(gx_device_vector * vdev, floatp x0, floatp y0,
X 			   floatp x, floatp y, gx_path_type_t type));
X@@ -366,6 +391,7 @@
X 				floatp x_start, floatp y_start, gx_path_type_t type));
X 
X private int escv_endpath(P2(gx_device_vector * vdev, gx_path_type_t type));
X+#endif
X private int escv_setlinewidth(gx_device_vector * vdev, floatp width);
X private int escv_setlinecap(gx_device_vector * vdev, gs_line_cap cap);
X private int escv_setlinejoin(gx_device_vector * vdev, gs_line_join join);
X@@ -1671,7 +1697,7 @@
X 		 gs_logical_operation_t lop, const gx_clip_path * pcpath)
X {
X     gx_device_vector const	*vdev = (gx_device_vector *) dev;
X-    gx_device_escv const	*pdev = (gx_device_escv *) dev;
X+    gx_device_escv		*pdev = (gx_device_escv *) dev;
X     stream			*s = gdev_vector_stream(vdev);
X 
X     if (w <= 0 || h <= 0) return 0;
END-of-files/patch-eplaser:gdevescv.c
echo x - files/patch-eplaser:gdevesmv.c
sed 's/^X//' >files/patch-eplaser:gdevesmv.c << 'END-of-files/patch-eplaser:gdevesmv.c'
X--- eplaser/gdevesmv.c.orig	Mon May 17 07:25:19 2004
X+++ eplaser/gdevesmv.c	Wed Aug  4 09:33:09 2004
X@@ -34,10 +34,6 @@
X 
X  */
X 
X-#include <stdlib.h>
X-#include <unistd.h>
X-#include <string.h>
X-
X #include "math_.h"
X #include "gx.h"
X #include "gserrors.h"
X@@ -59,6 +55,10 @@
X #include "gspath.h"
X #include "gzpath.h"
X 
X+#include <stdlib.h>
X+#include <unistd.h>
X+#include <string.h>
X+
X /* ---------------- Device definition ---------------- */
X 
X /* Device procedures */
X@@ -428,6 +428,16 @@
X 
X 
X /* Vector device implementation */
X+#if GS_VERSION_MAJOR >= 8
X+private int esmv_beginpage(gx_device_vector * vdev);
X+private int esmv_setfillcolor(gx_device_vector * vdev, const gx_drawing_color * pdc);
X+private int esmv_setstrokecolor(gx_device_vector * vdev, const gx_drawing_color * pdc);
X+private int esmv_setdash(gx_device_vector * vdev, const float *pattern, 
X+			      uint count, floatp offset);
X+private int esmv_setflat(gx_device_vector * vdev, floatp flatness);
X+private int esmv_setlogop(gx_device_vector * vdev, gs_logical_operation_t lop, 
X+			       gs_logical_operation_t diff);
X+#else
X private int esmv_beginpage(P1(gx_device_vector * vdev));
X private int esmv_setfillcolor(P2(gx_device_vector * vdev, const gx_drawing_color * pdc));
X private int esmv_setstrokecolor(P2(gx_device_vector * vdev, const gx_drawing_color * pdc));
X@@ -436,10 +446,25 @@
X private int esmv_setflat(P2(gx_device_vector * vdev, floatp flatness));
X private int esmv_setlogop(P3(gx_device_vector * vdev, gs_logical_operation_t lop, 
X 			       gs_logical_operation_t diff));
X+#endif
X private int esmv_vector_dorect(gx_device_vector * vdev, fixed x0, fixed y0, fixed x1,
X 			       fixed y1, gx_path_type_t type);
X private int esmv_vector_dopath(gx_device_vector * vdev, const gx_path * ppath,
X 			       gx_path_type_t type);
X+#if GS_VERSION_MAJOR >= 8
X+private int esmv_beginpath(gx_device_vector * vdev, gx_path_type_t type);
X+private int esmv_moveto(gx_device_vector * vdev, floatp x0, floatp y0,
X+			   floatp x, floatp y, gx_path_type_t type);
X+private int esmv_lineto(gx_device_vector * vdev, floatp x0, floatp y0,
X+			   floatp x, floatp y, gx_path_type_t type);
X+private int esmv_curveto(gx_device_vector * vdev, floatp x0, floatp y0,
X+			       floatp x1, floatp y1, floatp x2, floatp y2,
X+			       floatp x3, floatp y3, gx_path_type_t type);
X+private int esmv_closepath(gx_device_vector * vdev, floatp x, floatp y,
X+				floatp x_start, floatp y_start, gx_path_type_t type);
X+
X+private int esmv_endpath(gx_device_vector * vdev, gx_path_type_t type);
X+#else
X private int esmv_beginpath(P2(gx_device_vector * vdev, gx_path_type_t type));
X private int esmv_moveto(P6(gx_device_vector * vdev, floatp x0, floatp y0,
X 			   floatp x, floatp y, gx_path_type_t type));
X@@ -452,6 +477,7 @@
X 				floatp x_start, floatp y_start, gx_path_type_t type));
X 
X private int esmv_endpath(P2(gx_device_vector * vdev, gx_path_type_t type));
X+#endif
X private int esmv_setlinewidth(gx_device_vector * vdev, floatp width);
X private int esmv_setlinecap(gx_device_vector * vdev, gs_line_cap cap);
X private int esmv_setlinejoin(gx_device_vector * vdev, gs_line_join join);
X@@ -1771,7 +1797,7 @@
X 		 gs_logical_operation_t lop, const gx_clip_path * pcpath)
X {
X     gx_device_vector const	*vdev = (gx_device_vector *) dev;
X-    gx_device_esmv const	*pdev = (gx_device_esmv *) dev;
X+    gx_device_esmv		*pdev = (gx_device_esmv *) dev;
X     stream			*s = gdev_vector_stream(vdev);
X     gx_color_index		color = gx_dc_pure_color(pdcolor);
X     char			obuf[64];
END-of-files/patch-eplaser:gdevesmv.c
echo x - files/patch-src:gdevhl12.c
sed 's/^X//' >files/patch-src:gdevhl12.c << 'END-of-files/patch-src:gdevhl12.c'
X--- src/gdevhl12.c.orig	Tue Aug  3 20:29:56 2004
X+++ src/gdevhl12.c	Tue Aug  3 20:30:38 2004
X@@ -641,6 +641,7 @@
X 	    tray_pcl = "\033&l2H";
X 	    break;
X 	default:
X+	    break;
X     }
X     if (pdev->PageCount == 0) {
X 	/* initialize printer */
END-of-files/patch-src:gdevhl12.c
exit



>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list