Kaydet (Commit) 3dbea3aa authored tarafından Stephan Bergmann's avatar Stephan Bergmann

Pass emit-debuginfo flags into special bridge compilations, if applicable

(i.e., if any of --enable-dbgutil, --enable-debug, or --enable-symbols);
introduce gb_DEBUGINFO_FLAGS for the platform-specific flags

Change-Id: I4306fa30ced57d40d5b1206a0b26a886411118ef
üst 3e7afe00
......@@ -222,6 +222,8 @@ bridges_NON_CALL_EXCEPTIONS_FLAGS := -fnon-call-exceptions
endif
endif
bridges_DEBUGINFO_FLAGS := $(if $(filter-out 0,$(gb_DEBUGLEVEL))$(filter $(true),$(gb_SYMBOL)),$(gb_DEBUGINFO_FLAGS))
$(eval $(call gb_Library_use_libraries,$(gb_CPPU_ENV)_uno,\
cppu \
sal \
......@@ -234,17 +236,17 @@ $(foreach obj,$(bridge_exception_objects),\
$(foreach obj,$(bridge_noncallexception_objects),\
$(eval $(call gb_Library_add_cxxobjects,$(gb_CPPU_ENV)_uno,\
bridges/source/cpp_uno/$(bridges_SELECTED_BRIDGE)/$(obj) \
, $(bridges_NON_CALL_EXCEPTIONS_FLAGS) $(gb_LinkTarget_EXCEPTIONFLAGS))) \
, $(bridges_NON_CALL_EXCEPTIONS_FLAGS) $(gb_LinkTarget_EXCEPTIONFLAGS) $(bridges_DEBUGINFO_FLAGS))) \
)
$(foreach obj,$(bridge_noopt_objects),\
$(eval $(call gb_Library_add_cxxobjects,$(gb_CPPU_ENV)_uno,\
bridges/source/cpp_uno/$(bridges_SELECTED_BRIDGE)/$(obj) \
, $(gb_COMPILERNOOPTFLAGS) $(if $(filter MSC,$(COM)),$(gb_DEBUG_CFLAGS)) $(gb_LinkTarget_EXCEPTIONFLAGS))) \
, $(gb_COMPILERNOOPTFLAGS) $(if $(filter MSC,$(COM)),$(gb_DEBUG_CFLAGS),$(bridges_DEBUGINFO_FLAGS)) $(gb_LinkTarget_EXCEPTIONFLAGS))) \
)
$(foreach obj,$(bridge_noncallexception_noopt_objects),\
$(eval $(call gb_Library_add_cxxobjects,$(gb_CPPU_ENV)_uno,\
bridges/source/cpp_uno/$(bridges_SELECTED_BRIDGE)/$(obj) \
, $(gb_COMPILERNOOPTFLAGS) $(bridges_NON_CALL_EXCEPTIONS_FLAGS) $(gb_LinkTarget_EXCEPTIONFLAGS))) \
, $(gb_COMPILERNOOPTFLAGS) $(bridges_NON_CALL_EXCEPTIONS_FLAGS) $(gb_LinkTarget_EXCEPTIONFLAGS) $(bridges_DEBUGINFO_FLAGS))) \
)
$(foreach obj,$(bridge_cxx_objects),\
$(eval $(call gb_Library_add_cxxobjects,$(gb_CPPU_ENV)_uno,\
......
......@@ -154,9 +154,9 @@ gb_COMPILERNOOPTFLAGS := -O0 -fstrict-aliasing -fstrict-overflow
# Clang does not know -ggdb2 or some other options
ifeq ($(HAVE_GCC_GGDB2),TRUE)
GGDB2=-ggdb2
gb_DEBUGINFO_FLAGS=-ggdb2
else
GGDB2=-g2
gb_DEBUGINFO_FLAGS=-g2
endif
ifeq ($(HAVE_GCC_FINLINE_LIMIT),TRUE)
......@@ -171,7 +171,7 @@ ifeq ($(HAVE_GCC_FNO_DEFAULT_INLINE),TRUE)
FNO_DEFAULT_INLINE=-fno-default-inline
endif
gb_DEBUG_CFLAGS := $(GGDB2) $(FINLINE_LIMIT0) $(FNO_INLINE)
gb_DEBUG_CFLAGS := $(gb_DEBUGINFO_FLAGS) $(FINLINE_LIMIT0) $(FNO_INLINE)
gb_DEBUG_CXXFLAGS := $(FNO_DEFAULT_INLINE)
......
......@@ -262,15 +262,17 @@ gb_LinkTarget_LDFLAGS := \
$(if $(findstring s,$(filter-out --%,$(MAKEFLAGS))),-nologo,) \
$(patsubst %,-LIBPATH:%,$(filter-out .,$(subst ;, ,$(subst \,/,$(ILIB))))) \
gb_DEBUG_CFLAGS := -Zi
gb_DEBUGINFO_FLAGS := -Zi
ifeq ($(VCVER),120)
# Use -FS with VS2013: "Force Synchronous PDB Writes. Forces writes to
# the program database (PDB) file--created by /Zi or /ZI--to be
# serialized through MSPDBSRV.EXE"
gb_DEBUG_CFLAGS+=-FS
gb_DEBUGINFO_FLAGS+=-FS
endif
gb_DEBUG_CFLAGS := $(gb_DEBUGINFO_FLAGS)
# this does not use CFLAGS so it is not overridable
ifeq ($(gb_SYMBOL),$(true))
gb_CFLAGS+=$(gb_DEBUG_CFLAGS)
......
......@@ -75,8 +75,8 @@ gb_LinkTarget_CFLAGS := $(gb_CFLAGS)
gb_LinkTarget_CXXFLAGS := $(gb_CXXFLAGS)
ifeq ($(gb_SYMBOL),$(true))
gb_LinkTarget_CXXFLAGS += $(GGDB2)
gb_LinkTarget_CFLAGS += $(GGDB2)
gb_LinkTarget_CXXFLAGS += $(gb_DEBUGINFO_FLAGS)
gb_LinkTarget_CFLAGS += $(gb_DEBUGINFO_FLAGS)
endif
gb_LinkTarget_INCLUDE +=\
......
......@@ -112,8 +112,8 @@ gb_LinkTarget_CFLAGS := $(gb_CFLAGS) $(gb_CFLAGS_WERROR)
gb_LinkTarget_CXXFLAGS := $(gb_CXXFLAGS) $(gb_CFLAGS_WERROR)
ifeq ($(gb_SYMBOL),$(true))
gb_LinkTarget_CXXFLAGS += $(GGDB2)
gb_LinkTarget_CFLAGS += $(GGDB2)
gb_LinkTarget_CXXFLAGS += $(gb_DEBUGINFO_FLAGS)
gb_LinkTarget_CFLAGS += $(gb_DEBUGINFO_FLAGS)
endif
# note that `cat $(extraobjectlist)` is needed to build with older gcc versions, e.g. 4.1.2 on SLED10
......
......@@ -108,8 +108,8 @@ gb_LinkTarget_CFLAGS := $(gb_CFLAGS)
gb_LinkTarget_CXXFLAGS := $(gb_CXXFLAGS)
ifeq ($(gb_SYMBOL),$(true))
gb_LinkTarget_CXXFLAGS += $(GGDB2)
gb_LinkTarget_CFLAGS += $(GGDB2)
gb_LinkTarget_CXXFLAGS += $(gb_DEBUGINFO_FLAGS)
gb_LinkTarget_CFLAGS += $(gb_DEBUGINFO_FLAGS)
endif
# note that `cat $(extraobjectlist)` is needed to build with older gcc versions, e.g. 4.1.2 on SLED10
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment