altos/scheme: Add vector and string funcs. Test everybody.
[fw/altos] / src / scheme / test / Makefile
index 9d39d33ef30159274959b9bd92ab4670b1a0f8b5..8858f0f6e40a1c802f60f118e4d1fa39af9628b5 100644 (file)
@@ -3,17 +3,30 @@ include ../Makefile-inc
 vpath %.o .
 vpath %.c ..
 vpath %.h ..
+vpath %.scheme ..
+vpath ao_scheme_make_const ../make-const
 
 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: ao_scheme_make_const $(SCHEME_SCHEME)
+       $^ -o $@
 
 clean::
-       rm -f $(OBJS) ao_scheme_test
+       rm -f $(OBJS) ao-scheme ao_scheme_const.h
+
+install: ao-scheme
+       install -t $$HOME/bin $^