-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathmakefile
46 lines (35 loc) · 1.72 KB
/
makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#g++ -O3 -w -o OTExtnsion.out -pthread OTExtnsion/*.cpp util/*.cpp ot/*.cpp -I 'util/Miracl/' -I 'util/' -std=c++11 -pthread -L./ -lmiracl -msse4.1 -pthread -maes -msse2 -mpclmul -fpermissive -fpic
CXX=g++
SHARED_LIB_EXT:=.so
INCLUDE_ARCHIVES_START = -Wl,-whole-archive # linking options, we prefer our generated shared object will be self-contained.
INCLUDE_ARCHIVES_END = -Wl,-no-whole-archive
SHARED_LIB_OPT:=-shared
CPP_FILES := $(wildcard OTExtension/*.cpp)
CPP_FILES += $(wildcard util/*.cpp)
CPP_FILES += $(wildcard ot/*.cpp)
OBJ_FILES := $(patsubst OTExtnsion/%.cpp,obj/%.o,$(CPP_FILES))
OBJ_FILES += $(patsubst util/%.c,obj/%.o,$(CPP_FILES))
OBJ_FILES += $(patsubst ot/%.c,obj/%.o,$(CPP_FILES))
OUT_DIR = obj obj/OTExtnsion obj/util obj/ot
INC = -I../boost_1_60_0 -I../libscapi/lib/ -I../libscapi/lib/OTExtensionBristol -I../libscapi/install/include -Iutil/Miracl -Iutil
CPP_OPTIONS := -std=c++11 $(INC) -msse4.1 -pthread -maes -msse2 -mpclmul -fpermissive -fpic
$(COMPILE.cpp) = g++ -c $(CPP_OPTIONS) -o $@ $<
LINKER_OPTIONS = $(INCLUDE_ARCHIVES_START) ../libscapi/scapi.a ../libscapi/install/lib/libOTExtensionBristol.a ../libscapi/install/lib/libsimpleot.a -lpthread -lgmp -lcrypto -lssl -lboost_system -lntl \
-lboost_thread -lOTExtension -lMaliciousOTExtension -lOTExtensionBristol -ldl -L./ -lmiracl -L../boost_1_60_0/stage/lib -L../install/lib \
$(INCLUDE_ARCHIVES_END)
all:: BMR
BMR:: directories $(SLib)
directories: $(OUT_DIR)
$(OUT_DIR):
mkdir -p $(OUT_DIR)
OTExtnsion.out: $(OBJ_FILES)
$(CXX) OTExtnsion/main.cpp -o $@ $(OBJS) $(LINKER_OPTIONS)
%.o: ot/%.cpp
$(CXX) -c $< -o $@
%.o :util/%.cpp
$(CXX) -c $< -o $@
%.o :OTExtnsion/%.cpp
$(CXX) -c $< -o $@
clean:
rm -rf obj
rm *.a