Update to latest changes. maybe broken release target
This commit is contained in:
parent
3d5fe6a4ff
commit
8d3e059a9c
@ -27,6 +27,7 @@ INCLUDE_DIRS::=include
|
|||||||
CXXFLAGS::=-g -std=c++17 -Wall -pedantic -Wextra
|
CXXFLAGS::=-g -std=c++17 -Wall -pedantic -Wextra
|
||||||
EXT::=cpp
|
EXT::=cpp
|
||||||
MAIN_EXECUTABLE::=tester
|
MAIN_EXECUTABLE::=tester
|
||||||
|
RELEASE?=0
|
||||||
|
|
||||||
ifneq ($(WINDOWS),1)
|
ifneq ($(WINDOWS),1)
|
||||||
CXX::=g++
|
CXX::=g++
|
||||||
@ -48,11 +49,15 @@ else
|
|||||||
MAIN_EXECUTABLE::=$(MAIN_EXECUTABLE).exe
|
MAIN_EXECUTABLE::=$(MAIN_EXECUTABLE).exe
|
||||||
endif
|
endif
|
||||||
|
|
||||||
all: CXXFLAGS+=-O0
|
ifeq ($(RELEASE),1)
|
||||||
release: CXXFLAGS+=-O2
|
#a lot of false strict aliasing warnings from gcc 9
|
||||||
|
CXXFLAGS+=-O2 -Wno-strict-aliasing
|
||||||
memchk: LDFLAGS+=-fsanitize=address -fno-omit-frame-pointer -fno-optimize-sibling-calls
|
else ifeq ($(MEMCHK),1)
|
||||||
memchk: CXXFLAGS+=-O0 -fsanitize=address -fno-omit-frame-pointer -fno-optimize-sibling-calls
|
LDFLAGS+=-fsanitize=address -fno-omit-frame-pointer -fno-optimize-sibling-calls
|
||||||
|
CXXFLAGS+=-O0 -g3 -ggdb -fsanitize=address -fno-omit-frame-pointer -fno-optimize-sibling-calls
|
||||||
|
else
|
||||||
|
CXXFLAGS+=-O0 -g3 -ggdb
|
||||||
|
endif
|
||||||
|
|
||||||
ifeq ($(OS),Windows_NT)
|
ifeq ($(OS),Windows_NT)
|
||||||
mkdir=mkdir $(subst /,\,$(1)) > NUL 2>&1
|
mkdir=mkdir $(subst /,\,$(1)) > NUL 2>&1
|
||||||
@ -74,17 +79,14 @@ OBJECTS::=$(addprefix $(OBJDIR)/,$(subst \,.,$(subst /,.,$(addsuffix .o,$(SOURCE
|
|||||||
|
|
||||||
.PHONY: all
|
.PHONY: all
|
||||||
all: $(MAIN_EXECUTABLE)
|
all: $(MAIN_EXECUTABLE)
|
||||||
.PHONY: memchk
|
ifeq ($(RELEASE),1)
|
||||||
memchk: all
|
$(CXX) $(LDFLAGS) $^ -o "$(basename $(MAIN_EXECUTABLE))" $(LDLIBS)
|
||||||
|
$(STRIP) --strip-all "$(MAIN_EXECUTABLE)"
|
||||||
|
endif
|
||||||
|
|
||||||
$(MAIN_EXECUTABLE): $(OBJECTS)
|
$(MAIN_EXECUTABLE): $(OBJECTS)
|
||||||
$(CXX) $(LDFLAGS) $^ -o "$(basename $@)" $(LDLIBS)
|
$(CXX) $(LDFLAGS) $^ -o "$(basename $@)" $(LDLIBS)
|
||||||
|
|
||||||
.PHONY: release
|
|
||||||
release: $(OBJECTS)
|
|
||||||
$(CXX) $(LDFLAGS) $^ -o "$(basename $(MAIN_EXECUTABLE))" $(LDLIBS)
|
|
||||||
$(STRIP) --strip-all "$(MAIN_EXECUTABLE)"
|
|
||||||
|
|
||||||
define GENERATE_OBJECTS
|
define GENERATE_OBJECTS
|
||||||
|
|
||||||
$$(OBJDIR)/$(subst \,.,$(subst /,.,$(1))).%.o: $(1)/%
|
$$(OBJDIR)/$(subst \,.,$(subst /,.,$(1))).%.o: $(1)/%
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user