[105115] trunk/dports/print/transfig

michaelld at macports.org michaelld at macports.org
Wed Apr 10 12:54:53 PDT 2013


Revision: 105115
          https://trac.macports.org/changeset/105115
Author:   michaelld at macports.org
Date:     2013-04-10 12:54:53 -0700 (Wed, 10 Apr 2013)
Log Message:
-----------
transfig:

* fix libpng changes to be more in-line with the intent of the original code (hopefully);

* add patch to make c code compile more cleanly and be more C99 compliant (works with clang now).

Modified Paths:
--------------
    trunk/dports/print/transfig/Portfile
    trunk/dports/print/transfig/files/patch-libpng-1.5.diff

Added Paths:
-----------
    trunk/dports/print/transfig/files/patch-c-cleanup.diff

Modified: trunk/dports/print/transfig/Portfile
===================================================================
--- trunk/dports/print/transfig/Portfile	2013-04-10 17:31:29 UTC (rev 105114)
+++ trunk/dports/print/transfig/Portfile	2013-04-10 19:54:53 UTC (rev 105115)
@@ -5,7 +5,7 @@
 
 name                transfig
 version             3.2.5d
-revision            3
+revision            4
 categories          print graphics
 platforms           darwin
 license             Permissive
@@ -36,7 +36,8 @@
 patchfiles          patch-fig2dev-dev-Imakefile \
                     patch-fig2dev-Imakefile \
                     patch-libpng-1.5.diff \
