RFR: 8325963: Clean up NativeCompilation.gmk and its newly created parts

Magnus Ihse Bursie ihse at openjdk.org
Mon Feb 19 12:11:00 UTC 2024


On Thu, 15 Feb 2024 14:13:19 GMT, Magnus Ihse Bursie <ihse at openjdk.org> wrote:

> This is a follow-up to [JDK-8325877](https://bugs.openjdk.org/browse/JDK-8325877). I was careful in that bug not to change order of any lines, only split up the original file into parts.
> 
> In this PR, I use the new structure to improve the design. I collect the functionality into three clearly separate phases, preparation, compilation and linking. I use consistent naming to reveal whether a function just sets up variables, or create output. I simplify and split up a few extra hard to read functions. I move some code around so it is placed more logically.
> 
> It can be hard to convince yourself that the changes are correct if you just look at the end result. I have tried to make small and clear changes in each separate commit, and to explain in the commit title what I am doing. I recommend reviewing this PR [commit by commit](https://github.com/openjdk/jdk/pull/17873/commits).

I have fully verified using COMPARE_BUILD that the resulting native code is byte-by-byte identical on Linux, macOS and Windows, so that should confirm the correctness of this refactoring.

And @TheShermanTanker, I apologize, but this one is probably going to be much harder for you to integrate into your port. :-(

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

PR Comment: https://git.openjdk.org/jdk/pull/17873#issuecomment-1952314727
PR Comment: https://git.openjdk.org/jdk/pull/17873#issuecomment-1952316464


More information about the build-dev mailing list