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