You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Between the recent addition of riscv64 images & the poor reliability of Travis CI recently, I was searching for way to speed-up GitHub Actions while keeping a "monolithic" & native build. This lead to #1833 that uses a statically built clang running with the docker host architecture in order to build all dependencies as well as CPython itself in some cases.
The next step is, IMHO, to use the same trick building some wheels. Pull requests have been opened to build CMake & Ninja allowing to reduce CI times by a factor ~5.
Limitation:
This is not a full LLVM toolchain but only a subset of tools that can be built statically (clang/lld/readelf/nm/....).
Under the hood, when building, clang is still using the libgcc/liibstdc++ coming with current images so you can't get newer language features that require a newer libstdc++ than what's available in the image.
It can speed-up the build, provide better hardware support, allow for newer language features not requiring runtime support.
If there is some traction & positive feedback here, we might want to ease the setup by incorporating helper scripts directly in the images.
Please do share your experience or interest with this kind of setup.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
-
Between the recent addition of
riscv64images & the poor reliability of Travis CI recently, I was searching for way to speed-up GitHub Actions while keeping a "monolithic" & native build. This lead to #1833 that uses a statically built clang running with the docker host architecture in order to build all dependencies as well as CPython itself in some cases.The next step is, IMHO, to use the same trick building some wheels. Pull requests have been opened to build CMake & Ninja allowing to reduce CI times by a factor ~5.
Limitation:
This is not a full LLVM toolchain but only a subset of tools that can be built statically (
clang/lld/readelf/nm/....).Under the hood, when building, clang is still using the
libgcc/liibstdc++coming with current images so you can't get newer language features that require a newerlibstdc++than what's available in the image.It can speed-up the build, provide better hardware support, allow for newer language features not requiring runtime support.
If there is some traction & positive feedback here, we might want to ease the setup by incorporating helper scripts directly in the images.
Please do share your experience or interest with this kind of setup.
Beta Was this translation helpful? Give feedback.
All reactions