On 1 okt 2013, at 18:01, "Daniel D. Daugherty" <daniel.daughe...@oracle.com> wrote:
> On 9/30/13 12:00 PM, Staffan Larsen wrote: >> On 30 sep 2013, at 15:44, Daniel D. Daugherty <daniel.daughe...@oracle.com> >> wrote: >> >>> >>> I'm presuming that you're trying with a forest that includes >>> closed repos. If so, then you'll need the jdk/make/closed change >>> in order for the build to work. >> Yes, I was running with closed repos. I now have the additional patch, but >> what I get now is a bit strange. The libjvm.dylib.dSYM directory should be >> copied from >> build/macosx-x86_64-normal-server-slowdebug/hotspot/bsd_amd64_compiler2/debug/ >> to >> build/macosx-x86_64-normal-server-slowdebug/hotspot/dist/jre/lib/server/ to >> build/macosx-x86_64-normal-server-slowdebug/jdk/lib/server/ >> >> But what I get is for each copy, the result is different: >> >> build/macosx-x86_64-normal-server-slowdebug/hotspot/bsd_amd64_compiler2/debug/libjvm.dylib.dSYM/: >> Contents >> >> build/macosx-x86_64-normal-server-slowdebug/hotspot/dist/jre/lib/server/libjvm.dylib.dSYM/: >> Info.plist libjvm.dylib >> >> build/macosx-x86_64-normal-server-slowdebug/jdk/lib/server/libjvm.dylib.dSYM: >> libjvm.dylib >> >> >> Looks like the recursive copy isn't working as expected. > > Yesterday, I did a JPRT control build and here's what I see: > > $ unzip -l macosx_x64_10.7-product.zip | grep .diz > 2333 10-01-2013 00:13 jre/lib/libjsig.diz > 3747 10-01-2013 00:13 jre/lib/libsaproc.diz > 204 10-01-2013 00:13 jre/lib/server/libjsig.diz > 132330347 10-01-2013 00:14 jre/lib/server/libjvm.diz > > And inside libjvm.diz: > > $ unzip -l jre/lib/server/libjvm.diz > Archive: jre/lib/server/libjvm.diz > Length Date Time Name > --------- ---------- ----- ---- > 0 09-30-2013 23:59 libjvm.dylib.dSYM/ > 0 09-30-2013 23:59 libjvm.dylib.dSYM/Contents/ > 641 09-30-2013 23:59 libjvm.dylib.dSYM/Contents/Info.plist > 0 09-30-2013 23:59 libjvm.dylib.dSYM/Contents/Resources/ > 0 09-30-2013 23:59 libjvm.dylib.dSYM/Contents/Resources/DWARF/ > 326461252 09-30-2013 23:59 > libjvm.dylib.dSYM/Contents/Resources/DWARF/libjvm.dylib > --------- ------- > 326461893 6 files > > so it looks like JPRT is doing the "right thing" for control builds. > I had previously verified that a hotspot only JPRT was doing the right > thing before my vacation. > > My personal manual hotspot builds on my MacMini also did the right > thing so I'll have to check out what's going on with your style of > build invocation. The problem I am seeing is with the option --disable-zip-debug-info to configure (which is very useful when compiling and debugging on the same system). > > >>>> Another comment: There are some makefile logic for BSD, non-darwin >>>> platforms. Have you had a chance to test this logic? >>>> (hotspot/make/bsd/makefiles/vm.make) >>> No, I don't have access to a BSD (non-darwin) platform. However, I'll >>> be pinging Dmitri Samersoff to ask a few questions... >> OK. If we can't verify the logic, then maybe should leave it out. > > I'll work with Dmitry S. on getting this tested. If we can't verify > that proposed changes work on BSD, then I'll back out that portion. Good. /Staffan > > Dan > > >> >>> >>>> Nit: hotspot/make/bsd/makefiles/vm.make: L345, L356: wrong indentation. >>> These are make cmd lines: >>> >>> 344 else >>> 345 $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBJVM_DEBUGINFO) >>> 346 $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJVM_DEBUGINFO) $@ >>> 347 ifeq ($(STRIP_POLICY),all_strip) >>> >>> so they have to be indented by a tab. Very ugly, but necessary. >> Ouch. :-( >> >> /Staffan >> >>> Dan >>> >>> >>>> >>>> /Staffan >>>> >>>> >>>> >>>> On 21 sep 2013, at 05:36, Daniel D. Daugherty >>>> <daniel.daughe...@oracle.com> wrote: >>>> >>>>> Greetings, >>>>> >>>>> I have the initial support for Full Debug Symbols (FDS) on MacOS X done >>>>> and ready for review: >>>>> >>>>> 7165611 implement Full Debug Symbols on MacOS X hotspot >>>>> https://bugs.openjdk.java.net/browse/JDK-7165611 >>>>> >>>>> Here is the JDK8/HSX-25 webrev URL: >>>>> >>>>> OpenJDK: >>>>> http://cr.openjdk.java.net/~dcubed/fds_revamp/7165611-webrev/0-jdk8/ >>>>> Internal: >>>>> http://javaweb.us.oracle.com/~ddaugher/fds_revamp/7165611-webrev/0-jdk8/ >>>>> >>>>> This webrev includes changes for the follow repos: >>>>> >>>>> jdk8 >>>>> jdk8/hotspot >>>>> jdk8/jdk >>>>> jdk8/jdk/make/closed >>>>> >>>>> Once these changes are approved, I'm planning to push them to >>>>> RT_Baseline. From there, they can follow the normal path to >>>>> Main_Baseline and eventually JDK8. >>>>> >>>>> This work enables FDS on MacOS X for the 'hotspot' repo; the changes in >>>>> the other repos are necessary to support importing the .diz files from >>>>> the MacOS X 'hotspot' build into the forest build. I also fixed a few >>>>> FDS related errors in the magic incantations for the new build. This is >>>>> mostly a port from Linux -> MacOS X/BSD with the dtrace changes ported >>>>> from Solaris. In other words, this is Frankenstein's monster... >>>>> >>>>> Thanks to Staffan Larsen for providing an initial set of changes >>>>> which I morphed into what you see here. >>>>> >>>>> Testing: >>>>> - JPRT HSX build and test on all platforms; verification of .diz >>>>> files in the MacOS X JPRT bundles >>>>> - JPRT JDK8 forest build and test on all platforms; verification of >>>>> .diz files in the MacOS X JPRT bundles >>>>> Note: In previous FDS changesets, I also did a standalone 'jdk' >>>>> repo build and test, but that no longer seems to work. >>>>> >>>>> As always, comments, questions and suggestions are welcome. >>>>> >>>>> Dan >