Skip to content

windows: gyp 0.5.0 made build time multiple times slower #35921

Closed
@bzoz

Description

  • Version: master
  • Platform: Windows
  • Subsystem: build files

What steps will reproduce the bug?

GYP update in #32698 made the build time rise from 3minutes to 16minutes at least on the latest MSBuild 16.7.0+b89cb5fde.

Additional information

Looks like the GYP change changed the genrated .vcxproj files a bit, e.g. embedtest.vcxproj:

diff "fast\embedtest.vcxproj" "slow\embedtest.vcxproj"
137,139c137,145
<     <ClCompile Include="src\node_snapshot_stub.cc"/>
<     <ClCompile Include="src\node_code_cache_stub.cc"/>
<     <ClCompile Include="test\embedding\embedtest.cc"/>
---
>     <ClCompile Include="src\node_snapshot_stub.cc">
>       <ObjectFileName>$(IntDir)\src\node_snapshot_stub.obj</ObjectFileName>
>     </ClCompile>
>     <ClCompile Include="src\node_code_cache_stub.cc">
>       <ObjectFileName>$(IntDir)\src\node_code_cache_stub.obj</ObjectFileName>
>     </ClCompile>
>     <ClCompile Include="test\embedding\embedtest.cc">
>       <ObjectFileName>$(IntDir)\test\embedding\embedtest.obj</ObjectFileName>
>     </ClCompile>
142a149
>       <ObjectFileName>$(IntDir)\tools\msvs\pch\node_pch.obj</ObjectFileName>

Looks like the <ObjectFileName> tags make the build not run in parallel, thus dramatically increasing the build time.

/cc @nodejs/build-files @nodejs/platform-windows

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions