hotspot/make/bsd/makefiles/defs.make
changeset 33980 cbd63978deb5
parent 33583 af842015bfaa
parent 33957 39113ae98993
child 34319 9d6dd3c5ca23
--- a/hotspot/make/bsd/makefiles/defs.make	Thu Nov 19 09:36:21 2015 -0800
+++ b/hotspot/make/bsd/makefiles/defs.make	Fri Nov 20 12:22:41 2015 -0800
@@ -144,117 +144,100 @@
 
 OS_VENDOR:=$(shell uname -s)
 
-# determine if HotSpot is being built in JDK6 or earlier version
-JDK6_OR_EARLIER=0
-ifeq "$(shell expr \( '$(JDK_MAJOR_VERSION)' != '' \& '$(JDK_MINOR_VERSION)' != '' \& '$(JDK_MICRO_VERSION)' != '' \))" "1"
-  # if the longer variable names (newer build style) are set, then check those
-  ifeq "$(shell expr \( $(JDK_MAJOR_VERSION) = 1 \& $(JDK_MINOR_VERSION) \< 7 \))" "1"
-    JDK6_OR_EARLIER=1
-  endif
-else
-  # the longer variables aren't set so check the shorter variable names
-  ifeq "$(shell expr \( '$(JDK_MAJOR_VER)' = 1 \& '$(JDK_MINOR_VER)' \< 7 \))" "1"
-    JDK6_OR_EARLIER=1
-  endif
-endif
+# The Full Debug Symbols (FDS) default for BUILD_FLAVOR == product
+# builds is enabled with debug info files ZIP'ed to save space. For
+# BUILD_FLAVOR != product builds, FDS is always enabled, after all a
+# debug build without debug info isn't very useful.
+# The ZIP_DEBUGINFO_FILES option only has meaning when FDS is enabled.
+#
+# If you invoke a build with FULL_DEBUG_SYMBOLS=0, then FDS will be
+# disabled for a BUILD_FLAVOR == product build.
+#
+# Note: Use of a different variable name for the FDS override option
+# versus the FDS enabled check is intentional (FULL_DEBUG_SYMBOLS
+# versus ENABLE_FULL_DEBUG_SYMBOLS). For auto build systems that pass
+# in options via environment variables, use of distinct variables
+# prevents strange behaviours. For example, in a BUILD_FLAVOR !=
+# product build, the FULL_DEBUG_SYMBOLS environment variable will be
+# 0, but the ENABLE_FULL_DEBUG_SYMBOLS make variable will be 1. If
+# the same variable name is used, then different values can be picked
+# up by different parts of the build. Just to be clear, we only need
+# two variable names because the incoming option value can be
+# overridden in some situations, e.g., a BUILD_FLAVOR != product
+# build.
 
