Build inside jdk dir of openjdk8 forest doen't not work

Sebastian Sickelmann sebastian.sickelmann at gmx.de
Mon Aug 15 22:07:09 UTC 2011


Am 12.08.2011 23:27, schrieb Stuart Marks:
> We've run into this before; this is quite irritating. The bug is 
> logged as
>
> http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6668018
>
> Basically you can't do a jdk-subrepo-only build within a forest where 
> you've already done a full forest build. Attempting to do otherwise 
> confuses the build system and results in errors such as you see. [*]
>
> There is a build system rewrite in the works, so we're hoping this 
> problem goes away when that happens.
>
> I think what most of us do is to do full forest builds in a dedicated 
> full forest, and to do jdk-repo-only builds in a standalone jdk repo 
> (not part of the full forest). Note that when you do a jdk-repo-only 
> build you have to set ALT_JDK_IMPORT_PATH to point to a fully built 
> JDK (e.g., one that you've downloaded, or one that you've built in a 
> separate forest).
>
> There's a workaround given in the bug report, which is
>
> $ cd jdk
> $ touch `hg manifest`
> $ cd make
> $ make clean; make
>
> But of course this means that you end up rebuilding all of the jdk 
> subrepo. Not as bad as a full forest rebuild though.
>
> s'marks
>
> [*] The gory details as we understand them:
>
> The problem seems to be that the presence of files from a full forest 
> build confuses the build system when you try to do a build of only the 
> jdk subrepo. There is a hypothesis that this has something to do with 
> Makefiles' use of VPATH, but nobody's taken the time to track this 
> down fully. When you're building in the jdk subrepo, it might be that 
> files in the full forest build output area TOP/build make the build 
> system think that things like sunec.jar are already built. However, a 
> subsequent step that uses sunec.jar looks for that file within 
> TOP/jdk/build and fails to find it there. Touching all the files in 
> the jdk subrepo forces a rebuild of that stuff into TOP/jdk/build.
>
>
> On 8/12/11 2:10 PM, Sebastian Sickelmann wrote:
>> I am sorry i have counted the ../ wrong.
>>
>> It seems to be that sun/security/ec classes are not compiled
>>
>> It tried the following
>> sebastian at sebastian-laptop:~/deve/openjdk8/jdk/make/sun/security$ 
>> make all
>> Begin Processing SUBDIRS: ec other action util krb5 jgss pkcs11 
>> jgss/wrapper
>> smartcardio tools
>> make[1]: Entering directory
>> `/home/sebastian/deve/openjdk8/jdk/make/sun/security/ec'
>> Building lib:../../../../build/linux-i586/lib/i386/libsunec.so
>> Begin parallel compiles: 
>> /home/sebastian/deve/openjdk8/jdk/make/sun/security/ec
>> make[2]: Entering directory
>> `/home/sebastian/deve/openjdk8/jdk/make/sun/security/ec'
>> make[2]:
>> `../../../../build/linux-i586/tmp/sun/sun.security.ec/obj/.files_compiled' 
>> is
>> up to date.
>> make[2]: Leaving directory
>> `/home/sebastian/deve/openjdk8/jdk/make/sun/security/ec'
>> Done with parallel compiles:
>> /home/sebastian/deve/openjdk8/jdk/make/sun/security/ec
>> /bin/mkdir -p 
>> ../../../../build/linux-i586/tmp/sun/sun.security.ec/unsigned
>> rm -f 
>> ../../../../build/linux-i586/tmp/sun/sun.security.ec/unsigned/sunec.jar
>> /usr/lib/jvm/java-1.6.0-openjdk/bin/jar cf
>> ../../../../build/linux-i586/tmp/sun/sun.security.ec/unsigned/sunec.jar 
>> -C
>> ../../../../build/linux-i586/tmp/sun/sun.security.ec/classes 
>> sun/security/ec \
>> -J-XX:-PrintVMOptions -J-XX:+UnlockDiagnosticVMOptions 
>> -J-XX:-LogVMOutput
>> -J-client -J-Xmx512m -J-Xms512m -J-XX:PermSize=32m 
>> -J-XX:MaxPermSize=160m
>> ../../../../build/linux-i586/tmp/sun/sun.security.ec/classes/sun/security/ec 
>> :
>> no such file or directory
>> make[1]: ***
>> [../../../../build/linux-i586/tmp/sun/sun.security.ec/unsigned/sunec.jar] 
>> Error 1
>> make[1]: Leaving directory
>> `/home/sebastian/deve/openjdk8/jdk/make/sun/security/ec'
>> make: *** [all] Error 1
>>
>> Ok it doen't compile because .files_compiled is up to date.
>> But after a clean it compiles only all the .c files but no .java file 
>> and so
>> jar will fail.
>>
>> -- Sebastian
>>
>>
>>
Thanks, it now builds like a charm.

-- Sebastian



More information about the build-dev mailing list