Makefile.linux 892 B

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