-                    patch-transfig-Imakefile
+                    patch-transfig-Imakefile \
+                    patch-c-cleanup.diff
 
 post-patch {
     reinplace "s|__PREFIX|${prefix}|g"  ${worksrcpath}/fig2dev/Imakefile \

Added: trunk/dports/print/transfig/files/patch-c-cleanup.diff
===================================================================
--- trunk/dports/print/transfig/files/patch-c-cleanup.diff	                        (rev 0)
+++ trunk/dports/print/transfig/files/patch-c-cleanup.diff	2013-04-10 19:54:53 UTC (rev 105115)
@@ -0,0 +1,647 @@
+--- ./fig2dev/dev/genibmgl.c.orig	2013-04-10 12:58:38.000000000 -0400
++++ ./fig2dev/dev/genibmgl.c	2013-04-10 13:19:23.000000000 -0400
+@@ -50,7 +50,7 @@
+ #include "fig2dev.h"
+ #include "object.h"
+ 
+-static set_style();
++static void set_style();
+ 
+ #define		FONTS 			35
+ #define		COLORS 			8
+@@ -458,7 +458,7 @@
+ 	    fprintf(tfp, "VS%.2f;\n", pen_speed);
+ }
+ 
+-static arc_tangent(x1, y1, x2, y2, direction, x, y)
++static void arc_tangent(x1, y1, x2, y2, direction, x, y)
+ double	x1, y1, x2, y2, *x, *y;
+ int	direction;
+ {
+@@ -474,7 +474,7 @@
+ 
+ /*	draw arrow heading from (x1, y1) to (x2, y2)	*/
+ 
+-static draw_arrow_head(x1, y1, x2, y2, arrowht, arrowwid)
++static void draw_arrow_head(x1, y1, x2, y2, arrowht, arrowwid)
+ double	x1, y1, x2, y2, arrowht, arrowwid;
+ {
+ 	double	x, y, xb, yb, dx, dy, l, sina, cosa;
+@@ -512,7 +512,7 @@
+ /* 
+  * set_style - issue line style commands as appropriate
+  */
+-static set_style(style, length)
++static void set_style(style, length)
+ int	style;
+ double	length;
+ {
+@@ -567,7 +567,7 @@
+  * set_width - issue line width commands as appropriate
+  *		NOTE: HPGL/2 command used
+  */
+-static set_width(w)
++static void set_width(w)
+     int	w;
+ {
+     static int current_width=-1;
+@@ -585,7 +585,7 @@
+ /* 
+  * set_color - issue line color commands as appropriate
+  */
+-static set_color(color)
++static void set_color(color)
+     int	color;
+ {
+     static	int	number		 = 0;	/* 1 <= number <= 8		*/
+@@ -604,7 +604,7 @@
+ 	    }
+ }
+ 
+-static fill_polygon(pattern, color)
++static void fill_polygon(pattern, color)
+     int	pattern;
+     int	color;
+ {
+@@ -662,7 +662,7 @@
+     F_arc	*a;
+ {
+ 	if (a->thickness != 0 ||
+-		ibmgec && 0 <= a->fill_style && a->fill_style < patterns) {
++	    (ibmgec && 0 <= a->fill_style && a->fill_style < patterns)) {
+ 	    double	x, y;
+ 	    double	cx, cy, sx, sy, ex, ey;
+ 	    double	dx1, dy1, dx2, dy2, theta;
+@@ -720,7 +720,7 @@
+     F_ellipse	*e;
+ {
+ 	if (e->thickness != 0 ||
+-		ibmgec && 0 <= e->fill_style && e->fill_style < patterns) {
++	    (ibmgec && 0 <= e->fill_style && e->fill_style < patterns)) {
+ 	    int		j;
+ 	    double	alpha;
+ 	    double	angle;
+@@ -774,7 +774,7 @@
+     F_line	*l;
+ {
+ 	if (l->thickness != 0 ||
+-		ibmgec && 0 <= l->fill_style && l->fill_style < patterns) {
++	    (ibmgec && 0 <= l->fill_style && l->fill_style < patterns)) {
+ 	    F_point	*p, *q;
+ 
+ 	    set_style(l->style, l->style_val);
+@@ -876,7 +876,7 @@
+ 
+ #define		THRESHOLD	.05	/* inch */
+ 
+-static bezier_spline(a0, b0, a1, b1, a2, b2, a3, b3)
++static void bezier_spline(a0, b0, a1, b1, a2, b2, a3, b3)
+     double	a0, b0, a1, b1, a2, b2, a3, b3;
+ {
+ 	double	x0, y0, x3, y3;
+@@ -932,7 +932,7 @@
+ 		    s->for_arrow->ht/ppi, s->for_arrow->wid/ppi);
+ 	}
+ 
+-static quadratic_spline(a1, b1, a2, b2, a3, b3, a4, b4)
++static void quadratic_spline(a1, b1, a2, b2, a3, b3, a4, b4)
+ double	a1, b1, a2, b2, a3, b3, a4, b4;
+ {
+ 	double	x1, y1, x4, y4;
+@@ -1045,8 +1045,6 @@
+ {
+ static	int	font	 = DEFAULT;	/* font				*/
+ static	int	size	 = DEFAULT;	/* font size	    in points	*/
+-static	int	cs	 = 0;		/* standard  character set	*/
+-static	int	ca	 = 0;		/* alternate character set	*/
+ static	double	theta	 = 0.0;		/* character slant  in degrees	*/
+ static	double	angle	 = 0.0;		/* label direction  in radians	*/
+ 	double	width;			/* character width  in centimeters */
+--- ./fig2dev/dev/genshape.c.orig	2013-04-10 13:01:01.000000000 -0400
++++ ./fig2dev/dev/genshape.c	2013-04-10 13:09:42.000000000 -0400
+@@ -97,7 +97,7 @@
+ typedef struct shapegroup shapegroup;
+ 
+ static shapegroup *shapegroups;
+-static num_shapegroups=0;
++static unsigned int num_shapegroups=0;
+ 
+ 
+ static void alloc_arrays() {
+@@ -615,7 +615,7 @@
+ static int MAX_INTERSECTPOINTS=0;
+ #define INTERSECTPOINT_INC 100
+ 
+-static realloc_intersects(int minimum) {
++static void realloc_intersects(int minimum) {
+   while (minimum>=MAX_INTERSECTPOINTS) {
+     MAX_INTERSECTPOINTS+=INTERSECTPOINT_INC;
+     intersect_points=realloc(intersect_points, sizeof(intersect_points[0])*MAX_INTERSECTPOINTS);
+--- ./fig2dev/dev/readpcx.c.orig	2013-04-10 13:09:57.000000000 -0400
++++ ./fig2dev/dev/readpcx.c	2013-04-10 13:10:26.000000000 -0400
+@@ -72,7 +72,7 @@
+ 
+ void pcx_decode();
+ 
+-_read_pcx(pcxfile,pic)
++int _read_pcx(pcxfile,pic)
+     FILE	*pcxfile;
+     F_pic	*pic;
+ {
+--- ./fig2dev/bound.c.orig	2013-04-10 13:26:43.000000000 -0400
++++ ./fig2dev/bound.c	2013-04-10 13:42:13.000000000 -0400
+@@ -28,10 +28,14 @@
+ #define		max(a, b)		(((a) > (b)) ? (a) : (b))
+ #define		min(a, b)		(((a) < (b)) ? (a) : (b))
+ 
++extern int depth_filter(int);
++extern void arc_tangent_int(double, double, double, double, int, int*, int*);
++
++int	direction;
++
+ static double	compute_angle();
+ static void	arrow_bound();
+ static void	points_bound();
+-static void	control_points_bound();
+ 
+ /************** ARRAY FOR ARROW SHAPES **************/ 
+ 
+@@ -665,28 +669,6 @@
+ 	*xmax = bx; *ymax = by;
+ }
+ 
+-static void
+-control_points_bound(cps, xmin, ymin, xmax, ymax)
+-    F_control	*cps;
+-    int		*xmin, *ymin, *xmax, *ymax;
+-{
+-	F_control	*c;
+-	double		bx, by, sx, sy;
+-
+-	bx = sx = cps->lx;
+-	by = sy = cps->ly;
+-	sx = min(sx, cps->rx); sy = min(sy, cps->ry);
+-	bx = max(bx, cps->rx); by = max(by, cps->ry);
+-	for (c = cps->next; c != NULL; c = c->next) {
+-	    sx = min(sx, c->lx); sy = min(sy, c->ly);
+-	    bx = max(bx, c->lx); by = max(by, c->ly);
+-	    sx = min(sx, c->rx); sy = min(sy, c->ry);
+-	    bx = max(bx, c->rx); by = max(by, c->ry);
+-	    }
+-	*xmin = round(sx); *ymin = round(sy);
+-	*xmax = round(bx); *ymax = round(by);
+-}
+-
+ /* extend xmin, ymin xmax, ymax by the arrow boundaries of obj (if any) */
+ 
+ static void
+--- ./fig2dev/latex_line.c.orig	2013-04-10 13:27:39.000000000 -0400
++++ ./fig2dev/latex_line.c	2013-04-10 13:27:57.000000000 -0400
+@@ -173,7 +173,7 @@
+     if (dy < 0) *syp = -*syp;
+ }
+ 
+-latex_endpoint(x1, y1, x2, y2, xout, yout, arrow, magnet)
++void latex_endpoint(x1, y1, x2, y2, xout, yout, arrow, magnet)
+     int  x1, y1, x2, y2;
+     int  *xout, *yout;
+     int  arrow, magnet;
+--- ./transfig/sys.c.orig	2013-04-10 13:28:34.000000000 -0400
++++ ./transfig/sys.c	2013-04-10 13:39:33.000000000 -0400
+@@ -17,6 +17,7 @@
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <string.h>
++#include <unistd.h>
+ #include "transfig.h"
+ 
+ #define MAXSYS 10000
+@@ -41,7 +42,7 @@
+   return sysbuf;
+ }
+ 
+-sysmv(file)
++void sysmv(file)
+ char *file;
+ {
+   sprintf(sysbuf, "%s~", file);
+--- ./transfig/transfig.c.orig	2013-04-10 13:28:30.000000000 -0400
++++ ./transfig/transfig.c	2013-04-10 13:45:15.000000000 -0400
+@@ -29,6 +29,9 @@
+ #include "patchlevel.h"
+ #include "transfig.h"
+ 
++extern void makefile(FILE*, int, ...);
++extern void texfile(FILE*, char*, ...);
++extern void sysmv(char*);
+ 
+ argument *parse_arg(), *arglist = NULL, *lastarg = NULL;
+ char *strip();
+@@ -87,7 +90,7 @@
+ 	"ps",
+ 	"eps"};
+  
+-main(argc, argv)
++int main(argc, argv)
+ int argc;
+ char *argv[];
+ {
+@@ -179,7 +182,7 @@
+   if (!arglist)
+   {
+ 	argbuf = sysls();
+-	while (cp = strchr(argbuf, '\n'))
++	while ((cp = strchr(argbuf, '\n')) != NULL)
+ 	{
+ 		*cp = '\0';
+ 		a = parse_arg(tolang, arg_f, arg_s, arg_m, arg_o, argbuf);
+@@ -212,6 +215,7 @@
+   }
+   makefile(mk, altfonts, arglist);
+   exit(0);
++  return(0);
+ }
+ 
+ enum language str2lang(s)
+--- ./fig2dev/colors.c.orig	2013-04-10 13:53:06.000000000 -0400
++++ ./fig2dev/colors.c	2013-04-10 13:53:55.000000000 -0400
+@@ -47,6 +47,7 @@
+     }
+ 
+     if (name[0] == '#') {			/* hex color parse it now */
++        n = 0;
+ 	if (strlen(name) == 4) {		/* #rgb */
+ 		n = sscanf(name,"#%1x%1x%1x",&r,&g,&b);
+ 		rgb->red   = ((r << 4) + r) << 8;
+--- ./fig2dev/dev/genpstricks.c.orig	2013-04-10 13:54:37.000000000 -0400
++++ ./fig2dev/dev/genpstricks.c	2013-04-10 14:07:17.000000000 -0400
+@@ -622,6 +622,7 @@
+     break;
+  
+   case 'l':
++    tmp_dbl = -1.0;
+     if (sscanf(optarg, "%lf", &tmp_dbl) == 1 && 0 <= tmp_dbl && tmp_dbl <= 2.0)
+       Line_weight = tmp_dbl;
+     else
+@@ -629,6 +630,7 @@
+     break;
+  
+   case 'n':
++    tmp_int = -1;
+     if (sscanf(optarg, "%d", &tmp_int) == 1 && 0 <= tmp_int && tmp_int <= 3)
+       Page_mode = tmp_int;
+     else
+@@ -664,14 +666,19 @@
+     break;
+  
+   case 'R':
+-    if (sscanf(optarg, "%d", &tmp_int) == 1 && 0 <= tmp_int && tmp_int <= 2)
++    tmp_int = -1;
++    if (sscanf(optarg, "%d", &tmp_int) == 1 &&
++	(0 <= tmp_int && tmp_int <= 2))
+       Arrows = tmp_int;
+     else
+       fprintf(stderr, "warning: bad arrow spec (0, 1, or 2 expected)\n");
+     break;
+  
+   case 'S':
+-    if (optarg && sscanf(optarg, "%d", &tmp_int) == 1 && (tmp_int < 8 || tmp_int > 12)) {
++    tmp_int = 0;
++    if ((optarg != NULL) &&
++	sscanf(optarg, "%d", &tmp_int) == 1 &&
++	(tmp_int < 8 || tmp_int > 12)) {
+       fprintf(stderr, "Scale must be between 8 and 12 inclusively\n");
+       exit(1);
+     }
+--- ./fig2dev/dev/genptk.c.orig	2013-04-10 13:56:14.000000000 -0400
++++ ./fig2dev/dev/genptk.c	2013-04-10 13:59:48.000000000 -0400
+@@ -113,6 +113,7 @@
+ 	struct paperdef	*pd;
+ 
+ 	ppi = ppi / mag;
++	ht = swap = wid = 0.0;
+ 
+ 	/* print any whole-figure comments prefixed with "#" */
+ 	if (objects->comments) {
+--- ./fig2dev/dev/gentk.c.orig	2013-04-10 13:57:54.000000000 -0400
++++ ./fig2dev/dev/gentk.c	2013-04-10 14:06:36.000000000 -0400
+@@ -33,7 +33,6 @@
+ 
+ static void
+ 	drawBitmap(F_line *),
+-	drawLine(F_point *, int, int, int, int, int),
+ 	drawShape(void (*)(), void *, int, int, int, int, int, double),
+ 	niceLine(char *),
+ 	tkArc(void *, unsigned int, unsigned int, unsigned int, int),
+@@ -122,6 +121,7 @@
+ 	sprintf(stfp, "# Produced by fig2dev Version %s Patchlevel %s\n", VERSION, PATCHLEVEL);
+ 	niceLine(stfp);
+ 	ppi = ppi / mag * 80/72.0;
++	ht = swap = wid = 0.0;
+ 
+ 	/* print any whole-figure comments prefixed with "#" */
+ 	if (objects->comments) {
+--- ./fig2dev/dev/readpng.c.orig	2013-04-10 15:00:00.000000000 -0400
++++ ./fig2dev/dev/readpng.c	2013-04-10 15:01:25.000000000 -0400
+@@ -36,7 +36,7 @@
+     int		    bit_depth, color_type, interlace_type;
+     int		    compression_type, filter_type;
+     png_bytep	   *row_pointers;
+-    char	   *ptr;
++    unsigned char  *ptr;
+     int		    num_palette;
+     png_colorp	    palette;
+     png_color_16    png_background;
+@@ -178,7 +182,7 @@
+     png_read_image(png_ptr, row_pointers);
+ 
+     /* allocate the bitmap */
+-    if ((pic->bitmap=malloc(rowsize*h))==NULL)
++    if ((pic->bitmap=(unsigned char*)malloc(rowsize*h))==NULL)
+ 	    return 0;
+ 
+     /* copy it to our bitmap */
+--- ./fig2dev/dev/gencgm.c.orig	2013-04-10 14:17:32.000000000 -0400
++++ ./fig2dev/dev/gencgm.c	2013-04-10 14:19:57.000000000 -0400
+@@ -139,7 +139,7 @@
+   
+   if (from) {
+ 	figname = malloc(strlen(from)+1);
+-	sprintf(figname, from);
++	sprintf(figname, "%s", from);
+ 	p = strrchr(figname, '/');
+ 	if (p) 
+ 	    figname = p+1;		/* remove path from name for comment in file */
+--- ./fig2dev/dev/gendxf.c.orig	2013-04-10 14:20:22.000000000 -0400
++++ ./fig2dev/dev/gendxf.c	2013-04-10 14:31:58.000000000 -0400
+@@ -109,6 +109,8 @@
+ static        double        high[]                 = {.8,.8,.8,.8,.8,.8,.8,.8,.8,.8,.8,.8,.8,.8,
+             .8,.8,.8,.8,.8,.8,.8,.8,.8,.8,.8,.8,.8,.8,.8,.8,.8,.8,.8,.8,.8,.8};
+ 
++extern void arc_tangent(double, double, double, double, int, double*, double*);
++
+ static void gendxf_option(opt, optarg)
+ char opt, *optarg;
+ {
+@@ -579,7 +581,7 @@
+   fprintf(tfp, "999\n !! found gendxf_arc\n");
+   if (1 == 0) {
+         if (a->thickness != 0 ||
+-                ibmgec && 0 <= a->fill_style && a->fill_style < patterns) {
++	    (ibmgec && 0 <= a->fill_style && a->fill_style < patterns)) {
+             double        x, y;
+             double        cx, cy, sx, sy, ex, ey;
+             double        dx1, dy1, dx2, dy2, theta;
+@@ -641,7 +643,7 @@
+   /* This is a quick fix to use polylines rather than dxf ellipses    */
+   /* This might be a compatibility option also in the future.         */
+   if (e->thickness != 0 ||
+-            ibmgec && 0 <= e->fill_style && e->fill_style < patterns)
++      (ibmgec && 0 <= e->fill_style && e->fill_style < patterns))
+   {
+     int                j;
+     double        alpha;
+@@ -696,8 +698,8 @@
+ void gendxf_line(l)
+ F_line        *l;
+ {
+-  if (l->thickness != 0 || ibmgec && 0 <= l->fill_style &&
+-                                        l->fill_style < patterns)
++  if (l->thickness != 0 ||
++      (ibmgec && 0 <= l->fill_style && l->fill_style < patterns))
+   {
+     F_point        *p, *q, *r;
+ 
+@@ -1056,10 +1058,6 @@
+ {
+   static int font = DEFAULT;        /* font                                */
+   static int size = DEFAULT;        /* font size        in points          */
+-  static int cs   = 0;              /* standard  character set             */
+-  static int ca   = 0;              /* alternate character set             */
+-  static double theta = 0.0;        /* character slant  in degrees         */
+-  static double angle = 0.0;        /* label direction  in radians         */
+   double width;                     /* character width  in centimeters     */
+   double height;                    /* character height in centimeters     */
+ 
+--- ./fig2dev/dev/genepic.c.orig	2013-04-10 14:23:22.000000000 -0400
++++ ./fig2dev/dev/genepic.c	2013-04-10 14:26:16.000000000 -0400
+@@ -136,6 +136,8 @@
+ static void fdraw_arrow_head();
+ static char *FillCommands();
+ 
++extern void arc_tangent(double, double, double, double, int, double*, double*);
++
+ /* Structure for Point with "double" values */
+ struct fp_struct {
+     double x,y;
+@@ -1312,7 +1314,7 @@
+     if (!special_text(text))
+ 	/* This loop escapes special LaTeX characters. */
+ 	for (cp = (unsigned char*)text->cstring; *cp; cp++) {
+-      	    if (special_index=strchr(latex_text_specials, *cp)) {
++	  if ((special_index=strchr(latex_text_specials, *cp)) != NULL) {
+ 	      /* Write out the replacement.  Implementation note: we can't
+ 		 use puts since that will output an additional newline. */
+ 	      esc_cp=latex_text_mappings[special_index-latex_text_specials];
+--- ./fig2dev/dev/genmf.c.orig	2013-04-10 14:29:20.000000000 -0400
++++ ./fig2dev/dev/genmf.c	2013-04-10 14:29:46.000000000 -0400
+@@ -208,7 +208,8 @@
+ 
+ 	setpen(s->thickness);
+ 	fprintf(tfp, "  store (curpath)\n");
+-	if ((s->type == 0) || (s->type == 2) && (s->fill_style < 0)) /* Open spline */
++	if ((s->type == 0) ||
++	    ((s->type == 2) && (s->fill_style < 0))) /* Open spline */
+ 		fprintf(tfp,"  drawn curve(false)\n");
+ 	else { /* Closed and/or filled spline, see comment above */
+ 		if (s->fill_style == BLACK_FILL)
+--- ./fig2dev/dev/genmp.c.orig	2013-04-10 14:36:44.000000000 -0400
++++ ./fig2dev/dev/genmp.c	2013-04-10 14:41:29.000000000 -0400
+@@ -727,7 +727,7 @@
+ 	            fprintf(tfp,";\n");
+ 
+ 		 if ((l->for_arrow != NULL) || (l->back_arrow != NULL))
+-		     genmp_arrowheads(l, O_POLYLINE);
++		     genmp_arrowheads((F_line*)l, O_POLYLINE);
+ 	      }
+ 	      break;
+ 	   case 4:            /* arc box */
+@@ -861,7 +861,7 @@
+ 	            fprintf(tfp,";\n");
+ 		 
+ 		 if ((s->for_arrow != NULL) || (s->back_arrow != NULL))
+-		     genmp_arrowheads(s, O_SPLINE);
++		   genmp_arrowheads((F_line*)s, O_SPLINE);
+ 	      }
+ 	      break;
+ 	   case 2:         /* interpolated spline (open) */
+@@ -900,7 +900,7 @@
+ 	            fprintf(tfp,";\n");
+ 
+ 		 if ((s->for_arrow != NULL) || (s->back_arrow != NULL))
+-		     genmp_arrowheads(s, O_SPLINE);
++		   genmp_arrowheads((F_line*)s, O_SPLINE);
+ 	      }
+ 	      break;
+ 	   default:
+@@ -1014,7 +1014,7 @@
+ 	            fprintf(tfp,";\n");
+ 
+ 		 if ((a->for_arrow != NULL) || (a->back_arrow != NULL))
+-		     genmp_arrowheads(a, O_ARC);
++		     genmp_arrowheads((F_line*)a, O_ARC);
+ 	      }
+ 	      break;
+ 	   default:
+@@ -1150,7 +1150,7 @@
+ 	    }
+ 	} else {
+ 	    /* special text in latex mode: just write the text. */
+-	    fprintf(tfp, t->cstring);
++	  fprintf(tfp, "%s", t->cstring);
+ 	}
+ 	fprintf(tfp," etex;\n");
+ 
+@@ -1164,7 +1164,7 @@
+ 
+ 	fprintf(tfp,"  picture q;\n");
+ 	fprintf(tfp,"  q=thelabel.urt(\"");
+-        fprintf(tfp, t->cstring);
++        fprintf(tfp, "%s", t->cstring);
+ 	fprintf(tfp, "\" infont ");
+ 	if (t->font<0) {
+ 	    fprintf(tfp, "defaultfont");
+--- ./fig2dev/dev/genpictex.c.orig	2013-04-10 14:30:26.000000000 -0400
++++ ./fig2dev/dev/genpictex.c	2013-04-10 14:32:27.000000000 -0400
+@@ -53,6 +53,8 @@
+ static int		cur_thickness = -1;
+ static Boolean		anonymous = False;
+ 
++extern void arc_tangent(double, double, double, double, int, double*, double*);
++
+ static void
+ genpictex_option(opt, optarg)
+ char opt, *optarg;
+--- ./fig2dev/dev/genps.c.orig	2013-04-10 14:34:00.000000000 -0400
++++ ./fig2dev/dev/genps.c	2013-04-10 14:36:09.000000000 -0400
+@@ -1275,10 +1275,10 @@
+ removestr(char *buf, char *str, int *len)
+ {
+ 	int	slen = strlen(str)-1;
+-	int	i, found=0;
++	int	found=0;
+ 	char	*cp = buf;
+ 
+-	while (cp=strstr(buf,str)) {
++	while ((cp=strstr(buf,str)) != NULL) {
+ 		*len = *len - slen;
+ 	    	memmove(cp, cp+slen, *len-(cp-buf));
+ 		*(buf+*len) = '\0';
+--- ./fig2dev/dev/gentextyl.c.orig	2013-04-10 14:32:43.000000000 -0400
++++ ./fig2dev/dev/gentextyl.c	2013-04-10 14:32:53.000000000 -0400
+@@ -44,6 +44,7 @@
+ static int		line_style = 0; /* Textyl solid line style */
+ static int 		linethick = 2;  /* Range is 1-12 `pixels' */
+  
++extern void arc_tangent(double, double, double, double, int, double*, double*);
+ 
+ static void
+ gentextyl_option(opt, optarg)
+--- ./fig2dev/dev/readpics.c.orig	2013-04-10 14:41:47.000000000 -0400
++++ ./fig2dev/dev/readpics.c	2013-04-10 14:42:40.000000000 -0400
+@@ -106,7 +106,7 @@
+     if (*type == 1 && !pipeok) {
+ 	char *p;
+ 	system(unc);
+-	if (p=strrchr(name,'.')) {
++	if ((p=strrchr(name,'.')) != NULL) {
+ 	    *p = '\0';		/* terminate name before last .gz, .z or .Z */
+ 	}
+ 	strcpy(retname, name);
+@@ -153,7 +153,7 @@
+     char	   *p;
+     if (filename == NULL || *filename == '\0')
+ 	return filename;
+-    if (p=strrchr(filename,'/')) {
++    if ((p=strrchr(filename,'/')) != NULL) {
+ 	return ++p;
+     } else {
+ 	return filename;
+--- ./fig2dev/fig2dev.c.orig	2013-04-10 14:12:57.000000000 -0400
++++ ./fig2dev/fig2dev.c	2013-04-10 14:13:25.000000000 -0400
+@@ -373,7 +373,7 @@
+      fprintf(stderr,"  Ignoring grid.\n");
+ }
+ 
+-main(argc, argv)
++int main(argc, argv)
+ int	 argc;
+ char	*argv[];
+ {
+@@ -449,6 +449,7 @@
+ 	if ((tfp != stdout) && (tfp != 0)) 
+ 	    (void)fclose(tfp);
+ 	exit(status);
++	return(0);
+ }
+ 
+ void
+--- ./fig2dev/trans_spline.c.orig	2013-04-10 14:11:04.000000000 -0400
++++ ./fig2dev/trans_spline.c	2013-04-10 14:15:32.000000000 -0400
+@@ -68,7 +68,6 @@
+ static INLINE double g_blend();
+ static INLINE double h_blend();
+ static void          free_point_array();
+-static int           num_points();
+ static void          too_many_points();
+ static F_line	     *create_line();
+ static F_point	     *create_point();
+@@ -648,7 +647,7 @@
+     F_control	   *cp;
+ 
+     if ((cp = (F_control *) malloc(CONTROL_SIZE)) == NULL)
+-	fprintf(stderr,Err_mem);
++	put_msg(Err_mem);
+     return cp;
+ }
+ 
+@@ -659,7 +658,7 @@
+     F_line	   *l;
+ 
+     if ((l = (F_line *) malloc(LINOBJ_SIZE)) == NULL)
+-	fprintf(stderr,Err_mem);
++	put_msg(Err_mem);
+     l->pic = NULL;
+     l->next = NULL;
+     l->for_arrow = NULL;
+@@ -679,16 +678,3 @@
+ 	put_msg(Err_mem);
+     return p;
+ }
+-
+-
+-
+-static int
+-num_points(points)
+-    F_point	   *points;
+-{
+-    int		    n;
+-    F_point	   *p;
+-
+-    for (p = points, n = 0; p != NULL; p = p->next, n++);
+-    return n;
+-}
+--- transfig/mkfile.c.orig	2013-04-10 15:34:51.000000000 -0400
++++ transfig/mkfile.c	2013-04-10 15:37:45.000000000 -0400
+@@ -158,6 +158,11 @@
+ 		needpic = 1;
+ 		break;
+ 
++	  case gbx:
++  	  case dxf:
++	  case svg:
++	  default:
++	        break;
+ 	}
+ 
+ 	putclean(mk, i, lname[a->tolang] );

Modified: trunk/dports/print/transfig/files/patch-libpng-1.5.diff
===================================================================
--- trunk/dports/print/transfig/files/patch-libpng-1.5.diff	2013-04-10 17:31:29 UTC (rev 105114)
+++ trunk/dports/print/transfig/files/patch-libpng-1.5.diff	2013-04-10 19:54:53 UTC (rev 105115)
@@ -1,6 +1,6 @@
---- fig2dev/dev/readpng.c.orig
-+++ fig2dev/dev/readpng.c
-@@ -62,7 +62,7 @@ read_png(file,filetype,pic,llx,lly)
+--- fig2dev/dev/readpng.c.orig	2013-04-10 15:00:00.000000000 -0400
++++ fig2dev/dev/readpng.c	2013-04-10 15:01:25.000000000 -0400
+@@ -62,7 +62,7 @@
      }
  
      /* set long jump here */
@@ -9,17 +9,18 @@
  	/* if we get here there was a problem reading the file */
  	png_destroy_read_struct(&png_ptr, &info_ptr, &end_info);
  	return 0;
-@@ -78,15 +78,17 @@ read_png(file,filetype,pic,llx,lly)
+@@ -78,15 +78,19 @@
      png_get_IHDR(png_ptr, info_ptr, &w, &h, &bit_depth, &color_type,
  	&interlace_type, &compression_type, &filter_type);
  
 -    if (info_ptr->valid & PNG_INFO_gAMA)
 -	png_set_gamma(png_ptr, 2.2, info_ptr->gamma);
--    else
++    double gamma = 0.45;
++    if (png_get_gAMA(png_ptr,info_ptr,&gamma))
++      png_set_gamma(png_ptr, 2.2, gamma);
+     else
 -	png_set_gamma(png_ptr, 2.2, 0.45);
-+    png_fixed_point gamma = 0.45;
-+    png_get_gAMA_fixed(png_ptr,info_ptr,&gamma);
-+    png_set_gamma(png_ptr, 2.2, gamma);
++      png_set_gamma(png_ptr, 2.2, 0.45);
  
 -    if (info_ptr->valid & PNG_INFO_bKGD)
 +    if (png_get_valid(png_ptr,info_ptr,PNG_INFO_bKGD)) {
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20130410/868b27f7/attachment.html>


More information about the macports-changes mailing list