add Makefile and instructions to run programs
[c11concurrency-benchmarks.git] / mabain / examples / fuzzer_test / Makefile
diff --git a/mabain/examples/fuzzer_test/Makefile b/mabain/examples/fuzzer_test/Makefile
new file mode 100644 (file)
index 0000000..0341816
--- /dev/null
@@ -0,0 +1,51 @@
+ifndef MABAIN_INSTALL_DIR
+MABAIN_INSTALL_DIR=/usr/local
+endif
+
+BASE_DIR=..
+CDS_DIR=/scratch/random-fuzzer 
+
+CPP=clang++
+
+all: mb_insert_test mb_lookup_test mb_longest_prefix_test \
+       mb_remove_test mb_iterator_test mb_multi_proc_test \
+       mb_rc_test mb_multi_thread_insert_test mb_memory_only_test
+
+CLANGFLAGS = -Xclang -load -Xclang /scratch/llvm/build/lib/libCDSPass.so
+CFLAGS  = -I. -I$(MABAIN_INSTALL_DIR)/include -Wall -Werror -g -O0 -c -std=c++11
+LDFLAGS = -L$(CDS_DIR) -lmodel -lpthread -lcrypto -L$(MABAIN_INSTALL_DIR)/lib -lmabain
+
+mb_insert_test: $(BASE_DIR)/mb_insert_test.cpp
+       $(CPP) $(CLANGFLAGS) $(CFLAGS) $(BASE_DIR)/mb_insert_test.cpp
+       $(CPP) mb_insert_test.o -o mb_insert_test $(LDFLAGS)
+mb_lookup_test: $(BASE_DIR)/mb_lookup_test.cpp
+       $(CPP) $(CLANGFLAGS) $(CFLAGS) $(BASE_DIR)/mb_lookup_test.cpp
+       $(CPP) mb_lookup_test.o -o mb_lookup_test $(LDFLAGS)
+mb_longest_prefix_test: $(BASE_DIR)/mb_longest_prefix_test.cpp
+       $(CPP) $(CLANGFLAGS) $(CFLAGS) $(BASE_DIR)/mb_longest_prefix_test.cpp
+       $(CPP) mb_longest_prefix_test.o -o mb_longest_prefix_test $(LDFLAGS)
+mb_remove_test: $(BASE_DIR)/mb_remove_test.cpp
+       $(CPP) $(CLANGFLAGS) $(CFLAGS) $(BASE_DIR)/mb_remove_test.cpp
+       $(CPP) mb_remove_test.o -o mb_remove_test $(LDFLAGS)
+mb_iterator_test: $(BASE_DIR)/mb_iterator_test.cpp
+       $(CPP) $(CLANGFLAGS) $(CFLAGS) $(BASE_DIR)/mb_iterator_test.cpp
+       $(CPP) mb_iterator_test.o -o mb_iterator_test $(LDFLAGS)
+mb_multi_proc_test: $(BASE_DIR)/mb_multi_proc_test.cpp
+       $(CPP) $(CLANGFLAGS) $(CFLAGS) $(BASE_DIR)/mb_multi_proc_test.cpp
+       $(CPP) mb_multi_proc_test.o -o mb_multi_proc_test $(LDFLAGS)
+mb_rc_test: $(BASE_DIR)/mb_rc_test.cpp
+       $(CPP) $(CLANGFLAGS) $(CFLAGS) $(BASE_DIR)/mb_rc_test.cpp
+       $(CPP) mb_rc_test.o -o mb_rc_test $(LDFLAGS)
+mb_multi_thread_insert_test: $(BASE_DIR)/mb_multi_thread_insert_test.cpp
+       $(CPP) $(CLANGFLAGS) $(CFLAGS) $(BASE_DIR)/mb_multi_thread_insert_test.cpp
+       $(CPP) mb_multi_thread_insert_test.o -o mb_multi_thread_insert_test $(LDFLAGS)
+mb_memory_only_test: $(BASE_DIR)/mb_memory_only_test.cpp
+       $(CPP) $(CLANGFLAGS) $(CFLAGS) $(BASE_DIR)/mb_memory_only_test.cpp
+       $(CPP) mb_memory_only_test.o -o mb_memory_only_test $(LDFLAGS)
+
+
+build: all $(shell mkdir ./tmp_dir)
+clean:
+       -rm -f ./*.o ./mb_*_test
+       -rm -rf ./tmp_dir
+