RFR: JDK-8142907 Integration of minor fixes from the build-infra project

Magnus Ihse Bursie magnus.ihse.bursie at oracle.com
Fri Nov 13 11:53:59 UTC 2015


On 2015-11-13 12:07, Magnus Ihse Bursie wrote:
> It turned out I was a bit to quick to send out this review request. 
> There were a couple of issues I didn't spot earlier. The new -h flag 
> on solaris prompted the linker to complain when we tried to set a 
> soname on an executable. We've done this for other toolchains before 
> but they have just silently ignored our error. The changes in link 
> flags to include a comma highlighted some places were $ was used 
> instead of $$ when calling SetupNativeCompilation within another macro 
> (jdk launchers and demos).
>
> And finally, Erik reported to me privately that there was dead code in 
> hotspot.m4 regarding SALIB_NAME, which is not used in the old hotspot 
> build nor will be used in the new, so I removed that as well.
>
> New, updated review:
> http://cr.openjdk.java.net/~ihse/JDK-8142907-build-infra-integration-closed/webrev.03/ 
>
After discussion with Erik, I have also removed the following section 
from compare_exceptions.sh.incl:
# Some xor instructions end up with different args in the lib but not in 
the object files.
ACCEPTED_DIS_DIFF="
./demo/jvmti/waiters/lib/libwaiters.so

With the improved DIS_DIFF_FILTER, this exception was not needed. Sorry 
about this -- the build-infra and the mainline version of the exception 
list file had drifted quite far away from each other, making the merge 
horrible :-&

/Magnus

>
> /Magnus
>
>
> On 2015-11-13 03:43, Magnus Ihse Bursie wrote:
>> The build-infra project has collected a number of minor fixes and 
>> changes during the new hotspot build development. It's a mix of 
>> code cleanup and new capabilities.
>>
>> Not all of these new features are immediately beneficial to the JDK, 
>> but they will be needed for the upcoming new Hotspot build, and it 
>> will not hurt to have them in mainline. (In fact, it will 
>> tremendously help merging between mainline and build-infra.)
>>
>> The fix addresses these issues:
>>
>> In general:
>> * Break out hotspot configuration into hotspot.m4
>> * Long link lines uses @-files
>> * Consistently use -Wl instead of -Xlinker
>> * Improve clang on linux compilation
>> * Set shared library name explicitely on solaris
>> * Set correct shared library flag on Windows (-dll)
>> * Consistency fixes for build toolchain
>> * Bring compare script up to date
>> * General code/whitespace cleanup
>> * Additional functionality in MakeBase
>>
>> In NativeCompilation.gmk:
>> * More efficient vardeps for per-file CFLAGS
>> * Fewer shell executions (means better performance on Windows)
>> * EXCLUDE_PATTERN and EXTRA_OBJECT_FILES
>> * Debug symbols on macosx (disabled for existing code to keep current 
>> behavior)
>>
>> Enabling debug info on macosx on existing jdk should be treated in a 
>> follow-up bug.
>> Bug: https://bugs.openjdk.java.net/browse/JDK-8142907
>> WebRev: 
>> http://cr.openjdk.java.net/~ihse/JDK-8142907-build-infra-integration-closed/webrev.01
>>
>> (It turned out that WebRev could not at the same time include files 
>> from multiple repos and track the history of a "hg cp":ied file. So I 
>> created an alternative revision here:
>> http://cr.openjdk.java.net/~ihse/JDK-8142907-build-infra-integration-closed/webrev.02/ 
>>
>>
>> It does not include the jdk files, but hotspot.m4 might be easier to 
>> understand)
>>
>> /Magnus
>




More information about the build-dev mailing list