On Mon, 9 Oct 2023 10:21:58 GMT, Frederic Thevenet <ftheve...@openjdk.org> 
wrote:

>> When building OpenJDK on Windows using "--with-native-debug-info=external", 
>> the resulting debug symbols are saved in files located in the same folder as 
>> the corresponding executable or library and named by swapping the extension 
>> ".exe" or ".dll" for a ".pdb" one (or "diz" if option 
>> "--with-native-debug-info=zipped" is used), which means that in the event of 
>> an exe and a dll file sharing the same target folder and file name (e.g. 
>> `bin\java.exe` and `bin\java.dll`), we have to choose whether symbols in 
>> `bin\java.pdb` will refer to the exe or the dll; we can't have both.
>> 
>> This PR addresses this issue by adopting a different naming strategy for the 
>> resulting symbol files where we keep the full name of every file - including 
>> its `dll` or `exe` extension) and then add the appropriate `.pdb`, `.map` or 
>> `.diz` extension .
>> 
>> For instance,  `jvm.dll` symbols are no longer called `jvm.pdb` but instead 
>> `jvm.dll.pdb`. Similarly, it is now `jvm.dll.diz` when using zipped symbols, 
>> and "jvm.dll.stripped.pdb" for stripped symbols (i.e. when 
>> "--with-external-symbols-in-bundles=public" is used).
>> 
>> The PR also removes the existing filtering for java.pdb, jimage.pdb and 
>> jpackage.pdb used to guaranty the dll symbols were bundled over the ones 
>> from the exe, since we no longer need that.
>
> Frederic Thevenet has updated the pull request incrementally with one 
> additional commit since the last revision:
> 
>   Added a test to verify that symbols are available

All that to say that it looks like there might be a bug in ` test-prebuilt` 
(which doesn't mean there couldn't be one GHA too, of course...)

Apologies if I'm just shooting in the dark here, but at a cursory glance, I 
notice that in RunTestsPrebuilt.gmk,   SYMBOLS_IMAGE_DIR isn't checked for 
validity like JDK_IMAGE_DIR or TEST_IMAGE_DIR are; do you know why that is? 
Although from what I understand, it wouldn't transform the path, it would have 
caught the problem, wouldn't it?

https://github.com/openjdk/jdk/blob/80232b7e753129ca7a4f1ca9b70844e0c7d8eabf/make/RunTestsPrebuilt.gmk#L121C9-L124

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

PR Comment: https://git.openjdk.org/jdk/pull/16039#issuecomment-1755859386

Reply via email to