[nfc][cmake] mention that some builtins are no longer bundled#21596
[nfc][cmake] mention that some builtins are no longer bundled#21596ferdymercury wants to merge 2 commits intoroot-project:masterfrom
Conversation
Test Results0 tests 0 ✅ 0s ⏱️ Results for commit 1fcbce6. ♻️ This comment has been updated with latest results. |
|
Thanks. When zstd is merged #21597 and zlib is added to the bundle, this will be merged (and maybe topped up with lzma, which is treated the same. |
|
Thanks for the feedback Danilo :) btw, builtin_xxhash looks like another candidate for off-loading to LCG, in the context of compression |
AFAIK the policy is to keep anything that is strictly required to build minimal ROOT as vendored code and xxhash is one such dependency (required e.g. to build RNTuple) |
I think we are about to abandon this policy. For things that are readily available in most Linuxes and in homebrew, we suggest, in order of preference:
Only option 3 requires network during the configure step. All others could be performed offline. |
| ROOT_BUILD_OPTION(builtin_unuran OFF "Build bundled copy of unuran") | ||
| ROOT_BUILD_OPTION(builtin_vdt OFF "Build VDT internally (requires network)") | ||
| ROOT_BUILD_OPTION(builtin_xrootd OFF "Build XRootD internally (requires network)") | ||
| ROOT_BUILD_OPTION(builtin_xxhash OFF "Build bundled copy of xxHash") |
There was a problem hiding this comment.
| ROOT_BUILD_OPTION(builtin_xxhash OFF "Build bundled copy of xxHash") | |
| ROOT_BUILD_OPTION(builtin_xxhash OFF "Build xxHash internally (requires network)") |
To apply if #21806 gets merged
| ROOT_BUILD_OPTION(builtin_nlohmannjson OFF "Use nlohmann/json.hpp file distributed with ROOT") | ||
| ROOT_BUILD_OPTION(builtin_openssl OFF "Build OpenSSL internally (requires network)") | ||
| ROOT_BUILD_OPTION(builtin_openui5 ON "Use openui5 bundle distributed with ROOT") | ||
| ROOT_BUILD_OPTION(builtin_pcre OFF "Build bundled copy of PCRE") |
There was a problem hiding this comment.
| ROOT_BUILD_OPTION(builtin_pcre OFF "Build bundled copy of PCRE") | |
| ROOT_BUILD_OPTION(builtin_pcre OFF "Build PCRE2 internally (requires network)") |
If #21857 gets merged
but require internet connection [cmake] two more
| ROOT_BUILD_OPTION(builtin_ftgl OFF "Build bundled copy of FTGL") | ||
| ROOT_BUILD_OPTION(builtin_gif OFF "Build bundled copy of libgif") | ||
| ROOT_BUILD_OPTION(builtin_gif OFF "Build libgif internally (requires network)") | ||
| ROOT_BUILD_OPTION(builtin_gl2ps OFF "Build bundled copy of gl2ps") |
There was a problem hiding this comment.
| ROOT_BUILD_OPTION(builtin_gl2ps OFF "Build bundled copy of gl2ps") | |
| ROOT_BUILD_OPTION(builtin_gl2ps OFF "Build gl2ps internally (requires network)") |
depending on #21895
| * The previously vendored builtins `freetype`, `xxhash`, `zlib`, `lzma`, `zstd`, `lz4`, `libpng`, `giflib`, `libjpeg`, `pcre2` and `openssl` should be installed in the system if possible. ROOT will not automatically fall-back to their builtin versions if these are not found: the user is informed of that with a helpful message. If installing these dependencies in the system is not possible, the CMake option `-Dbuiltin_XYZ=ON` has to be consciously chosen by the user. | ||
| * For the builtin versions of `freetype`, `xxhash`, `zlib`, `lzma`, `zstd`, `lz4`, `libpng`, `giflib`, `libjpeg`, `pcre2`, the source tarballs are now fetched from [SPI](https://spi.web.cern.ch)'s [website](https://lcgpackages.web.cern.ch/), as for the vast majority of ROOT's builtins, e.g. `openssl` or `xrootd`. |
There was a problem hiding this comment.
| * The previously vendored builtins `freetype`, `xxhash`, `zlib`, `lzma`, `zstd`, `lz4`, `libpng`, `giflib`, `libjpeg`, `pcre2` and `openssl` should be installed in the system if possible. ROOT will not automatically fall-back to their builtin versions if these are not found: the user is informed of that with a helpful message. If installing these dependencies in the system is not possible, the CMake option `-Dbuiltin_XYZ=ON` has to be consciously chosen by the user. | |
| * For the builtin versions of `freetype`, `xxhash`, `zlib`, `lzma`, `zstd`, `lz4`, `libpng`, `giflib`, `libjpeg`, `pcre2`, the source tarballs are now fetched from [SPI](https://spi.web.cern.ch)'s [website](https://lcgpackages.web.cern.ch/), as for the vast majority of ROOT's builtins, e.g. `openssl` or `xrootd`. | |
| * The previously vendored builtins `freetype`, `xxhash`, `zlib`, `lzma`, `zstd`, `lz4`, `libpng`, `giflib`, `libjpeg`, `pcre2`, `ftgl`, `gl2ps` and `openssl` should be installed in the system if possible. ROOT will not automatically fall-back to their builtin versions if these are not found: the user is informed of that with a helpful message. If installing these dependencies in the system is not possible, the CMake option `-Dbuiltin_XYZ=ON` has to be consciously chosen by the user. | |
| * For the builtin versions of `freetype`, `xxhash`, `zlib`, `lzma`, `zstd`, `lz4`, `libpng`, `giflib`, `libjpeg`, `pcre2`, `ftgl`, `gl2ps`, the source tarballs are now fetched from [SPI](https://spi.web.cern.ch)'s [website](https://lcgpackages.web.cern.ch/), as for the vast majority of ROOT's builtins, e.g. `openssl` or `xrootd`. |
| ROOT_BUILD_OPTION(builtin_fftw3 OFF "Build FFTW3 internally (requires network)") | ||
| ROOT_BUILD_OPTION(builtin_freetype OFF "Build bundled copy of freetype") | ||
| ROOT_BUILD_OPTION(builtin_freetype OFF "Build freetype internally (requires network)") | ||
| ROOT_BUILD_OPTION(builtin_ftgl OFF "Build bundled copy of FTGL") |
There was a problem hiding this comment.
| ROOT_BUILD_OPTION(builtin_ftgl OFF "Build bundled copy of FTGL") | |
| ROOT_BUILD_OPTION(builtin_ftgl OFF "Build FTGL internally (requires network)") |
if #21898 goes in
but require internet connection