aboutsummaryrefslogtreecommitdiffstats
path: root/cad/spice
diff options
context:
space:
mode:
authorsteve <steve@FreeBSD.org>2000-05-29 11:04:58 +0800
committersteve <steve@FreeBSD.org>2000-05-29 11:04:58 +0800
commit98bad22bb425c92632b09d244fa79925adc52982 (patch)
tree034c12b747e22806ede6f910aa38fe9a974fc90f /cad/spice
parent72aeda0202e59171452f439ac21c96cc7cd0d414 (diff)
downloadfreebsd-ports-graphics-98bad22bb425c92632b09d244fa79925adc52982.tar.gz
freebsd-ports-graphics-98bad22bb425c92632b09d244fa79925adc52982.tar.zst
freebsd-ports-graphics-98bad22bb425c92632b09d244fa79925adc52982.zip
Incorporate some changes from NetBSD, Linux, and the Macquarie University.
PR: 18509 Submitted by: Pedro F. Giffuni <giffunip@asme.org>
Diffstat (limited to 'cad/spice')
-rw-r--r--cad/spice/Makefile2
-rw-r--r--cad/spice/files/FreeBSD3
-rw-r--r--cad/spice/files/patch-aa2
-rw-r--r--cad/spice/files/patch-al112
-rw-r--r--cad/spice/files/patch-am102
-rw-r--r--cad/spice/files/patch-an55
-rw-r--r--cad/spice/files/patch-ao11
-rw-r--r--cad/spice/files/patch-ap20
-rw-r--r--cad/spice/files/patch-as19
-rw-r--r--cad/spice/files/patch-ba60
10 files changed, 382 insertions, 4 deletions
diff --git a/cad/spice/Makefile b/cad/spice/Makefile
index f8f53daf138..38481a26c2a 100644
--- a/cad/spice/Makefile
+++ b/cad/spice/Makefile
@@ -6,7 +6,7 @@
#
PORTNAME= spice
-PORTVERSION= 3f5
+PORTVERSION= 3f5.1
CATEGORIES= cad
MASTER_SITES= ftp://ic.eecs.berkeley.edu/pub/Spice3/
DISTNAME= sp3f4.kit
diff --git a/cad/spice/files/FreeBSD b/cad/spice/files/FreeBSD
index 9639ab93fd9..e6363b9572a 100644
--- a/cad/spice/files/FreeBSD
+++ b/cad/spice/files/FreeBSD
@@ -2,9 +2,8 @@
MAKE = /usr/bin/make
INTERFACE_OPTS = -DWANT_X11
-CC = gcc
+CC = cc
CC_OPT = -O2 -pipe
CC_OPT_SAFE = -O2 -fno-strength-reduce -pipe
LDFLAGS = -L$(X11BASE)/lib -lm -ltermcap
-ASM_HACK = < /dev/null
SYS_CFLAGS = -Dbsd
diff --git a/cad/spice/files/patch-aa b/cad/spice/files/patch-aa
index 8e423df0cf3..f6e7d5dd45b 100644
--- a/cad/spice/files/patch-aa
+++ b/cad/spice/files/patch-aa
@@ -65,7 +65,7 @@
# CC_OPT: Default compile options (optimization/debug level, other)
-! CC_OPT = -O2 -pipe
+! CC_OPT = -O -Os
# CC_OPT_SAFE: Special compile options to override CC_OPT for code
# which typically causes problems for most compilers (bsim1 and bsim2).
diff --git a/cad/spice/files/patch-al b/cad/spice/files/patch-al
new file mode 100644
index 00000000000..86a9b7a54f6
--- /dev/null
+++ b/cad/spice/files/patch-al
@@ -0,0 +1,112 @@
+*** spice3f4/src/lib/fte/cpitf.c.orig Sun Dec 7 13:40:46 1997
+--- src/lib/fte/cpitf.c Sun Dec 7 13:41:41 1997
+***************
+*** 212,218 ****
+ cp_interactive = false;
+ inp_spsource(fp, true, buf);
+ cp_interactive = true;
+! (void) fclose(fp);
+ found = true;
+ break;
+ } else if (ft_controldb)
+--- 212,220 ----
+ cp_interactive = false;
+ inp_spsource(fp, true, buf);
+ cp_interactive = true;
+! /* the following caused me SIGSEGV's since inp_spsource
+! already closes fp - A. Veliath 12/7/97 */
+! /* (void) fclose(fp); */
+ found = true;
+ break;
+ } else if (ft_controldb)
+*** spice3f4/src/lib/fte/device.c Wed Nov 30 21:48:12 1994
+--- src/lib/fte/device.c Fri Jan 22 22:33:24 1999
+***************
+*** 661,667 ****
+ }
+
+ dv = ft_evaluate(n2->pn_right);
+! free_pnode(names);
+ if (!dv)
+ return;
+ if (dv->v_length < 1) {
+--- 661,669 ----
+ }
+
+ dv = ft_evaluate(n2->pn_right);
+! /* prevent names from getting freed twice
+! Guenther Roehrich 22-Jan-99 */
+! /* free_pnode(names); */
+ if (!dv)
+ return;
+ if (dv->v_length < 1) {
+*** spice3f4/src/lib/fte/x11.c Fri Jan 22 22:17:56 1999
+--- src/lib/fte/x11.c Fri Jan 22 22:26:29 1999
+***************
+*** 120,126 ****
+ /* "invert" works better than "xor" for B&W */
+
+ /* xor gc should be a function of the pixels that are written on */
+! gcvalues.function = GXxor;
+ gcvalues.line_width = 1;
+ gcvalues.foreground = 1;
+ gcvalues.background = 0;
+--- 120,129 ----
+ /* "invert" works better than "xor" for B&W */
+
+ /* xor gc should be a function of the pixels that are written on */
+! /* gcvalues.function = GXxor; */
+! /* this patch makes lines visible on true color displays
+! Guenther Roehrich 22-Jan-99 */
+! gcvalues.function = GXinvert;
+ gcvalues.line_width = 1;
+ gcvalues.foreground = 1;
+ gcvalues.background = 0;
+*** spice3f4/src/lib/fte/graf.c Thu Jun 17 23:32:52 1993
+--- src/lib/fte/graf.c Fri Jan 22 23:11:43 1999
+***************
+*** 289,297 ****
+ if (*tics == (double) np) {
+ Text("x", (int) (tox - currentgraph->fontwidth / 2),
+ (int) (toy - currentgraph->fontheight / 2));
+! SaveText(currentgraph, "x",
+ (int) (tox - currentgraph->fontwidth / 2),
+! (int) (toy - currentgraph->fontheight / 2));
+ break;
+ }
+ }
+--- 289,299 ----
+ if (*tics == (double) np) {
+ Text("x", (int) (tox - currentgraph->fontwidth / 2),
+ (int) (toy - currentgraph->fontheight / 2));
+! /* gr_redraw will redraw this w/o our having to save it
+! Guenther Roehrich 22-Jan-99 */
+! /* SaveText(currentgraph, "x",
+ (int) (tox - currentgraph->fontwidth / 2),
+! (int) (toy - currentgraph->fontheight / 2)); */
+ break;
+ }
+ }
+***************
+*** 301,309 ****
+ /* Draw an 'x' */
+ Text("x", (int) (tox - currentgraph->fontwidth / 2),
+ (int) (toy - currentgraph->fontheight / 2));
+! SaveText(currentgraph, "x",
+ (int) (tox - currentgraph->fontwidth / 2),
+! (int) (toy - currentgraph->fontheight / 2));
+ }
+ break;
+ case PLOT_COMB:
+--- 303,313 ----
+ /* Draw an 'x' */
+ Text("x", (int) (tox - currentgraph->fontwidth / 2),
+ (int) (toy - currentgraph->fontheight / 2));
+! /* gr_redraw will redraw this w/o our having to save it
+! Guenther Roehrich 22-Jan-99 */
+! /* SaveText(currentgraph, "x",
+ (int) (tox - currentgraph->fontwidth / 2),
+! (int) (toy - currentgraph->fontheight / 2)); */
+ }
+ break;
+ case PLOT_COMB:
diff --git a/cad/spice/files/patch-am b/cad/spice/files/patch-am
new file mode 100644
index 00000000000..ddaa4464318
--- /dev/null
+++ b/cad/spice/files/patch-am
@@ -0,0 +1,102 @@
+*** spice3f4/src/lib/fte/grid.c Fri Jan 22 22:17:24 1999
+--- src/lib/fte/grid.c Fri Jan 22 22:43:14 1999
+***************
+*** 1231,1237 ****
+
+ /* SetLinestyle(1); takes too long */
+ /* Problems with Suns on very large radii && linestyle */
+! SetLinestyle(0);
+
+ /* Now plot all the arc sets. Go as high as 5 times the radius that
+ * will fit on the screen. The base magnitude is one more than
+--- 1231,1240 ----
+
+ /* SetLinestyle(1); takes too long */
+ /* Problems with Suns on very large radii && linestyle */
+! /* SetLinestyle(0); */
+! /* linestyle 1 looks better
+! Guenther Roehrich 22-Jan-99 */
+! SetLinestyle(1);
+
+ /* Now plot all the arc sets. Go as high as 5 times the radius that
+ * will fit on the screen. The base magnitude is one more than
+***************
+*** 1410,1416 ****
+ /* Let's be lazy and just draw everything -- we won't get called too
+ * much and the circles get clipped anyway...
+ */
+! SetColor(18);
+
+ cliparc((double) (centx + xoffset + radoff - rad),
+ (double) (centy + yoffset), rad, 2*angle,
+--- 1413,1422 ----
+ /* Let's be lazy and just draw everything -- we won't get called too
+ * much and the circles get clipped anyway...
+ */
+! /* SetColor(18); */
+! /* draw everything in black
+! Guenther Roehrich 22-Jan-99 */
+! SetColor(1);
+
+ cliparc((double) (centx + xoffset + radoff - rad),
+ (double) (centy + yoffset), rad, 2*angle,
+***************
+*** 1425,1431 ****
+ M_PI - 2 * angle, centx, centy, maxrad, 0);
+
+ /* Draw the upper and lower circles. */
+! SetColor(19);
+ aclip = cliparc((double) (centx + xoffset + radoff),
+ (double) (centy + yoffset + irad), irad,
+ (double) (M_PI * 1.5 + 2 * iangle),
+--- 1431,1440 ----
+ M_PI - 2 * angle, centx, centy, maxrad, 0);
+
+ /* Draw the upper and lower circles. */
+! /* SetColor(19); */
+! /* draw everything in black
+! Guenther Roehrich 22-Jan-99 */
+! SetColor(1);
+ aclip = cliparc((double) (centx + xoffset + radoff),
+ (double) (centy + yoffset + irad), irad,
+ (double) (M_PI * 1.5 + 2 * iangle),
+***************
+*** 1442,1448 ****
+ adddeglabel(graph, ndeg, xlab, ylab,
+ gr_xcenter, gr_ycenter, gr_xcenter, gr_ycenter);
+ */
+! SetColor(19);
+ }
+ }
+ aclip = cliparc((double) (centx + xoffset + radoff),
+--- 1451,1460 ----
+ adddeglabel(graph, ndeg, xlab, ylab,
+ gr_xcenter, gr_ycenter, gr_xcenter, gr_ycenter);
+ */
+! /* SetColor(19); */
+! /* draw everything in black
+! Guenther Roehrich 22-Jan-99 */
+! SetColor(1);
+ }
+ }
+ aclip = cliparc((double) (centx + xoffset + radoff),
+***************
+*** 1456,1462 ****
+ SetColor(1);
+ adddeglabel(graph, ndeg, xlab, ylab,
+ gr_xcenter, gr_ycenter, gr_xcenter, gr_ycenter);
+! SetColor(19);
+ }
+
+ /* Now toss the labels on... */
+--- 1468,1477 ----
+ SetColor(1);
+ adddeglabel(graph, ndeg, xlab, ylab,
+ gr_xcenter, gr_ycenter, gr_xcenter, gr_ycenter);
+! /* SetColor(19); */
+! /* draw everything in black
+! Guenther Roehrich 22-Jan-99 */
+! SetColor(1);
+ }
+
+ /* Now toss the labels on... */
diff --git a/cad/spice/files/patch-an b/cad/spice/files/patch-an
new file mode 100644
index 00000000000..a61223c0a9c
--- /dev/null
+++ b/cad/spice/files/patch-an
@@ -0,0 +1,55 @@
+--- src/lib/fte//dimens.c.orig Sun Apr 25 18:03:19 1993
++++ src/lib/fte//dimens.c Thu Sep 30 10:02:10 1999
+@@ -21,9 +21,21 @@
+ {
+ int i;
+- char buf[BSIZE_SP];
++ char *buf;
++ if ( (buf = (char *) malloc(BSIZE_SP*sizeof(char))) == NULL)
++ {
++ fprintf(stderr,"lib:fte:dimns:dimstring: malloc failed\n");
++ exit(1);
++ }
+
+ if (!data || length < 1)
+ return NULL;
+
++ if (length > BSIZE_SP)
++ {
++ fprintf(stderr,"WARNING, lib:fte:dimns:dimstring: length=%d > BSIZE_SP=%d\n",
++ length,BSIZE_SP);
++ length = BSIZE_SP;
++ }
++
+ buf[0] = '\0';
+ for (i=0; i < length; i++) {
+@@ -31,5 +43,5 @@
+ (i < length - 1) ? "," : "");
+ }
+- /* XXX Should I return a copy instead? */
++
+ return(buf);
+ }
+@@ -44,8 +56,21 @@
+ {
+ int i;
+- char buf[BSIZE_SP];
++ char *buf;
++
++ if ( (buf = (char *) malloc(BSIZE_SP*sizeof(char))) == NULL)
++ {
++ fprintf(stderr,"lib:fte:dimns:indexstring: malloc failed\n");
++ exit(1);
++ }
+
+ if (!data || length < 1)
+ return NULL;
++
++ if (length > BSIZE_SP)
++ {
++ fprintf(stderr,"WARNING, lib:fte:dimns:indexstring: length=%d > BSIZE_SP=%d\n",
++ length,BSIZE_SP);
++ length = BSIZE_SP;
++ }
+
+ buf[0] = '\0';
diff --git a/cad/spice/files/patch-ao b/cad/spice/files/patch-ao
new file mode 100644
index 00000000000..449ae1e496a
--- /dev/null
+++ b/cad/spice/files/patch-ao
@@ -0,0 +1,11 @@
+--- src/lib/hlp/readhelp.c.orig Wed Apr 21 03:56:00 1993
++++ src/lib/hlp/readhelp.c Thu Sep 30 10:06:32 1999
+@@ -42,6 +42,6 @@
+ static char *getsubject();
+ static toplink *getsubtoplink();
+-extern void sortlist(), tlfree();
+-extern int sortcmp();
++static void sortlist(), tlfree();
++static int sortcmp();
+
+ static topic *alltopics = NULL;
diff --git a/cad/spice/files/patch-ap b/cad/spice/files/patch-ap
new file mode 100644
index 00000000000..d17e47182a0
--- /dev/null
+++ b/cad/spice/files/patch-ap
@@ -0,0 +1,20 @@
+--- src/lib/fte/aspice.c.orig Sun Apr 25 20:57:55 1993
++++ src/lib/fte/aspice.c Thu Sep 30 11:42:40 1999
+@@ -175,4 +175,10 @@
+ FILE *fp;
+ int pid;
++#ifdef HAS_INTWAITSTATUS
++ int status;
++#else
++ union wait status;
++#endif
++
+ static bool here = false; /* Don't want to be re-entrant. */
+
+@@ -183,5 +189,5 @@
+
+ while (numchanged > 0) {
+- pid = wait((union wait *) NULL);
++ pid = wait(&status);
+ if (pid == -1) {
+ fprintf(cp_err,
diff --git a/cad/spice/files/patch-as b/cad/spice/files/patch-as
new file mode 100644
index 00000000000..587f90a6657
--- /dev/null
+++ b/cad/spice/files/patch-as
@@ -0,0 +1,19 @@
+*** util/skeleton/make_def.bd.orig Thu Jul 29 16:35:18 1993
+--- util/skeleton/make_def.bd Fri Oct 1 01:47:31 1999
+***************
+*** 8,14 ****
+ PATH_SEP = /
+ PS = /
+ REVISION =
+! VERSION = 3f4
+ VERSION_REVISION= $(VERSION)$(REVISION)
+ NOTICE =
+ TOP = /projects/spice3/spice$(VERSION)
+--- 8,14 ----
+ PATH_SEP = /
+ PS = /
+ REVISION =
+! VERSION = 3f5
+ VERSION_REVISION= $(VERSION)$(REVISION)
+ NOTICE =
+ TOP = /projects/spice3/spice$(VERSION)
diff --git a/cad/spice/files/patch-ba b/cad/spice/files/patch-ba
new file mode 100644
index 00000000000..b228fb5bcca
--- /dev/null
+++ b/cad/spice/files/patch-ba
@@ -0,0 +1,60 @@
+*** spice3f4/conf/hpux Fri Jan 22 20:32:01 1993
+--- conf/hpux Mon Jun 27 15:10:31 1994
+***************
+*** 11,13 ****
+--- 11,17 ----
+
+ CFLAGS = -O
+ RANLIB = echo
++
++ # for release 9.0 of HP-UX define HPUXR9 for os_hpux.h.
++ #CC_OPT = -O -DHPUXR9
++ #CFLAGS = -O -DHPUXR9
+*** spice3f4/src/lib/dev/mos6/mos6itf.h Mon Sep 28 03:25:22 1992
+--- src/lib/dev/mos6/mos6itf.h Fri Jun 17 12:59:58 1994
+***************
+*** 46,58 ****
+ NULL, /* MOS6acLoad, XXX */
+ NULL,
+ MOS6destroy,
+! #ifdef DELETES
+! MOS6mDelete,
+! MOS6delete,
+! #else /* DELETES */
+! NULL,
+! NULL,
+! #endif /* DELETES */
+ MOS6getic,
+ MOS6ask,
+ MOS6mAsk,
+--- 46,53 ----
+ NULL, /* MOS6acLoad, XXX */
+ NULL,
+ MOS6destroy,
+! NULL, /* DELETES */
+! NULL,/* DELETES */
+ MOS6getic,
+ MOS6ask,
+ MOS6mAsk,
+*** spice3f4/src/include/os_hpux.h Sat Apr 24 19:09:53 1993
+--- src/include/os_hpux.h Mon Jun 27 15:02:02 1994
+***************
+*** 4,11 ****
+--- 4,13 ----
+
+ #include "os_sysv.h"
+
++ #ifndef HPUXR9 /* latter version does not need following definitions */
+ #undef HAS_ATRIGH
+ #define void int
+
+ #define HAS_NO_IEEE_LOGB
++ #endif
+
+*** spice3f4/src/include/patchlev.h Wed Jun 15 14:32:24 1994
+--- src/include/patchlev.h Wed Jun 22 08:34:07 1994
+***************
+*** 1 ****
+! #define PATCHLEVEL 0
+--- 1 ----
+! #define PATCHLEVEL 1