Separate LDFLAGS and LDLIBS. Add debug settings
This commit is contained in:
@@ -27,6 +27,8 @@ LIBDIRS::=lib
|
||||
INCLUDE_DIRS::=include
|
||||
CFLAGS::=-std=c18 -Wall -pedantic -Wextra
|
||||
CXXFLAGS::=-std=c++17 -Wall -pedantic -Wextra
|
||||
DEBUG_CFLAGS::=
|
||||
DEBUG_CXXFLAGS::=
|
||||
EXT::=cpp
|
||||
LANG::=$(EXT)
|
||||
MAIN_LIBRARY::=tester
|
||||
@@ -43,6 +45,8 @@ ifneq ($(WINDOWS),1)
|
||||
CXX::=g++
|
||||
LDLIBS::=
|
||||
LDFLAGS::=
|
||||
DEBUG_LDLIBS::=
|
||||
DEBUG_LDFLAGS::=
|
||||
STRIP::=strip
|
||||
RANLIB::=ranlib
|
||||
AR::=ar
|
||||
@@ -58,6 +62,8 @@ else #windows
|
||||
CXX::=$(MINGW_PREFIX)g++
|
||||
LDLIBS::=
|
||||
LDFLAGS::=-static-libgcc -static-libstdc++
|
||||
DEBUG_LDLIBS::=
|
||||
DEBUG_LDFLAGS::=-static-libgcc -static-libstdc++
|
||||
STRIP::=$(MINGW_PREFIX)strip
|
||||
RANLIB::=$(MINGW_PREFIX)ranlib
|
||||
AR::=$(MINGW_PREFIX)ar
|
||||
@@ -113,9 +119,15 @@ endif
|
||||
#setup compiler and flags based on language
|
||||
ifeq ($(LANG),cpp)
|
||||
COMPILER_FLAGS::=$(CXXFLAGS)
|
||||
ifneq ($(RELEASE),1)
|
||||
COMPILER_FLAGS+=$(DEBUG_CXXFLAGS)
|
||||
endif
|
||||
COMPILER::=$(CXX)
|
||||
else ifeq ($(LANG),c)
|
||||
COMPILER_FLAGS::=$(CFLAGS)
|
||||
ifneq ($(RELEASE),1)
|
||||
COMPILER_FLAGS+=$(DEBUG_CFLAGS)
|
||||
endif
|
||||
COMPILER::=$(CC)
|
||||
endif
|
||||
|
||||
@@ -154,7 +166,13 @@ INTERNAL_SOURCES::=$(SOURCES) $(foreach source,$(SOURCE_DIRS),$(foreach ext,$(EX
|
||||
STATIC_OBJECTS::=$(addprefix $(OBJDIR)/static/,$(subst \,.,$(subst /,.,$(addsuffix .o,$(INTERNAL_SOURCES)))))
|
||||
SHARED_OBJECTS::=$(addprefix $(OBJDIR)/shared/,$(subst \,.,$(subst /,.,$(addsuffix .o,$(INTERNAL_SOURCES)))))
|
||||
ALL_COMPILEFLAGS=$(COMPILER_FLAGS) $(INTERNAL_COMPILERFLAGS)
|
||||
ALL_LINKFLAGS=$(INTERNAL_LINKFLAGS) $(LDFLAGS)
|
||||
ifeq ($(RELEASE),1)
|
||||
ALL_LINKFLAGS=$(INTERNAL_LINKFLAGS) $(LDFLAGS)
|
||||
ALL_LDLIBS=$(LDLIBS)
|
||||
else
|
||||
ALL_LINKFLAGS=$(INTERNAL_LINKFLAGS) $(LDFLAGS) $(DEBUG_LDFLAGS)
|
||||
ALL_LDLIBS=$(LDLIBS) $(DEBUG_LDLIBS)
|
||||
endif
|
||||
|
||||
.PHONY: cflags-update
|
||||
cflags-update:
|
||||
@@ -178,7 +196,7 @@ flags-update: cflags-update ldflags-update
|
||||
|
||||
#target for shared library
|
||||
$(INTERNAL_SHARED_LIBRARY): $(SHARED_OBJECTS) $(LDFLAGS_TMPFILE)
|
||||
$(COMPILER) -shared -o "$@" $(SHARED_OBJECTS) -fPIC $(ALL_LINKFLAGS) $(LDLIBS)
|
||||
$(COMPILER) -shared -o "$@" $(SHARED_OBJECTS) -fPIC $(ALL_LINKFLAGS) $(ALL_LDLIBS)
|
||||
ifeq ($(RELEASE),1)
|
||||
$(STRIP) --strip-debug "$@"
|
||||
endif
|
||||
|
||||
Reference in New Issue
Block a user