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