-ifeq ($(JDK6_OR_EARLIER),0)
-  # Full Debug Symbols is supported on JDK7 or newer.
-  # The Full Debug Symbols (FDS) default for BUILD_FLAVOR == product
-  # builds is enabled with debug info files ZIP'ed to save space. For
-  # BUILD_FLAVOR != product builds, FDS is always enabled, after all a
-  # debug build without debug info isn't very useful.
-  # The ZIP_DEBUGINFO_FILES option only has meaning when FDS is enabled.
-  #
-  # If you invoke a build with FULL_DEBUG_SYMBOLS=0, then FDS will be
-  # disabled for a BUILD_FLAVOR == product build.
-  #
-  # Note: Use of a different variable name for the FDS override option
-  # versus the FDS enabled check is intentional (FULL_DEBUG_SYMBOLS
-  # versus ENABLE_FULL_DEBUG_SYMBOLS). For auto build systems that pass
-  # in options via environment variables, use of distinct variables
-  # prevents strange behaviours. For example, in a BUILD_FLAVOR !=
-  # product build, the FULL_DEBUG_SYMBOLS environment variable will be
-  # 0, but the ENABLE_FULL_DEBUG_SYMBOLS make variable will be 1. If
-  # the same variable name is used, then different values can be picked
-  # up by different parts of the build. Just to be clear, we only need
-  # two variable names because the incoming option value can be
-  # overridden in some situations, e.g., a BUILD_FLAVOR != product
-  # build.
-
-  # Due to the multiple sub-make processes that occur this logic gets
-  # executed multiple times. We reduce the noise by at least checking that
-  # BUILD_FLAVOR has been set.
-  ifneq ($(BUILD_FLAVOR),)
-    # FULL_DEBUG_SYMBOLS not created for individual static libraries
-    ifeq ($(STATIC_BUILD),false)
-      ifeq ($(BUILD_FLAVOR), product)
-        FULL_DEBUG_SYMBOLS ?= 1
-        ENABLE_FULL_DEBUG_SYMBOLS = $(FULL_DEBUG_SYMBOLS)
-      else
-        # debug variants always get Full Debug Symbols (if available)
-        ENABLE_FULL_DEBUG_SYMBOLS = 1
-      endif
-     endif
-    $(eval $(call print_info, "ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS)"))
-    # since objcopy is optional, we set ZIP_DEBUGINFO_FILES later
+# Due to the multiple sub-make processes that occur this logic gets
+# executed multiple times. We reduce the noise by at least checking that
+# BUILD_FLAVOR has been set.
+ifneq ($(BUILD_FLAVOR),)
+  # FULL_DEBUG_SYMBOLS not created for individual static libraries
+  ifeq ($(STATIC_BUILD),false)
+    ifeq ($(BUILD_FLAVOR), product)
+      FULL_DEBUG_SYMBOLS ?= 1
+      ENABLE_FULL_DEBUG_SYMBOLS = $(FULL_DEBUG_SYMBOLS)
+    else
+      # debug variants always get Full Debug Symbols (if available)
+      ENABLE_FULL_DEBUG_SYMBOLS = 1
+    endif
+  endif
+  $(eval $(call print_info, "ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS)"))
+  # since objcopy is optional, we set ZIP_DEBUGINFO_FILES later
 
-    ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
-      ifeq ($(OS_VENDOR), Darwin)
-          # MacOS X doesn't use OBJCOPY or STRIP_POLICY
-          OBJCOPY=
-          STRIP_POLICY=
-          ZIP_DEBUGINFO_FILES ?= 1
+  ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+    ifeq ($(OS_VENDOR), Darwin)
+        # MacOS X doesn't use OBJCOPY or STRIP_POLICY
+        OBJCOPY=
+        STRIP_POLICY=
+        ZIP_DEBUGINFO_FILES ?= 1
+    else
+      # Default OBJCOPY comes from GNU Binutils on BSD
+      ifeq ($(CROSS_COMPILE_ARCH),)
+        DEF_OBJCOPY=/usr/bin/objcopy
       else
-        # Default OBJCOPY comes from GNU Binutils on BSD
-        ifeq ($(CROSS_COMPILE_ARCH),)
-          DEF_OBJCOPY=/usr/bin/objcopy
-        else
-          # Assume objcopy is part of the cross-compilation toolset
-          ifneq ($(ALT_COMPILER_PATH),)
-            DEF_OBJCOPY=$(ALT_COMPILER_PATH)/objcopy
-          endif
+        # Assume objcopy is part of the cross-compilation toolset
+        ifneq ($(ALT_COMPILER_PATH),)
+          DEF_OBJCOPY=$(ALT_COMPILER_PATH)/objcopy
         endif
