From d7e054089c11a9bf239ab567368ce691c429cfcf Mon Sep 17 00:00:00 2001 From: ferdymercury Date: Fri, 13 Mar 2026 12:55:18 +0100 Subject: [PATCH 01/14] [cmake] mention that builtins are no longer bundled but require internet connection [cmake] two more --- cmake/modules/RootBuildOptions.cmake | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/cmake/modules/RootBuildOptions.cmake b/cmake/modules/RootBuildOptions.cmake index c589c3014ec89..0c882e12f1814 100644 --- a/cmake/modules/RootBuildOptions.cmake +++ b/cmake/modules/RootBuildOptions.cmake @@ -86,29 +86,29 @@ ROOT_BUILD_OPTION(builtin_cling ON "Build bundled copy of Cling. Only build with MARK_AS_ADVANCED(builtin_cling) ROOT_BUILD_OPTION(builtin_civetweb ON "Use civetweb distributed with ROOT") ROOT_BUILD_OPTION(builtin_fftw3 OFF "Build FFTW3 internally (requires network) [GPL]") -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") -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") ROOT_BUILD_OPTION(builtin_gsl OFF "Build GSL internally (requires network) [GPL]") ROOT_BUILD_OPTION(builtin_gtest OFF "Build googletest internally (requires network)") -ROOT_BUILD_OPTION(builtin_jpeg OFF "Build bundled copy of libjpeg") +ROOT_BUILD_OPTION(builtin_jpeg OFF "Build libjpeg internally (requires network)") ROOT_BUILD_OPTION(builtin_llvm ON "Build bundled copy of LLVM") -ROOT_BUILD_OPTION(builtin_lz4 OFF "Build bundled copy of lz4") -ROOT_BUILD_OPTION(builtin_lzma OFF "Build bundled copy of lzma") +ROOT_BUILD_OPTION(builtin_lz4 OFF "Build lz4 internally (requires network)") +ROOT_BUILD_OPTION(builtin_lzma OFF "Build lzma internally (requires network)") 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") -ROOT_BUILD_OPTION(builtin_png OFF "Build bundled copy of libpng") +ROOT_BUILD_OPTION(builtin_png OFF "Build libpng internally (requires network)") ROOT_BUILD_OPTION(builtin_tbb OFF "Build TBB internally (requires network)") ROOT_BUILD_OPTION(builtin_tiff OFF "Build libtiff internally (requires network)") ROOT_BUILD_OPTION(builtin_unuran OFF "Build bundled copy of unuran [GPL]") 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") -ROOT_BUILD_OPTION(builtin_zlib OFF "Build bundled copy of zlib") -ROOT_BUILD_OPTION(builtin_zstd OFF "Build included libzstd, or use system libzstd") +ROOT_BUILD_OPTION(builtin_zlib OFF "Build zlib internally (requires network)") +ROOT_BUILD_OPTION(builtin_zstd OFF "Build zstd internally (requires network)") ROOT_BUILD_OPTION(ccache OFF "Enable ccache usage for speeding up builds") ROOT_BUILD_OPTION(cefweb OFF "Enable support for CEF (Chromium Embedded Framework) web-based display") ROOT_BUILD_OPTION(check_connection ON "Fail the configuration step if there is no internet connection, but it's required for the build") From e197cb36d1d41f2e18fffab8f09c848a063248e2 Mon Sep 17 00:00:00 2001 From: ferdymercury Date: Sun, 12 Apr 2026 13:52:59 +0200 Subject: [PATCH 02/14] [nfc] update release notes --- README/ReleaseNotes/v640/index.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README/ReleaseNotes/v640/index.md b/README/ReleaseNotes/v640/index.md index 47f86c5873f2e..e66993cdf086b 100644 --- a/README/ReleaseNotes/v640/index.md +++ b/README/ReleaseNotes/v640/index.md @@ -87,8 +87,8 @@ The following people have contributed to this new version: ### Moving from builtin dependencies to system-provided packages * The general direction of the ROOT project is to become more and more reliant on system packages. It is *recommended* to make the packages required by ROOT available on the system, e.g. via a package manager, and not with the builtin mechanism. This allows for timely updates and reduces the size of the installed binaries. -* The previously vendored builtins `freetype`, `zlib`, `lzma`, `zstd`, `lz4`, `libpng`, `giflib`, `libjpeg`, 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`, `zlib`, `lzma`, `zstd`, `lz4`, `libpng`, `giflib`, `libjpeg`, 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` 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`. ## Core Libraries From 7b465f84743c0d6224fdd33f2fb07c7be1ed1410 Mon Sep 17 00:00:00 2001 From: ferdymercury Date: Wed, 15 Apr 2026 07:32:28 +0200 Subject: [PATCH 03/14] Update cmake/modules/RootBuildOptions.cmake --- cmake/modules/RootBuildOptions.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmake/modules/RootBuildOptions.cmake b/cmake/modules/RootBuildOptions.cmake index 0c882e12f1814..657820597b966 100644 --- a/cmake/modules/RootBuildOptions.cmake +++ b/cmake/modules/RootBuildOptions.cmake @@ -89,7 +89,7 @@ ROOT_BUILD_OPTION(builtin_fftw3 OFF "Build FFTW3 internally (requires network) [ ROOT_BUILD_OPTION(builtin_freetype OFF "Build freetype internally (requires network)") ROOT_BUILD_OPTION(builtin_ftgl OFF "Build bundled copy of FTGL") ROOT_BUILD_OPTION(builtin_gif OFF "Build libgif internally (requires network)") -ROOT_BUILD_OPTION(builtin_gl2ps OFF "Build bundled copy of gl2ps") +ROOT_BUILD_OPTION(builtin_gl2ps OFF "Build gl2ps internally (requires network)") ROOT_BUILD_OPTION(builtin_gsl OFF "Build GSL internally (requires network) [GPL]") ROOT_BUILD_OPTION(builtin_gtest OFF "Build googletest internally (requires network)") ROOT_BUILD_OPTION(builtin_jpeg OFF "Build libjpeg internally (requires network)") From 72371489317dc986230065e0232921d0aac5c086 Mon Sep 17 00:00:00 2001 From: ferdymercury Date: Tue, 5 May 2026 20:52:43 +0200 Subject: [PATCH 04/14] Apply suggestion from @ferdymercury --- cmake/modules/RootBuildOptions.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmake/modules/RootBuildOptions.cmake b/cmake/modules/RootBuildOptions.cmake index 657820597b966..8750db242784c 100644 --- a/cmake/modules/RootBuildOptions.cmake +++ b/cmake/modules/RootBuildOptions.cmake @@ -96,7 +96,7 @@ ROOT_BUILD_OPTION(builtin_jpeg OFF "Build libjpeg internally (requires network)" ROOT_BUILD_OPTION(builtin_llvm ON "Build bundled copy of LLVM") ROOT_BUILD_OPTION(builtin_lz4 OFF "Build lz4 internally (requires network)") ROOT_BUILD_OPTION(builtin_lzma OFF "Build lzma internally (requires network)") -ROOT_BUILD_OPTION(builtin_nlohmannjson OFF "Use nlohmann/json.hpp file distributed with ROOT") +ROOT_BUILD_OPTION(builtin_nlohmannjson OFF "Build nlohmann/json internally (requires network)") 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") From 9f87d8167a2c34a71529c5613b675a023ba9eb77 Mon Sep 17 00:00:00 2001 From: ferdymercury Date: Tue, 5 May 2026 20:53:20 +0200 Subject: [PATCH 05/14] Apply suggestion from @ferdymercury --- cmake/modules/RootBuildOptions.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmake/modules/RootBuildOptions.cmake b/cmake/modules/RootBuildOptions.cmake index 8750db242784c..5f14f9b1cfe46 100644 --- a/cmake/modules/RootBuildOptions.cmake +++ b/cmake/modules/RootBuildOptions.cmake @@ -99,7 +99,7 @@ ROOT_BUILD_OPTION(builtin_lzma OFF "Build lzma internally (requires network)") ROOT_BUILD_OPTION(builtin_nlohmannjson OFF "Build nlohmann/json internally (requires network)") 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") +ROOT_BUILD_OPTION(builtin_pcre OFF "Build PCRE2 internally (requires network)") ROOT_BUILD_OPTION(builtin_png OFF "Build libpng internally (requires network)") ROOT_BUILD_OPTION(builtin_tbb OFF "Build TBB internally (requires network)") ROOT_BUILD_OPTION(builtin_tiff OFF "Build libtiff internally (requires network)") From 808d02be470b06a3cf7566508af237807456a223 Mon Sep 17 00:00:00 2001 From: ferdymercury Date: Tue, 5 May 2026 20:53:35 +0200 Subject: [PATCH 06/14] Apply suggestion from @ferdymercury --- cmake/modules/RootBuildOptions.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmake/modules/RootBuildOptions.cmake b/cmake/modules/RootBuildOptions.cmake index 5f14f9b1cfe46..6d4624ae32322 100644 --- a/cmake/modules/RootBuildOptions.cmake +++ b/cmake/modules/RootBuildOptions.cmake @@ -106,7 +106,7 @@ ROOT_BUILD_OPTION(builtin_tiff OFF "Build libtiff internally (requires network)" ROOT_BUILD_OPTION(builtin_unuran OFF "Build bundled copy of unuran [GPL]") 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") +ROOT_BUILD_OPTION(builtin_xxhash OFF "Build xxHash internally (requires network)") ROOT_BUILD_OPTION(builtin_zlib OFF "Build zlib internally (requires network)") ROOT_BUILD_OPTION(builtin_zstd OFF "Build zstd internally (requires network)") ROOT_BUILD_OPTION(ccache OFF "Enable ccache usage for speeding up builds") From 28b52e2583f431ec3f924b2392810435d903adf2 Mon Sep 17 00:00:00 2001 From: ferdymercury Date: Tue, 19 May 2026 16:57:59 +0200 Subject: [PATCH 07/14] Update cmake/modules/RootBuildOptions.cmake --- cmake/modules/RootBuildOptions.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmake/modules/RootBuildOptions.cmake b/cmake/modules/RootBuildOptions.cmake index 6d4624ae32322..c0147476ad122 100644 --- a/cmake/modules/RootBuildOptions.cmake +++ b/cmake/modules/RootBuildOptions.cmake @@ -87,7 +87,7 @@ MARK_AS_ADVANCED(builtin_cling) ROOT_BUILD_OPTION(builtin_civetweb ON "Use civetweb distributed with ROOT") ROOT_BUILD_OPTION(builtin_fftw3 OFF "Build FFTW3 internally (requires network) [GPL]") ROOT_BUILD_OPTION(builtin_freetype OFF "Build freetype internally (requires network)") -ROOT_BUILD_OPTION(builtin_ftgl OFF "Build bundled copy of FTGL") +ROOT_BUILD_OPTION(builtin_ftgl OFF "Build FTGL internally (requires network)") ROOT_BUILD_OPTION(builtin_gif OFF "Build libgif internally (requires network)") ROOT_BUILD_OPTION(builtin_gl2ps OFF "Build gl2ps internally (requires network)") ROOT_BUILD_OPTION(builtin_gsl OFF "Build GSL internally (requires network) [GPL]") From 538d72f697f5a84f04ce01f66d6151653940a11d Mon Sep 17 00:00:00 2001 From: ferdymercury Date: Tue, 30 Jun 2026 08:04:57 +0200 Subject: [PATCH 08/14] Update cmake/modules/RootBuildOptions.cmake --- cmake/modules/RootBuildOptions.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmake/modules/RootBuildOptions.cmake b/cmake/modules/RootBuildOptions.cmake index c0147476ad122..3137a1ae1e836 100644 --- a/cmake/modules/RootBuildOptions.cmake +++ b/cmake/modules/RootBuildOptions.cmake @@ -103,7 +103,7 @@ ROOT_BUILD_OPTION(builtin_pcre OFF "Build PCRE2 internally (requires network)") ROOT_BUILD_OPTION(builtin_png OFF "Build libpng internally (requires network)") ROOT_BUILD_OPTION(builtin_tbb OFF "Build TBB internally (requires network)") ROOT_BUILD_OPTION(builtin_tiff OFF "Build libtiff internally (requires network)") -ROOT_BUILD_OPTION(builtin_unuran OFF "Build bundled copy of unuran [GPL]") +ROOT_BUILD_OPTION(builtin_unuran OFF "Build unuran internally (requires network) [GPL]") 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 xxHash internally (requires network)") From 2c72cb252520b71c6c4f92e7e2a8c4c6a89e1b45 Mon Sep 17 00:00:00 2001 From: ferdymercury Date: Tue, 30 Jun 2026 08:06:13 +0200 Subject: [PATCH 09/14] Apply suggestion from @ferdymercury --- cmake/modules/RootBuildOptions.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmake/modules/RootBuildOptions.cmake b/cmake/modules/RootBuildOptions.cmake index 3137a1ae1e836..fb02169c8d8b4 100644 --- a/cmake/modules/RootBuildOptions.cmake +++ b/cmake/modules/RootBuildOptions.cmake @@ -84,7 +84,7 @@ ROOT_BUILD_OPTION(builtin_cfitsio OFF "Build CFITSIO internally (requires networ ROOT_BUILD_OPTION(builtin_clang ON "Build bundled copy of Clang") ROOT_BUILD_OPTION(builtin_cling ON "Build bundled copy of Cling. Only build with an external cling if you know what you are doing: associating ROOT commits with cling commits is tricky.") MARK_AS_ADVANCED(builtin_cling) -ROOT_BUILD_OPTION(builtin_civetweb ON "Use civetweb distributed with ROOT") +ROOT_BUILD_OPTION(builtin_civetweb ON "Build civetweb internally (requires network)") ROOT_BUILD_OPTION(builtin_fftw3 OFF "Build FFTW3 internally (requires network) [GPL]") ROOT_BUILD_OPTION(builtin_freetype OFF "Build freetype internally (requires network)") ROOT_BUILD_OPTION(builtin_ftgl OFF "Build FTGL internally (requires network)") From 220e0d437ec36a9ee6b52b9b8d2ccabbc3a4cc2a Mon Sep 17 00:00:00 2001 From: ferdymercury Date: Tue, 30 Jun 2026 08:11:58 +0200 Subject: [PATCH 10/14] Update index.md --- README/ReleaseNotes/v642/index.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/README/ReleaseNotes/v642/index.md b/README/ReleaseNotes/v642/index.md index 18ba40b6bfa2a..03fb443ed3f62 100644 --- a/README/ReleaseNotes/v642/index.md +++ b/README/ReleaseNotes/v642/index.md @@ -45,6 +45,14 @@ The following people have contributed to this new version: * The `builtin_zeromq` and `builtin_cppzmq` build options that were deprecated in ROOT 6.40 are now removed. * The ROOT **auth** package together with `TVirtualAuth` and `TROOT::GetListOfSecContexts()`, and the **authenticated sockets** (`TSocket::CreateAuthSocket()`) feature are now removed following deprecation in ROOT 6.40. +## Build System + +### Moving from builtin dependencies to system-provided packages + +* The general direction of the ROOT project is to become more and more reliant on system packages. It is *recommended* to make the packages required by ROOT available on the system, e.g. via a package manager, and not with the builtin mechanism. This allows for timely updates and reduces the size of the installed binaries. +* The previously vendored builtins `ftgl`, `gl2ps`, `gtest`, `nlohmann_json` 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 `ftgl`, `gl2ps`, `gtest`, `nlohmann_json`, `unuran`, `civetweb`, 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. + ## Python Interface ## I/O From df54371c93c19a8c8e75e6def1d78223d14e6fe8 Mon Sep 17 00:00:00 2001 From: ferdymercury Date: Tue, 30 Jun 2026 08:13:12 +0200 Subject: [PATCH 11/14] Update index.md --- README/ReleaseNotes/v640/index.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README/ReleaseNotes/v640/index.md b/README/ReleaseNotes/v640/index.md index e66993cdf086b..d189d613f1a1f 100644 --- a/README/ReleaseNotes/v640/index.md +++ b/README/ReleaseNotes/v640/index.md @@ -87,8 +87,8 @@ The following people have contributed to this new version: ### Moving from builtin dependencies to system-provided packages * The general direction of the ROOT project is to become more and more reliant on system packages. It is *recommended* to make the packages required by ROOT available on the system, e.g. via a package manager, and not with the builtin mechanism. This allows for timely updates and reduces the size of the installed binaries. -* 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`, `zlib`, `lzma`, `zstd`, `lz4`, `libpng`, `giflib`, `libjpeg` 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`, `zlib`, `lzma`, `zstd`, `lz4`, `libpng`, `giflib`, `libjpeg` 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`. ## Core Libraries From a8d82b7f2fd9b9d746ad8f50d46e85b3d2a1356a Mon Sep 17 00:00:00 2001 From: ferdymercury Date: Tue, 30 Jun 2026 08:13:41 +0200 Subject: [PATCH 12/14] Update index.md --- README/ReleaseNotes/v640/index.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README/ReleaseNotes/v640/index.md b/README/ReleaseNotes/v640/index.md index d189d613f1a1f..47f86c5873f2e 100644 --- a/README/ReleaseNotes/v640/index.md +++ b/README/ReleaseNotes/v640/index.md @@ -87,8 +87,8 @@ The following people have contributed to this new version: ### Moving from builtin dependencies to system-provided packages * The general direction of the ROOT project is to become more and more reliant on system packages. It is *recommended* to make the packages required by ROOT available on the system, e.g. via a package manager, and not with the builtin mechanism. This allows for timely updates and reduces the size of the installed binaries. -* The previously vendored builtins `freetype`, `zlib`, `lzma`, `zstd`, `lz4`, `libpng`, `giflib`, `libjpeg` 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`, `zlib`, `lzma`, `zstd`, `lz4`, `libpng`, `giflib`, `libjpeg` 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`, `zlib`, `lzma`, `zstd`, `lz4`, `libpng`, `giflib`, `libjpeg`, 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`, `zlib`, `lzma`, `zstd`, `lz4`, `libpng`, `giflib`, `libjpeg`, 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`. ## Core Libraries From bbd8510de379eabc63c032ede8a590c3e0ba2935 Mon Sep 17 00:00:00 2001 From: ferdymercury Date: Tue, 30 Jun 2026 08:18:46 +0200 Subject: [PATCH 13/14] Update index.md --- README/ReleaseNotes/v642/index.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README/ReleaseNotes/v642/index.md b/README/ReleaseNotes/v642/index.md index 03fb443ed3f62..a57a1342c30cb 100644 --- a/README/ReleaseNotes/v642/index.md +++ b/README/ReleaseNotes/v642/index.md @@ -50,8 +50,8 @@ The following people have contributed to this new version: ### Moving from builtin dependencies to system-provided packages * The general direction of the ROOT project is to become more and more reliant on system packages. It is *recommended* to make the packages required by ROOT available on the system, e.g. via a package manager, and not with the builtin mechanism. This allows for timely updates and reduces the size of the installed binaries. -* The previously vendored builtins `ftgl`, `gl2ps`, `gtest`, `nlohmann_json` 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 `ftgl`, `gl2ps`, `gtest`, `nlohmann_json`, `unuran`, `civetweb`, 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. +* The previously vendored builtins `ftgl`, `gl2ps`, `gtest`, `nlohmann_json`, `xxhash`, `pcre2`, 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 `ftgl`, `gl2ps`, `gtest`, `nlohmann_json`, `unuran`, `civetweb`, `xxhash`, `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. ## Python Interface From 103ece7c747d7f1d2132914b7ab77695aec893fc Mon Sep 17 00:00:00 2001 From: ferdymercury Date: Tue, 30 Jun 2026 09:13:22 +0200 Subject: [PATCH 14/14] reword internally as suggested by dpiparo --- cmake/modules/RootBuildOptions.cmake | 48 ++++++++++++++-------------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/cmake/modules/RootBuildOptions.cmake b/cmake/modules/RootBuildOptions.cmake index fb02169c8d8b4..6d35f40cd10b4 100644 --- a/cmake/modules/RootBuildOptions.cmake +++ b/cmake/modules/RootBuildOptions.cmake @@ -80,35 +80,35 @@ endfunction() ROOT_BUILD_OPTION(arrow OFF "Enable support for Apache Arrow") ROOT_BUILD_OPTION(asimage ON "Enable support for image processing via libAfterImage") ROOT_BUILD_OPTION(asserts OFF "Enable asserts (defaults to ON for CMAKE_BUILD_TYPE=Debug and/or dev=ON)") -ROOT_BUILD_OPTION(builtin_cfitsio OFF "Build CFITSIO internally (requires network)") +ROOT_BUILD_OPTION(builtin_cfitsio OFF "Build CFITSIO from an externally provided source tarball (requires network)") ROOT_BUILD_OPTION(builtin_clang ON "Build bundled copy of Clang") ROOT_BUILD_OPTION(builtin_cling ON "Build bundled copy of Cling. Only build with an external cling if you know what you are doing: associating ROOT commits with cling commits is tricky.") MARK_AS_ADVANCED(builtin_cling) -ROOT_BUILD_OPTION(builtin_civetweb ON "Build civetweb internally (requires network)") -ROOT_BUILD_OPTION(builtin_fftw3 OFF "Build FFTW3 internally (requires network) [GPL]") -ROOT_BUILD_OPTION(builtin_freetype OFF "Build freetype internally (requires network)") -ROOT_BUILD_OPTION(builtin_ftgl OFF "Build FTGL internally (requires network)") -ROOT_BUILD_OPTION(builtin_gif OFF "Build libgif internally (requires network)") -ROOT_BUILD_OPTION(builtin_gl2ps OFF "Build gl2ps internally (requires network)") -ROOT_BUILD_OPTION(builtin_gsl OFF "Build GSL internally (requires network) [GPL]") -ROOT_BUILD_OPTION(builtin_gtest OFF "Build googletest internally (requires network)") -ROOT_BUILD_OPTION(builtin_jpeg OFF "Build libjpeg internally (requires network)") +ROOT_BUILD_OPTION(builtin_civetweb ON "Build civetweb from an externally provided source tarball (requires network)") +ROOT_BUILD_OPTION(builtin_fftw3 OFF "Build FFTW3 from an externally provided source tarball (requires network) [GPL]") +ROOT_BUILD_OPTION(builtin_freetype OFF "Build freetype from an externally provided source tarball (requires network)") +ROOT_BUILD_OPTION(builtin_ftgl OFF "Build FTGL from an externally provided source tarball (requires network)") +ROOT_BUILD_OPTION(builtin_gif OFF "Build libgif from an externally provided source tarball (requires network)") +ROOT_BUILD_OPTION(builtin_gl2ps OFF "Build gl2ps from an externally provided source tarball (requires network)") +ROOT_BUILD_OPTION(builtin_gsl OFF "Build GSL from an externally provided source tarball (requires network) [GPL]") +ROOT_BUILD_OPTION(builtin_gtest OFF "Build googletest from an externally provided source tarball (requires network)") +ROOT_BUILD_OPTION(builtin_jpeg OFF "Build libjpeg from an externally provided source tarball (requires network)") ROOT_BUILD_OPTION(builtin_llvm ON "Build bundled copy of LLVM") -ROOT_BUILD_OPTION(builtin_lz4 OFF "Build lz4 internally (requires network)") -ROOT_BUILD_OPTION(builtin_lzma OFF "Build lzma internally (requires network)") -ROOT_BUILD_OPTION(builtin_nlohmannjson OFF "Build nlohmann/json internally (requires network)") -ROOT_BUILD_OPTION(builtin_openssl OFF "Build OpenSSL internally (requires network)") +ROOT_BUILD_OPTION(builtin_lz4 OFF "Build lz4 from an externally provided source tarball (requires network)") +ROOT_BUILD_OPTION(builtin_lzma OFF "Build lzma from an externally provided source tarball (requires network)") +ROOT_BUILD_OPTION(builtin_nlohmannjson OFF "Build nlohmann/json from an externally provided source tarball (requires network)") +ROOT_BUILD_OPTION(builtin_openssl OFF "Build OpenSSL from an externally provided source tarball (requires network)") ROOT_BUILD_OPTION(builtin_openui5 ON "Use openui5 bundle distributed with ROOT") -ROOT_BUILD_OPTION(builtin_pcre OFF "Build PCRE2 internally (requires network)") -ROOT_BUILD_OPTION(builtin_png OFF "Build libpng internally (requires network)") -ROOT_BUILD_OPTION(builtin_tbb OFF "Build TBB internally (requires network)") -ROOT_BUILD_OPTION(builtin_tiff OFF "Build libtiff internally (requires network)") -ROOT_BUILD_OPTION(builtin_unuran OFF "Build unuran internally (requires network) [GPL]") -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 xxHash internally (requires network)") -ROOT_BUILD_OPTION(builtin_zlib OFF "Build zlib internally (requires network)") -ROOT_BUILD_OPTION(builtin_zstd OFF "Build zstd internally (requires network)") +ROOT_BUILD_OPTION(builtin_pcre OFF "Build PCRE2 from an externally provided source tarball (requires network)") +ROOT_BUILD_OPTION(builtin_png OFF "Build libpng from an externally provided source tarball (requires network)") +ROOT_BUILD_OPTION(builtin_tbb OFF "Build TBB from an externally provided source tarball (requires network)") +ROOT_BUILD_OPTION(builtin_tiff OFF "Build libtiff from an externally provided source tarball (requires network)") +ROOT_BUILD_OPTION(builtin_unuran OFF "Build unuran from an externally provided source tarball (requires network) [GPL]") +ROOT_BUILD_OPTION(builtin_vdt OFF "Build VDT from an externally provided source tarball (requires network)") +ROOT_BUILD_OPTION(builtin_xrootd OFF "Build XRootD from an externally provided source tarball (requires network)") +ROOT_BUILD_OPTION(builtin_xxhash OFF "Build xxHash from an externally provided source tarball (requires network)") +ROOT_BUILD_OPTION(builtin_zlib OFF "Build zlib from an externally provided source tarball (requires network)") +ROOT_BUILD_OPTION(builtin_zstd OFF "Build zstd from an externally provided source tarball (requires network)") ROOT_BUILD_OPTION(ccache OFF "Enable ccache usage for speeding up builds") ROOT_BUILD_OPTION(cefweb OFF "Enable support for CEF (Chromium Embedded Framework) web-based display") ROOT_BUILD_OPTION(check_connection ON "Fail the configuration step if there is no internet connection, but it's required for the build")