The CDSSpec checker's benchmarks
[model-checker-benchmarks.git] / linuxrwlocks / Makefile
index 90dafcfb30dbb7656c5cc97744d68ba7fdf1482f..e5a38d2398dfe7618a5a88f33e928100df8c1ab8 100644 (file)
@@ -1,11 +1,23 @@
 include ../benchmarks.mk
 
-TESTNAME = linuxrwlocks
+BENCH := linuxrwlocks
 
-all: $(TESTNAME)
+BENCH_BINARY := $(BENCH).o
 
-$(TESTNAME): $(TESTNAME).c
-       $(CC) -o $@ $< $(CFLAGS) $(LDFLAGS)
+TESTS := main testcase1 testcase2 testcase3
+
+all: $(TESTS)
+       ../generate.sh $(notdir $(shell pwd))
+
+%.o : %.c
+       $(CC) -c -fPIC -MMD -MF .$@.d -o $@ $< $(CFLAGS) $(LDFLAGS)
+
+$(TESTS): % : %.o  $(BENCH_BINARY)
+       $(CC) -o $@ $^ $(CFLAGS) $(LDFLAGS)
+
+-include .*.d 
 
 clean:
-       rm -f $(TESTNAME) *.o
+       rm -rf $(TESTS) *.o .*.d *.dSYM
+
+.PHONY: clean all