summaryrefslogtreecommitdiff
path: root/src/scheme/test
diff options
context:
space:
mode:
Diffstat (limited to 'src/scheme/test')
-rw-r--r--src/scheme/test/.gitignore2
-rw-r--r--src/scheme/test/Makefile20
-rw-r--r--src/scheme/test/ao_scheme_os.h3
-rw-r--r--src/scheme/test/ao_scheme_test.c2
4 files changed, 18 insertions, 9 deletions
diff --git a/src/scheme/test/.gitignore b/src/scheme/test/.gitignore
index 3cdae594..3622bc1d 100644
--- a/src/scheme/test/.gitignore
+++ b/src/scheme/test/.gitignore
@@ -1 +1 @@
-ao_scheme_test
+ao-scheme
diff --git a/src/scheme/test/Makefile b/src/scheme/test/Makefile
index c48add1f..ee46118e 100644
--- a/src/scheme/test/Makefile
+++ b/src/scheme/test/Makefile
@@ -5,18 +5,26 @@ vpath %.c ..
vpath %.h ..
SRCS=$(SCHEME_SRCS) ao_scheme_test.c
+HDRS=$(SCHEME_HDRS) ao_scheme_const.h
OBJS=$(SRCS:.c=.o)
-CFLAGS=-O2 -g -Wall -Wextra -I. -I..
+#PGFLAGS=-pg -no-pie
+OFLAGS=-O3
+#DFLAGS=-O0
-ao_scheme_test: $(OBJS)
+CFLAGS=$(DFLAGS) $(OFLAGS) $(PGFLAGS) -g -Wall -Wextra -I. -I.. -Wpointer-arith -Wmissing-declarations -Wformat=2 -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Wbad-function-cast -Wold-style-definition -Wdeclaration-after-statement -Wunused -Wuninitialized -Wshadow -Wmissing-noreturn -Wmissing-format-attribute -Wredundant-decls -Wlogical-op -Werror=implicit -Werror=nonnull -Werror=init-self -Werror=main -Werror=missing-braces -Werror=sequence-point -Werror=return-type -Werror=trigraphs -Werror=array-bounds -Werror=write-strings -Werror=address -Werror=int-to-pointer-cast -Werror=pointer-to-int-cast
+
+ao-scheme: $(OBJS)
cc $(CFLAGS) -o $@ $(OBJS) -lm
-$(OBJS): $(SCHEME_HDRS)
+$(OBJS): $(HDRS)
+
+ao_scheme_const.h: ../make-const/ao_scheme_make_const ../ao_scheme_const.scheme
+ ../make-const/ao_scheme_make_const -o $@ ../ao_scheme_const.scheme
clean::
- rm -f $(OBJS) ao_scheme_test
+ rm -f $(OBJS) ao-scheme ao_scheme_const.h
-install: ao_scheme_test
- cp ao_scheme_test $$HOME/bin/ao-scheme
+install: ao-scheme
+ install -t $$HOME/bin $^
diff --git a/src/scheme/test/ao_scheme_os.h b/src/scheme/test/ao_scheme_os.h
index ea363fb3..b225b2e8 100644
--- a/src/scheme/test/ao_scheme_os.h
+++ b/src/scheme/test/ao_scheme_os.h
@@ -24,12 +24,11 @@
#define AO_SCHEME_POOL_TOTAL 32768
#define AO_SCHEME_SAVE 1
-#define DBG_MEM_STATS 1
extern int ao_scheme_getc(void);
static inline void
-ao_scheme_os_flush() {
+ao_scheme_os_flush(void) {
fflush(stdout);
}
diff --git a/src/scheme/test/ao_scheme_test.c b/src/scheme/test/ao_scheme_test.c
index 0c77d8d5..45068369 100644
--- a/src/scheme/test/ao_scheme_test.c
+++ b/src/scheme/test/ao_scheme_test.c
@@ -107,6 +107,7 @@ main (int argc, char **argv)
}
ao_scheme_read_eval_print();
+#ifdef DBG_MEM_STATS
printf ("collects: full: %lu incremental %lu\n",
ao_scheme_collects[AO_SCHEME_COLLECT_FULL],
ao_scheme_collects[AO_SCHEME_COLLECT_INCREMENTAL]);
@@ -136,4 +137,5 @@ main (int argc, char **argv)
(double) ao_scheme_loops[AO_SCHEME_COLLECT_FULL],
(double) ao_scheme_freed[AO_SCHEME_COLLECT_INCREMENTAL] /
(double) ao_scheme_loops[AO_SCHEME_COLLECT_INCREMENTAL]);
+#endif
}