I'm pretty sure it has worked at some point because I wrote that dSYM logic and must have tested it locally at least, but it does seem weird. Anyway, fix looks good, given that you have actually tried it and checked the bundle contents. (no dSYM in jdk/jre, and all of them in the symbols bundles)

/Erik


On 2017-11-23 04:21, Magnus Ihse Bursie wrote:
It turned out that macos bundles does not work correctly with external, non-zipped debug symbols. :-( This has probably never been tested before. This additional patch is also needed:

diff --git a/make/Bundles.gmk b/make/Bundles.gmk
--- a/make/Bundles.gmk
+++ b/make/Bundles.gmk
@@ -177,7 +177,7 @@
   # Create special filter rules when dealing with unzipped .dSYM directories on
   # macosx
   ifeq ($(OPENJDK_TARGET_OS), macosx)
-    ifeq ($(ZIP_DEBUGINFO_FILES), false)
+    ifeq ($(ZIP_EXTERNAL_DEBUG_SYMBOLS), false)
       JDK_SYMBOLS_EXCLUDE_PATTERN := $(addprefix %, \
           $(call containing, .dSYM/, $(patsubst $(JDK_IMAGE_DIR)/%, %, $(ALL_JDK_FILES))))
     endif
@@ -212,7 +212,7 @@
   # Create special filter rules when dealing with unzipped .dSYM directories on
   # macosx
   ifeq ($(OPENJDK_TARGET_OS), macosx)
-    ifeq ($(ZIP_DEBUGINFO_FILES), false)
+    ifeq ($(ZIP_EXTERNAL_DEBUG_SYMBOLS), false)
       JRE_SYMBOLS_EXCLUDE_PATTERN := $(addprefix %, \
           $(call containing, .dSYM/, $(patsubst $(JRE_IMAGE_DIR)/%, %, $(ALL_JRE_FILES))))
     endif

/Magnus

On 2017-11-22 15:01, Magnus Ihse Bursie wrote:
We should not have "zipped" as default for native-debug-symbols. In the future, this option should probably be dropped completely, but for now, start by not making it default.

Bug: https://bugs.openjdk.java.net/browse/JDK-8191205
Patch inline:
diff --git a/make/autoconf/jdk-options.m4 b/make/autoconf/jdk-options.m4
--- a/make/autoconf/jdk-options.m4
+++ b/make/autoconf/jdk-options.m4
@@ -296,13 +296,13 @@
       ],
       [
         if test "x$OPENJDK_TARGET_OS" = xaix; then
-          # AIX doesn't support 'zipped' so use 'internal' as default
+          # AIX doesn't support 'external' so use 'internal' as default
           with_native_debug_symbols="internal"
         else
           if test "x$STATIC_BUILD" = xtrue; then
             with_native_debug_symbols="none"
           else
-            with_native_debug_symbols="zipped"
+            with_native_debug_symbols="external"
           fi
         fi
       ])

/Magnus


Reply via email to