SPLC ?= ../../cfa/splc TESLA_CLANG ?= ../../kernel/tesla-clang OPTLEVEL ?= -O0 CC = $(TESLA_CLANG) CFLAGS=-Wall -g -I../.. -I. $(OPTLEVEL) TESLALIBS= \ ../../libtesla/tesla_state.o \ ../../libtesla/tesla_state_global.o \ ../../libtesla/tesla_state_perthread.o \ ../../libtesla/tesla_util.o .PHONY: all clean all: ping ping_automata.c ping_defs.h: ping.spl $(SPLC) -t tesla -s ping ping.spl cp ping.spec instrumentation.spec ping.o: ping.c $(CC) -c $(CFLAGS) -o $@ $< ping_assert.o: ping_assert.c ping_defs.h $(CC) -c $(CFLAGS) -o $@ $< ping_automata.o: ping_automata.c ping_defs.h $(CC) -c $(CFLAGS) -o $@ $< ping: ping_assert.o ping_automata.o ping.o ${TESLALIBS} $(CC) -o $@ ping.o ping_automata.o ping_assert.o ${TESLALIBS} -lm -lipsec clean: rm -f ping *.o