silly makefile stuff
makefile realization makefile insanity makefile madness readme update to fit in with actual makefile
This commit is contained in:
parent
08f6ee7161
commit
84972ed9bb
@ -15,6 +15,8 @@ SRC_DIR := src
|
|||||||
BIN_DIR := bin
|
BIN_DIR := bin
|
||||||
DBG_DIR := $(BIN_DIR)/debug
|
DBG_DIR := $(BIN_DIR)/debug
|
||||||
RLS_DIR := $(BIN_DIR)/release
|
RLS_DIR := $(BIN_DIR)/release
|
||||||
|
DBG_EXEC := $(DBG_DIR)/debug
|
||||||
|
RLS_STRIPPED_EXEC := $(RLS_DIR)/tuimine
|
||||||
|
|
||||||
# sources and objects
|
# sources and objects
|
||||||
SRCS := $(wildcard $(SRC_DIR)/*.cpp)
|
SRCS := $(wildcard $(SRC_DIR)/*.cpp)
|
||||||
@ -29,22 +31,19 @@ $(shell mkdir -p $(BUILD_DIR))
|
|||||||
# phony rules
|
# phony rules
|
||||||
.PHONY := all debug release clean
|
.PHONY := all debug release clean
|
||||||
|
|
||||||
all: debug
|
all: release
|
||||||
|
|
||||||
debug: $(DBG_DIR)/debug
|
debug: $(DBG_EXEC)
|
||||||
release: $(RLS_DIR)/release $(RLS_DIR)/release_stripped
|
release: $(RLS_STRIPPED_EXEC)
|
||||||
both: debug release
|
both: debug release
|
||||||
|
|
||||||
# linking
|
# linking
|
||||||
$(DBG_DIR)/debug: $(DBG_OBJS)
|
$(DBG_EXEC): $(DBG_OBJS)
|
||||||
$(CXX) -o $@ $^ $(DBG_LDFLAGS)
|
$(CXX) -o $@ $^ $(DBG_LDFLAGS)
|
||||||
|
|
||||||
$(RLS_DIR)/release_stripped: $(RLS_OBJS)
|
$(RLS_STRIPPED_EXEC): $(RLS_OBJS)
|
||||||
$(CXX) -o $@ $^ $(RLS_LDFLAGS)
|
$(CXX) -o $@ $^ $(RLS_LDFLAGS)
|
||||||
|
|
||||||
$(RLS_DIR)/release: $(RLS_OBJS)
|
|
||||||
$(CXX) -o $@ $^ $(LDFLAGS)
|
|
||||||
|
|
||||||
# compiling
|
# compiling
|
||||||
$(BUILD_DIR)/debug_%.o: $(SRC_DIR)/%.cpp
|
$(BUILD_DIR)/debug_%.o: $(SRC_DIR)/%.cpp
|
||||||
$(CXX) -c -o $@ $< $(DBG_CXXFLAGS)
|
$(CXX) -c -o $@ $< $(DBG_CXXFLAGS)
|
||||||
|
15
Makefile.win
15
Makefile.win
@ -16,6 +16,8 @@ BIN_DIR := bin
|
|||||||
DBG_DIR := $(BIN_DIR)\debug
|
DBG_DIR := $(BIN_DIR)\debug
|
||||||
RLS_DIR := $(BIN_DIR)\release
|
RLS_DIR := $(BIN_DIR)\release
|
||||||
LIB_DIR := lib
|
LIB_DIR := lib
|
||||||
|
DBG_EXEC := $(DBG_DIR)\debug.exe
|
||||||
|
RLS_STRIPPED_EXEC := $(RLS_DIR)\tuimine.exe
|
||||||
|
|
||||||
# sources and objects
|
# sources and objects
|
||||||
LIBS := $(wildcard $(LIB_DIR)/*.dll)
|
LIBS := $(wildcard $(LIB_DIR)/*.dll)
|
||||||
@ -33,25 +35,22 @@ $(shell if not exist $(BUILD_DIR) mkdir $(BUILD_DIR))
|
|||||||
# phony rules
|
# phony rules
|
||||||
.PHONY := all debug release clean libraries_debug libraries_release both
|
.PHONY := all debug release clean libraries_debug libraries_release both
|
||||||
|
|
||||||
all: debug
|
all: release
|
||||||
|
|
||||||
debug: $(DBG_DIR)/debug.exe libraries_debug
|
debug: $(DBG_EXEC) libraries_debug
|
||||||
release: $(RLS_DIR)/release_stripped.exe $(RLS_DIR)/release.exe libraries_release
|
release: $(RLS_STRIPPED_EXEC) libraries_release
|
||||||
both: debug release
|
both: debug release
|
||||||
|
|
||||||
libraries_debug: $(LIBS_DBG)
|
libraries_debug: $(LIBS_DBG)
|
||||||
libraries_release: $(LIBS_RLS)
|
libraries_release: $(LIBS_RLS)
|
||||||
|
|
||||||
# linking
|
# linking
|
||||||
$(DBG_DIR)/debug.exe: $(DBG_OBJS)
|
$(DBG_EXEC): $(DBG_OBJS)
|
||||||
$(CXX) -o $@ $^ $(DBG_LDFLAGS)
|
$(CXX) -o $@ $^ $(DBG_LDFLAGS)
|
||||||
|
|
||||||
$(RLS_DIR)/release_stripped.exe: $(RLS_OBJS)
|
$(RLS_STRIPPED_EXEC): $(RLS_OBJS)
|
||||||
$(CXX) -o $@ $^ $(RLS_STRP_LDFLAGS)
|
$(CXX) -o $@ $^ $(RLS_STRP_LDFLAGS)
|
||||||
|
|
||||||
$(RLS_DIR)/release.exe: $(RLS_OBJS)
|
|
||||||
$(CXX) -o $@ $^ $(LDFLAGS)
|
|
||||||
|
|
||||||
# compiling
|
# compiling
|
||||||
$(BUILD_DIR)/debug_%.o: $(SRC_DIR)/%.cpp
|
$(BUILD_DIR)/debug_%.o: $(SRC_DIR)/%.cpp
|
||||||
$(CXX) -c -o $@ $< $(DBG_CXXFLAGS)
|
$(CXX) -c -o $@ $< $(DBG_CXXFLAGS)
|
||||||
|
@ -26,8 +26,6 @@ You can't flag already revealed cells.
|
|||||||
|
|
||||||
## Compilation
|
## Compilation
|
||||||
|
|
||||||
By default, the Makefile compiles in debug mode, so to compile both, use `make both`.
|
|
||||||
|
|
||||||
### Windows
|
### Windows
|
||||||
|
|
||||||
For compiling on Windows, you need MSYS2 and MinGW-w64.
|
For compiling on Windows, you need MSYS2 and MinGW-w64.
|
||||||
|
Loading…
x
Reference in New Issue
Block a user