RFR: 8326587: Separate out Microsoft toolchain linking [v4]

Jiangli Zhou jiangli at openjdk.org
Tue Feb 27 01:32:51 UTC 2024


On Mon, 26 Feb 2024 11:03:19 GMT, Magnus Ihse Bursie <ihse at openjdk.org> wrote:

>> There is not much overlap on how linking is done on Windows on one hand, and on all Unix platforms on the other. This makes Link.gmk basically consists of two parts, each in it own half of if statements, and the few common parts are artificially shoehorned in to fit both sides.
>> 
>> The code will be much clearer if we just split this into two different files.
>> 
>> Note that this PR slightly collides with JDK-8326583 (https://github.com/openjdk/jdk/pull/17986). Whichever of this goes in first will mean that the other one needs to make some adaptations.
>
> Magnus Ihse Bursie has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Fix indentation

make/common/native/Link.gmk line 131:

> 129: 	    $(if $$($1_LINK_OBJS_RELATIVE), $$(CD) $$(OUTPUTDIR) ; ) \
> 130: 	      $$($1_LD) $(LDFLAGS_CXX_PARTIAL_LINKING) $$($1_SYSROOT_LDFLAGS) \
> 131: 	        -o $$($1_TARGET_RELOCATABLE) \

I noticed this change that replaces `$(LD_OUT_OPTION)` with `-o` when reviewing our integration changes. $1_LINK_OBJS_RELATIVE is currently only supported on Linux/clang, it still seems good to not take away the flexibility of specifying the non-linker specific option string here. Any thoughts?

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/17987#discussion_r1503520025


More information about the build-dev mailing list