aboutsummaryrefslogtreecommitdiffstats
path: root/bruiser/luatablegen/makefile
diff options
context:
space:
mode:
Diffstat (limited to 'bruiser/luatablegen/makefile')
-rw-r--r--bruiser/luatablegen/makefile25
1 files changed, 21 insertions, 4 deletions
diff --git a/bruiser/luatablegen/makefile b/bruiser/luatablegen/makefile
index 472c591..b59a216 100644
--- a/bruiser/luatablegen/makefile
+++ b/bruiser/luatablegen/makefile
@@ -1,16 +1,25 @@
CC=clang
CC?=clang
-CC_FLAGS=$(shell $(PY_CONF) --includes) -fpic
+CC_FLAGS=-fpic
CC_EXTRA?=
CC_FLAGS+=$(CC_EXTRA)
SRCS=$(wildcard *.c)
TBG_OBJLIST=$(patsubst %.c, %.o , $(wildcard *.c))
+TBG_OBJLIST_DBG=$(patsubst %.c, %.odbg , $(wildcard *.c))
+TBG_OBJLIST_COV=$(patsubst %.c, %.ocov , $(wildcard *.c))
+ADD_SANITIZERS_CC= -g -fsanitize=address -fno-omit-frame-pointer
+ADD_SANITIZERS_LD= -g -fsanitize=address
+MEM_SANITIZERS_CC= -g -fsanitize=memory -fno-omit-frame-pointer
+MEM_SANITIZERS_LD= -g -fsanitize=memory
+UB_SANITIZERS_CC= -g -fsanitize=undefined -fno-omit-frame-pointer
+UB_SANITIZERS_LD= -g -fsanitize=undefined
+COV_CC= -fprofile-instr-generate -fcoverage-mapping
.DEFAULT:all
.PHONY:all clean help
-all:$(TBG_OBJLIST)
+all:$(TBG_OBJLIST) $(TBG_OBJLIST_DBG) $(TBG_OBJLIST_COV)
@echo $(TBG_OBJLIST)
@echo $(TBG_OBJLIST_INC)
@@ -19,14 +28,22 @@ depend:.depend
.depend:$(SRCS)
rm -rf .depend
$(CC) -MM $(CC_FLAGS) $^ > ./.depend
+ echo $(patsubst %.o:, %.odbg:, $(shell $(CC) -MM $(CC_FLAGS) $^)) | sed -r 's/[A-Za-z0-9\-\_]+\.odbg/\n&/g' >> ./.depend
+ echo $(patsubst %.o:, %.ocov:, $(shell $(CC) -MM $(CC_FLAGS) $^)) | sed -r 's/[A-Za-z0-9\-\_]+\.ocov/\n&/g' >> ./.depend
-include ./.depend
.c.o:
- $(CC) $(CC_FLAGS) -c $< -o $@
+ $(CC) $(CC_FLAGS) -c $< -o $@
+
+%.odbg:%.c
+ $(CC) $(CC_FLAGS) -g -c $< -o $@
+
+%.ocov:%.c
+ $(CC) $(CC_FLAGS) $(COV_CC) -c $< -o $@
clean:
- rm -f *.o *~ $(TARGET)
+ rm -f *.o *~ $(TARGET) *.ocov *.odbg
rm .depend
help: