Really mean it about strict C99 compliance. 21/head
authorJason S. Ninneman <jsn@mbar.us>
Mon, 29 May 2017 16:30:37 +0000 (09:30 -0700)
committerJason S. Ninneman <jsn@mbar.us>
Mon, 29 May 2017 16:30:37 +0000 (09:30 -0700)
Makefile
actions1.c
main.c
misc.c
misc.h

index 7fae0ef90a45e16cb886e3d29febaecfa24918be..4faf82ea40f51f9b0b092485107c304820b9d2f6 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,5 +1,6 @@
 # Makefile for the open-source release of adventure 2.5
 
+CCFLAGS=-std=c99
 LIBS=-lrt
 UNAME_S := $(shell uname -s)
 GCCVERSIONGTEQ4 := $(shell expr `gcc -dumpversion | cut -f1 -d.` \>= 4)
@@ -13,10 +14,10 @@ OBJS=main.o init.o actions1.o actions2.o score.o misc.o
 SOURCES=$(OBJS:.o=.c) COPYING NEWS README TODO adventure.text advent.text control misc.h main.h share.h funcs.h
 
 .c.o:
-       $(CC) -O $(DBX) -c $<
+       $(CC) $(CCFLAGS) -O $(DBX) -c $<
 
 advent:        $(OBJS) database.o
-       $(CC) -Wall -std=c99 -O $(DBX) -o advent $(OBJS) database.o $(LIBS)
+       $(CC) $(CCFLAGS) -O $(DBX) -o advent $(OBJS) database.o $(LIBS)
 
 main.o:                main.h misc.h funcs.h database.h
 
@@ -32,7 +33,7 @@ misc.o:               misc.h main.h database.h
 
 database.c database.h: compile
        ./compile
-       $(CC) $(OPTIONS) -O $(DBX) -c database.c
+       $(CC) $(CCFLAGS) -O $(DBX) -c database.c
 
 clean:
        rm -f *.o advent advent.html advent.6 database.[ch] compile
index 0cf8e97d56fcae90e2d9e6189e6c640ddc435be7..c82a7bc999571009957b6b244c3be19512950e03 100644 (file)
@@ -523,7 +523,7 @@ L8300:      SPK=201;
 /*  This next part is shared with the "resume" code.  The two cases are
  *  distinguished by the value of kk (-1 for suspend, +1 for resume). */
 
-L8305: DATIME(I,K);
+L8305: DATIME(&I,&K);
        K=I+650*K;
        SAVWRD(KK,K);
        K=VRSION;
diff --git a/main.c b/main.c
index e2c24e59847abc01b035fecc4432fd93da044e3e..65726e13c40a71fd2271bba1a4c21895c129078b 100644 (file)
--- a/main.c
+++ b/main.c
@@ -8,6 +8,7 @@
 #include <stdbool.h>
 #include <getopt.h>
 #include <signal.h>
+#include <time.h>
 #include "main.h"
 #include "database.h"
 #include "misc.h"
@@ -920,4 +921,5 @@ L12400: LIMIT= -1;
 L18999: RSPEAK(SPK);
 L19000: RSPEAK(136);
        score(0);
+       return true;
 }
diff --git a/misc.c b/misc.c
index 111848e1d5231eb7a9d00b59f3b9dfe4485e9bc4..1e72ba7cb2bc3dc90460f4d0d2bfbb1ba07fdca0 100644 (file)
--- a/misc.c
+++ b/misc.c
@@ -2,6 +2,7 @@
 #include <stdlib.h>
 #include <stdio.h>
 #include <string.h>
+#include <sys/time.h>
 #include "main.h"
 #include "share.h"     /* for SETUP */
 #include "misc.h"
@@ -1002,5 +1003,11 @@ L30:     if(IN)IGNORE(fread(ARR,sizeof(long),250,F));
 
 
 
+void DATIME(long* D, long* T) {
+  struct timeval tv;
+  gettimeofday(&tv, NULL);
+  *D = (long) tv.tv_sec;
+  *T = (long) tv.tv_usec;
+}
 long fIABS(N)long N; {return(N<0? -N : N);}
 long fMOD(N,M)long N, M; {return(N%M);}
diff --git a/misc.h b/misc.h
index a42a5a37c2afe8ceb51eac5cf2a829c3571b0717..e16c30854e9c0d75cb4e36739d4dc062510575cf 100644 (file)
--- a/misc.h
+++ b/misc.h
@@ -1,4 +1,3 @@
-#include <time.h>
 #include <stdio.h>
 #include <stdbool.h>
 
@@ -68,7 +67,7 @@ extern void fMPINIT();
 #define MPINIT() fMPINIT()
 extern void fSAVEIO(long,long,long*);
 #define SAVEIO(OP,IN,ARR) fSAVEIO(OP,IN,ARR)
-#define DATIME(D,T) do {struct timespec ts; clock_gettime(CLOCK_REALTIME, &ts); D=ts.tv_sec, T=ts.tv_nsec;} while (0)
+extern void DATIME(long*, long*);
 extern long fIABS(long);
 #define IABS(N) fIABS(N)
 extern long fMOD(long,long);