RFR: JDK-8221764: Reduce make Init.gmk logging overhead

Tim Bell tim.bell at oracle.com
Wed Apr 3 18:51:09 UTC 2019


Erik:

> The Init.gmk and InitSupport.gmk makefiles provide the foundational
> framework for bootstrapping the build. That bootstrap process has grown
> over time and is starting to take significant time to execute on
> Windows. One reason for this is that every extra command executed at
> this level gets the whole build log piping construct added to it. On
> Windows, this amounts to quite a few extra processes.
>
> I would like to reduce this by introducing a simpler log piping
> construct for commands that are not expected to generate both stdout and
> stderr output, typically simple "echo" and "printf" statements. For
> these a simple "| tee -a <logfile>" should suffice.
>
> This change slightly improves incremental build performance on Windows.
>
> Bug: https://bugs.openjdk.java.net/browse/JDK-8221764
>
> Webrev: http://cr.openjdk.java.net/~erikj/8221764/webrev.01/

http://cr.openjdk.java.net/~erikj/8221764/webrev.01/make/Init.gmk.html

make/Init.gmk has a typo:

241     override BUILD_LOG_PIP_SIMPLE :=
should be
241     override BUILD_LOG_PIPE_SIMPLE :=

Looks good otherwise.  No need for a new webrev.

Tim



More information about the build-dev mailing list