[issue35921] Use ccache by default

2021-09-24 Thread Łukasz Langa
Łukasz Langa added the comment: It seems to me like the consensus is to not alter CPython's build files because ccache is supposed to be used through its `cc`/`gcc` compiler wrappers. Those can be provided to a ./configure run either by modifying PATH to include the directory with the

[issue35921] Use ccache by default

2019-02-08 Thread Stéphane Wirtel
Stéphane Wirtel added the comment: Hi @Raymond I use this script since 1 year for the compilation of Python, https://github.com/python/cpython/pull/11773#issuecomment-461179522 #!/usr/bin/env fish set number_of_cpu (python3 -c "import os; print(os.sysconf('SC_NPROCESSORS_ONLN'))")

[issue35921] Use ccache by default

2019-02-06 Thread Raymond Hettinger
Raymond Hettinger added the comment: Antoine, thanks for pointing out that ccache exists. I got immediate build-time improvements. For the Mac, I did a "brew install ccache" and prepended "/usr/local/opt/ccache/libexec". No modification of our files was necessary. -- nosy:

[issue35921] Use ccache by default

2019-02-06 Thread Antoine Pitrou
Antoine Pitrou added the comment: (sorry for the typos; a bit sick today) -- ___ Python tracker ___ ___ Python-bugs-list mailing

[issue35921] Use ccache by default

2019-02-06 Thread Antoine Pitrou
Antoine Pitrou added the comment: > Besides not rebuilding .o[bj] files where the sources have not changed, what > else do these tools do? That's a different caching scheme. MSVC, make, ninja and friend will compare timestamps of the .c and .o files are avoid rebuilding if the .o file is

[issue35921] Use ccache by default

2019-02-06 Thread Stéphane Wirtel
Stéphane Wirtel added the comment: time -p make CC="/usr/bin/ccache gcc" --jobs 4 --silent > stdout.txt ^ stderr.txt real 4.36 user 3.69 sys 1.73 on a 4-thread CPU i7-7560U CPU @ 2.40GHz -- nosy: +matrixise ___ Python tracker

[issue35921] Use ccache by default

2019-02-06 Thread Christian Heimes
Christian Heimes added the comment: The PR is not required. I have been using ccache for many years with a custom PATH. On Debian, it's recommended to modify PATH manually. On Fedora PATH is automatically modified by the ccache package. $ echo $PATH

[issue35921] Use ccache by default

2019-02-06 Thread Steve Dower
Steve Dower added the comment: I think the caching that MSVC does naturally handles this well enough - certainly rebuilds normally just build those files that have not changed. Besides not rebuilding .o[bj] files where the sources have not changed, what else do these tools do? --

[issue35921] Use ccache by default

2019-02-06 Thread Antoine Pitrou
Antoine Pitrou added the comment: This is Unix-only, but the same approach may be possible on Windows using clcache (https://github.com/frerich/clcache). -- nosy: +steve.dower ___ Python tracker

[issue35921] Use ccache by default

2019-02-06 Thread Antoine Pitrou
Change by Antoine Pitrou : -- keywords: +patch, patch pull_requests: +11743, 11744 stage: -> patch review ___ Python tracker ___

[issue35921] Use ccache by default

2019-02-06 Thread Antoine Pitrou
Change by Antoine Pitrou : -- keywords: +patch, patch, patch pull_requests: +11743, 11744, 11745 stage: -> patch review ___ Python tracker ___

[issue35921] Use ccache by default

2019-02-06 Thread Antoine Pitrou
Change by Antoine Pitrou : -- keywords: +patch pull_requests: +11743 stage: -> patch review ___ Python tracker ___ ___

[issue35921] Use ccache by default

2019-02-06 Thread Antoine Pitrou
Antoine Pitrou added the comment: I've got a proof-of-concept patch, here are the results: Debug build, uncached real0m50,260s user1m52,663s sys 0m11,305s Debug build, cached real0m4,511s user0m4,009s sys 0m1,547s Non-debug build, uncached real1m18,384s user

[issue35921] Use ccache by default

2019-02-06 Thread Antoine Pitrou
New submission from Antoine Pitrou : While compiling CPython isn't very slow, enabling ccache if found would produce faster builds when developing. -- components: Build messages: 334973 nosy: pitrou priority: normal severity: normal status: open title: Use ccache by default type: