RFR: 8326685: Linux builds not reproducible if two builds configured in different build folders

Andrew Leonard aleonard at openjdk.org
Tue Feb 27 08:21:43 UTC 2024


On Tue, 27 Feb 2024 08:13:07 GMT, Andrew Leonard <aleonard at openjdk.org> wrote:

>> Oh you are right, we should always add the OUTPUTDIR to both maps regardless of if it's internal to the WORKSPACE_ROOT or not. Paths relative to the OUTPUTDIR should be stable across builds in different output directories, but paths inside the OUTPUTDIR, expressed as relative to the WORKSPACE_ROOT will vary.
>
>> I have not thought this fully through, but just throwing out a question: would this work even if one build directory were inside the workspace root, and the other not?
> 
> Yes, I have tested that scenario as well, and does work. It was in fact the scenario in which I discovered the problem in the first place.

> Oh you are right, we should always add the OUTPUTDIR to both maps regardless of if it's internal to the WORKSPACE_ROOT or not. Paths relative to the OUTPUTDIR should be stable across builds in different output directories, but paths inside the OUTPUTDIR, expressed as relative to the WORKSPACE_ROOT will vary.

@erikj79 @magicus Yes, it needs to always be present as you've pointed out the OUTPUTDIR when within the WORKSPACE will be eg.WORKSPACE/build/linux-aarch64-server-release/support and the standard WORKSPACE mapping will make that build/linux-aarch64-server-release/support, but a build dir outside will be simply <any_path>/support

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

PR Review Comment: https://git.openjdk.org/jdk/pull/18009#discussion_r1503813251


More information about the build-dev mailing list