Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enable ccache on Windows v2 #56847

Open
wants to merge 11 commits into
base: main
Choose a base branch
from

Conversation

StefanStojanovic
Copy link
Contributor

@StefanStojanovic StefanStojanovic commented Jan 31, 2025

This is a continuation of work that started here and considers review comments. Since there were 2 potential approaches, this PR implements the one not represented in the previous PR. For more details, you can just read that one's description, but in short, the idea here is to disable PCH when using ccache and Clang (MSVC cannot compile with PCH). This makes initial compilation twice as long as when using PCH, but the following ones are much faster.

The fIrst 3 commits in this PR are the same as the ones in the previous ones, the only difference is the 4th one.

Refs: #56705

@StefanStojanovic StefanStojanovic added windows Issues and PRs related to the Windows platform. build Issues and PRs related to build files or the CI. labels Jan 31, 2025
@nodejs-github-bot
Copy link
Collaborator

Review requested:

  • @nodejs/gyp
  • @nodejs/v8-update

@nodejs-github-bot nodejs-github-bot added doc Issues and PRs related to the documentations. install Issues and PRs related to the installers. needs-ci PRs that need a full CI run. tools Issues and PRs related to the tools directory. v8 engine Issues and PRs related to the V8 dependency. labels Jan 31, 2025
configure.py Outdated Show resolved Hide resolved
configure.py Outdated Show resolved Hide resolved
configure.py Outdated Show resolved Hide resolved
configure.py Outdated Show resolved Hide resolved
tools/v8_gypfiles/v8.gyp Outdated Show resolved Hide resolved
common.gypi Outdated Show resolved Hide resolved
StefanStojanovic and others added 11 commits February 4, 2025 16:33
Prior to these changes compilation with ccache was broken because of
the .h file regeneration in each compilation.
Add cp command in building docs
Remove CCACHE_USED macro
Disable PCH when using Clang and ccache
Co-authored-by: Joyee Cheung <[email protected]>
Co-authored-by: Joyee Cheung <[email protected]>
Co-authored-by: Joyee Cheung <[email protected]>
Co-authored-by: Joyee Cheung <[email protected]>
Co-authored-by: Joyee Cheung <[email protected]>
@StefanStojanovic
Copy link
Contributor Author

Thanks for the review and change suggestions @joyeecheung I added one more change missing in vcbuild.bat and everything seems to be OK now.

@StefanStojanovic StefanStojanovic added the request-ci Add this label to start a Jenkins CI on a PR. label Feb 4, 2025
@github-actions github-actions bot removed the request-ci Add this label to start a Jenkins CI on a PR. label Feb 4, 2025
@nodejs-github-bot
Copy link
Collaborator

@nodejs-github-bot
Copy link
Collaborator

@nodejs-github-bot
Copy link
Collaborator

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
build Issues and PRs related to build files or the CI. doc Issues and PRs related to the documentations. install Issues and PRs related to the installers. needs-ci PRs that need a full CI run. tools Issues and PRs related to the tools directory. v8 engine Issues and PRs related to the V8 dependency. windows Issues and PRs related to the Windows platform.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants