RFR: JDK-8179079: Incremental HotSpot builds broken on Windows

Tim Bell tim.bell at oracle.com
Sat Apr 22 16:30:48 UTC 2017


Hi Erik:

Looks good.

/Tim

> We have hit another issue related to the new Cygwin behavior regarding
> \r line endings. The incremental native build on Windows breaks because
> we get ^M characters in the *.d files. Output from "make --debug=b"
> typically looks like this:
>
> Prerequisite
> '/cygdrive/c/erik/jdk9-dev/hotspot/src/share/vm/adlc/adlc.hpp^M' of
> target
> '/cygdrive/c/erik/jdk9-dev/build/windows-x64/hotspot/variant-server/tools/adlc/objs/adlparse.obj'
> does not exist.
>
> It's annoying to be fixing these one at a time like this, but I can't
> really see a general solution to the problem. Here is the simplest fix I
> could come up with for this particular problem:
>
> diff -r 6832b2d9d1ae make/common/NativeCompilation.gmk
> --- a/make/common/NativeCompilation.gmk Fri Apr 21 11:31:09 2017 +0200
> +++ b/make/common/NativeCompilation.gmk Fri Apr 21 16:48:11 2017 +0200
> @@ -165,6 +165,7 @@
>  WINDOWS_SHOWINCLUDE_SED_PATTERN := \
>      -e '/^Note: including file:/!d' \
>      -e 's|Note: including file: *||' \
> +    -e 's|\r||g' \
>      -e 's|\\|/|g' \
>      -e 's|^\([a-zA-Z]\):|$(UNIX_PATH_PREFIX)/\1|g' \
>      -e '\|$(TOPDIR)|I !d' \
>
>
> This sed expression is used to rewrite the output of CL's -showIncludes
> into a list of header files with absolute unix paths.
>
> /Erik
>




More information about the build-dev mailing list