On 01/24/11 20:49, Kurt Miller wrote: > Hi Greg, > > On 1/24/11 11:07 AM, Greg Lewis wrote: >> On Mon, Jan 24, 2011 at 07:56:23AM -0800, Sam Pullara wrote: >>> I'm still getting an error from the Makefile that I had to modify: >>> >>> make VM_SUBDIR=product generic_export >>> Makefile:375: target `/Xusage.txt' given more than once in the same rule. >>> make[3]: *** No rule to make target >>> `/Volumes/Data/Projects/jsr335/bsd-port/build/bsd-amd64/hotspot/import/docs/platform/jvmti/jvmti.html', >>> needed by `generic_export'. Stop. >>> make[2]: *** [export_product] Error 2 >>> make[1]: *** [hotspot-build] Error 2 >>> make: *** [build_product_image] Error 2 >>> >>> That line does actually reference it more than once. >> My MacOS X build only got as far as trying to verify the Gamma launcher >> (dies trying to find Queens.class) so I haven't gotten that far yet. > > Ahh I know what the problem is, but I haven't had time to look into it > yet. I ran into the same issue on the ppc/zero build. The current apple > binaries are not able to bootstrap the next build. It has to do with the > change in the startup of the jvm. Previously it built a custom > LD_LIBRARY_PATH/DYLD_LIBRARY_PATH, exported it and forked again > with the env var set properly so all the jvm shared libs can be found. > > I see in the repo history that the Apple build switched back and forth > between DYLD_LIBRARY_PATH and DYLD_FALLBACK_LIBRARY_PATH > due to lib name conflicts. However the use of DYLD_LIBRARY_PATH > and DYLD_FALLBACK_LIBRARY_PATH is not consistent within hotspot > and jdk trees. I suspect the jdk usage is the important one. > > Now the jvm relies on rpath $ORIGIN to find jvm shared libs. However > for the Queens.class test in the hotspot build, the test script sets > DYLD_LIBRARY_PATH to point to the boot jvm. I believe the intent > here is to use the newly built libjvm.so/dylib with the bootstrap jdk > as a spot check for the new hotspot build. > > I suspect it is now safe to use DYLD_LIBRARY_PATH in all places in > the Apple build. You may want to try that, but you will need to build > with Landon's Soylatte jdk first to get by this issue. > > Regards, > -Kurt >
Good news / bad news. I fixed test_gamma using a recent bsd-port/openjdk build as the bootstrap jdk. I submitted the fix and pushed it up. I verified that test_gamma does what is intended by exporting DYLD_PRINT_LIBRARIES and confirming that the gamma binary using the newly built libjvm.dylib with the rest from the bootstrap jdk. The bad news is that just after I verified the correction, my hard disk crashed and the PowerBook will not boot anymore. That was my only Mac here so I can't help with ppc/zero builds until I get a new hard drive. :( -Kurt