diff options
author | Maho Nakata <maho@FreeBSD.org> | 2003-07-19 03:13:48 +0000 |
---|---|---|
committer | Maho Nakata <maho@FreeBSD.org> | 2003-07-19 03:13:48 +0000 |
commit | 43801110c646ef25f3baa85796b629a83c545120 (patch) | |
tree | 76e9f483a855c61a3d3be02455d23d486ffc43f7 /cad/spice | |
parent | PR: (diff) |
1. REAL cleaning on this port. The files dir is now organized so the
port can be maintained: previously there were multifile patches and several
patches for the same file, now it is a lot cleaner.
2. I also merged a memory leak fix and some fixes from
spice3f5-spaghetti.
4. MFB and removed GNUREADLINE support
5. honor CFLAGS and CC.
6. Add documentation.
7. Maho didn't change the name of port spice to spice3.
because spice4 might :) appear in the future. version number
should be listed on *only* PORTVERSION.
8. drom maintainership
PR: 54603
Submitted by: "Pedro F. Giffuni" <giffunip@yahoo.com>
Notes
Notes:
svn path=/head/; revision=85167
Diffstat (limited to 'cad/spice')
43 files changed, 808 insertions, 976 deletions
diff --git a/cad/spice/Makefile b/cad/spice/Makefile index c584172e2bb3..7c4d14f30323 100644 --- a/cad/spice/Makefile +++ b/cad/spice/Makefile @@ -8,26 +8,37 @@ PORTNAME= spice PORTVERSION= 3f5.2 CATEGORIES= cad -MASTER_SITES= ftp://ic.eecs.berkeley.edu/pub/Spice3/ -DISTNAME= sp3f4.kit +MASTER_SITES= ftp://ic.eecs.berkeley.edu/pub/Spice3/:sources \ + ftp://ic.eecs.berkeley.edu/pub/Spice3/um.3f3.ps/:docs EXTRACT_SUFX= .tar.Z +DISTFILES= sp3f4.kit${EXTRACT_SUFX}:sources \ + cp.ps:docs toc.ps:docs doc.ps:docs +DIST_SUBDIR= spice +EXTRACT_ONLY= sp3f4.kit${EXTRACT_SUFX} -MAINTAINER= maho@FreeBSD.org +MAINTAINER= ports@FreeBSD.org COMMENT= A general-purpose circuit simulation program -# documentation in ftp://ic.eecs.berkeley.edu/pub/Spice3/um.3f3.ps/ - USE_XLIB= yes +USE_REINPLACE= yes NO_WRKSUBDIR= yes MAN1= sconvert.1 nutmeg.1 spice.1 MAN3= mfb.3 MAN5= mfbcap.5 MLINKS= spice.1 spice3.1 +post-configure: + @${REINPLACE_CMD} -e 's+@CC@+${CC}+ ; s+@CFLAGS@+${CFLAGS}+ ; \ + s+@X11BASE@+${X11BASE}+;' \ + ${WRKSRC}/conf/FreeBSD + post-install: .if !defined(NOPORTDOCS) - ${MKDIR} ${PREFIX}/share/examples/spice3 - ${INSTALL_DATA} ${WRKSRC}/examples/*.cir ${PREFIX}/share/examples/spice3 + ${MKDIR} ${DOCSDIR} + ${CAT} ${DISTDIR}/${DIST_SUBDIR}/*.ps > ${DOCSDIR}/spice3f3.ps + ${GZIP_CMD} ${DOCSDIR}/*.ps + ${MKDIR} ${EXAMPLESDIR} + ${INSTALL_DATA} ${WRKSRC}/examples/*.cir ${EXAMPLESDIR} .endif .include <bsd.port.mk> diff --git a/cad/spice/distinfo b/cad/spice/distinfo index 06e45db8691c..56a0985df495 100644 --- a/cad/spice/distinfo +++ b/cad/spice/distinfo @@ -1 +1,4 @@ -MD5 (sp3f4.kit.tar.Z) = d55eb08a7f523248b1b509092a444aeb +MD5 (spice/sp3f4.kit.tar.Z) = d55eb08a7f523248b1b509092a444aeb +MD5 (spice/cp.ps) = ee9065de6e11e82fa3fe34318c2373fc +MD5 (spice/toc.ps) = f84ccdd9ca423e112ec68121a86c032c +MD5 (spice/doc.ps) = bcea417f3bde8543f428785bfb5a4d62 diff --git a/cad/spice/files/FreeBSD b/cad/spice/files/FreeBSD index 6bf2a859ffd5..bebc7251e090 100644 --- a/cad/spice/files/FreeBSD +++ b/cad/spice/files/FreeBSD @@ -1,8 +1,8 @@ # FreeBSD config exception file MAKE = /usr/bin/make -INTERFACE_OPTS = -DWANT_X11 -CC = cc -CC_OPT_SAFE += -O2 -LDFLAGS = -L$(X11BASE)/lib -lm -ltermcap +INTERFACE_OPTS = -DWANT_MFB -DWANT_X11 +CC = @CC@ +CC_OPT += @CFLAGS@ +LDFLAGS += -L@X11BASE@/lib -lm -ltermcap SYS_CFLAGS = -Dbsd diff --git a/cad/spice/files/Makefile b/cad/spice/files/Makefile index 6ca93e2439f6..41806edee520 100644 --- a/cad/spice/files/Makefile +++ b/cad/spice/files/Makefile @@ -1,4 +1,6 @@ - +# +# $FreeBSD$ +# all: util/build FreeBSD default @@ -10,7 +12,7 @@ install: strip ${PREFIX}/bin/spice3 ${PREFIX}/bin/nutmeg \ ${PREFIX}/bin/sconvert ${PREFIX}/bin/help \ ${PREFIX}/bin/proc2mod ${PREFIX}/bin/multidec - chmod -R a+rX ${PREFIX}/share/spice3 + chmod -R a+rX ${PREFIX}/share/spice install -c -m 644 -o bin -g bin man/man5/mfbcap.5 ${PREFIX}/man/man5/mfbcap.5 install -c -m 644 -o bin -g bin man/man1/sconvert.1 ${PREFIX}/man/man1/sconvert.1 install -c -m 644 -o bin -g bin man/man1/nutmeg.1 ${PREFIX}/man/man1/nutmeg.1 diff --git a/cad/spice/files/patch-aa b/cad/spice/files/patch-aa deleted file mode 100644 index df2b114a1525..000000000000 --- a/cad/spice/files/patch-aa +++ /dev/null @@ -1,190 +0,0 @@ -*** conf/defaults.orig Thu Jul 29 16:33:56 1993 ---- conf/defaults Sat Jun 6 23:40:14 1998 -*************** -*** 65,71 **** - # the following definition: - # SYS_DIR = $(DIST_DIR) - -! SYS_DIR = $(TOP1)/$(SYSTEM) - - # OBJ_TOP is the directory in which intermidiate files reside - # These are ".o" files, synthesized ".c" files, ".a" files, ---- 65,71 ---- - # the following definition: - # SYS_DIR = $(DIST_DIR) - -! SYS_DIR = $(TOP0)/$(SYSTEM) - - # OBJ_TOP is the directory in which intermidiate files reside - # These are ".o" files, synthesized ".c" files, ".a" files, -*************** -*** 105,116 **** - # identified as and SYSTEM is the name of the per-system definitions - # file listed on the "build" command line. - -! SPICE_DIR = $(TOP1)/$(SYSTEM) -! SPICE_LIB_DIR = $(SPICE_DIR)/lib - SPICE_EXEC_DIR = $(SPICE_DIR)/bin - - S_SPICE_DIR = $(SPICE_DIR) -! S_SPICE_LIB_DIR = $(S_SPICE_DIR)/lib - S_SPICE_EXEC_DIR= $(S_SPICE_DIR)/bin - - # INSTALL_DIRS lists the directories that need to be created before ---- 105,116 ---- - # identified as and SYSTEM is the name of the per-system definitions - # file listed on the "build" command line. - -! SPICE_DIR = ${PREFIX} -! SPICE_LIB_DIR = $(SPICE_DIR)/share/spice3 - SPICE_EXEC_DIR = $(SPICE_DIR)/bin - - S_SPICE_DIR = $(SPICE_DIR) -! S_SPICE_LIB_DIR = $(S_SPICE_DIR)/share/spice3 - S_SPICE_EXEC_DIR= $(S_SPICE_DIR)/bin - - # INSTALL_DIRS lists the directories that need to be created before -*************** -*** 129,139 **** - # an extra definition to work around the same strange bug. See either - # file "conf/vax" or "conf/gcc". - -! CC = cc - - # CC_OPT: Default compile options (optimization/debug level, other) - -! CC_OPT = -O - - # CC_OPT_SAFE: Special compile options to override CC_OPT for code - # which typically causes problems for most compilers (bsim1 and bsim2). ---- 129,139 ---- - # an extra definition to work around the same strange bug. See either - # file "conf/vax" or "conf/gcc". - -! CC = gcc - - # CC_OPT: Default compile options (optimization/debug level, other) - -! CC_OPT += -Os -pipe - - # CC_OPT_SAFE: Special compile options to override CC_OPT for code - # which typically causes problems for most compilers (bsim1 and bsim2). -*************** -*** 203,209 **** - # X_DIR indicates the top of the X11 lib/include hierarchy; it is only - # a convenience that is used in the following definitions. - -! X_DIR = /usr - - # INCX lists the X include directories. This may be different between - # MIT X11r5, X11r4, and your vendor's version of X11, though listing ---- 203,209 ---- - # X_DIR indicates the top of the X11 lib/include hierarchy; it is only - # a convenience that is used in the following definitions. - -! X_DIR = ${X11BASE} - - # INCX lists the X include directories. This may be different between - # MIT X11r5, X11r4, and your vendor's version of X11, though listing -*** util/build.orig Sun Mar 31 10:56:09 1996 ---- util/build Sun Mar 31 10:57:21 1996 -*************** -*** 96,102 **** - - TMP_LEADER="${TMP_DIR}/buildl$$" - TMP_TRAILER="${TMP_DIR}/buildt$$" -! trap 'rm -f ${TMP_LEADER} ${TMP_TRAILER}; exit 1' 1 2 3 4 6 7 8 9 10 12 13 14 15 - echo > "${TMP_TRAILER}" - BAD=false - DEBUG= ---- 96,102 ---- - - TMP_LEADER="${TMP_DIR}/buildl$$" - TMP_TRAILER="${TMP_DIR}/buildt$$" -! trap 'rm -f ${TMP_LEADER} ${TMP_TRAILER}; exit 1' 1 2 3 4 6 7 8 10 12 13 14 15 - echo > "${TMP_TRAILER}" - BAD=false - DEBUG= -*** src/lib/fte/resource.c.orig Sun Mar 31 10:59:57 1996 ---- src/lib/fte/resource.c Sun Mar 31 11:00:57 1996 -*************** -*** 369,375 **** ---- 369,377 ---- - long x; - SIGNAL_TYPE (*orig_signal)( ); - -+ #ifndef __FreeBSD__ - if (getenv("SPICE_NO_DATASEG_CHECK")) -+ #endif - return 0; - - low = 0; -*** src/include/misc.h.orig Thu Dec 1 09:17:02 1994 ---- src/include/misc.h Sun Mar 31 12:32:58 1996 -*************** -*** 86,92 **** ---- 86,94 ---- - extern char *realloc(); - extern char *getenv(); - extern int errno; -+ #ifndef __FreeBSD__ - extern char *sys_errlist[]; -+ #endif - extern char *getenv(); - extern char *getwd(); - extern int rand(); -*************** -*** 111,122 **** ---- 111,124 ---- - # endif /* clearerr */ - # endif /* HAS_CLEARERR */ - -+ #ifndef __FreeBSD__ - # ifndef bzero - extern int bzero(); - # endif - # ifndef bcopy - extern void bcopy(); - # endif -+ #endif /* __FreeBSD__ */ - - # ifndef index - # ifdef HAS_INDEX ---- src/include/os_bsd.h.orig Sun Apr 25 01:09:46 1993 -+++ src/include/os_bsd.h Sun Aug 25 21:09:59 2002 -@@ -8,18 +8,31 @@ - - #include "os_unix.h" - -+#ifdef __FreeBSD__ -+#define HAS_SYSVDIRS /* <sys/dirent.h> */ -+#define HAS_INTWAITSTATUS /* wait(3) takes an int *, not a union */ -+#else - #define HAS_NO_ATRIGH_DECL /* if asinh( ) is not in math.h */ --#define HAS_ATRIGH /* acosh( ), asinh( ), atanh( ) */ - #define HAS_FTIME /* ftime( ), <times.h> */ -+#define HAS_INDEX /* index( ) instead of strchr( ) */ -+#define HAS_STRINGS /* use <strings.h> instead of <string.h> */ -+#define HAS_BSDDIRS /* <sys/dir.h> */ -+#endif -+ -+#define HAS_ATRIGH /* acosh( ), asinh( ), atanh( ) */ - #define HAS_TERMCAP /* tgetxxx( ) */ - #define HAS_VFORK /* BSD-ism, should not be necessary */ --#define HAS_INDEX /* index( ) instead of strchr( ) */ - #define HAS_BCOPY /* bcopy( ), bzero( ) */ - #define HAS_BSDRANDOM /* srandom( ) and random( ) */ - #define HAS_BSDTTY /* <sgtty.h> */ --#define HAS_BSDDIRS /* <sys/dir.h> */ - #define HAS_BSDRUSAGE /* getrusage( ) */ - #define HAS_BSDRLIMIT /* getrlimit( ) */ - #define HAS_DUP2 - #define HAS_GETWD /* getwd(buf) */ --#define HAS_STRINGS /* use <strings.h> instead of <string.h> */ -+ -+#ifdef __FreeBSD__ -+#define HAS_BSDSOCKETS /* <net/inet.h>, socket( ), etc. */ -+#define HAS_BSDTIME /* gettimeofday( ) return time */ -+#define HAS_FLOAT_H /* float.h */ -+#define HAS_STRCHR /* strchr( ) instead of index( ) */ -+#endif diff --git a/cad/spice/files/patch-ac b/cad/spice/files/patch-ac deleted file mode 100644 index 8ad35674f7b2..000000000000 --- a/cad/spice/files/patch-ac +++ /dev/null @@ -1,62 +0,0 @@ -*** src/bin/sconvert.c.orig Tue Aug 19 17:44:17 1997 ---- src/bin/sconvert.c Tue Aug 19 17:47:11 1997 -*************** -*** 80,98 **** - - case 1: printf("Input file: "); - (void) fflush(stdout); -! (void) gets(buf); - sf = copy(buf); - printf("Input type: "); - (void) fflush(stdout); -! (void) gets(buf); - f = buf[0]; - printf("Output file: "); - (void) fflush(stdout); -! (void) gets(buf); - af = copy(buf); - printf("Output type: "); - (void) fflush(stdout); -! (void) gets(buf); - t = buf[0]; - break; - default: ---- 80,98 ---- - - case 1: printf("Input file: "); - (void) fflush(stdout); -! (void) fgets(buf,BSIZE_SP,stdin); - sf = copy(buf); - printf("Input type: "); - (void) fflush(stdout); -! (void) fgets(buf,BSIZE_SP,stdin); - f = buf[0]; - printf("Output file: "); - (void) fflush(stdout); -! (void) fgets(buf,BSIZE_SP,stdin); - af = copy(buf); - printf("Output type: "); - (void) fflush(stdout); -! (void) fgets(buf,BSIZE_SP,stdin); - t = buf[0]; - break; - default: -*** src/lib/fte/inp.c.orig Tue Aug 19 17:38:25 1997 ---- src/lib/fte/inp.c Tue Aug 19 17:33:01 1997 -*************** -*** 666,672 **** - - fprintf(cp_out, "run circuit? "); - fflush(cp_out); -! (void) gets(buf); - if (buf[0] != 'n') { - fprintf(cp_out, "running circuit\n"); - com_run(NULL); ---- 666,672 ---- - - fprintf(cp_out, "run circuit? "); - fflush(cp_out); -! (void) fgets(buf,BSIZE_SP,stdin); - if (buf[0] != 'n') { - fprintf(cp_out, "running circuit\n"); - com_run(NULL); diff --git a/cad/spice/files/patch-ad b/cad/spice/files/patch-ad deleted file mode 100644 index 3e8980eca6d2..000000000000 --- a/cad/spice/files/patch-ad +++ /dev/null @@ -1,192 +0,0 @@ -*** src/bin/main.c.orig Thu Jul 29 00:48:32 1993 ---- src/bin/main.c Fri Jan 31 15:59:00 2003 -*************** -*** 25,30 **** ---- 25,37 ---- - #include <pwd.h> - #endif - -+ #ifdef HAS_GNUREADLINE -+ /* Added GNU Readline Support 11/3/97 -- Andrew Veliath <veliaa@rpi.edu> */ -+ #include <readline/readline.h> -+ #include <readline/history.h> -+ #include "fteinput.h" -+ #endif -+ - #ifdef HAS_UNIX_SIGS - #include <signal.h> - #endif -*************** -*** 36,41 **** ---- 43,49 ---- - #endif - - #include "patchlev.h" -+ - #include "suffix.h" - - int Patch_Level = PATCHLEVEL; -*************** -*** 49,54 **** ---- 57,67 ---- - bool ft_intrpt = false; /* Set by the (void) signal handlers. */ - bool ft_setflag = false; /* Don't abort after an interrupt. */ - -+ #ifdef HAS_GNUREADLINE -+ char gnu_history_file[512]; -+ static char *application_name; -+ #endif -+ - struct variable *(*if_getparam)( ); - - #ifdef BATCH -*************** -*** 181,186 **** ---- 194,282 ---- - - #endif - -+ #ifdef HAS_GNUREADLINE -+ /* Adapted ../lib/cp/lexical.c:prompt() for GNU Readline -- Andrew Veliath <veliaa@rpi.edu> */ -+ static char * -+ prompt() -+ { -+ static char pbuf[128]; -+ char *p = pbuf, *s; -+ -+ if (cp_interactive == false) -+ return; -+ if (cp_promptstring == NULL) -+ s = "-> "; -+ else -+ s = cp_promptstring; -+ if (cp_altprompt) -+ s = cp_altprompt; -+ while (*s) { -+ switch (strip(*s)) { -+ case '!': -+ p += sprintf(p, "%d", where_history() + 1); -+ break; -+ case '\\': -+ if (*(s + 1)) -+ p += sprintf(p, "%c", strip(*++s)); -+ default: -+ *p = strip(*s); ++p; -+ break; -+ } -+ s++; -+ } -+ *p = 0; -+ return pbuf; -+ } -+ -+ /* Process device events in Readline's hook since there is no where -+ else to do it now - AV */ -+ int rl_event_func() -+ { -+ static REQUEST reqst = { checkup_option, 0 }; -+ Input(&reqst, NULL); -+ return 0; -+ } -+ -+ /* Added GNU Readline Support -- Andrew Veliath <veliaa@rpi.edu> */ -+ void app_rl_readlines() -+ { -+ char *line, *expanded_line; -+ -+ strcpy(gnu_history_file, getenv("HOME")); -+ strcat(gnu_history_file, "/."); -+ strcat(gnu_history_file, application_name); -+ strcat(gnu_history_file, "_history"); -+ -+ using_history(); -+ read_history(gnu_history_file); -+ -+ rl_readline_name = application_name; -+ rl_instream = cp_in; -+ rl_outstream = cp_out; -+ rl_event_hook = rl_event_func; -+ -+ while (1) { -+ history_set_pos(history_length); -+ line = readline(prompt()); -+ if (line && *line) { -+ int s = history_expand(line, &expanded_line); -+ -+ if (s == 2) { -+ fprintf(stderr, "-> %s\n", expanded_line); -+ } else if (s == -1) { -+ fprintf(stderr, "readline: %s\n", expanded_line); -+ } else { -+ cp_evloop(expanded_line); -+ add_history(expanded_line); -+ } -+ free(expanded_line); -+ } -+ if (line) free(line); -+ } -+ /* History gets written in ../fte/misccoms.c com_quit */ -+ } -+ #endif /* HAS_GNUREADLINE */ -+ - char *hlp_filelist[] = { "spice", 0 }; - - void -*************** -*** 217,222 **** ---- 313,325 ---- - } - started = true; - -+ #ifdef HAS_GNUREADLINE -+ if (!(application_name = strrchr(av[0],'/'))) -+ application_name = av[0]; -+ else -+ ++application_name; -+ #endif -+ - #ifdef HAS_MAC_ARGCARGV - ac = initmac(&av); - #endif -*************** -*** 393,399 **** ---- 496,506 ---- - # ifdef HAS_UNIX_SIGS - /* Set up (void) signal handling */ - if (!ft_batchmode) { -+ # ifdef HAS_GNUREADLINE -+ (void) signal(SIGINT, SIG_IGN); -+ # else - (void) signal(SIGINT, ft_sigintr); -+ # endif - (void) signal(SIGFPE, sigfloat); - # ifdef SIGTSTP - (void) signal(SIGTSTP, sigstop); -*************** -*** 588,594 **** ---- 695,705 ---- - } else { - (void) setjmp(jbuf); - cp_interactive = true; -+ #ifdef HAS_GNUREADLINE -+ app_rl_readlines(); -+ #else - while (cp_evloop((char *) NULL) == 1) ; -+ #endif /* ifelse HAS_GNUREADLINE */ - } - - # else /* if BATCH */ -*************** -*** 627,633 **** ---- 738,748 ---- - /* Nutmeg "main" */ - (void) setjmp(jbuf); - cp_interactive = true; -+ #ifdef HAS_GNUREADLINE -+ app_rl_readlines(); -+ #else - while (cp_evloop((char *) NULL) == 1) ; -+ #endif /* ifelse HAS_GNUREADLINE */ - - #endif - diff --git a/cad/spice/files/patch-ae b/cad/spice/files/patch-ae deleted file mode 100644 index edef5cc3890c..000000000000 --- a/cad/spice/files/patch-ae +++ /dev/null @@ -1,82 +0,0 @@ -diff -cr spice3f4/src/lib/cp/history.c src/lib/cp/history.c -*** spice3f4/src/lib/cp/history.c Thu Jun 17 17:32:40 1993 ---- src/lib/cp/history.c Tue Nov 4 22:18:54 1997 -*************** -*** 11,16 **** ---- 11,24 ---- - #include "cpdefs.h" - #include "suffix.h" - -+ #ifdef HAS_GNUREADLINE -+ -+ /* Added GNU Readline Support -- Andrew Veliath <veliaa@rpi.edu> */ -+ #include <readline/readline.h> -+ #include <readline/history.h> -+ -+ #endif /* HAS_GNUREADLINE */ -+ - static char *dohs(); - static void freehist(); - static wordlist *dohmod(); -*************** -*** 19,24 **** ---- 27,33 ---- - static wordlist *hpattern(); - static wordlist *hprefix(); - -+ - struct histent *cp_lastone = NULL; - int cp_maxhistlength = 1000; - char cp_hat = '^'; -*************** -*** 345,352 **** ---- 354,363 ---- - cp_lastone->hi_next = NULL; - cp_lastone->hi_event = event; - cp_lastone->hi_wlist = wl_copy(wlist); -+ #ifndef HAS_GNUREADLINE - freehist(histlength - cp_maxhistlength); - histlength++; -+ #endif - return; - } - -*************** -*** 483,492 **** ---- 494,529 ---- - wl = wl->wl_next; - rev = true; - } -+ #ifdef HAS_GNUREADLINE -+ /* Added GNU Readline Support -- Andrew Veliath <veliaa@rpi.edu> */ -+ { -+ HIST_ENTRY *he; -+ int i, N; -+ -+ N = (wl == NULL) ? history_length : atoi(wl->wl_word); -+ -+ if (N < 0) N = 0; -+ if (N > history_length) N = history_length; -+ -+ if (rev) -+ for (i = history_length; i > 0 && N; --i, --N) { -+ he = history_get(i); -+ if (!he) return; -+ fprintf(cp_out, "%d\t%s\n", i, he->line); -+ } -+ else -+ for (i = history_length - N + 1; i <= history_length; ++i) { -+ he = history_get(i); -+ if (!he) return; -+ fprintf(cp_out, "%d\t%s\n", i, he->line); -+ } -+ } -+ #else - if (wl == NULL) - cp_hprint(cp_event - 1, cp_event - histlength, rev); - else - cp_hprint(cp_event - 1, cp_event - 1 - atoi(wl->wl_word), rev); -+ #endif /* ifelse HAS_GNUREADLINE */ - return; - } - diff --git a/cad/spice/files/patch-af b/cad/spice/files/patch-af deleted file mode 100644 index de9afa6d9613..000000000000 --- a/cad/spice/files/patch-af +++ /dev/null @@ -1,37 +0,0 @@ -diff -cr spice3f4/src/lib/fte/misccoms.c src/lib/fte/misccoms.c -*** spice3f4/src/lib/fte/misccoms.c Thu Jun 17 17:32:53 1993 ---- src/lib/fte/misccoms.c Tue Nov 4 22:18:54 1997 -*************** -*** 11,16 **** ---- 11,24 ---- - #include "hlpdefs.h" - #include "suffix.h" - -+ #ifdef HAS_GNUREADLINE -+ #include <readline/readline.h> -+ #include <readline/history.h> -+ -+ extern int gnu_history_lines; -+ extern char gnu_history_file[]; -+ #endif -+ - static void byemesg(); - - void -*************** -*** 299,304 **** ---- 307,320 ---- - byemesg(); - } else - byemesg(); -+ -+ #ifdef HAS_GNUREADLINE -+ /* Added GNU Readline Support -- Andrew Veliath <veliaa@rpi.edu> */ -+ if (cp_interactive && (cp_maxhistlength > 0)) { -+ stifle_history(cp_maxhistlength); -+ write_history(gnu_history_file); -+ } -+ #endif /* HAS_GNUREADLINE */ - - exit(EXIT_NORMAL); - /* NOTREACHED */ diff --git a/cad/spice/files/patch-ag b/cad/spice/files/patch-ag deleted file mode 100644 index a7dcec3bb76b..000000000000 --- a/cad/spice/files/patch-ag +++ /dev/null @@ -1,24 +0,0 @@ -diff -cr spice3f4/src/lib/fte/signal.c src/lib/fte/signal.c -*** spice3f4/src/lib/fte/signal.c Thu Jun 17 17:32:59 1993 ---- src/lib/fte/signal.c Tue Nov 4 22:19:01 1997 -*************** -*** 32,37 **** ---- 32,39 ---- - * is true. - */ - -+ /* not using SIGINT with GNU Readline - AV */ -+ #ifndef HAS_GNUREADLINE - SIGNAL_TYPE - ft_sigintr() - { -*************** -*** 58,63 **** ---- 60,66 ---- - cp_resetcontrol(); - longjmp(jbuf, 1); - } -+ #endif /* !HAS_GNUREADLINE */ - - /* ARGSUSED */ - SIGNAL_TYPE diff --git a/cad/spice/files/patch-ah b/cad/spice/files/patch-ah deleted file mode 100644 index 8a743e3cdb66..000000000000 --- a/cad/spice/files/patch-ah +++ /dev/null @@ -1,21 +0,0 @@ -diff -cr spice3f4/src/lib/fte/x10.c src/lib/fte/x10.c -*** spice3f4/src/lib/fte/x10.c Thu Jun 17 17:32:54 1993 ---- src/lib/fte/x10.c Tue Nov 4 22:18:54 1997 -*************** -*** 726,737 **** ---- 726,740 ---- - graph->commandline, fx0, fx1, fy0, fy1); - } - -+ /* don't use the following if using GNU Readline - AV */ -+ #ifndef HAS_GNUREADLINE - /* hack for Gordon Jacobs */ - /* add to history list if plothistory is set */ - if (cp_getvar("plothistory", VT_BOOL, (char *) &dummy)) { - wl = cp_parse(buf); - (void) cp_addhistent(cp_event++, wl); - } -+ #endif /* HAS_GNUREADLINE */ - - (void) cp_evloop(buf); - diff --git a/cad/spice/files/patch-ai b/cad/spice/files/patch-ai deleted file mode 100644 index a462128cf45e..000000000000 --- a/cad/spice/files/patch-ai +++ /dev/null @@ -1,20 +0,0 @@ -diff -cr spice3f4/src/lib/fte/x11.c src/lib/fte/x11.c -*** spice3f4/src/lib/fte/x11.c Thu Jun 17 17:32:59 1993 ---- src/lib/fte/x11.c Tue Nov 4 22:18:54 1997 -*************** -*** 773,784 **** ---- 773,787 ---- - graph->commandline, fx0, fx1, fy0, fy1); - } - -+ /* don't use the following if using GNU Readline - AV */ -+ #ifndef HAS_GNUREADLINE - /* hack for Gordon Jacobs */ - /* add to history list if plothistory is set */ - if (cp_getvar("plothistory", VT_BOOL, (char *) &dummy)) { - wl = cp_parse(buf); - (void) cp_addhistent(cp_event++, wl); - } -+ #endif /* HAS_GNUREADLINE */ - - (void) cp_evloop(buf); diff --git a/cad/spice/files/patch-al b/cad/spice/files/patch-al deleted file mode 100644 index 86a9b7a54f63..000000000000 --- a/cad/spice/files/patch-al +++ /dev/null @@ -1,112 +0,0 @@ -*** 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 deleted file mode 100644 index ddaa44643180..000000000000 --- a/cad/spice/files/patch-am +++ /dev/null @@ -1,102 +0,0 @@ -*** 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-as b/cad/spice/files/patch-as deleted file mode 100644 index 587f90a66572..000000000000 --- a/cad/spice/files/patch-as +++ /dev/null @@ -1,19 +0,0 @@ -*** 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 deleted file mode 100644 index 9ea7b915dc67..000000000000 --- a/cad/spice/files/patch-ba +++ /dev/null @@ -1,38 +0,0 @@ -# spice3f4/3f5 patch level 1 -# June 22, 1994 -# Anthony Parker (tonyp@mpce.mq.edu.au) -# Macquarie University, Sydney Australia 2109 -# -*** 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/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 2 diff --git a/cad/spice/files/patch-bb b/cad/spice/files/patch-bb deleted file mode 100644 index 864d6f4ba39a..000000000000 --- a/cad/spice/files/patch-bb +++ /dev/null @@ -1,11 +0,0 @@ ---- src/lib/fte/doplot.c.orig Sun Apr 25 23:48:45 1993 -+++ src/lib/fte/doplot.c Mon Feb 26 18:03:20 2001 -@@ -117,7 +117,7 @@ - } - - if (!cp_getvar("hcopydevtype", VT_STRING, buf)) { -- devtype = "plot5"; -+ devtype = "postscript"; - } else { - devtype = buf; - } diff --git a/cad/spice/files/patch-bc b/cad/spice/files/patch-bc deleted file mode 100644 index 22a05ee078a1..000000000000 --- a/cad/spice/files/patch-bc +++ /dev/null @@ -1,17 +0,0 @@ ---- src/lib/fte/x11.c~ Fri Mar 22 00:12:59 2002 -+++ src/lib/fte/x11.c Fri Mar 22 00:25:41 2002 -@@ -808,11 +808,13 @@ - { - - GRAPH *graph = (GRAPH *) client_data; -+ Widget w; - - /* Iplots are done asynchronously */ - DEVDEP(graph).isopen = 0; -+ w = DEVDEP(graph).shell; - DestroyGraph(graph->graphid); -- XtDestroyWidget(DEVDEP(graph).shell); -+ XtDestroyWidget(w); - - } - diff --git a/cad/spice/files/patch-conf_defaults b/cad/spice/files/patch-conf_defaults new file mode 100644 index 000000000000..22608904f2d1 --- /dev/null +++ b/cad/spice/files/patch-conf_defaults @@ -0,0 +1,45 @@ +--- conf/defaults.orig Thu Jul 17 16:40:51 2003 ++++ conf/defaults Thu Jul 17 16:51:19 2003 +@@ -65,7 +65,7 @@ + # the following definition: + # SYS_DIR = $(DIST_DIR) + +-SYS_DIR = $(TOP1)/$(SYSTEM) ++SYS_DIR = $(TOP0)/$(SYSTEM) + + # OBJ_TOP is the directory in which intermidiate files reside + # These are ".o" files, synthesized ".c" files, ".a" files, +@@ -105,12 +105,12 @@ + # identified as and SYSTEM is the name of the per-system definitions + # file listed on the "build" command line. + +-SPICE_DIR = $(TOP1)/$(SYSTEM) +-SPICE_LIB_DIR = $(SPICE_DIR)/lib ++SPICE_DIR = ${PREFIX} ++SPICE_LIB_DIR = $(SPICE_DIR)/share/spice + SPICE_EXEC_DIR = $(SPICE_DIR)/bin + + S_SPICE_DIR = $(SPICE_DIR) +-S_SPICE_LIB_DIR = $(S_SPICE_DIR)/lib ++S_SPICE_LIB_DIR = $(S_SPICE_DIR)/share/spice + S_SPICE_EXEC_DIR= $(S_SPICE_DIR)/bin + + # INSTALL_DIRS lists the directories that need to be created before +@@ -133,7 +133,7 @@ + + # CC_OPT: Default compile options (optimization/debug level, other) + +-CC_OPT = -O ++CC_OPT = + + # CC_OPT_SAFE: Special compile options to override CC_OPT for code + # which typically causes problems for most compilers (bsim1 and bsim2). +@@ -203,7 +203,7 @@ + # X_DIR indicates the top of the X11 lib/include hierarchy; it is only + # a convenience that is used in the following definitions. + +-X_DIR = /usr ++X_DIR = ${X11BASE} + + # INCX lists the X include directories. This may be different between + # MIT X11r5, X11r4, and your vendor's version of X11, though listing diff --git a/cad/spice/files/patch-level1 b/cad/spice/files/patch-level1 new file mode 100644 index 000000000000..7e3ddad09395 --- /dev/null +++ b/cad/spice/files/patch-level1 @@ -0,0 +1,23 @@ +# spice3f4/3f5 patch level 1 +# June 22, 1994 +# Anthony Parker (tonyp@mpce.mq.edu.au) +# Macquarie University, Sydney Australia 2109 +# +--- src/lib/dev/mos6/mos6itf.h.orig Mon Sep 28 03:25:22 1992 ++++ src/lib/dev/mos6/mos6itf.h Thu Jul 17 00:21:33 2003 +@@ -46,13 +46,8 @@ + NULL, /* MOS6acLoad, XXX */ + NULL, + MOS6destroy, +-#ifdef DELETES +- MOS6mDelete, +- MOS6delete, +-#else /* DELETES */ +- NULL, +- NULL, +-#endif /* DELETES */ ++ NULL, /* DELETES */ ++ NULL,/* DELETES */ + MOS6getic, + MOS6ask, + MOS6mAsk, diff --git a/cad/spice/files/patch-ab b/cad/spice/files/patch-sp3f5 index b271cc97905d..f9606a6b4cc1 100644 --- a/cad/spice/files/patch-ab +++ b/cad/spice/files/patch-sp3f5 @@ -1,4 +1,4 @@ -NOTE: This are Berkeley patches for 3F4 +These are official Berkeley fixes for sp3f4 *** src/lib/fte/grid.c.orig Sun Apr 25 14:53:11 1993 --- src/lib/fte/grid.c Sat Jan 29 10:47:59 1994 *************** diff --git a/cad/spice/files/patch-src_bin_sconvert_c b/cad/spice/files/patch-src_bin_sconvert_c new file mode 100644 index 000000000000..97f904a0cd63 --- /dev/null +++ b/cad/spice/files/patch-src_bin_sconvert_c @@ -0,0 +1,26 @@ +--- src/bin/sconvert.c.orig Mon Sep 14 21:30:41 1992 ++++ src/bin/sconvert.c Thu Jul 17 00:47:50 2003 +@@ -80,19 +80,19 @@ + + case 1: printf("Input file: "); + (void) fflush(stdout); +- (void) gets(buf); ++ (void) fgets(buf,BSIZE_SP,stdin); + sf = copy(buf); + printf("Input type: "); + (void) fflush(stdout); +- (void) gets(buf); ++ (void) fgets(buf,BSIZE_SP,stdin); + f = buf[0]; + printf("Output file: "); + (void) fflush(stdout); +- (void) gets(buf); ++ (void) fgets(buf,BSIZE_SP,stdin); + af = copy(buf); + printf("Output type: "); + (void) fflush(stdout); +- (void) gets(buf); ++ (void) fgets(buf,BSIZE_SP,stdin); + t = buf[0]; + break; + default: diff --git a/cad/spice/files/patch-src_include_misc_h b/cad/spice/files/patch-src_include_misc_h new file mode 100644 index 000000000000..a772f63793e2 --- /dev/null +++ b/cad/spice/files/patch-src_include_misc_h @@ -0,0 +1,31 @@ +*** src/include/misc.h.orig Thu Dec 1 09:17:02 1994 +--- src/include/misc.h Sun Mar 31 12:32:58 1996 +*************** +*** 86,92 **** +--- 86,94 ---- + extern char *realloc(); + extern char *getenv(); + extern int errno; ++ #ifndef __FreeBSD__ + extern char *sys_errlist[]; ++ #endif + extern char *getenv(); + extern char *getwd(); + extern int rand(); +*************** +*** 111,122 **** +--- 111,124 ---- + # endif /* clearerr */ + # endif /* HAS_CLEARERR */ + ++ #ifndef __FreeBSD__ + # ifndef bzero + extern int bzero(); + # endif + # ifndef bcopy + extern void bcopy(); + # endif ++ #endif /* __FreeBSD__ */ + + # ifndef index + # ifdef HAS_INDEX diff --git a/cad/spice/files/patch-src_include_os_bsd_h b/cad/spice/files/patch-src_include_os_bsd_h new file mode 100644 index 000000000000..bcd219cedfa0 --- /dev/null +++ b/cad/spice/files/patch-src_include_os_bsd_h @@ -0,0 +1,38 @@ +--- src/include/os_bsd.h.orig Sat Apr 24 18:09:46 1993 ++++ src/include/os_bsd.h Thu Jul 17 01:26:36 2003 +@@ -8,18 +8,31 @@ + + #include "os_unix.h" + ++#ifdef __FreeBSD__ ++#define HAS_SYSVDIRS /* <sys/dirent.h> */ ++#define HAS_INTWAITSTATUS /* wait(3) takes an int *, not a union */ ++#else + #define HAS_NO_ATRIGH_DECL /* if asinh( ) is not in math.h */ +-#define HAS_ATRIGH /* acosh( ), asinh( ), atanh( ) */ + #define HAS_FTIME /* ftime( ), <times.h> */ ++#define HAS_INDEX /* index( ) instead of strchr( ) */ ++#define HAS_STRINGS /* use <strings.h> instead of <string.h> */ ++#define HAS_BSDDIRS /* <sys/dir.h> */ ++#endif ++ ++#define HAS_ATRIGH /* acosh( ), asinh( ), atanh( ) */ + #define HAS_TERMCAP /* tgetxxx( ) */ + #define HAS_VFORK /* BSD-ism, should not be necessary */ +-#define HAS_INDEX /* index( ) instead of strchr( ) */ + #define HAS_BCOPY /* bcopy( ), bzero( ) */ + #define HAS_BSDRANDOM /* srandom( ) and random( ) */ + #define HAS_BSDTTY /* <sgtty.h> */ +-#define HAS_BSDDIRS /* <sys/dir.h> */ + #define HAS_BSDRUSAGE /* getrusage( ) */ + #define HAS_BSDRLIMIT /* getrlimit( ) */ + #define HAS_DUP2 + #define HAS_GETWD /* getwd(buf) */ +-#define HAS_STRINGS /* use <strings.h> instead of <string.h> */ ++ ++#ifdef __FreeBSD__ ++#define HAS_BSDSOCKETS /* <net/inet.h>, socket( ), etc. */ ++#define HAS_BSDTIME /* gettimeofday( ) return time */ ++#define HAS_FLOAT_H /* float.h */ ++#define HAS_STRCHR /* strchr( ) instead of index( ) */ ++#endif diff --git a/cad/spice/files/patch-src_include_patchlev_h b/cad/spice/files/patch-src_include_patchlev_h new file mode 100644 index 000000000000..b5072c389750 --- /dev/null +++ b/cad/spice/files/patch-src_include_patchlev_h @@ -0,0 +1,5 @@ +--- src/include/patchlev.h.orig Thu Jul 29 05:30:30 1993 ++++ src/include/patchlev.h Thu Jul 17 00:21:33 2003 +@@ -1 +1 @@ +-#define PATCHLEVEL 0 ++#define PATCHLEVEL 2 diff --git a/cad/spice/files/patch-src_lib_ckt_dctrcurv_c b/cad/spice/files/patch-src_lib_ckt_dctrcurv_c new file mode 100644 index 000000000000..4ca7bfebdb6a --- /dev/null +++ b/cad/spice/files/patch-src_lib_ckt_dctrcurv_c @@ -0,0 +1,135 @@ +--- src/lib/ckt/dctrcurv.c.orig Mon Apr 5 19:50:20 1993 ++++ src/lib/ckt/dctrcurv.c Thu Jul 17 02:52:24 2003 +@@ -15,6 +15,7 @@ + #endif + #include "cktdefs.h" + #include "util.h" ++#include "const.h" + #include "sperror.h" + #include "suffix.h" + +@@ -38,17 +39,6 @@ + int firstTime=1; + static GENERIC *plot; + +-#ifdef HAS_SENSE2 +-#ifdef SENSDEBUG +- if(ckt->CKTsenInfo && (ckt->CKTsenInfo->SENmode&DCSEN) ){ +- printf("\nDC Sensitivity Results\n\n"); +- CKTsenPrint(ckt); +- } +-#endif /* SENSDEBUG */ +-#endif +- +- +- + vcode = CKTtypelook("Vsource"); + icode = CKTtypelook("Isource"); + if(!restart && cv->TRCVnestState >= 0) { +@@ -106,15 +96,37 @@ + } + } + } ++#ifndef TEMP_CODE ++#define TEMP_CODE 1023 ++#endif ++ if(!strcmp(cv->TRCVvName[i], "temp")) ++ { ++ cv->TRCVvSave[i]=ckt->CKTtemp; ++ cv->TRCVvType[i]=TEMP_CODE; ++ ckt->CKTtemp = cv->TRCVvStart[i] + CONSTCtoK; ++ goto found; ++ } ++ + (*(SPfrontEnd->IFerror))(ERR_FATAL, + "DCtrCurv: source %s not in circuit", &(cv->TRCVvName[i])); + return(E_NODEV); + found:; + } ++ i--; + error = CKTnames(ckt,&numNames,&nameList); + if(error) return(error); +- (*(SPfrontEnd->IFnewUid))((GENERIC *)ckt,&varUid,(IFuid )NULL, +- "sweep", UID_OTHER, (GENERIC **)NULL); ++ if (cv->TRCVvType[i]==vcode) ++ (*(SPfrontEnd->IFnewUid))((GENERIC *)ckt,&varUid,(IFuid )NULL, ++ "v-sweep", UID_OTHER, (GENERIC **)NULL); ++ else if (cv->TRCVvType[i]==icode) ++ (*(SPfrontEnd->IFnewUid))((GENERIC *)ckt,&varUid,(IFuid )NULL, ++ "i-sweep", UID_OTHER, (GENERIC **)NULL); ++ else if (cv->TRCVvType[i]==TEMP_CODE) ++ (*(SPfrontEnd->IFnewUid))((GENERIC *)ckt,&varUid,(IFuid )NULL, ++ "temp-sweep", UID_OTHER, (GENERIC **)NULL); ++ else ++ (*(SPfrontEnd->IFnewUid))((GENERIC *)ckt,&varUid,(IFuid )NULL, ++ "?-sweep", UID_OTHER, (GENERIC **)NULL); + error = (*(SPfrontEnd->OUTpBeginPlot))((GENERIC *)ckt, + (GENERIC*)ckt->CKTcurJob, ckt->CKTcurJob->JOBname, + varUid,IF_REAL,numNames,nameList, IF_REAL,&plot); +@@ -150,6 +162,16 @@ + if (i > cv->TRCVnestLevel ) break ; + goto nextstep; + } ++ } else if(cv->TRCVvType[i]==TEMP_CODE) { ++ if(ckt->CKTtemp - CONSTCtoK > cv->TRCVvStop[i]) ++ { ++ i++ ; ++ firstTime=1; ++ ckt->CKTmode = (ckt->CKTmode & MODEUIC) | ++ MODEDCTRANCURVE | MODEINITJCT ; ++ if (i > cv->TRCVnestLevel ) break ; ++ goto nextstep; ++ } + } /* else not possible */ + while (i > 0) { + /* init(i); */ +@@ -160,6 +182,9 @@ + } else if(cv->TRCVvType[i]==icode) { /* current source */ + ((ISRCinstance *)(cv->TRCVvElt[i]))->ISRCdcValue = + cv->TRCVvStart[i]; ++ } else if(cv->TRCVvType[i]==TEMP_CODE) { ++ ckt->CKTtemp = cv->TRCVvStart[i] + CONSTCtoK; ++ CKTtemp(ckt); + } /* else not possible */ + } + +@@ -188,7 +213,11 @@ + ckt->CKTtime = ((ISRCinstance *)(cv->TRCVvElt[i])) + ->ISRCdcValue ; + } +- ++ else ++ { ++ fprintf(stdout, "Shuldn't pass through here!\n"); ++ exit(1); ++ } + #ifdef HAS_SENSE2 + /* + if(!ckt->CKTsenInfo) printf("sensitivity structure does not exist\n"); +@@ -232,6 +261,12 @@ + } else if(cv->TRCVvType[i]==icode) { /* current source */ + ((ISRCinstance*)(cv->TRCVvElt[i]))->ISRCdcValue += + cv->TRCVvStep[i]; ++ } ++/* serban */ ++ else if (cv->TRCVvType[i]==TEMP_CODE) ++ { ++ ckt->CKTtemp += cv->TRCVvStep[i]; ++ CKTtemp(ckt); + } /* else not possible */ + if( (*(SPfrontEnd->IFpauseTest))() ) { + /* user asked us to pause, so save state */ +@@ -247,10 +282,12 @@ + ((VSRCinstance*)(cv->TRCVvElt[i]))->VSRCdcValue = + cv->TRCVvSave[i]; + ((VSRCinstance*)(cv->TRCVvElt[i]))->VSRCdcGiven = cv->TRCVgSave[i]; +- } else /* if(cv->TRCVvType[i] == icode) current source */ { ++ } else if(cv->TRCVvType[i] == icode) { + ((ISRCinstance*)(cv->TRCVvElt[i]))->ISRCdcValue = + cv->TRCVvSave[i]; + ((ISRCinstance*)(cv->TRCVvElt[i]))->ISRCdcGiven = cv->TRCVgSave[i]; ++ } else if(cv->TRCVvType[i] == TEMP_CODE) { ++ ckt->CKTtemp = cv->TRCVvSave[i]; + } /* else not possible */ + } + (*(SPfrontEnd->OUTendPlot))(plot); diff --git a/cad/spice/files/patch-ap b/cad/spice/files/patch-src_lib_fte_aspice_c index d17e47182a0c..d17e47182a0c 100644 --- a/cad/spice/files/patch-ap +++ b/cad/spice/files/patch-src_lib_fte_aspice_c diff --git a/cad/spice/files/patch-src_lib_fte_cpitf_c b/cad/spice/files/patch-src_lib_fte_cpitf_c new file mode 100644 index 000000000000..684cf9ae5693 --- /dev/null +++ b/cad/spice/files/patch-src_lib_fte_cpitf_c @@ -0,0 +1,13 @@ +--- src/lib/fte/cpitf.c.orig Tue Mar 30 16:55:42 1993 ++++ src/lib/fte/cpitf.c Thu Jul 17 00:47:50 2003 +@@ -212,7 +212,9 @@ + cp_interactive = false; + inp_spsource(fp, true, buf); + cp_interactive = true; +- (void) fclose(fp); ++ /* 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) diff --git a/cad/spice/files/patch-src_lib_fte_device_c b/cad/spice/files/patch-src_lib_fte_device_c new file mode 100644 index 000000000000..26c4e60b0998 --- /dev/null +++ b/cad/spice/files/patch-src_lib_fte_device_c @@ -0,0 +1,13 @@ +--- src/lib/fte/device.c.orig Thu Jul 29 21:09:59 1993 ++++ src/lib/fte/device.c Thu Jul 17 00:47:50 2003 +@@ -661,7 +661,9 @@ + } + + dv = ft_evaluate(n2->pn_right); +- free_pnode(names); ++ /* prevent names from getting freed twice ++ Guenther Roehrich 22-Jan-99 */ ++ /* free_pnode(names); */ + if (!dv) + return; + if (dv->v_length < 1) { diff --git a/cad/spice/files/patch-an b/cad/spice/files/patch-src_lib_fte_dimens_c index a61223c0a9c3..2e6e5157b5de 100644 --- a/cad/spice/files/patch-an +++ b/cad/spice/files/patch-src_lib_fte_dimens_c @@ -1,5 +1,5 @@ ---- 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 +--- 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; diff --git a/cad/spice/files/patch-bd b/cad/spice/files/patch-src_lib_fte_doplot_c index cd9e272a2e75..7e100f1ff332 100644 --- a/cad/spice/files/patch-bd +++ b/cad/spice/files/patch-src_lib_fte_doplot_c @@ -1,5 +1,14 @@ ---- src/lib/fte/doplot.c.orig Fri Mar 22 21:02:55 2002 -+++ src/lib/fte/doplot.c Fri Mar 22 22:14:07 2002 +--- src/lib/fte/doplot.c.orig Sun Apr 25 23:48:45 1993 ++++ src/lib/fte/doplot.c Mon Feb 26 18:03:20 2001 +@@ -117,7 +117,7 @@ + } + + if (!cp_getvar("hcopydevtype", VT_STRING, buf)) { +- devtype = "plot5"; ++ devtype = "postscript"; + } else { + devtype = buf; + } @@ -147,10 +147,23 @@ DevSwitch(NULL); return; diff --git a/cad/spice/files/patch-src_lib_fte_graf_c b/cad/spice/files/patch-src_lib_fte_graf_c new file mode 100644 index 000000000000..1b87553b75f8 --- /dev/null +++ b/cad/spice/files/patch-src_lib_fte_graf_c @@ -0,0 +1,30 @@ +--- src/lib/fte/graf.c.orig Tue Jan 5 16:43:44 1993 ++++ src/lib/fte/graf.c Thu Jul 17 12:16:42 2003 +@@ -289,9 +289,11 @@ + if (*tics == (double) np) { + Text("x", (int) (tox - currentgraph->fontwidth / 2), + (int) (toy - currentgraph->fontheight / 2)); +- SaveText(currentgraph, "x", ++ /* 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)); ++ (int) (toy - currentgraph->fontheight / 2)); */ + break; + } + } +@@ -301,9 +303,11 @@ + /* Draw an 'x' */ + Text("x", (int) (tox - currentgraph->fontwidth / 2), + (int) (toy - currentgraph->fontheight / 2)); +- SaveText(currentgraph, "x", ++ /* 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)); ++ (int) (toy - currentgraph->fontheight / 2)); */ + } + break; + case PLOT_COMB: diff --git a/cad/spice/files/patch-src_lib_fte_grid_c b/cad/spice/files/patch-src_lib_fte_grid_c new file mode 100644 index 000000000000..7521d0460c42 --- /dev/null +++ b/cad/spice/files/patch-src_lib_fte_grid_c @@ -0,0 +1,62 @@ +--- src/lib/fte/grid.c.orig Sun Apr 25 16:53:11 1993 ++++ src/lib/fte/grid.c Thu Jul 17 00:47:51 2003 +@@ -1230,7 +1230,10 @@ + + /* SetLinestyle(1); takes too long */ + /* Problems with Suns on very large radii && linestyle */ +- SetLinestyle(0); ++ /* 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 +@@ -1409,7 +1412,10 @@ + /* Let's be lazy and just draw everything -- we won't get called too + * much and the circles get clipped anyway... + */ +- SetColor(18); ++ /* 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, +@@ -1424,7 +1430,10 @@ + M_PI - 2 * angle, centx, centy, maxrad, 0); + + /* Draw the upper and lower circles. */ +- SetColor(19); ++ /* 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), +@@ -1441,7 +1450,10 @@ + adddeglabel(graph, ndeg, xlab, ylab, + gr_xcenter, gr_ycenter, gr_xcenter, gr_ycenter); + */ +- SetColor(19); ++ /* SetColor(19); */ ++ /* draw everything in black ++ Guenther Roehrich 22-Jan-99 */ ++ SetColor(1); + } + } + aclip = cliparc((double) (centx + xoffset + radoff), +@@ -1455,7 +1467,10 @@ + SetColor(1); + adddeglabel(graph, ndeg, xlab, ylab, + gr_xcenter, gr_ycenter, gr_xcenter, gr_ycenter); +- SetColor(19); ++ /* 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-src_lib_fte_inp_c b/cad/spice/files/patch-src_lib_fte_inp_c new file mode 100644 index 000000000000..bceb37e0b0c4 --- /dev/null +++ b/cad/spice/files/patch-src_lib_fte_inp_c @@ -0,0 +1,11 @@ +--- src/lib/fte/inp.c.orig Thu Apr 29 18:06:28 1993 ++++ src/lib/fte/inp.c Thu Jul 17 00:47:50 2003 +@@ -666,7 +666,7 @@ + + fprintf(cp_out, "run circuit? "); + fflush(cp_out); +- (void) gets(buf); ++ (void) fgets(buf,BSIZE_SP,stdin); + if (buf[0] != 'n') { + fprintf(cp_out, "running circuit\n"); + com_run(NULL); diff --git a/cad/spice/files/patch-src_lib_fte_postcoms_c b/cad/spice/files/patch-src_lib_fte_postcoms_c new file mode 100644 index 000000000000..aa8dc564671d --- /dev/null +++ b/cad/spice/files/patch-src_lib_fte_postcoms_c @@ -0,0 +1,11 @@ +--- src/lib/fte/postcoms.c.orig Sat Jul 17 19:28:05 1999 ++++ src/lib/fte/postcoms.c Thu Jul 17 10:23:13 2003 +@@ -135,7 +145,7 @@ + } + t = ft_evaluate(nn); + if (!t) { +- /* XXX error message */ ++ fprintf(cp_err, "Error: Can't evaluate %s\n", rhs); + tfree(p); + return; + } diff --git a/cad/spice/files/patch-src_lib_fte_resource_c b/cad/spice/files/patch-src_lib_fte_resource_c new file mode 100644 index 000000000000..b6ab6b0239c0 --- /dev/null +++ b/cad/spice/files/patch-src_lib_fte_resource_c @@ -0,0 +1,12 @@ +--- src/lib/fte/resource.c.orig Wed Apr 28 17:39:03 1993 ++++ src/lib/fte/resource.c Thu Jul 17 00:47:50 2003 +@@ -369,7 +369,9 @@ + long x; + SIGNAL_TYPE (*orig_signal)( ); + ++#ifndef __FreeBSD__ + if (getenv("SPICE_NO_DATASEG_CHECK")) ++#endif + return 0; + + low = 0; diff --git a/cad/spice/files/patch-src_lib_fte_vectors_c b/cad/spice/files/patch-src_lib_fte_vectors_c new file mode 100644 index 000000000000..eb38e9ad22eb --- /dev/null +++ b/cad/spice/files/patch-src_lib_fte_vectors_c @@ -0,0 +1,82 @@ +--- src/lib/fte/vectors.c.orig Sat Jul 17 19:28:05 1999 ++++ src/lib/fte/vectors.c Sat Jul 17 19:28:05 1999 +@@ -200,7 +200,7 @@ + { + struct dvec *d, *end = NULL, *newv = NULL; + struct plot *pl; +- char buf[BSIZE_SP], *s, *wd, *name, *param; ++ char buf[BSIZE_SP], *s, *wd, *whole, *name = NULL, *param; + int i = 0; + struct variable *vv; + +@@ -251,19 +251,28 @@ + fprintf(cp_err, + "Error: plot wildcard (name %s) matches nothing\n", + word); ++ ++ /* MW. I don't want core leaks here */ ++ tfree(wd); + return (NULL); + } + } ++ + if (!d && (*word == SPECCHAR)) { + /* This is a special quantity... */ + if (ft_nutmeg) { + fprintf(cp_err, + "Error: circuit parameters only available with spice\n"); ++ ++ tfree(wd); /* MW. Memory leak fixed again */ + return (false); + } +- name = ++word; ++ ++ whole=copy(word); ++ name = ++word; + for (param = name; *param && (*param != '['); param++) +- ; ++ ; ++ + if (*param) { + *param++ = '\0'; + for (s = param; *s && *s != ']'; s++) +@@ -271,27 +280,36 @@ + *s = '\0'; + } else + param = NULL; +- ++ ++ + if (ft_curckt) { ++ + vv = (*if_getparam)(ft_curckt->ci_ckt, &name, param, 0, 0); + if (!vv) { ++ tfree(whole); ++ tfree(wd); + return (NULL); + } + } else { + fprintf(cp_err, "Error: No circuit loaded.\n"); ++ tfree(whole); ++ tfree(wd); + return (NULL); + } + +- tfree(wd); + d = alloc(struct dvec); + ZERO(d, struct dvec); +- d->v_name = copy(word); ++ d->v_name = copy(whole); /* MW. The same as word before */ + d->v_type = SV_NOTYPE; + d->v_flags |= VF_REAL; /* No complex values yet... */ + d->v_realdata = (double *) tmalloc(sizeof (double)); + d->v_length = 1; + *d->v_realdata = vv->va_real; ++ ++ tfree(wd); + vec_new(d); ++ tfree(whole); ++ tfree(wd); + return (d); + } + diff --git a/cad/spice/files/patch-src_lib_fte_x11_c b/cad/spice/files/patch-src_lib_fte_x11_c new file mode 100644 index 000000000000..b10456e700a8 --- /dev/null +++ b/cad/spice/files/patch-src_lib_fte_x11_c @@ -0,0 +1,67 @@ +--- src/lib/fte/x11.c.orig Thu Jul 17 10:55:00 2003 ++++ src/lib/fte/x11.c Thu Jul 17 11:39:05 2003 +@@ -120,7 +120,10 @@ + /* "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.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; +@@ -302,7 +305,7 @@ + return (0); + } + +-static ++/* PN static */ + initlinestyles() + { + +@@ -318,7 +321,7 @@ + return; + } + +-static ++/* PN static */ + initcolors(graph) + GRAPH *graph; + { +@@ -805,11 +808,13 @@ + { + + GRAPH *graph = (GRAPH *) client_data; ++ Widget w; + + /* Iplots are done asynchronously */ + DEVDEP(graph).isopen = 0; ++ w = DEVDEP(graph).shell; + DestroyGraph(graph->graphid); +- XtDestroyWidget(DEVDEP(graph).shell); ++ XtDestroyWidget(w); + + } + +@@ -945,7 +950,8 @@ + 1 << ConnectionNumber(display); + + /* block on ConnectionNumber and request->fp */ +- select(nfds + 1, &readfds, (int *) NULL, (int *) NULL, NULL); ++ /* PN added fd_set * casting */ ++ select(nfds + 1, (fd_set *) &readfds, (fd_set *) NULL, (fd_set *) NULL, NULL); + + /* handle X events first */ + if (readfds & (1 << ConnectionNumber(display))) { +@@ -998,7 +1004,8 @@ + + } + +-static X_ScreentoData(graph, x, y, fx, fy) ++/* PN static */ ++X_ScreentoData(graph, x, y, fx, fy) + GRAPH *graph; + int x,y; + double *fx, *fy; diff --git a/cad/spice/files/patch-ao b/cad/spice/files/patch-src_lib_hlp_readhelp_c index 449ae1e496a2..449ae1e496a2 100644 --- a/cad/spice/files/patch-ao +++ b/cad/spice/files/patch-src_lib_hlp_readhelp_c diff --git a/cad/spice/files/patch-src_lib_inp_inpfindl_c b/cad/spice/files/patch-src_lib_inp_inpfindl_c new file mode 100644 index 000000000000..c7d55cb9da97 --- /dev/null +++ b/cad/spice/files/patch-src_lib_inp_inpfindl_c @@ -0,0 +1,107 @@ +--- src/lib/inp/inpfindl.c.orig Mon Apr 8 23:41:39 1991 ++++ src/lib/inp/inpfindl.c Thu Jul 17 02:45:08 2003 +@@ -1,11 +1,13 @@ + /********** + Copyright 1990 Regents of the University of California. All rights reserved. + Author: 1985 Thomas L. Quarles ++Modified: 1999 Paolo Nenzi - Now we can use a two digits level code - + **********/ + +- /* INPfindLev(line) ++ /* INPfindLev(line,level) + * find the 'level' parameter on the given line and return its +- * value (1,2,or 3 for now, 1 default) ++ * value (1,2,..,99 for now, 1 default) ++ * NOTE: now limited to 9 for compatibility + */ + + #include "spice.h" +@@ -24,58 +26,41 @@ + char *where; + + where = line; +- +- while(1) { +- where = index(where,'l'); +- if(where == 0) { /* no 'l' in the line => no 'level' => default */ +- *level = 1; +- return((char *)NULL); +- } +- if(strncmp(where,"level",5)!=0) { /* this l isn't in the word +- * 'level', so lets try again */ +- where++; /* make sure we don't match same char again */ +- continue; +- } +- /* found the word level, lets look at the rest of the line */ +- where += 5; ++ ++ where=strstr(line, "level"); ++ ++ if (where!=NULL) { /* found a level keyword on the line */ ++ ++ where += 5; /* skip the level keyword */ + while( (*where == ' ') || (*where == '\t') || (*where == '=') || + (*where == ',') || (*where == '(') || (*where == ')') || + (*where == '+') ) { /* legal white space - ignore */ +- where++; ++ where++; + } ++ + /* now the magic number */ +- switch(*where) { +- case '1': ++ sscanf(where,"%2d",level); /* We get the level number */ ++ if (*level<0) { ++ *level=1; ++ return(INPmkTemp(" illegal (negative) argument to level parameter - level=1 assumed")); ++ } ++ ++ if (*level>9) { /* Limit to change in the future */ + *level=1; ++ return(INPmkTemp(" illegal (too high) argument to level parameter - level=1 assumed")); ++ } ++ + return((char *)NULL); +- case '2': +- *level=2; +- return((char *)NULL); +- case '3': +- *level=3; +- return((char *)NULL); +- case '4': +- *level=4; +- return((char *)NULL); +- case '5': +- *level=5; +- return((char *)NULL); +- case '6': +- *level=6; +- return((char *)NULL); +- case '7': +- *level=7; +- return((char *)NULL); +- case '8': +- *level=8; +- return((char *)NULL); +- case '9': +- *level=9; +- return((char *)NULL); +- default: +- *level=1; +- return(INPmkTemp( +- " illegal argument to level parameter - level=1 assumed")); +- } +- } ++ } ++ ++ ++ ++ else { /* no level on the line => default */ ++ *level = 1; ++ return((char *)NULL); ++ } ++ ++ ++ ++ + } diff --git a/cad/spice/files/patch-util_build b/cad/spice/files/patch-util_build new file mode 100644 index 000000000000..de7b2dd1c6e3 --- /dev/null +++ b/cad/spice/files/patch-util_build @@ -0,0 +1,11 @@ +--- util/build.orig Thu Jul 29 03:46:39 1993 ++++ util/build Thu Jul 17 00:47:50 2003 +@@ -96,7 +96,7 @@ + + TMP_LEADER="${TMP_DIR}/buildl$$" + TMP_TRAILER="${TMP_DIR}/buildt$$" +-trap 'rm -f ${TMP_LEADER} ${TMP_TRAILER}; exit 1' 1 2 3 4 6 7 8 9 10 12 13 14 15 ++trap 'rm -f ${TMP_LEADER} ${TMP_TRAILER}; exit 1' 1 2 3 4 6 7 8 10 12 13 14 15 + echo > "${TMP_TRAILER}" + BAD=false + DEBUG= diff --git a/cad/spice/files/patch-util_skeleton_make_def_bd b/cad/spice/files/patch-util_skeleton_make_def_bd new file mode 100644 index 000000000000..aa0f36710f81 --- /dev/null +++ b/cad/spice/files/patch-util_skeleton_make_def_bd @@ -0,0 +1,11 @@ +--- util/skeleton/make_def.bd.orig Thu Jul 29 16:35:18 1993 ++++ util/skeleton/make_def.bd Thu Jul 17 00:47:51 2003 +@@ -8,7 +8,7 @@ + PATH_SEP = / + PS = / + REVISION = +-VERSION = 3f4 ++VERSION = 3f5 + VERSION_REVISION= $(VERSION)$(REVISION) + NOTICE = + TOP = /projects/spice3/spice$(VERSION) diff --git a/cad/spice/pkg-plist b/cad/spice/pkg-plist index 19338084d691..559369e7394c 100644 --- a/cad/spice/pkg-plist +++ b/cad/spice/pkg-plist @@ -4,33 +4,34 @@ bin/sconvert bin/help bin/proc2mod bin/multidec -%%PORTDOCS%%share/examples/spice3/bjtnoise.cir -%%PORTDOCS%%share/examples/spice3/bsim1tst.cir -%%PORTDOCS%%share/examples/spice3/bsim2tst.cir -%%PORTDOCS%%share/examples/spice3/diffpair.cir -%%PORTDOCS%%share/examples/spice3/diodisto.cir -%%PORTDOCS%%share/examples/spice3/ltra_1.cir -%%PORTDOCS%%share/examples/spice3/ltra_2.cir -%%PORTDOCS%%share/examples/spice3/ltra_3.cir -%%PORTDOCS%%share/examples/spice3/mixdisto.cir -%%PORTDOCS%%share/examples/spice3/mos6inv.cir -%%PORTDOCS%%share/examples/spice3/mosamp2.cir -%%PORTDOCS%%share/examples/spice3/mosmem.cir -%%PORTDOCS%%share/examples/spice3/pz2.cir -%%PORTDOCS%%share/examples/spice3/pzt.cir -%%PORTDOCS%%share/examples/spice3/rc.cir -%%PORTDOCS%%share/examples/spice3/rca3040.cir -%%PORTDOCS%%share/examples/spice3/resnoise.cir -%%PORTDOCS%%share/examples/spice3/rtlinv.cir -%%PORTDOCS%%share/examples/spice3/schmitt.cir -%%PORTDOCS%%share/examples/spice3/simplepz.cir -share/spice3/helpdir/spice.txt -share/spice3/helpdir/spice.idx -share/spice3/scripts/setplot -share/spice3/scripts/spinit -share/spice3/mfbcap -share/spice3/news -%%PORTDOCS%%@dirrm share/examples/spice3 -@dirrm share/spice3/helpdir -@dirrm share/spice3/scripts -@dirrm share/spice3 +share/spice/helpdir/spice.txt +share/spice/helpdir/spice.idx +share/spice/scripts/setplot +share/spice/scripts/spinit +share/spice/mfbcap +share/spice/news +@dirrm share/spice/helpdir +@dirrm share/spice/scripts +@dirrm share/spice +%%PORTDOCS%%%%DOCSDIR%%/spice3f3.ps.gz +%%PORTDOCS%%%%EXAMPLESDIR%%/bjtnoise.cir +%%PORTDOCS%%%%EXAMPLESDIR%%/bsim1tst.cir +%%PORTDOCS%%%%EXAMPLESDIR%%/bsim2tst.cir +%%PORTDOCS%%%%EXAMPLESDIR%%/diffpair.cir +%%PORTDOCS%%%%EXAMPLESDIR%%/diodisto.cir +%%PORTDOCS%%%%EXAMPLESDIR%%/ltra_1.cir +%%PORTDOCS%%%%EXAMPLESDIR%%/ltra_2.cir +%%PORTDOCS%%%%EXAMPLESDIR%%/ltra_3.cir +%%PORTDOCS%%%%EXAMPLESDIR%%/mixdisto.cir +%%PORTDOCS%%%%EXAMPLESDIR%%/mos6inv.cir +%%PORTDOCS%%%%EXAMPLESDIR%%/mosamp2.cir +%%PORTDOCS%%%%EXAMPLESDIR%%/mosmem.cir +%%PORTDOCS%%%%EXAMPLESDIR%%/pz2.cir +%%PORTDOCS%%%%EXAMPLESDIR%%/pzt.cir +%%PORTDOCS%%%%EXAMPLESDIR%%/rc.cir +%%PORTDOCS%%%%EXAMPLESDIR%%/rca3040.cir +%%PORTDOCS%%%%EXAMPLESDIR%%/resnoise.cir +%%PORTDOCS%%%%EXAMPLESDIR%%/rtlinv.cir +%%PORTDOCS%%%%EXAMPLESDIR%%/schmitt.cir +%%PORTDOCS%%%%EXAMPLESDIR%%/simplepz.cir +%%PORTDOCS%%@dirrm share/examples/spice |