Makefile 1.2 KB

123456789101112131415161718192021222324252627282930313233343536
  1. QT_FLAGS =-fPIC `pkg-config --cflags --libs Qt5OpenGL`
  2. QT_LIB =`pkg-config --libs Qt5OpenGL` -lGL -lGLU
  3. QT_MOC = moc
  4. GPP = g++
  5. FLAGS = -g -O3 -Isrc
  6. QT_FILES = mainwindow input input_physics input_time input_geometry input_geometry_curves view_solution view_solution_geometry input_initial_state input_sources input_view view
  7. QT_MOC_FILES = mainwindow input_physics input view_solution input_view input_geometry
  8. MATH_FILES = poly3 algo spline
  9. SRC_FILES = physics time geometry kernel initial_state source
  10. QT_OBJS = $(addprefix obj/qt/,$(addsuffix .o,$(QT_FILES)))
  11. QT_MOCS = $(addprefix moc/,$(addsuffix .cpp,$(QT_MOC_FILES)))
  12. MATH_OBJS = $(addprefix obj/math/,$(addsuffix .o,$(MATH_FILES)))
  13. SRC_OBJS = $(addprefix obj/,$(addsuffix .o,$(SRC_FILES)))
  14. EXE = RichardsFastSlow
  15. all : $(EXE)
  16. $(EXE) : src/main.cpp $(MATH_OBJS) $(SRC_OBJS) $(QT_MOCS) $(QT_OBJS)
  17. $(GPP) $(FLAGS) $(QT_FLAGS) $^ $(QT_LIB) -o $@
  18. obj/qt/%.o : src/qt/%.cpp src/qt/%.hpp
  19. $(GPP) $(FLAGS) $(QT_FLAGS) -c $< -o $@
  20. obj/math/%.o : src/math/%.cpp src/math/%.hpp
  21. $(GPP) $(FLAGS) -c $< -o $@
  22. obj/%.o : src/%.cpp src/%.hpp
  23. $(GPP) $(FLAGS) -c $< -o $@
  24. moc/%.cpp : src/qt/%.hpp
  25. $(QT_MOC) $< -o $@
  26. clean:
  27. -$(RM) $(EXE) moc/* obj/*.o obj/math/*.o obj/qt/*.o src/*~ src/qt/*~ src/math/*~