Makefile 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. all: prac
  2. CXXFLAGS=-march=native -std=c++17 -Wall -Wno-ignored-attributes -ggdb -O3
  3. LDFLAGS=-ggdb
  4. LDLIBS=-lbsd -lboost_system -lboost_context -lboost_chrono -lboost_thread -lpthread
  5. # Enable this to have all communication logged to stdout
  6. # CXXFLAGS += -DVERBOSE_COMMS
  7. BIN=prac
  8. SRCS=prac.cpp mpcio.cpp preproc.cpp online.cpp mpcops.cpp rdpf.cpp \
  9. cdpf.cpp duoram.cpp cell.cpp
  10. OBJS=$(SRCS:.cpp=.o)
  11. ASMS=$(SRCS:.cpp=.s)
  12. $(BIN): $(OBJS)
  13. g++ $(LDFLAGS) -o $@ $^ $(LDLIBS)
  14. %.s: %.cpp
  15. g++ $(CXXFLAGS) -S -o $@ $^
  16. # Remove the files created by the preprocessing phase
  17. reset:
  18. -rm -f *.p[012].t*
  19. clean: reset
  20. -rm -f $(BIN) $(OBJS) $(ASMS)
  21. depend:
  22. makedepend -Y -- $(CXXFLAGS) -- $(SRCS)
  23. # DO NOT DELETE THIS LINE -- make depend depends on it.
  24. prac.o: mpcio.hpp types.hpp corotypes.hpp mpcio.tcc preproc.hpp options.hpp
  25. prac.o: online.hpp
  26. mpcio.o: mpcio.hpp types.hpp corotypes.hpp mpcio.tcc rdpf.hpp coroutine.hpp
  27. mpcio.o: bitutils.hpp dpf.hpp prg.hpp aes.hpp rdpf.tcc mpcops.hpp cdpf.hpp
  28. mpcio.o: cdpf.tcc
  29. preproc.o: types.hpp coroutine.hpp corotypes.hpp mpcio.hpp mpcio.tcc
  30. preproc.o: preproc.hpp options.hpp rdpf.hpp bitutils.hpp dpf.hpp prg.hpp
  31. preproc.o: aes.hpp rdpf.tcc mpcops.hpp cdpf.hpp cdpf.tcc
  32. online.o: online.hpp mpcio.hpp types.hpp corotypes.hpp mpcio.tcc options.hpp
  33. online.o: mpcops.hpp coroutine.hpp rdpf.hpp bitutils.hpp dpf.hpp prg.hpp
  34. online.o: aes.hpp rdpf.tcc duoram.hpp duoram.tcc cdpf.hpp cdpf.tcc cell.hpp
  35. mpcops.o: mpcops.hpp types.hpp mpcio.hpp corotypes.hpp mpcio.tcc
  36. mpcops.o: coroutine.hpp bitutils.hpp
  37. rdpf.o: rdpf.hpp mpcio.hpp types.hpp corotypes.hpp mpcio.tcc coroutine.hpp
  38. rdpf.o: bitutils.hpp dpf.hpp prg.hpp aes.hpp rdpf.tcc mpcops.hpp
  39. cdpf.o: bitutils.hpp cdpf.hpp mpcio.hpp types.hpp corotypes.hpp mpcio.tcc
  40. cdpf.o: coroutine.hpp dpf.hpp prg.hpp aes.hpp cdpf.tcc
  41. duoram.o: duoram.hpp types.hpp mpcio.hpp corotypes.hpp mpcio.tcc
  42. duoram.o: coroutine.hpp duoram.tcc mpcops.hpp cdpf.hpp dpf.hpp prg.hpp
  43. duoram.o: bitutils.hpp aes.hpp cdpf.tcc rdpf.hpp rdpf.tcc
  44. cell.o: types.hpp duoram.hpp mpcio.hpp corotypes.hpp mpcio.tcc coroutine.hpp
  45. cell.o: duoram.tcc mpcops.hpp cdpf.hpp dpf.hpp prg.hpp bitutils.hpp aes.hpp
  46. cell.o: cdpf.tcc rdpf.hpp rdpf.tcc cell.hpp options.hpp