Makefile_xml 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. include Makefile.conf
  2. .PHONY: all
  3. all:
  4. debug:
  5. #all: libiglxml
  6. #debug: libiglxml
  7. include Makefile.conf
  8. all: CFLAGS += -O3 -DNDEBUG
  9. debug: CFLAGS += -g -Wall
  10. .PHONY: libiglxml
  11. libiglxml: obj ../lib/libiglxml.a
  12. SRC_DIR=../include/igl/xml/
  13. CPP_FILES=$(wildcard $(SRC_DIR)*.cpp)
  14. OBJ_FILES=$(addprefix obj/,$(notdir $(CPP_FILES:.cpp=.o)))
  15. # include igl headers
  16. INC+=-I../include/
  17. # EXPECTS THAT CFLAGS IS ALREADY SET APPROPRIATELY
  18. # Eigen dependency
  19. EIGEN3_INC=-I$(DEFAULT_PREFIX)/include/eigen3 -I$(DEFAULT_PREFIX)/include/eigen3/unsupported
  20. INC+=$(EIGEN3_INC)
  21. #AntTweakbar dependency
  22. ANTTWEAKBAR_INC=-I../external/AntTweakBar/include
  23. # xml dependency
  24. # TODO: linux, 32 bit etc
  25. TINYXML2=../external/tinyxml2
  26. TINYXML2_INC=-I$(TINYXML2)
  27. #TINYXML2_LIB=-L$(TINYXML2) -ltinyxml2
  28. INC+=$(TINYXML2_INC) $(ANTTWEAKBAR_INC)
  29. # AntTweakBar dependency
  30. ANTTWEAKBAR_INC=-I../external/AntTweakBar/include
  31. INC+=$(ANTTWEAKBAR_INC)
  32. #CFLAGS+=-std=c++11
  33. obj:
  34. mkdir -p obj
  35. ../lib/libiglxml.a: $(OBJ_FILES)
  36. rm -f $@
  37. ar cqs $@ $(OBJ_FILES)
  38. obj/%.o: $(SRC_DIR)/%.cpp $(SRC_DIR)/%.h
  39. g++ $(AFLAGS) $(CFLAGS) -c -o $@ $< $(INC)
  40. clean:
  41. rm -f obj/*.o
  42. rm -f ../lib/libiglxml.a