Mikael Gerdin pointed out that when JAVA_HOME is not set during a build JDK ends up being empty in jdkpath.sh.
Actually, why do we have jdkpath.sh? Can't we put the path directly into the hotspot script? Here is a new webrev including the Windows patch, additionally removes jdkpath.sh and sets JDK to JDK_IMPORT_PATH if ALT_JAVA_HOME is not set: http://cr.openjdk.java.net/~twisti/8008772/ Next question: is anyone using env.{sh,csh}? Since we removed test_gamma these files are unused and we could stop generating them. -- Chris On May 2, 2013, at 3:50 PM, Christian Thalinger <[email protected]> wrote: > > On May 1, 2013, at 2:51 PM, Vladimir Kozlov <[email protected]> > wrote: > >> Somehow I got Nils's mail without attachment. >> >> On 5/1/13 2:30 PM, Christian Tornqvist wrote: >>> Hi Vladimir, >>> >>> Nils attached the patch to the email, but I've put the patch at >>> http://cr.openjdk.java.net/~ctornqvi/webrev/vs.patch also >> >> This looks good. Christian Thalinger will be happy :) > > Indeed :-) Thanks Nils and Christian for making that work! > > -- Chris > >> >> Thanks, >> Vladimir >> >>> >>> Thanks, >>> Christian >>> >>> -----Original Message----- >>> From: [email protected] >>> [mailto:[email protected]] On Behalf Of Vladimir Kozlov >>> Sent: den 1 maj 2013 17:22 >>> To: Nils Eliasson >>> Cc: [email protected]; hotspot-dev developers; Christian Thalinger >>> Subject: Re: RFR (M): 8008772: remove gamma launcher >>> >>> Nils, >>> >>> I don't see attached patch or webrev link. >>> >>> thanks, >>> Vladimir >>> >>> On 5/1/13 1:41 PM, Nils Eliasson wrote: >>>> Hi, >>>> >>>> Here is a patch that fixes so that it still works to create vcprojs, >>>> and also sets defaults for the debugger commands. >>>> >>>> I have verified with creating vcprojs and debugging hotspot in VS 2010. >>>> Works great except for an annoying pop-up that warns that the launcher >>>> doesn't have debug symbols (if the target jdk doesn't). >>>> >>>> It will still be some extra work for those using the commandlines >>>> plugin. All saved command lines need the be prepended with >>>> "-XXaltjvm=$(TargetDir) -Dsun.java.launcher=gamma" and the target JDK >>>> set as executable to work. We should update the plugin to help with that. >>>> >>>> A big thank you to Christian Törnqvist for the proposal! >>>> >>>> //Nils >>>> >>>> >>>> On 2013-04-23 20:33, Mikael Gerdin wrote: >>>>> >>>>> On 2013-04-23 20:28, Christian Thalinger wrote: >>>>>> >>>>>> On Apr 23, 2013, at 11:06 AM, Nils Eliasson >>>>>> <[email protected]> wrote: >>>>>> >>>>>>> As long as we fix it first and remove gamma after - I would love to >>>>>>> have some redundant code removed. I would fix it myself, I just >>>>>>> don't think I will have the time before I go on parental leave. >>>>>> >>>>>> First, I'm not removing it tomorrow. I expected a long discussion >>>>>> :-) >>>>>> >>>>>> What exactly is the problem with Visual Studio? Why can't you just >>>>>> run the java launcher instead? >>>>>> >>>>> >>>>> I don't know if there actually is a problem, but I don't think >>>>> anyone's actually tried to tell it to use the java launcher. >>>>> The VS project is automatically setup to launch "hotspot.exe" from >>>>> the IDE. "hotspot.exe" is equivalent to the old option LINK_INTO=AOUT >>>>> (IIRC) which involves linking all the VM object files into the launcher. >>>>> >>>>> Nils, perhaps you can at least try this before you leave? >>>>> >>>>> /Mikael >>>>> >>>>>> -- Chris >>>>>> >>>>>>> >>>>>>> //Nils >>>>>>> >>>>>>> On 2013-04-23 12:59, Mikael Gerdin wrote: >>>>>>>> >>>>>>>> >>>>>>>> On 2013-04-23 11:09, Nils Eliasson wrote: >>>>>>>>> The gamma launcher is used to run and debug hotspot from Visual >>>>>>>>> Studio. >>>>>>>>> So removing gamma effectively kills the working environment for a >>>>>>>>> number of people that use it daily. So I am strongly against >>>>>>>>> removing it. >>>>>>>> >>>>>>>> Maybe the visual studio project generator could be updated to >>>>>>>> create a a "launch configuration" for launching java.exe from a >>>>>>>> JDK and use the XXaltJVM flag on to select the correct jvm.dll? >>>>>>>> >>>>>>>> I agree that we shouldn't break the visual studio project but >>>>>>>> currently there's nothing indicating that we can't fix it. >>>>>>>> >>>>>>>> >>>>>>>> /Mikael >>>>>>>> >>>>>>>>> >>>>>>>>> Most people working on Windows use Cygwin as the last resort >>>>>>>>> since it makes a lot of thing excruciatingly slow. >>>>>>>>> >>>>>>>>> //Nils >>>>>>>>> >>>>>>>>> On 2013-04-22 22:55, Christian Thalinger wrote: >>>>>>>>>> On Apr 22, 2013, at 1:36 PM, Daniel D. Daugherty >>>>>>>>>> <[email protected]> wrote: >>>>>>>>>> >>>>>>>>>>> Chris, >>>>>>>>>>> >>>>>>>>>>> Just an observation and not a review. >>>>>>>>>>> >>>>>>>>>>> Looks like you're removing launcher support on Windows, but it >>>>>>>>>>> looks like the new hotspot.script doesn't support Windows... >>>>>>>>>>> Am I missing something? >>>>>>>>>> Almost certainly true. Since I'm not a Windows user (and nobody >>>>>>>>>> near me is one) I have no idea how people are using the gamma >>>>>>>>>> launcher on Windows (or the hotspot script for that matter). >>>>>>>>>> >>>>>>>>>> I presume most people doing debugging on the command line are >>>>>>>>>> already in cygwin? But I might be wrong. >>>>>>>>>> >>>>>>>>>> -- Chris >>>>>>>>>> >>>>>>>>>>> Dan >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> On 4/22/13 1:47 PM, Christian Thalinger wrote: >>>>>>>>>>>> http://cr.openjdk.java.net/~twisti/8008772/ >>>>>>>>>>>> >>>>>>>>>>>> 8008772: remove gamma launcher >>>>>>>>>>>> Reviewed-by: >>>>>>>>>>>> >>>>>>>>>>>> Remove linking the gamma launcher and it's associated source >>>>>>>>>>>> files. >>>>>>>>>>>> >>>>>>>>>>>> make/Makefile >>>>>>>>>>>> make/bsd/makefiles/launcher.make make/bsd/makefiles/vm.make >>>>>>>>>>>> make/hotspot.script make/linux/makefiles/launcher.make >>>>>>>>>>>> make/linux/makefiles/vm.make >>>>>>>>>>>> make/solaris/makefiles/launcher.make >>>>>>>>>>>> make/solaris/makefiles/vm.make >>>>>>>>>>>> make/windows/makefiles/debug.make >>>>>>>>>>>> make/windows/makefiles/fastdebug.make >>>>>>>>>>>> make/windows/makefiles/launcher.make >>>>>>>>>>>> make/windows/makefiles/product.make >>>>>>>>>>>> make/windows/makefiles/projectcreator.make >>>>>>>>>>>> make/windows/projectfiles/common/Makefile >>>>>>>>>>>> src/os/posix/launcher/java_md.c >>>>>>>>>>>> src/os/posix/launcher/java_md.h >>>>>>>>>>>> src/os/posix/launcher/launcher.script >>>>>>>>>>>> src/os/windows/launcher/java_md.c >>>>>>>>>>>> src/os/windows/launcher/java_md.h >>>>>>>>>>>> src/share/tools/launcher/java.c >>>>>>>>>>>> src/share/tools/launcher/java.h >>>>>>>>>>>> src/share/tools/launcher/jli_util.c >>>>>>>>>>>> src/share/tools/launcher/jli_util.h >>>>>>>>>>>> src/share/tools/launcher/wildcard.c >>>>>>>>>>>> src/share/tools/launcher/wildcard.h >>>>>>>>>>>> >>>>>>>>>>>> This change removes the duplicated java launcher files (which >>>>>>>>>>>> were subject to bit-rot) and modifies the hotspot script to >>>>>>>>>>>> pick up the libjvm in the current build directory. >>>>>>>>>>>> >>>>>>>>>>>> The modified hotspot script works with GDB and DBX: >>>>>>>>>>>> >>>>>>>>>>>> [email protected]:/export/twisti/build/8008772 >>>>>>>>>>>> /build/linux_i486_compiler2/debug$ >>>>>>>>>>>> >>>>>>>>>>>> ./hotspot -gdb -version >>>>>>>>>>>> GNU gdb (GDB) Red Hat Enterprise Linux (7.1-29.el6) Copyright >>>>>>>>>>>> (C) 2010 Free Software Foundation, Inc. >>>>>>>>>>>> License GPLv3+: GNU GPL version 3 or later >>>>>>>>>>>> <http://gnu.org/licenses/gpl.html> >>>>>>>>>>>> This is free software: you are free to change and redistribute it. >>>>>>>>>>>> There is NO WARRANTY, to the extent permitted by law. Type >>>>>>>>>>>> "show copying" >>>>>>>>>>>> and "show warranty" for details. >>>>>>>>>>>> This GDB was configured as "x86_64-redhat-linux-gnu". >>>>>>>>>>>> For bug reporting instructions, please see: >>>>>>>>>>>> <http://www.gnu.org/software/gdb/bugs/>. >>>>>>>>>>>> Missing separate debuginfo for >>>>>>>>>>>> /net/scanas404.us.oracle.com/export/java-re/jdk/8/ea/b86/binar >>>>>>>>>>>> ies/linux-i586/bin/java >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> Try: yum --disablerepo='*' --enablerepo='*-debuginfo' install >>>>>>>>>>>> /usr/lib/debug/.build-id/5e/85e6dced3b388a7b0e50630242f4c7ee5e >>>>>>>>>>>> 31a3.debug >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> Function "JNI_CreateJavaVM" not defined. >>>>>>>>>>>> Breakpoint 1 (JNI_CreateJavaVM) pending. >>>>>>>>>>>> [Thread debugging using libthread_db enabled] [New Thread >>>>>>>>>>>> 0xf7fe4b70 (LWP 13459)] [Switching to Thread 0xf7fe4b70 (LWP >>>>>>>>>>>> 13459)] >>>>>>>>>>>> >>>>>>>>>>>> Breakpoint 1, JNI_CreateJavaVM (vm=0xf7fe4378, >>>>>>>>>>>> penv=0xf7fe4374, >>>>>>>>>>>> args=0xf7fe4364) >>>>>>>>>>>> at >>>>>>>>>>>> /net/10.159.161.234/Users/cthaling/ws/8008772/src/share/vm/pri >>>>>>>>>>>> ms/jni.cpp:5062 >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> 5062 jint result = JNI_ERR; >>>>>>>>>>>> Missing separate debuginfos, use: debuginfo-install >>>>>>>>>>>> glibc-2.12-1.7.el6.i686 >>>>>>>>>>>> (gdb) break CompileBroker::compile_method Breakpoint 2 at >>>>>>>>>>>> 0xaef852: file >>>>>>>>>>>> /net/10.159.161.234/Users/cthaling/ws/8008772/src/share/vm/com >>>>>>>>>>>> piler/compileBroker.cpp, >>>>>>>>>>>> >>>>>>>>>>>> line 1205. >>>>>>>>>>>> (gdb) c >>>>>>>>>>>> Continuing. >>>>>>>>>>>> [New Thread 0xf7f93b70 (LWP 13460)] [New Thread 0xb4398b70 >>>>>>>>>>>> (LWP 13461)] [New Thread 0xb41ffb70 (LWP 13462)] [New Thread >>>>>>>>>>>> 0xb3effb70 (LWP 13463)] [New Thread 0xb3cffb70 (LWP 13464)] >>>>>>>>>>>> [New Thread 0xb3affb70 (LWP 13465)] [New Thread 0xb38ffb70 >>>>>>>>>>>> (LWP 13466)] [New Thread 0xb36ffb70 (LWP 13467)] [New Thread >>>>>>>>>>>> 0xb34ffb70 (LWP 13468)] [New Thread 0xb32ffb70 (LWP 13469)] >>>>>>>>>>>> [New Thread 0xb30ffb70 (LWP 13470)] [New Thread 0xb2effb70 >>>>>>>>>>>> (LWP 13471)] [New Thread 0xb2cffb70 (LWP 13472)] [New Thread >>>>>>>>>>>> 0xaf8e8b70 (LWP 13473)] [New Thread 0xb4156b70 (LWP 13474)] >>>>>>>>>>>> [New Thread 0xb3c7eb70 (LWP 13475)] [New Thread 0xb3a7eb70 >>>>>>>>>>>> (LWP 13476)] [New Thread 0xaeeffb70 (LWP 13477)] [New Thread >>>>>>>>>>>> 0xaecffb70 (LWP 13478)] [New Thread 0xb387eb70 (LWP 13479)] >>>>>>>>>>>> [New Thread 0xaeaffb70 (LWP 13480)] java version "1.8.0-ea" >>>>>>>>>>>> Java(TM) SE Runtime Environment (build 1.8.0-ea-b86) Java >>>>>>>>>>>> HotSpot(TM) Server VM (build 25.0-b29-internal-debug, mixed >>>>>>>>>>>> mode) [Thread 0xaeaffb70 (LWP 13480) exited] [Thread >>>>>>>>>>>> 0xb3a7eb70 (LWP 13476) exited] [Thread 0xaf8e8b70 (LWP 13473) >>>>>>>>>>>> exited] [Thread 0xf7fe4b70 (LWP 13459) exited] [Thread >>>>>>>>>>>> 0xb2cffb70 (LWP 13472) exited] [Thread 0xb2effb70 (LWP 13471) >>>>>>>>>>>> exited] [Thread 0xaecffb70 (LWP 13478) exited] [Thread >>>>>>>>>>>> 0xb387eb70 (LWP 13479) exited] [Thread 0xaeeffb70 (LWP 13477) >>>>>>>>>>>> exited] [Thread 0xb3c7eb70 (LWP 13475) exited] [Thread >>>>>>>>>>>> 0xb4156b70 (LWP 13474) exited] [Thread 0xb32ffb70 (LWP 13469) >>>>>>>>>>>> exited] [Thread 0xb34ffb70 (LWP 13468) exited] [Thread >>>>>>>>>>>> 0xb36ffb70 (LWP 13467) exited] [Thread 0xb38ffb70 (LWP 13466) >>>>>>>>>>>> exited] [Thread 0xb3affb70 (LWP 13465) exited] [Thread >>>>>>>>>>>> 0xb3cffb70 (LWP 13464) exited] [Thread 0xb3effb70 (LWP 13463) >>>>>>>>>>>> exited] [Thread 0xb41ffb70 (LWP 13462) exited] [Thread >>>>>>>>>>>> 0xb4398b70 (LWP 13461) exited] [Thread 0xf7f93b70 (LWP 13460) >>>>>>>>>>>> exited] [Thread 0xb30ffb70 (LWP 13470) exited] >>>>>>>>>>>> >>>>>>>>>>>> Program exited normally. >>>>>>>>>>>> (gdb) >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> cthaling@intelsdv01:/export/twisti/build/8008772/build/solaris >>>>>>>>>>>> _i486_compiler2/debug$ >>>>>>>>>>>> >>>>>>>>>>>> /bin/bash ./hotspot -dbx -version >>>>>>>>>>>> dbx: warning: using the alternate init file: >>>>>>>>>>>> /home/cthaling/.dbxrc Reading java Reading ld.so.1 Reading >>>>>>>>>>>> libjli.so Reading libthread.so.1 Reading libdl.so.1 Reading >>>>>>>>>>>> libc.so.1 Reading libjvm.so Loaded loadobject: >>>>>>>>>>>> /export/twisti/build/8008772/build/solaris_i486_compiler2/debu >>>>>>>>>>>> g/libjvm.so >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> Running: java -Dsun.java.launcher=gamma >>>>>>>>>>>> -XXaltjvm=/export/twisti/build/8008772/build/solaris_i486_comp >>>>>>>>>>>> iler2/debug >>>>>>>>>>>> >>>>>>>>>>>> -version >>>>>>>>>>>> (process id 29613) >>>>>>>>>>>> Reading libsocket.so.1 >>>>>>>>>>>> Reading libsched.so.1 >>>>>>>>>>>> Reading libm.so.1 >>>>>>>>>>>> Reading libCrun.so.1 >>>>>>>>>>>> Reading libdoor.so.1 >>>>>>>>>>>> Reading libdemangle.so.1 >>>>>>>>>>>> Reading libnsl.so.1 >>>>>>>>>>>> Reading libm.so.2 >>>>>>>>>>>> Reading libscf.so.1 >>>>>>>>>>>> Reading libuutil.so.1 >>>>>>>>>>>> Reading libgen.so.1 >>>>>>>>>>>> Reading libmd.so.1 >>>>>>>>>>>> Reading libmp.so.2 >>>>>>>>>>>> t@2 (l@2) stopped in JNI_CreateJavaVM at line 5062 in file >>>>>>>>>>>> "jni.cpp" >>>>>>>>>>>> 5062 jint result = JNI_ERR; >>>>>>>>>>>> (dbx) stop in CompileBroker::compile_method >>>>>>>>>>>> (2) stop in >>>>>>>>>>>> CompileBroker::compile_method(methodHandle,int,int,methodHandl >>>>>>>>>>>> e,int,const >>>>>>>>>>>> >>>>>>>>>>>> char*,Thread*) >>>>>>>>>>>> (dbx) c >>>>>>>>>>>> Reading libverify.so >>>>>>>>>>>> Reading libjava.so >>>>>>>>>>>> Reading libzip.so >>>>>>>>>>>> java version "1.8.0-ea" >>>>>>>>>>>> Java(TM) SE Runtime Environment (build 1.8.0-ea-b86) Java >>>>>>>>>>>> HotSpot(TM) Server VM (build 25.0-b29-internal-debug, mixed >>>>>>>>>>>> mode) >>>>>>>>>>>> >>>>>>>>>>>> execution completed, exit code is 0 >>>>>>>>>>>> (dbx) >>>>>>>>>>>> >>>>>>>>> >>>>>>> >>>>>> >>>> >>> >
