Merge branch 'accurate' into portable
This commit is contained in:
commit
5d562806b1
1 changed files with 30 additions and 27 deletions
57
Makefile
57
Makefile
|
@ -1,25 +1,28 @@
|
|||
NATIVECC ?= cc
|
||||
NATIVECXX ?= c++
|
||||
WINDRES ?= windres
|
||||
PKG_CONFIG ?= pkg-config
|
||||
NATIVECC = cc
|
||||
NATIVECXX = c++
|
||||
WINDRES = windres
|
||||
|
||||
BUILD_DIRECTORY = game
|
||||
ASSETS_DIRECTORY = assets
|
||||
|
||||
# Default options
|
||||
RENDERER ?= SDLTexture
|
||||
RENDERER = SDLTexture
|
||||
|
||||
ALL_CXXFLAGS = $(CXXFLAGS)
|
||||
ALL_LDFLAGS = $(LDFLAGS)
|
||||
ALL_LIBS = $(LIBS)
|
||||
|
||||
ifeq ($(WINDOWS), 1)
|
||||
EXE_EXTENSION = .exe
|
||||
endif
|
||||
|
||||
ifeq ($(RELEASE), 1)
|
||||
CXXFLAGS = -O3
|
||||
LDFLAGS = -s
|
||||
ALL_CXXFLAGS += -O3
|
||||
ALL_LDFLAGS += -s
|
||||
FILENAME_DEF = CSE2$(EXE_EXTENSION)
|
||||
DOCONFIG_FILENAME_DEF = DoConfig$(EXE_EXTENSION)
|
||||
else
|
||||
CXXFLAGS = -Og -ggdb3
|
||||
ALL_CXXFLAGS += -Og -ggdb3
|
||||
FILENAME_DEF = CSE2_debug$(EXE_EXTENSION)
|
||||
DOCONFIG_FILENAME_DEF = DoConfig_debug$(EXE_EXTENSION)
|
||||
endif
|
||||
|
@ -27,7 +30,7 @@ endif
|
|||
ifeq ($(JAPANESE), 1)
|
||||
DATA_DIRECTORY = $(ASSETS_DIRECTORY)/data_jp
|
||||
|
||||
CXXFLAGS += -DJAPANESE
|
||||
ALL_CXXFLAGS += -DJAPANESE
|
||||
else
|
||||
DATA_DIRECTORY = $(ASSETS_DIRECTORY)/data_en
|
||||
endif
|
||||
|
@ -36,21 +39,21 @@ FILENAME ?= $(FILENAME_DEF)
|
|||
DOCONFIG_FILENAME ?= $(DOCONFIG_FILENAME_DEF)
|
||||
|
||||
ifeq ($(FIX_BUGS), 1)
|
||||
CXXFLAGS += -DFIX_BUGS
|
||||
ALL_CXXFLAGS += -DFIX_BUGS
|
||||
endif
|
||||
|
||||
ifeq ($(DEBUG_SAVE), 1)
|
||||
CXXFLAGS += -DDEBUG_SAVE
|
||||
ALL_CXXFLAGS += -DDEBUG_SAVE
|
||||
endif
|
||||
|
||||
ifeq ($(WARNINGS), 1)
|
||||
CXXFLAGS += -Wall -Wextra -pedantic
|
||||
ALL_CXXFLAGS += -Wall -Wextra -pedantic
|
||||
endif
|
||||
|
||||
ifeq ($(WARNINGS_ALL), 1)
|
||||
ifneq ($(findstring clang,$(CXX)),)
|
||||
# Use clang-specific flag -Weverything
|
||||
CXXFLAGS += -Weverything
|
||||
ALL_CXXFLAGS += -Weverything
|
||||
else
|
||||
# This is indented with spaces because otherwise it doesn't compile (make doesn't like tabs there for some reason)
|
||||
$(warning Couldn\'t activate all warnings (Unsupported compiler))
|
||||
|
@ -58,16 +61,16 @@ ifeq ($(WARNINGS_ALL), 1)
|
|||
endif
|
||||
|
||||
ifeq ($(WARNINGS_FATAL), 1)
|
||||
CXXFLAGS += -Werror
|
||||
ALL_CXXFLAGS += -Werror
|
||||
endif
|
||||
|
||||
CXXFLAGS += -std=c++98 -MMD -MP -MF $@.d `$(PKG_CONFIG) sdl2 --cflags` `$(PKG_CONFIG) freetype2 --cflags`
|
||||
ALL_CXXFLAGS += -std=c++98 -MMD -MP -MF $@.d `pkg-config sdl2 --cflags` `pkg-config freetype2 --cflags`
|
||||
|
||||
ifeq ($(STATIC), 1)
|
||||
LDFLAGS += -static
|
||||
LIBS += `$(PKG_CONFIG) sdl2 --libs --static` `$(PKG_CONFIG) freetype2 --libs --static` -lfreetype
|
||||
ALL_LDFLAGS += -static
|
||||
ALL_LIBS += `pkg-config sdl2 --libs --static` `pkg-config freetype2 --libs --static` -lfreetype
|
||||
else
|
||||
LIBS += `$(PKG_CONFIG) sdl2 --libs` `$(PKG_CONFIG) freetype2 --libs`
|
||||
ALL_LIBS += `pkg-config sdl2 --libs` `pkg-config freetype2 --libs`
|
||||
endif
|
||||
|
||||
SOURCES = \
|
||||
|
@ -220,19 +223,19 @@ endif
|
|||
|
||||
ifeq ($(RENDERER), OpenGL3)
|
||||
SOURCES += src/Backends/Rendering/OpenGL3
|
||||
CXXFLAGS += `$(PKG_CONFIG) glew --cflags`
|
||||
ALL_CXXFLAGS += `pkg-config glew --cflags`
|
||||
|
||||
ifeq ($(STATIC), 1)
|
||||
CXXFLAGS += -DGLEW_STATIC
|
||||
LIBS += `$(PKG_CONFIG) glew --libs --static`
|
||||
ALL_CXXFLAGS += -DGLEW_STATIC
|
||||
ALL_LIBS += `pkg-config glew --libs --static`
|
||||
else
|
||||
LIBS += `$(PKG_CONFIG) glew --libs`
|
||||
ALL_LIBS += `pkg-config glew --libs`
|
||||
endif
|
||||
|
||||
ifeq ($(WINDOWS), 1)
|
||||
LIBS += -lopengl32
|
||||
ALL_LIBS += -lopengl32
|
||||
else
|
||||
LIBS += -lGL
|
||||
ALL_LIBS += -lGL
|
||||
endif
|
||||
else ifeq ($(RENDERER), SDLTexture)
|
||||
SOURCES += src/Backends/Rendering/SDLTexture
|
||||
|
@ -262,17 +265,17 @@ $(BUILD_DIRECTORY)/data: $(DATA_DIRECTORY)
|
|||
$(BUILD_DIRECTORY)/$(FILENAME): $(OBJECTS)
|
||||
@mkdir -p $(@D)
|
||||
@echo Linking $@
|
||||
@$(CXX) $(CXXFLAGS) $(LDFLAGS) $^ -o $@ $(LIBS)
|
||||
@$(CXX) $(ALL_CXXFLAGS) $(ALL_LDFLAGS) $^ -o $@ $(ALL_LIBS)
|
||||
|
||||
obj/$(FILENAME)/%.o: %.cpp
|
||||
@mkdir -p $(@D)
|
||||
@echo Compiling $<
|
||||
@$(CXX) $(CXXFLAGS) $< -o $@ -c
|
||||
@$(CXX) $(ALL_CXXFLAGS) $< -o $@ -c
|
||||
|
||||
obj/$(FILENAME)/src/Resource.o: src/Resource.cpp $(addprefix src/Resource/, $(addsuffix .h, $(RESOURCES)))
|
||||
@mkdir -p $(@D)
|
||||
@echo Compiling $<
|
||||
@$(CXX) $(CXXFLAGS) $< -o $@ -c
|
||||
@$(CXX) $(ALL_CXXFLAGS) $< -o $@ -c
|
||||
|
||||
src/Resource/%.h: $(ASSETS_DIRECTORY)/resources/% obj/bin2h
|
||||
@mkdir -p $(@D)
|
||||
|
|
Loading…
Add table
Reference in a new issue