comparison make/windows/makefiles/defs.make @ 6021:744728c16316

7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds Summary: Build option FULL_DEBUG_SYMBOLS=0 only affects product builds. Reviewed-by: ohair, jmelvin, sspitsyn
author dcubed
date Tue, 03 Apr 2012 09:48:34 -0700
parents d652a62d6e03
children 74c359c4a9e5
comparison
equal deleted inserted replaced
6020:d652a62d6e03 6021:744728c16316
107 endif 107 endif
108 endif 108 endif
109 109
110 # Full Debug Symbols has been enabled on Windows since JDK1.4.1 so 110 # Full Debug Symbols has been enabled on Windows since JDK1.4.1 so
111 # there is no need for an "earlier than JDK7 check". 111 # there is no need for an "earlier than JDK7 check".
112 # Default is enabled with debug info files ZIP'ed to save space. 112 # The Full Debug Symbols (FDS) default for BUILD_FLAVOR == product
113 113 # builds is enabled with debug info files ZIP'ed to save space. For
114 ENABLE_FULL_DEBUG_SYMBOLS ?= 1 114 # BUILD_FLAVOR != product builds, FDS is always enabled, after all a
115 # debug build without debug info isn't very useful.
116 # The ZIP_DEBUGINFO_FILES option only has meaning when FDS is enabled.
117 #
118 # If you invoke a build with FULL_DEBUG_SYMBOLS=0, then FDS will be
119 # disabled for a BUILD_FLAVOR == product build.
120 #
121 # Note: Use of a different variable name for the FDS override option
122 # versus the FDS enabled check is intentional (FULL_DEBUG_SYMBOLS
123 # versus ENABLE_FULL_DEBUG_SYMBOLS). For auto build systems that pass
124 # in options via environment variables, use of distinct variables
125 # prevents strange behaviours. For example, in a BUILD_FLAVOR !=
126 # product build, the FULL_DEBUG_SYMBOLS environment variable will be
127 # 0, but the ENABLE_FULL_DEBUG_SYMBOLS make variable will be 1. If
128 # the same variable name is used, then different values can be picked
129 # up by different parts of the build. Just to be clear, we only need
130 # two variable names because the incoming option value can be
131 # overridden in some situations, e.g., a BUILD_FLAVOR != product
132 # build.
133
134 ifeq ($(BUILD_FLAVOR), product)
135 FULL_DEBUG_SYMBOLS ?= 1
136 ENABLE_FULL_DEBUG_SYMBOLS = $(FULL_DEBUG_SYMBOLS)
137 else
138 # debug variants always get Full Debug Symbols (if available)
139 ENABLE_FULL_DEBUG_SYMBOLS = 1
140 endif
141 _JUNK_ := $(shell \
142 echo >&2 "INFO: ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS)")
115 MAKE_ARGS += ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS) 143 MAKE_ARGS += ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS)
116 144
117 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) 145 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
118 ZIP_DEBUGINFO_FILES ?= 1 146 ZIP_DEBUGINFO_FILES ?= 1
119 else 147 else