Guest User

Untitled

a guest
Aug 19th, 2018
182
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. # Directories and files
  2. OBJDIR = ../obj/
  3. BINDIR = ../bin/
  4. SRCS_SDL = /c/Programs/msys64/mingw64/include/SDL/
  5. SRCS_BOOST = /c/Programs/msys64/mingw64/include/boost/
  6. SRCS_YAML = /c/Programs/msys64/mingw64/include/yaml-cpp/
  7. SRCS_YAML_CPP = $(wildcard $(SRCS_YAML)src/*.cpp $(SRCS_YAML)src/contrib/*.cpp)
  8. SRCS = $(wildcard *.cpp */*.cpp */*/*.cpp)
  9. OBJS = $(patsubst %.cpp, $(OBJDIR)%.o, $(notdir $(SRCS))) $(patsubst %.cpp, $(OBJDIR)yaml/%.o, $(notdir $(SRCS_YAML_CPP)))
  10.  
  11. BIN = OpenXcom
  12.  
  13. # Compiler settings
  14. CXXFLAGS ?= -Og
  15. CXXFLAGS += -Wall -std=gnu++11
  16.  
  17. CXXFLAGS += -I$(SRCS_YAML)include -I$(SRCS_BOOST) -I$(SRCS_SDL)
  18.  
  19. LIBS = -lshlwapi -lws2_32 -lopengl32 -lglu32 -mwindows -lmingw32 -lpthread -static -static-libstdc++ -lwinmm -lSDL_gfx -lSDL_mixer -lSDLmain -lSDL_Image -lSDL.dll -lm -luser32 -lgdi32 -lwinmm -ldxguid -lDbgHelp
  20.  
  21. # Rules
  22. all: $(BINDIR)$(BIN)
  23.  
  24. $(BINDIR)$(BIN): $(OBJS)
  25.     $(CXX) $(OBJS) $(LDFLAGS) $(LIBS) -o $(BINDIR)$(BIN)
  26.  
  27. $(OBJDIR)%.o:: %.cpp
  28.     $(CXX) $(CXXFLAGS) -c -o $@ $<
  29.  
  30. $(OBJDIR)%.o:: Basescape/%.cpp
  31.     $(CXX) $(CXXFLAGS) -c -o $@ $<
  32.  
  33. $(OBJDIR)%.o:: Battlescape/%.cpp
  34.     $(CXX) $(CXXFLAGS) -c -o $@ $<
  35.  
  36. $(OBJDIR)%.o:: Engine/%.cpp
  37.     $(CXX) $(CXXFLAGS) -c -o $@ $<
  38.  
  39. $(OBJDIR)%.o:: Engine/Scalers/%.cpp
  40.     $(CXX) $(CXXFLAGS) -c -o $@ $<
  41.  
  42. $(OBJDIR)%.o:: Engine/Adlib/%.cpp
  43.     $(CXX) $(CXXFLAGS) -c -o $@ $<
  44.  
  45. $(OBJDIR)%.o:: Geoscape/%.cpp
  46.     $(CXX) $(CXXFLAGS) -c -o $@ $<
  47.  
  48. $(OBJDIR)%.o:: Interface/%.cpp
  49.     $(CXX) $(CXXFLAGS) -c -o $@ $<
  50.  
  51. $(OBJDIR)%.o:: Menu/%.cpp
  52.     $(CXX) $(CXXFLAGS) -c -o $@ $<
  53.  
  54. $(OBJDIR)%.o:: Mod/%.cpp
  55.     $(CXX) $(CXXFLAGS) -c -o $@ $<
  56.  
  57. $(OBJDIR)%.o:: Savegame/%.cpp
  58.     $(CXX) $(CXXFLAGS) -c -o $@ $<
  59.  
  60. $(OBJDIR)%.o:: Ufopaedia/%.cpp
  61.     $(CXX) $(CXXFLAGS) -c -o $@ $<
  62.  
  63. $(OBJDIR)yaml/%.o:: $(SRCS_YAML)src/%.cpp
  64.     @mkdir -p $(OBJDIR)yaml
  65.     $(CXX) $(CXXFLAGS) -c -o $@ $<
  66.  
  67. $(OBJDIR)yaml/%.o:: $(SRCS_YAML)src/contrib/%.cpp
  68.     @mkdir -p $(OBJDIR)yaml
  69.     $(CXX) $(CXXFLAGS) -c -o $@ $<
  70.  
  71. clean:
  72.     rm -f $(BINDIR)$(BIN) $(OBJDIR)*.o
  73.  
  74. .PHONY: all clean
RAW Paste Data