Rebase to 10.11.9
Resolves: RHEL-25575 RHEL-37872
This commit is contained in:
		
							parent
							
								
									b987f635d7
								
							
						
					
					
						commit
						3918b8fe3a
					
				| @ -1,16 +0,0 @@ | ||||
| Currently, the CMAKE script is able to aither use the system library, or download a bundle. | ||||
| We don't have FMT as a system library in RHEL, and we can't *download* a bundle during build time. | ||||
| So we download the bundle ourselves, add it as additional package sources, and redirect the CMAKE | ||||
| so it would search for it on the correct - local - location. | ||||
| 
 | ||||
| --- mariadb-10.11.6/cmake/libfmt.cmake	2023-11-08 16:51:39.000000000 +0100
 | ||||
| +++ mariadb-10.11.6/cmake/libfmt.cmake_patched	2024-01-10 17:29:18.004421343 +0100
 | ||||
| @@ -15,7 +15,7 @@ MACRO(BUNDLE_LIBFMT)
 | ||||
|    ExternalProject_Add( | ||||
|      libfmt | ||||
|      PREFIX   "${dir}" | ||||
| -    URL      "https://github.com/fmtlib/fmt/archive/refs/tags/8.0.1.zip"
 | ||||
| +    URL      "${CMAKE_BINARY_DIR}/bundles/8.0.1.zip"
 | ||||
|      URL_MD5  e77873199e897ca9f780479ad68e25b1 | ||||
|      INSTALL_COMMAND "" | ||||
|      CONFIGURE_COMMAND "" | ||||
							
								
								
									
										31
									
								
								mariadb-libfmt.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										31
									
								
								mariadb-libfmt.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,31 @@ | ||||
| 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. | ||||
| 
 | ||||
| --- mariadb-10.11.7/cmake/libfmt.cmake	2024-02-01 18:44:35.000000000 +0100
 | ||||
| +++ mariadb-10.11.7/cmake/libfmt.cmake_patched	2024-06-06 23:27:10.770987424 +0200
 | ||||
| @@ -15,7 +15,7 @@ MACRO(BUNDLE_LIBFMT)
 | ||||
|    ExternalProject_Add( | ||||
|      libfmt | ||||
|      PREFIX   "${dir}" | ||||
| -    URL      "https://github.com/fmtlib/fmt/releases/download/11.0.1/fmt-11.0.1.zip"
 | ||||
| +    URL      "file:///${dir}/fmt-11.0.1.zip"
 | ||||
|      URL_MD5  5f3915e2eff60e7f70c558120592100d | ||||
|      INSTALL_COMMAND "" | ||||
|      CONFIGURE_COMMAND "" | ||||
							
								
								
									
										32
									
								
								mariadb.spec
									
									
									
									
									
								
							
							
						
						
									
										32
									
								
								mariadb.spec
									
									
									
									
									
								
							| @ -117,7 +117,14 @@ ExcludeArch: %{ix86} | ||||
| %bcond_without unbundled_pcre | ||||
| %else | ||||
| %bcond_with unbundled_pcre | ||||
| %global pcre_bundled_version 10.42 | ||||
| %global pcre_bundled_version 10.44 | ||||
| %endif | ||||
| 
 | ||||
| # To avoid issues with a breaking change in FMT library, bundle it on systems where FMT wasn't fixed yet | ||||
| # See mariadb-libfmt.patch for detailed description. | ||||
| %bcond_without bundled_fmt | ||||
| %if %{with bundled_fmt} | ||||
| %global fmt_bundled_version 11.0.1 | ||||
| %endif | ||||
| 
 | ||||
| # Use main python interpretter version | ||||
| @ -157,7 +164,7 @@ ExcludeArch: %{ix86} | ||||
| %global sameevr   %{epoch}:%{version}-%{release} | ||||
| 
 | ||||
| Name:             mariadb | ||||
| Version:          10.11.6 | ||||
| Version:          10.11.9 | ||||
| Release:          1%{?with_debug:.debug}%{?dist} | ||||
| Epoch:            3 | ||||
| 
 | ||||
| @ -166,7 +173,9 @@ URL:              http://mariadb.org | ||||
| License:          GPLv2 and LGPLv2 | ||||
| 
 | ||||
| Source0:          https://downloads.mariadb.org/interstitial/mariadb-%{version}/source/mariadb-%{version}.tar.gz | ||||
| Source1:          https://github.com/fmtlib/fmt/archive/refs/tags/8.0.1.zip | ||||
| %if %{with bundled_fmt} | ||||
| Source1:          https://github.com/fmtlib/fmt/releases/download/%{fmt_bundled_version}/fmt-%{fmt_bundled_version}.zip | ||||
| %endif | ||||
| Source2:          mysql_config_multilib.sh | ||||
| Source3:          my.cnf.in | ||||
| Source6:          README.mariadb-docs | ||||
| @ -219,7 +228,8 @@ Patch9:           %{pkgnamepatch}-ownsetup.patch | ||||
| #   Patch10: Fix cipher name in the SSL Cipher name test | ||||
| Patch10:          %{pkgnamepatch}-ssl-cipher-tests.patch | ||||
| 
 | ||||
| Patch11:          %{pkgnamepatch}-fmt_bundle.patch | ||||
| #   Patch13: bundle the FMT library | ||||
| Patch13:          %{pkgnamepatch}-libfmt.patch | ||||
| 
 | ||||
| BuildRequires:    make | ||||
| BuildRequires:    cmake gcc-c++ | ||||
| @ -449,6 +459,8 @@ Recommends:       %{name}-backup%{?_isa} = %{sameevr} | ||||
| %{?with_connect:Suggests:      %{name}-connect-engine%{?_isa} = %{sameevr}} | ||||
| %{?with_pam:Suggests:          %{name}-pam%{?_isa} = %{sameevr}} | ||||
| 
 | ||||
| %{?with_bundled_fmt:Provides: bundled(fmt) = %{fmt_bundled_version}} | ||||
| 
 | ||||
| Suggests:         mytop | ||||
| Suggests:         logrotate | ||||
| 
 | ||||
| @ -744,6 +756,11 @@ rm -r extra/wolfssl | ||||
| rm -r storage/columnstore | ||||
| rm -r debian | ||||
| 
 | ||||
| %if %{with bundled_fmt} | ||||
| mkdir -p redhat-linux-build/extra/libfmt/ | ||||
| cp %{SOURCE1} redhat-linux-build/extra/libfmt/ | ||||
| %endif | ||||
| 
 | ||||
| # Remove JAR files that upstream puts into tarball | ||||
| find . -name "*.jar" -type f -exec rm --verbose -f {} \; | ||||
| # Remove testsuite for the mariadb-connector-c | ||||
| @ -757,7 +774,9 @@ rm -r storage/rocksdb/ | ||||
| %patch4 -p1 | ||||
| %patch7 -p1 | ||||
| %patch9 -p1 | ||||
| %patch11 -p1 | ||||
| %if %{with bundled_fmt} | ||||
| %patch -P13 -p1 | ||||
| %endif | ||||
| # The test in Patch 10 has been recently updated by upstream | ||||
| # and the test was disabled in the testuite run | ||||
| #   main.ssl_cipher     [ disabled ]  MDEV-17184 - Failures with OpenSSL 1.1.1 | ||||
| @ -1702,6 +1721,9 @@ fi | ||||
| %endif | ||||
| 
 | ||||
| %changelog | ||||
| * Tue Aug 13 2024 Michal Schorm <mschorm@redhat.com> - 3:10.11.9-1 | ||||
| - Rebase to 10.11.9 | ||||
| 
 | ||||
| * Mon Dec 18 2023 Michal Schorm <mschorm@redhat.com> - 3:10.11.6-1 | ||||
| - Rebase to 10.11.6 | ||||
| 
 | ||||
|  | ||||
							
								
								
									
										4
									
								
								sources
									
									
									
									
									
								
							
							
						
						
									
										4
									
								
								sources
									
									
									
									
									
								
							| @ -1,2 +1,2 @@ | ||||
| SHA512 (mariadb-10.11.6.tar.gz) = 3d77f7be4a26d5a36af56150a5f8ed5e21adeed9bc8ea1bd694e47a25a571bd73468eada7c96e0dfe5a6c81bef625abf71a56d228cf43a738e555e3c0d824a6a | ||||
| SHA512 (8.0.1.zip) = 53f781e33ffb3bc38d743b81c5755a7d71dce95dcf5cdf23d5b4cf880a8f29189ca1b790272ee8586cbcd552648bae040247e572b2a97cd8b3631c284873f57d | ||||
| SHA512 (mariadb-10.11.9.tar.gz) = a51680babed106ad52a8a9d57fb1db82fca02fd3eff7ef3f2cc3dd89bd9608e9f78ca5a11335a6be8d22950ca8caf1e859bd19550ab3fe129b73b856674cfdc0 | ||||
| SHA512 (fmt-11.0.1.zip) = 77aa8371f1cb7f4bbac694fab7612bfba646c9ea784b18f5bfcf84187222e57f60c92f62c30096b9d6d2733790ff0f6ec55d7c024cbbbb3d0c51d9511cc67c19 | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user