have on fedora 43, 42 and 41 is compatible with mariadb at the moment, therefore the mariadb-libfmt.patch is no longer needed as we can just use the system fmt package. I have kept the infrastructure as it needs to be used on rhel as rhel8 and rhel9 dont' have an fmt package and rhel10s version is too old to be used with this version of mariadb.
37 lines
2.0 KiB
Diff
37 lines
2.0 KiB
Diff
MariaDB upstream uses an old version (8.0) of the FMT library, unlike Fedora which packs a current one (10.2)
|
|
https://src.fedoraproject.org/rpms/fmt
|
|
https://github.com/MariaDB/server/blob/10.11/cmake/libfmt.cmake#L18
|
|
|
|
There is a breaking change between the FMT library version 8 and 10.
|
|
Sergei Golubchik from MariaDB upstream noticed that and decided to not rebase to the newer version for now. In the same commit:
|
|
https://github.com/MariaDB/server/commit/b5c367cd88e37091ab5f8dab0396c01c97d037e2
|
|
He also fixed the CMake file controlling the FMT library.
|
|
It now correctly detects, whether the system version is able to compile a given code in an expected way.
|
|
|
|
The incompatibility between FMT library version has been reported both agains Fedora and FMT upstream
|
|
https://bugzilla.redhat.com/show_bug.cgi?id=2266807
|
|
The upstream created a patch and Fedora backported it
|
|
https://src.fedoraproject.org/rpms/fmt/c/7d6d6e2c33e845b3cbf3fcaf83f14dfeddfa8a70?branch=rawhide
|
|
but only in F40 and later.
|
|
|
|
To avoid potential issues on systems with FMT library between 8.0 and the one with the fix backported,
|
|
introduce a bundling mechanism for use on such distributions.
|
|
We pre-download the sources archive and supply the CMake with it, instead of the web URL.
|
|
|
|
This patch is not used at the moment as the current version of the fmt package available in f40-f43 is sufficient
|
|
therefore we are using it instead of the bundled fmt.
|
|
|
|
We are still keeping this patch in case it may be needed in the future and because it is needed in rhel
|
|
|
|
--- mariadb-11.8.2/cmake/libfmt.cmake 2025-05-21 16:08:31.000000000 +0200
|
|
+++ mariadb-11.8.2/cmake/libfmt.cmake_patched 2025-06-16 22:51:14.579292098 +0200
|
|
@@ -15,7 +15,7 @@ MACRO(BUNDLE_LIBFMT)
|
|
ExternalProject_Add(
|
|
libfmt
|
|
PREFIX "${dir}"
|
|
- URL "https://github.com/fmtlib/fmt/releases/download/11.1.4/fmt-11.1.4.zip"
|
|
+ URL file:///${dir}/fmt-11.1.4.zip
|
|
URL_MD5 ad6a56b15cddf4aad2a234e7cfc9e8c9
|
|
INSTALL_COMMAND ""
|
|
CONFIGURE_COMMAND ""
|