This replaces the one use of ftime() on BSD with gettimeofday() in
cad/spice. gettimeofday() was already available at the time that
code was written in the 1980s. I've followed the existing style
and not used #elif.
This also removes the useless inclusion of <sgtty.h>, which will
go away, too.
ok?
Index: Makefile
===================================================================
RCS file: /cvs/ports/cad/spice/Makefile,v
retrieving revision 1.33
diff -u -p -r1.33 Makefile
--- Makefile 10 Mar 2013 23:04:45 -0000 1.33
+++ Makefile 1 Dec 2013 21:24:02 -0000
@@ -5,7 +5,7 @@ COMMENT= Simulation Program for Integrat
V= 3f5
DISTNAME= spice${V}
PKGNAME= spice-${V}
-REVISION= 6
+REVISION= 7
CATEGORIES= cad
# BSD
Index: files/OpenBSD
===================================================================
RCS file: /cvs/ports/cad/spice/files/OpenBSD,v
retrieving revision 1.5
diff -u -p -r1.5 OpenBSD
--- files/OpenBSD 13 Nov 2011 12:50:39 -0000 1.5
+++ files/OpenBSD 1 Dec 2013 21:24:02 -0000
@@ -5,7 +5,7 @@
MAKE = ${MAKE_PROGRAM}
DEFAULT_EDITOR = /usr/bin/vi
X_DIR = ${X11BASE}
-LDFLAGS = -lm -ltermlib -lcompat
+LDFLAGS = -lm -ltermlib
SYS_CFLAGS = -Dbsd -DHAS_STDLIB -DHAS_INTWAITSTATUS
SYS_DIR = ${DIST_DIR}/OpenBSD
SPICE_DIR = ${PREFIX}
Index: patches/patch-src_include_mfb_h
===================================================================
RCS file: /cvs/ports/cad/spice/patches/patch-src_include_mfb_h,v
retrieving revision 1.1
diff -u -p -r1.1 patch-src_include_mfb_h
--- patches/patch-src_include_mfb_h 9 May 2010 17:50:26 -0000 1.1
+++ patches/patch-src_include_mfb_h 1 Dec 2013 21:24:02 -0000
@@ -1,7 +1,18 @@
$OpenBSD: patch-src_include_mfb_h,v 1.1 2010/05/09 17:50:26 espie Exp $
---- src/include/mfb.h.orig Sun May 9 19:41:32 2010
-+++ src/include/mfb.h Sun May 9 19:41:48 2010
-@@ -369,7 +369,7 @@ typedef struct mfb MFB;
+--- src/include/mfb.h.orig Mon Oct 8 10:19:42 1990
++++ src/include/mfb.h Sun Dec 1 22:20:06 2013
+@@ -31,6 +31,10 @@ Author: 1985 Wayne A. Christopher
+
+ #include <sys/types.h>
+
++#ifdef HAS_GETTIMEOFDAY
++#include <sys/time.h>
++#endif
++
+ #ifdef HAS_FTIME
+ #include <sys/timeb.h>
+ #endif
+@@ -369,7 +373,7 @@ typedef struct mfb MFB;
extern MFB *MFBCurrent; /* global FB structure */
Index: patches/patch-src_include_os_bsd_h
===================================================================
RCS file: patches/patch-src_include_os_bsd_h
diff -N patches/patch-src_include_os_bsd_h
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_include_os_bsd_h 1 Dec 2013 21:24:02 -0000
@@ -0,0 +1,20 @@
+$OpenBSD$
+--- src/include/os_bsd.h.orig Sun Apr 25 01:09:46 1993
++++ src/include/os_bsd.h Sun Dec 1 22:04:25 2013
+@@ -10,13 +10,15 @@ Copyright 1990 Regents of the University of California
+
+ #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_GETTIMEOFDAY /* gettimeofday() */
+ #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( ) */
++#ifndef __OpenBSD__
+ #define HAS_BSDTTY /* <sgtty.h> */
++#endif
+ #define HAS_BSDDIRS /* <sys/dir.h> */
+ #define HAS_BSDRUSAGE /* getrusage( ) */
+ #define HAS_BSDRLIMIT /* getrlimit( ) */
Index: patches/patch-src_lib_mfb_mfbgnc_c
===================================================================
RCS file: /cvs/ports/cad/spice/patches/patch-src_lib_mfb_mfbgnc_c,v
retrieving revision 1.1
diff -u -p -r1.1 patch-src_lib_mfb_mfbgnc_c
--- patches/patch-src_lib_mfb_mfbgnc_c 2 Aug 2001 23:54:56 -0000 1.1
+++ patches/patch-src_lib_mfb_mfbgnc_c 1 Dec 2013 21:24:02 -0000
@@ -1,13 +1,44 @@
$OpenBSD: patch-src_lib_mfb_mfbgnc_c,v 1.1 2001/08/02 23:54:56 pvalchev Exp $
---- src/lib/mfb/mfbgnc.c.orig Tue Apr 9 20:08:26 1991
-+++ src/lib/mfb/mfbgnc.c Thu Aug 2 17:06:58 2001
-@@ -25,7 +25,9 @@ Author: -C- 1982 Giles C. Billingsley
-
- /* Library routines */
+--- src/lib/mfb/mfbgnc.c.orig Wed Apr 10 04:08:26 1991
++++ src/lib/mfb/mfbgnc.c Sun Dec 1 22:15:12 2013
+@@ -103,10 +103,15 @@ extern void ftime();
+ MFBGenCode(PM)
+ char *PM;
+ {
++#ifdef HAS_GETTIMEOFDAY
++ struct timeval time1, time2;
++ float reftime, elapsedtime;
++#else
#ifdef HAS_FTIME
-+#ifndef __OpenBSD__
- extern void ftime();
-+#endif /*__OpenBSD__*/
+ struct timeb time1, time2;
+ float reftime, elapsedtime;
#endif
-
- /*
++#endif
+ static char result[512]; /* 512 chars maximum per transfer */
+ char hexadec(); /* return a hexadecimal character */
+ char octal(); /* return an octal character */
+@@ -146,6 +151,16 @@ MFBGenCode(PM)
+ mfbarg(cp, Reg, reg, tmp);
+ if(*cp++ != '>')
+ continue;
++#ifdef HAS_GETTIMEOFDAY
++ gettimeofday(&time1, NULL);
++ reftime = (float)(time1.tv_sec * 1000 + time1.tv_usec / 1000);
++ while(tmp > 0){
++ gettimeofday(&time2, NULL);
++ elapsedtime = (float)(time2.tv_sec * 1000 + time2.tv_usec / 1000)
- reftime;
++ if(elapsedtime > (float)tmp)
++ break;
++ }
++#else
+ #ifdef HAS_FTIME
+ ftime(&time1);
+ reftime = (float)(time1.time * 1000 + time1.millitm);
+@@ -157,6 +172,7 @@ MFBGenCode(PM)
+ }
+ #else
+ sleep((tmp + 999) / 1000); /* Yuk; have to round up to seconds */
++#endif
+ #endif
+ dp = result;
+ }
--
Christian "naddy" Weisgerber [email protected]