On Tue, 13 May 2025 01:17:25 GMT, Chihiro Ito <c...@openjdk.org> wrote:

> When we run configure on Windows, fixpath is used, but this causes an error 
> if the path contains +.
> 
> For example, when we unzip Temurin 24, the directory name created is 
> jdk-24+36. When we specify this as the boot JDK, the following error is 
> output and configure fails
> 
> 
> configure: The path of BOOT_JDK_ARG, which is given as 
> “/mnt/d/opt/jdks/temurin-24+36”, cannot be properly resolved.
> configure: Please see the section “Special Considerations” in building.md.
> configure: This is the error message given by fixpath:
> fixpath: failure: Path '/mnt/d/opt/jdks/temurin-24+36' could not be converted 
> to short path
> configure: error: Cannot continue

@chiroito 
Sorry for coming in late here. While this patch works, and solves your 
immediate problem, I think it opens more questions than it answers. Most 
pressing of all: why did the conversion to shortpath fail? That is supposed to 
be a general method to rewrite any "suspicious" path to a format that is 
guaranteed to work in make with no ill side effects. I believe adding + to the 
set of allowed characters is benign, but I did initially keep this set small 
and restricted, and rather convert to shortpath one time too many than to miss 
some odd characters that will cause trouble later on.

I would like to know more why + failed, and why we don't see any more 
information about what was problematic. Especially when run after JDK-8244533 
was integrated, more information should be given.

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

PR Comment: https://git.openjdk.org/jdk/pull/25197#issuecomment-2894156403

Reply via email to