-        OBJCOPY=$(shell test -x $(DEF_OBJCOPY) && echo $(DEF_OBJCOPY))
-        ifneq ($(ALT_OBJCOPY),)
-          $(eval $(call print_info, "ALT_OBJCOPY=$(ALT_OBJCOPY)"))
-          OBJCOPY=$(shell test -x $(ALT_OBJCOPY) && echo $(ALT_OBJCOPY))
-        endif
+      endif
+      OBJCOPY=$(shell test -x $(DEF_OBJCOPY) && echo $(DEF_OBJCOPY))
+      ifneq ($(ALT_OBJCOPY),)
+        $(eval $(call print_info, "ALT_OBJCOPY=$(ALT_OBJCOPY)"))
+        OBJCOPY=$(shell test -x $(ALT_OBJCOPY) && echo $(ALT_OBJCOPY))
+      endif
 
-        ifeq ($(OBJCOPY),)
-          $(eval $(call print_info, "no objcopy cmd found so cannot create .debuginfo" \
-              "files. You may need to set ALT_OBJCOPY."))
-          ENABLE_FULL_DEBUG_SYMBOLS=0
-          $(eval $(call print_info, "ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS)"))
-        else
-          $(eval $(call print_info, "$(OBJCOPY) cmd found so will create .debuginfo" \
-              "files."))
+      ifeq ($(OBJCOPY),)
+        $(eval $(call print_info, "no objcopy cmd found so cannot create .debuginfo" \
+            "files. You may need to set ALT_OBJCOPY."))
+        ENABLE_FULL_DEBUG_SYMBOLS=0
+        $(eval $(call print_info, "ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS)"))
+      else
+        $(eval $(call print_info, "$(OBJCOPY) cmd found so will create .debuginfo" \
+            "files."))
 
-          # Library stripping policies for .debuginfo configs:
-          #   all_strip - strips everything from the library
-          #   min_strip - strips most stuff from the library; leaves
-          #               minimum symbols
-          #   no_strip  - does not strip the library at all
-          #
-          # Oracle security policy requires "all_strip". A waiver was
-          # granted on 2011.09.01 that permits using "min_strip" in the
-          # Java JDK and Java JRE.
-          #
-          # Currently, STRIP_POLICY is only used when Full Debug Symbols
-          # is enabled.
-          #
-          STRIP_POLICY ?= min_strip
+        # Library stripping policies for .debuginfo configs:
+        #   all_strip - strips everything from the library
+        #   min_strip - strips most stuff from the library; leaves
+        #               minimum symbols
+        #   no_strip  - does not strip the library at all
+        #
+        # Oracle security policy requires "all_strip". A waiver was
+        # granted on 2011.09.01 that permits using "min_strip" in the
+        # Java JDK and Java JRE.
+        #
+        # Currently, STRIP_POLICY is only used when Full Debug Symbols
+        # is enabled.
+        #
+        STRIP_POLICY ?= min_strip
 
-          $(eval $(call print_info, "STRIP_POLICY=$(STRIP_POLICY)"))
+        $(eval $(call print_info, "STRIP_POLICY=$(STRIP_POLICY)"))
 
-          ZIP_DEBUGINFO_FILES ?= 1
-        endif
+        ZIP_DEBUGINFO_FILES ?= 1
+      endif
 
-        $(eval $(call print_info, "ZIP_DEBUGINFO_FILES=$(ZIP_DEBUGINFO_FILES)"))
-      endif
-    endif # ENABLE_FULL_DEBUG_SYMBOLS=1
-  endif # BUILD_FLAVOR
-endif # JDK_6_OR_EARLIER
+      $(eval $(call print_info, "ZIP_DEBUGINFO_FILES=$(ZIP_DEBUGINFO_FILES)"))
+    endif
+  endif # ENABLE_FULL_DEBUG_SYMBOLS=1
+endif # BUILD_FLAVOR
 
 JDK_INCLUDE_SUBDIR=bsd
 
@@ -274,7 +257,7 @@
 
 # jsig library not needed for static builds
 ifneq ($(STATIC_BUILD),true)
-# client and server subdirectories have symbolic links to ../libjsig.so
+  # client and server subdirectories have symbolic links to ../libjsig.so
   EXPORT_LIST += $(EXPORT_LIB_ARCH_DIR)/libjsig.$(LIBRARY_SUFFIX)
 endif