add Makefile and instructions to run programs
[c11concurrency-benchmarks.git] / mabain / examples / fuzzer_test / Makefile
1 ifndef MABAIN_INSTALL_DIR
2 MABAIN_INSTALL_DIR=/usr/local
3 endif
4
5 BASE_DIR=..
6 CDS_DIR=/scratch/random-fuzzer 
7
8 CPP=clang++
9
10 all: mb_insert_test mb_lookup_test mb_longest_prefix_test \
11         mb_remove_test mb_iterator_test mb_multi_proc_test \
12         mb_rc_test mb_multi_thread_insert_test mb_memory_only_test
13
14 CLANGFLAGS = -Xclang -load -Xclang /scratch/llvm/build/lib/libCDSPass.so
15 CFLAGS  = -I. -I$(MABAIN_INSTALL_DIR)/include -Wall -Werror -g -O0 -c -std=c++11
16 LDFLAGS = -L$(CDS_DIR) -lmodel -lpthread -lcrypto -L$(MABAIN_INSTALL_DIR)/lib -lmabain
17
18 mb_insert_test: $(BASE_DIR)/mb_insert_test.cpp
19         $(CPP) $(CLANGFLAGS) $(CFLAGS) $(BASE_DIR)/mb_insert_test.cpp
20         $(CPP) mb_insert_test.o -o mb_insert_test $(LDFLAGS)
21 mb_lookup_test: $(BASE_DIR)/mb_lookup_test.cpp
22         $(CPP) $(CLANGFLAGS) $(CFLAGS) $(BASE_DIR)/mb_lookup_test.cpp
23         $(CPP) mb_lookup_test.o -o mb_lookup_test $(LDFLAGS)
24 mb_longest_prefix_test: $(BASE_DIR)/mb_longest_prefix_test.cpp
25         $(CPP) $(CLANGFLAGS) $(CFLAGS) $(BASE_DIR)/mb_longest_prefix_test.cpp
26         $(CPP) mb_longest_prefix_test.o -o mb_longest_prefix_test $(LDFLAGS)
27 mb_remove_test: $(BASE_DIR)/mb_remove_test.cpp
28         $(CPP) $(CLANGFLAGS) $(CFLAGS) $(BASE_DIR)/mb_remove_test.cpp
29         $(CPP) mb_remove_test.o -o mb_remove_test $(LDFLAGS)
30 mb_iterator_test: $(BASE_DIR)/mb_iterator_test.cpp
31         $(CPP) $(CLANGFLAGS) $(CFLAGS) $(BASE_DIR)/mb_iterator_test.cpp
32         $(CPP) mb_iterator_test.o -o mb_iterator_test $(LDFLAGS)
33 mb_multi_proc_test: $(BASE_DIR)/mb_multi_proc_test.cpp
34         $(CPP) $(CLANGFLAGS) $(CFLAGS) $(BASE_DIR)/mb_multi_proc_test.cpp
35         $(CPP) mb_multi_proc_test.o -o mb_multi_proc_test $(LDFLAGS)
36 mb_rc_test: $(BASE_DIR)/mb_rc_test.cpp
37         $(CPP) $(CLANGFLAGS) $(CFLAGS) $(BASE_DIR)/mb_rc_test.cpp
38         $(CPP) mb_rc_test.o -o mb_rc_test $(LDFLAGS)
39 mb_multi_thread_insert_test: $(BASE_DIR)/mb_multi_thread_insert_test.cpp
40         $(CPP) $(CLANGFLAGS) $(CFLAGS) $(BASE_DIR)/mb_multi_thread_insert_test.cpp
41         $(CPP) mb_multi_thread_insert_test.o -o mb_multi_thread_insert_test $(LDFLAGS)
42 mb_memory_only_test: $(BASE_DIR)/mb_memory_only_test.cpp
43         $(CPP) $(CLANGFLAGS) $(CFLAGS) $(BASE_DIR)/mb_memory_only_test.cpp
44         $(CPP) mb_memory_only_test.o -o mb_memory_only_test $(LDFLAGS)
45
46
47 build: all $(shell mkdir ./tmp_dir)
48 clean:
49         -rm -f ./*.o ./mb_*_test
50         -rm -rf ./tmp_dir
51