Makefile 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. # Makefile for kind, the backup tool
  2. #
  3. OBJECTS = kind.o filetools.o FileName.o DateTime.o stringtools.o KindConfig.o Lexer.o rulecomp.o
  4. LOPT := $(OPT)
  5. #-static
  6. COPT := $(OPT) -std=c++11
  7. LIBS :=
  8. COPT := $(COPT) -g -Wall -fno-strict-aliasing
  9. # source code beautifier
  10. ASTYLE := astyle
  11. # format options for beautifier
  12. ASTYLE_OPT = --style=gnu --unpad-paren --pad-header --pad-oper --indent-namespaces --indent=spaces=2 --convert-tabs --align-pointer=type --align-reference=type --remove-brackets
  13. %.o:%.c
  14. $(CC) $(COPT) $(INCLUDE) -c $*.c
  15. %.o:%.cpp
  16. $(CXX) $(COPT) $(INCLUDE) -c $*.cpp
  17. %: %.o
  18. $(CXX) $(COPT) $(LOPT) $(LIBRARY) -o $* $*.o $(LIBS)
  19. %:%.cpp
  20. $(CXX) $(COPT) $(INCLUDE) -c $*.cpp
  21. $(CXX) $(LIBRARY) $(LOPT) -o $* $*.o $(LIBS)
  22. %.cpp:%.ag
  23. AppGen $*.ag $*.cpp
  24. kind: $(OBJECTS)
  25. $(CXX) $(LOPT) $(LIBRARY) -o kind $(OBJECTS) $(LIBS)
  26. static: kind
  27. $(CXX) $(LOPT) $(LIBRARY) -static -o kind_static $(OBJECTS) $(LIBS)
  28. strip kind_static
  29. cp kind_static ../bin/kind
  30. clean:
  31. -rm -f *.o depend *~ *orig
  32. dep: kind.cpp
  33. $(CXX) -M $(COPT) $(INCLUDE) *.cpp > depend
  34. format:
  35. $(ASTYLE) $(ASTYLE_OPT) *.cpp *.ag *.h
  36. -include depend