RFR: 8351029: IncludeCustomExtension does not work on cygwin with source code below /home

Erik Joelsson erikj at openjdk.org
Wed May 7 21:23:55 UTC 2025


On Wed, 7 May 2025 15:08:53 GMT, Magnus Ihse Bursie <ihse at openjdk.org> wrote:

> If you check out your source code in Cygwin, somewhere under /home/... (as opposed to /cygpath/...), IncludeCustomExtension does not work.
> 
> The problem is that TOPDIR gets a different lexical value from the spec.gmk file when setup in Makefile, even if this was the same directory. Since THIS_INCLUDE is calculated as a relative path by string substitution of $(TOPDIR), the path failed to relativize correctly.

Is it the `cd $$(TOPDIR)` when calling make from `DefineMakeTargets` that is causing the mismatch that you are correcting by including SPEC here?

make/PreInitSupport.gmk line 256:

> 254:   # We need to include the given SPEC file to setup TOPDIR properly
> 255:   SPEC_FILE := $(strip $2)
> 256:   -include $$(SPEC_FILE)

Is it safe to include SPEC here? I thought the point of PreInit.gmk was that it didn't load it.

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

PR Review: https://git.openjdk.org/jdk/pull/25100#pullrequestreview-2823235338
PR Review Comment: https://git.openjdk.org/jdk/pull/25100#discussion_r2078509849


More information about the build-dev mailing list