RFR: 7181175 Enable hotspot builds on Windows with MinGW/MSYS
Kelly O'Hair
kelly.ohair at oracle.com
Wed Jul 18 17:48:19 UTC 2012
Notes below... just chatted with Tim in his office...
On Jul 17, 2012, at 9:46 PM, Tim Bell wrote:
> On 07/17/12 17:16, David Holmes wrote:
>> I'm not sure if you are agreeing with me :) so to be clear. We have:
>
> Thanks for the clarification. I think we all agree here, but best to be sure.
>
>>
>> COMPILE_JAVAC="$(BootStrapDir)\bin\javac" $(BOOTSTRAP_JAVAC_FLAGS)
>> COMPILE_RMIC="$(BootStrapDir)\bin\rmic"
>>
>> at present.
>
> Correct. This is in hotspot/make/windows/makefiles/rules.make
>
>> But if we were to change that to
>>
>> COMPILE_RMIC="$(BootStrapDir)\bin\rmic" $(BOOTSTRAP_RMIC_FLAGS)
>> for example, then
>>
>> "$(COMPILE_RMIC)" -classpath ...
>>
>> would not work.
>
> Again, correct.
>
> Unfortunately, my efforts to do the logical thing are running off into the tall weeds:
>
>
> ########################################################################
> ########################################################################
> ##### Entering hotspot for target(s) all_product #####
> ########################################################################
>
> cd ./hotspot/make && \
> make JDK_TOPDIR=/d/tools/jdk8/7152336-closed/jdk JDK_MAKE_SHARED_DIR=/d/tools/jdk8/7152336-closed/jdk/make/common/shared EXTERNALSANITYCONTROL=true SOURCE_LANGUAGE_VERSION=7 TARGET_CLASS_VERSION=7 MILESTONE=internal BUILD_NUMBER=b00 JDK_BUILD_NUMBER=b00 FULL_VERSION=1.8.0-internal-tbbell_2012_07_16_20_52-b00 PREVIOUS_JDK_VERSION=1.7.0 JDK_VERSION=1.8.0 JDK_MKTG_VERSION=8 JDK_MAJOR_VERSION=1 JDK_MINOR_VERSION=8 JDK_MICRO_VERSION=0 PREVIOUS_MAJOR_VERSION=1 PREVIOUS_MINOR_VERSION=7 PREVIOUS_MICRO_VERSION=0 ARCH_DATA_MODEL=64 COOKED_BUILD_NUMBER=0 ANT_HOME="D:/APACHE~1.0" ALT_OUTPUTDIR=D:/tools/jdk8/7152336-closed/windows-amd64/hotspot/outputdir ALT_EXPORT_PATH=D:/tools/jdk8/7152336-closed/windows-amd64/hotspot/import BUILD_FLAVOR=product ALT_SLASH_JAVA="D:/java/" ALT_BOOTDIR=C:/PROGRA~1/Java/JDK17~1.0_0 ALT_LANGTOOLS_DIST=D:/tools/jdk8/7152336-closed/windows-amd64/langtools/dist all_product
> INFO: ENABLE_FULL_DEBUG_SYMBOLS=1
the above is a GNU make, and the =/d/ paths should be ok.
> make[2]: Entering directory `/d/tools/jdk8/7152336-closed/hotspot/make'
> cd /d/tools/jdk8/7152336-closed/hotspot/make; \
> make BUILD_FLAVOR=product VM_TARGET=product generic_build2 ALT_OUTPUTDIR=D:/tools/jdk8/7152336-closed/windows-amd64/hotspot/outputdir
> INFO: ENABLE_FULL_DEBUG_SYMBOLS=1
The above is a GNU make too.
>
> make[3]: Entering directory `/d/tools/jdk8/7152336-closed/hotspot/make'
> mkdir -p D:/tools/jdk8/7152336-closed/windows-amd64/hotspot/outputdir
But this next one is an NMAKE. And I don't think the /d/ paths are right here.
> cd D:/tools/jdk8/7152336-closed/windows-amd64/hotspot/outputdir; \
> MAKEFLAGS= MFLAGS= nmake -NOLOGO -f /d/tools/jdk8/7152336-closed/hotspot/make/windows/build.make \
> Variant=compiler2 \
> WorkSpace=/d/tools/jdk8/7152336-closed/hotspot \
> BootStrapDir=/c/PROGRA~1/Java/JDK17~1.0_0 \
> BuildUser=tbbell \
> LP64=1 ARCH=x86 BUILDARCH=amd64 Platform_arch=x86 Platform_arch_model=x86_64 ENABLE_FULL_DEBUG_SYMBOLS=1 ZIP_DEBUGINFO_FILES=1 RM="rm -f" ZIPEXE=zip JDK_MKTG_VERSION=8 JDK_MAJOR_VER=1 JDK_MINOR_VER=8 JDK_MICRO_VER=0 JDK_BUILD_NUMBER=0 BUILD_WIN_SA=1 JAVA_HOME=/c/PROGRA~1/Java/JDK17~1.0_0 OUTPUTDIR=/d/tools/jdk8/7152336-closed/windows-amd64/hotspot/outputdir GAMMADIR=/d/tools/jdk8/7152336-closed/hotspot MAKE_VERBOSE=y HOTSPOT_RELEASE_VERSION=24.0-b14 JRE_RELEASE_VERSION=1.8.0-internal-tbbell_2012_07_16_20_52-b00 HOTSPOT_BUILD_VERSION= product
> mkdir windows_amd64_compiler2
>
I would have expected a whole bunch of stuff here as the VM is built... but it goes to SA next? Is that right?
I think the very first NMAKE needs to be investigated first.
-kto
>
> cd windows_amd64_compiler2
> nmake -nologo -f d:/tools/jdk8/7152336-closed/hotspot\make\windows\makefiles\top.make BUILD_FLAVOR=product ARCH=x86
> nmake in .\generated
> cd generated && c:\PROGRA~2\MICROS~2.0\VC\BIN\amd64\nmake.EXE -NOLOGO -f d:/tools/jdk8/7152336-closed/hotspot\make\windows\makefiles\generated.make DIR=.\generated BUILD_FLAVOR=product
> mkdir -p ../generated/saclasses
> ...Building sa-jdi.jar
> ...c:/PROGRA~1/Java/JDK17~1.0_0/bin/javac -g -encoding ascii -source 6 -target 6 -classpath c:/PROGRA~1/Java/JDK17~1.0_0/lib/tools.jar -d ../generated/saclasses ....
> c:/PROGRA~1/Java/JDK17~1.0_0/bin/rmic -classpath ../generated/saclasses -d ../generated/saclasses sun.jvm.hotspot.debugger.remote.RemoteDebuggerServer
> echo sun.jvm.hotspot.runtime.VM.saBuildVersion=24.0-b14> ../generated/saclasses/sa.properties
> The system cannot find the path specified.
> NMAKE : fatal error U1077: 'echo' : return code '0x1'
> Stop.
> NMAKE : fatal error U1077: 'cd' : return code '0x2'
> Stop.
> NMAKE : fatal error U1077: 'c:\PROGRA~2\MICROS~2.0\VC\BIN\amd64\nmake.EXE' : return code '0x2'
> Stop.
> make[3]: *** [generic_build2] Error 2
> make[3]: Leaving directory `/d/tools/jdk8/7152336-closed/hotspot/make'
> make[2]: *** [product] Error 2
> make[2]: Leaving directory `/d/tools/jdk8/7152336-closed/hotspot/make'
> make[1]: *** [hotspot-build] Error 2
> make[1]: Leaving directory `/d/tools/jdk8/7152336-closed'
> make: *** [build_product_image] Error 2
>
More information about the build-dev
mailing list