Makefile_mosek 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. CFLAGS += -DIGL_STATIC_LIBRARY
  2. include Makefile.conf
  3. .PHONY: all
  4. all: libiglmosek
  5. debug: libiglmosek
  6. include Makefile.conf
  7. all: OPTFLAGS += -O3 -DNDEBUG $(OPENMP)
  8. debug: OPTFLAGS += -g -Wall
  9. CFLAGS += $(OPTFLAGS)
  10. .PHONY: libiglmosek
  11. libiglmosek: obj ../lib/libiglmosek.a
  12. SRC_DIR=../include/igl/mosek/
  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. # mosek dependency
  22. # TODO: linux, 32 bit etc
  23. ifndef MOSEKPLATFORM
  24. MOSEKPLATFORM=osx64x86
  25. endif
  26. ifndef MOSEKVERSION
  27. MOSEKVERSION=6
  28. endif
  29. MOSEK=/usr/local/mosek
  30. MOSEK_INC=-I$(MOSEK)/$(MOSEKVERSION)/tools/platform/$(MOSEKPLATFORM)/h
  31. MOSEK_LIB=-L$(MOSEK)/$(MOSEKVERSION)/tools/platform/$(MOSEKPLATFORM)/bin -lmosek64
  32. INC+=$(MOSEK_INC)
  33. obj:
  34. mkdir -p obj
  35. ../lib/libiglmosek.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_FILES)
  42. rm -f ../lib/libiglmosek.a