174 endif 175 $(eval $(call print_info, "ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS)")) 176 # since objcopy is optional, we set ZIP_DEBUGINFO_FILES later 177 178 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) 179 # Default OBJCOPY comes from GNU Binutils on Linux 180 ifeq ($(CROSS_COMPILE_ARCH),) 181 DEF_OBJCOPY=/usr/bin/objcopy 182 else 183 # Assume objcopy is part of the cross-compilation toolset 184 ifneq ($(ALT_COMPILER_PATH),) 185 DEF_OBJCOPY=$(ALT_COMPILER_PATH)/objcopy 186 endif 187 endif 188 OBJCOPY=$(shell test -x $(DEF_OBJCOPY) && echo $(DEF_OBJCOPY)) 189 ifneq ($(ALT_OBJCOPY),) 190 $(eval $(call print_info, "ALT_OBJCOPY=$(ALT_OBJCOPY)")) 191 OBJCOPY=$(shell test -x $(ALT_OBJCOPY) && echo $(ALT_OBJCOPY)) 192 endif 193 194 ifeq ($(OBJCOPY),) 195 $(eval $(call print_info, "no objcopy cmd found so cannot create .debuginfo files. You may need to set ALT_OBJCOPY.")) 196 ENABLE_FULL_DEBUG_SYMBOLS=0 197 $(eval $(call print_info, "ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS)")) 198 else 199 $(eval $(call print_info, "$(OBJCOPY) cmd found so will create .debuginfo files.")) 200 201 # Library stripping policies for .debuginfo configs: 202 # all_strip - strips everything from the library 203 # min_strip - strips most stuff from the library; leaves minimum symbols 204 # no_strip - does not strip the library at all 205 # 206 # Oracle security policy requires "all_strip". A waiver was granted on 207 # 2011.09.01 that permits using "min_strip" in the Java JDK and Java JRE. 208 # 209 # Currently, STRIP_POLICY is only used when Full Debug Symbols is enabled. 210 # 211 STRIP_POLICY ?= min_strip 212 213 $(eval $(call print_info, "STRIP_POLICY=$(STRIP_POLICY)")) 214 215 ZIP_DEBUGINFO_FILES ?= 1 216 217 $(eval $(call print_info, "ZIP_DEBUGINFO_FILES=$(ZIP_DEBUGINFO_FILES)")) 218 endif 219 endif # ENABLE_FULL_DEBUG_SYMBOLS=1 220 endif # BUILD_FLAVOR 221 222 JDK_INCLUDE_SUBDIR=linux 223 224 # Library suffix 225 LIBRARY_SUFFIX=so 226 227 EXPORT_LIST += $(EXPORT_DOCS_DIR)/platform/jvmti/jvmti.html 228 229 # client and server subdirectories have symbolic links to ../libjsig.so 230 EXPORT_LIST += $(EXPORT_LIB_ARCH_DIR)/libjsig.$(LIBRARY_SUFFIX) 231 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) 232 ifeq ($(ZIP_DEBUGINFO_FILES),1) 233 EXPORT_LIST += $(EXPORT_LIB_ARCH_DIR)/libjsig.diz 234 else 235 EXPORT_LIST += $(EXPORT_LIB_ARCH_DIR)/libjsig.debuginfo 236 endif 237 endif 238 EXPORT_SERVER_DIR = $(EXPORT_LIB_ARCH_DIR)/server 239 EXPORT_CLIENT_DIR = $(EXPORT_LIB_ARCH_DIR)/client 240 EXPORT_MINIMAL_DIR = $(EXPORT_LIB_ARCH_DIR)/minimal 241 242 ifeq ($(findstring true, $(JVM_VARIANT_SERVER) $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK) $(JVM_VARIANT_CORE)), true) 243 EXPORT_LIST += $(EXPORT_SERVER_DIR)/Xusage.txt 244 EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.$(LIBRARY_SUFFIX) 245 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) 246 ifeq ($(ZIP_DEBUGINFO_FILES),1) 247 EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.diz 248 else 249 EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.debuginfo 250 endif 251 endif 252 endif 253 254 ifeq ($(JVM_VARIANT_CLIENT),true) 255 EXPORT_LIST += $(EXPORT_CLIENT_DIR)/Xusage.txt 256 EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.$(LIBRARY_SUFFIX) 257 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) 258 ifeq ($(ZIP_DEBUGINFO_FILES),1) 259 EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.diz 260 else 261 EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.debuginfo 262 endif 263 endif 264 endif 265 266 ifeq ($(JVM_VARIANT_MINIMAL1),true) 267 EXPORT_LIST += $(EXPORT_MINIMAL_DIR)/Xusage.txt 268 EXPORT_LIST += $(EXPORT_MINIMAL_DIR)/libjvm.$(LIBRARY_SUFFIX) 269 270 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) 271 ifeq ($(ZIP_DEBUGINFO_FILES),1) 272 EXPORT_LIST += $(EXPORT_MINIMAL_DIR)/libjvm.diz 273 else 274 EXPORT_LIST += $(EXPORT_MINIMAL_DIR)/libjvm.debuginfo 275 endif 276 endif 277 endif 278 279 -include $(HS_ALT_MAKE)/linux/makefiles/defs.make | 174 endif 175 $(eval $(call print_info, "ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS)")) 176 # since objcopy is optional, we set ZIP_DEBUGINFO_FILES later 177 178 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) 179 # Default OBJCOPY comes from GNU Binutils on Linux 180 ifeq ($(CROSS_COMPILE_ARCH),) 181 DEF_OBJCOPY=/usr/bin/objcopy 182 else 183 # Assume objcopy is part of the cross-compilation toolset 184 ifneq ($(ALT_COMPILER_PATH),) 185 DEF_OBJCOPY=$(ALT_COMPILER_PATH)/objcopy 186 endif 187 endif 188 OBJCOPY=$(shell test -x $(DEF_OBJCOPY) && echo $(DEF_OBJCOPY)) 189 ifneq ($(ALT_OBJCOPY),) 190 $(eval $(call print_info, "ALT_OBJCOPY=$(ALT_OBJCOPY)")) 191 OBJCOPY=$(shell test -x $(ALT_OBJCOPY) && echo $(ALT_OBJCOPY)) 192 endif 193 194 ifeq ($(COPY_DEBUG_SYMBOLS), true) 195 ifeq ($(OBJCOPY),) 196 $(eval $(call print_info, "no objcopy cmd found so cannot create .debuginfo files. You may need to set ALT_OBJCOPY.")) 197 ENABLE_FULL_DEBUG_SYMBOLS=0 198 COPY_DEBUG_SYMBOLS=false 199 $(eval $(call print_info, "ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS)")) 200 else 201 $(eval $(call print_info, "$(OBJCOPY) cmd found so will create .debuginfo files.")) 202 203 # Library stripping policies for .debuginfo configs: 204 # all_strip - strips everything from the library 205 # min_strip - strips most stuff from the library; leaves minimum symbols 206 # no_strip - does not strip the library at all 207 # 208 # Oracle security policy requires "all_strip". A waiver was granted on 209 # 2011.09.01 that permits using "min_strip" in the Java JDK and Java JRE. 210 # 211 # Currently, STRIP_POLICY is only used when Full Debug Symbols is enabled. 212 # 213 STRIP_POLICY ?= min_strip 214 215 $(eval $(call print_info, "STRIP_POLICY=$(STRIP_POLICY)")) 216 217 ZIP_DEBUGINFO_FILES ?= 1 218 219 $(eval $(call print_info, "ZIP_DEBUGINFO_FILES=$(ZIP_DEBUGINFO_FILES)")) 220 endif 221 endif # COPY_DEBUG_SYMBOLS=true 222 endif # ENABLE_FULL_DEBUG_SYMBOLS=1 223 endif # BUILD_FLAVOR 224 225 JDK_INCLUDE_SUBDIR=linux 226 227 # Library suffix 228 LIBRARY_SUFFIX=so 229 230 EXPORT_LIST += $(EXPORT_DOCS_DIR)/platform/jvmti/jvmti.html 231 232 # client and server subdirectories have symbolic links to ../libjsig.so 233 EXPORT_LIST += $(EXPORT_LIB_ARCH_DIR)/libjsig.$(LIBRARY_SUFFIX) 234 ifeq ($(COPY_DEBUG_SYMBOLS),true) 235 ifeq ($(ZIP_DEBUGINFO_FILES),1) 236 EXPORT_LIST += $(EXPORT_LIB_ARCH_DIR)/libjsig.diz 237 else 238 EXPORT_LIST += $(EXPORT_LIB_ARCH_DIR)/libjsig.debuginfo 239 endif 240 endif 241 EXPORT_SERVER_DIR = $(EXPORT_LIB_ARCH_DIR)/server 242 EXPORT_CLIENT_DIR = $(EXPORT_LIB_ARCH_DIR)/client 243 EXPORT_MINIMAL_DIR = $(EXPORT_LIB_ARCH_DIR)/minimal 244 245 ifeq ($(findstring true, $(JVM_VARIANT_SERVER) $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK) $(JVM_VARIANT_CORE)), true) 246 EXPORT_LIST += $(EXPORT_SERVER_DIR)/Xusage.txt 247 EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.$(LIBRARY_SUFFIX) 248 ifeq ($(COPY_DEBUG_SYMBOLS),true) 249 ifeq ($(ZIP_DEBUGINFO_FILES),1) 250 EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.diz 251 else 252 EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.debuginfo 253 endif 254 endif 255 endif 256 257 ifeq ($(JVM_VARIANT_CLIENT),true) 258 EXPORT_LIST += $(EXPORT_CLIENT_DIR)/Xusage.txt 259 EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.$(LIBRARY_SUFFIX) 260 ifeq ($(COPY_DEBUG_SYMBOLS),true) 261 ifeq ($(ZIP_DEBUGINFO_FILES),1) 262 EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.diz 263 else 264 EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.debuginfo 265 endif 266 endif 267 endif 268 269 ifeq ($(JVM_VARIANT_MINIMAL1),true) 270 EXPORT_LIST += $(EXPORT_MINIMAL_DIR)/Xusage.txt 271 EXPORT_LIST += $(EXPORT_MINIMAL_DIR)/libjvm.$(LIBRARY_SUFFIX) 272 273 ifeq ($(COPY_DEBUG_SYMBOLS),true) 274 ifeq ($(ZIP_DEBUGINFO_FILES),1) 275 EXPORT_LIST += $(EXPORT_MINIMAL_DIR)/libjvm.diz 276 else 277 EXPORT_LIST += $(EXPORT_MINIMAL_DIR)/libjvm.debuginfo 278 endif 279 endif 280 endif 281 282 -include $(HS_ALT_MAKE)/linux/makefiles/defs.make |