Makefile 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. .PHONY: all
  2. # Shared flags etc.
  3. include ../../build/Makefile.conf
  4. all: obj example
  5. .PHONY: example
  6. LIBIGL=../../
  7. LIBIGL_INC=-I$(LIBIGL)/include
  8. LIBIGL_LIB=-L$(LIBIGL)/lib -ligl
  9. EIGEN3_INC=-I/opt/local/include/eigen3 -I/opt/local/include/eigen3/unsupported
  10. ANTTWEAKBAR_INC=-I$(LIBIGL)/external/AntTweakBar/include
  11. ANTTWEAKBAR_LIB=-L$(LIBIGL)/external/AntTweakBar/lib -lAntTweakBar -framework AppKit
  12. CARBON_LIB=-framework Carbon
  13. ## Use free glut for mouse scrolling
  14. #FREE_GLUT=/opt/local/
  15. #FREE_GLUT_INC=-I$(FREE_GLUT)/include
  16. #FREE_GLUT_LIB=-L$(FREE_GLUT)/lib -lglut
  17. #GLUT_LIB=$(FREE_GLUT_LIB)
  18. #GLUT_INC=$(FREE_GLUT_INC)
  19. GLUT_LIB=-framework GLUT
  20. GLUT_INC=
  21. INC=$(LIBIGL_INC) $(ANTTWEAKBAR_INC) $(EIGEN3_INC) $(MATLAB_INC) $(GLUT_INC)
  22. LIB=$(OPENGL_LIB) $(GLUT_LIB) $(ANTTWEAKBAR_LIB) $(LIBIGL_LIB) $(MATLAB_LIB) $(CARBON_LIB)
  23. CPP_FILES=$(wildcard ./*.cpp)
  24. OBJ_FILES=$(addprefix obj/,$(notdir $(CPP_FILES:.cpp=.o)))
  25. CFLAGS+=-g -std=c++11
  26. example: obj $(OBJ_FILES)
  27. g++ $(OPENMP) $(AFLAGS) $(CFLAGS) -o example $(OBJ_FILES) $(LIB)
  28. obj:
  29. mkdir -p obj
  30. obj/%.o: %.cpp
  31. g++ $(OPENMP) $(AFLAGS) $(CFLAGS) -c $< -o $@ $(INC)
  32. obj/%.o: %.cpp %.h
  33. g++ $(OPENMP) $(AFLAGS) $(CFLAGS) -c $< -o $@ $(INC)
  34. clean:
  35. rm -f $(OBJ_FILES)
  36. rm -f example