Makefile.linux 987 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. CC=gcc
  2. CXX=g++
  3. INCLUDES=
  4. ARCH=$(shell uname -m)
  5. DEFS=-DZT_ARCH="$(ARCH)" -DZT_OSNAME="linux" -DZT_TRACE
  6. LIBS=
  7. # Uncomment for a release optimized build
  8. CFLAGS=-Wall -O3 -fno-unroll-loops -fstack-protector -pthread $(INCLUDES) -DNDEBUG $(DEFS)
  9. STRIP=strip --strip-all
  10. # Uncomment for a debug build
  11. #CFLAGS=-Wall -g -pthread $(INCLUDES) -DZT_TRACE $(DEFS)
  12. #STRIP=echo
  13. # Uncomment for gprof profile build
  14. #CFLAGS=-Wall -g -pg -pthread $(INCLUDES) $(DEFS)
  15. #STRIP=echo
  16. CXXFLAGS=$(CFLAGS) -fno-rtti
  17. include objects.mk
  18. all: one cli
  19. one: $(OBJS)
  20. $(CXX) $(CXXFLAGS) -o zerotier-one main.cpp $(OBJS) $(LIBS)
  21. $(STRIP) zerotier-one
  22. cli: $(OBJS)
  23. $(CXX) $(CXXFLAGS) -o zerotier-cli cli.cpp $(OBJS) $(LIBS)
  24. $(STRIP) zerotier-cli
  25. selftest: $(OBJS)
  26. $(CXX) $(CXXFLAGS) -o zerotier-selftest selftest.cpp $(OBJS) $(LIBS)
  27. $(STRIP) zerotier-selftest
  28. idtool: $(OBJS)
  29. $(CXX) $(CXXFLAGS) -o zerotier-idtool idtool.cpp $(OBJS) $(LIBS)
  30. $(STRIP) zerotier-idtool
  31. clean:
  32. rm -f $(OBJS) zerotier-*