Makefile 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. .PHONY: all
  2. # Shared flags etc.
  3. include ../Makefile.conf
  4. LIBIGL_LIB+=-liglbbw -liglcgal
  5. all: obj skeleton-poser
  6. .PHONY: skeleton-poser
  7. ifdef IGL_NO_MOSEK
  8. CFLAGS+=-DIGL_NO_MOSEK
  9. else
  10. # Adjust your mosek paths etc. accordingly
  11. ifndef MOSEKPLATFORM
  12. MOSEKPLATFORM=osx64x86
  13. endif
  14. ifndef MOSEKVERSION
  15. MOSEKVERSION=7
  16. endif
  17. MOSEK=/usr/local/mosek
  18. MOSEK_INC=-I$(MOSEK)/$(MOSEKVERSION)/tools/platform/$(MOSEKPLATFORM)/h
  19. MOSEK_LIB=-L$(MOSEK)/$(MOSEKVERSION)/tools/platform/$(MOSEKPLATFORM)/bin -lmosek64
  20. LIBIGL_LIB+=-liglmosek
  21. endif
  22. CGAL=/opt/local/
  23. CGAL_LIB=-L$(CGAL)/lib -lCGAL -lCGAL_Core -lgmp -lmpfr -lboost_thread-mt -lboost_system-mt
  24. CGAL_INC=-I$(CGAL)/include -I/usr/include/
  25. # This is absolutely necessary for Exact Construction
  26. CGAL_FLAGS=-frounding-math -fsignaling-nans
  27. CFLAGS+=$(CGAL_FLAGS)
  28. INC=$(LIBIGL_INC) $(ANTTWEAKBAR_INC) $(EIGEN3_INC) $(GLUT_INC) ${CGAL_INC} ${TETGEN_INC} $(MOSEK_INC) $(EMBREE_INC)
  29. LIB=$(OPENGL_LIB) $(GLUT_LIB) $(ANTTWEAKBAR_LIB) $(LIBIGL_LIB) ${CGAL_LIB} $(TETGEN_LIB) $(MOSEK_LIB) $(EMBREE_LIB)
  30. CPP_FILES=$(wildcard ./*.cpp)
  31. OBJ_FILES=$(addprefix obj/,$(notdir $(CPP_FILES:.cpp=.o)))
  32. CFLAGS+=-std=c++11 -g
  33. skeleton-poser: obj $(OBJ_FILES)
  34. g++ $(OPENMP) $(AFLAGS) $(CFLAGS) -o skeleton-poser $(LIB) $(OBJ_FILES)
  35. obj:
  36. mkdir -p obj
  37. obj/%.o: %.cpp
  38. g++ $(OPENMP) $(AFLAGS) $(CFLAGS) -c $< -o $@ $(INC)
  39. obj/%.o: %.cpp %.h
  40. g++ $(OPENMP) $(AFLAGS) $(CFLAGS) -c $< -o $@ $(INC)
  41. clean:
  42. rm -f $(OBJ_FILES)
  43. rm -f skeleton-poser