Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # Directories and files
- OBJDIR = ../obj/
- BINDIR = ../bin/
- ifeq ($(MSYSTEM),MINGW64)
- SRCS_SDL = /mingw64/include/SDL/
- SRCS_BOOST = /mingw64/include/boost/
- else
- SRCS_SDL = /mingw32/include/SDL/
- SRCS_BOOST = /mingw32/include/boost/
- endif
- SRCS = $(wildcard *.cpp */*.cpp */*/*.cpp)
- OBJS = $(patsubst %.cpp, $(OBJDIR)%.o, $(notdir $(SRCS)))
- BIN = OpenXcom
- PKG-CONFIG = pkg-config
- # Compiler settings
- CXXFLAGS ?= -Og
- CXXFLAGS += -Wall -std=gnu++11
- CXXFLAGS += -I$(SRCS_BOOST) -I$(SRCS_SDL)
- LDFLAGS += -Wl,-subsystem,windows
- LIBS = $(shell $(PKG-CONFIG) --libs sdl yaml-cpp) -lSDL_gfx -lSDL_mixer -lSDL_image -lopengl32 -lshlwapi
- # Rules
- all: $(BINDIR)$(BIN)
- $(BINDIR)$(BIN): $(OBJS)
- $(CXX) $(OBJS) $(LDFLAGS) $(LIBS) -o $(BINDIR)$(BIN)
- $(OBJDIR)%.o:: %.cpp
- $(CXX) $(CXXFLAGS) -c -o $@ $<
- $(OBJDIR)%.o:: Basescape/%.cpp
- $(CXX) $(CXXFLAGS) -c -o $@ $<
- $(OBJDIR)%.o:: Battlescape/%.cpp
- $(CXX) $(CXXFLAGS) -c -o $@ $<
- $(OBJDIR)%.o:: Engine/%.cpp
- $(CXX) $(CXXFLAGS) -c -o $@ $<
- $(OBJDIR)%.o:: Engine/Scalers/%.cpp
- $(CXX) $(CXXFLAGS) -c -o $@ $<
- $(OBJDIR)%.o:: Engine/Adlib/%.cpp
- $(CXX) $(CXXFLAGS) -c -o $@ $<
- $(OBJDIR)%.o:: Geoscape/%.cpp
- $(CXX) $(CXXFLAGS) -c -o $@ $<
- $(OBJDIR)%.o:: Interface/%.cpp
- $(CXX) $(CXXFLAGS) -c -o $@ $<
- $(OBJDIR)%.o:: Menu/%.cpp
- $(CXX) $(CXXFLAGS) -c -o $@ $<
- $(OBJDIR)%.o:: Mod/%.cpp
- $(CXX) $(CXXFLAGS) -c -o $@ $<
- $(OBJDIR)%.o:: Savegame/%.cpp
- $(CXX) $(CXXFLAGS) -c -o $@ $<
- $(OBJDIR)%.o:: Ufopaedia/%.cpp
- $(CXX) $(CXXFLAGS) -c -o $@ $<
- clean:
- rm -f $(BINDIR)$(BIN) $(OBJDIR)*.o
- .PHONY: all clean
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement