adb615ed25856498964a60d7380fdc344b479da8
[c11concurrency-benchmarks.git] / mabain / src / Makefile
1 CPP=../../clang++
2 TARGET=libmabain.so
3
4 all: $(TARGET)
5
6 CFLAGS  = -I. -I.. -Iutil -Wall -Werror -c -Wwrite-strings -Wsign-compare -Wcast-align -Wformat-security -fdiagnostics-show-option
7 CFLAGS += -g -ggdb -fPIC -O2 -std=c++11
8
9 CFLAGS += -D__SHM_LOCK__ -D__LOCK_FREE__ -D__SHM_QUEUE__
10 LDFLAGS = -pthread
11
12 SOURCES = $(wildcard *.cpp) $(wildcard util/*.cpp)
13 HEADERS = $(wildcard *.h) $(wildcard util/*.h)
14 OBJECTS = $(SOURCES:.cpp=.o)
15
16 $(TARGET):$(OBJECTS) $(HEADERS)
17         $(CPP) -shared -o $(TARGET) $(OBJECTS) $(LDFLAGS)
18
19 .cpp.o: $(HEADERS) $(SOURCES)
20         $(CPP) $(CFLAGS) $< -o $@
21
22 build: all
23
24 uninstall:
25         -rm -rf $(INSTALLDIR)/include/mabain
26         -rm -f $(INSTALLDIR)/lib/$(TARGET)
27         -rm -f $(INSTALLDIR)/bin/mbc
28
29 clean:
30         -rm -f *.o util/*.o $(TARGET)
31         -make -C unittest clean
32
33 unit-test: all
34         make -C unittest