summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta/lib/oeqa/sdkext/files/myapp_cmake/CMakeLists.txt2
-rw-r--r--meta/lib/oeqa/selftest/cases/devtool.py10
-rw-r--r--meta/recipes-bsp/u-boot/libubootenv/0001-Update-cmake_minimum_required-to-3.5.patch50
-rw-r--r--meta/recipes-bsp/u-boot/libubootenv_0.3.6.bb4
-rw-r--r--meta/recipes-core/musl/musl-locales/0001-cmake-Support-builds-with-CMake-4.patch46
-rw-r--r--meta/recipes-core/musl/musl-locales_git.bb4
-rw-r--r--meta/recipes-devtools/apt/apt/0001-Raise-cmake_minimum_required-to-3.13-to-avoid-warnin.patch47
-rw-r--r--meta/recipes-devtools/apt/apt_2.6.1.bb1
-rw-r--r--meta/recipes-devtools/cmake/cmake-native_4.0.3.bb (renamed from meta/recipes-devtools/cmake/cmake-native_3.31.6.bb)6
-rw-r--r--meta/recipes-devtools/cmake/cmake.inc8
-rw-r--r--meta/recipes-devtools/cmake/cmake/0001-CMakeDetermineCompilerABI-Strip-pipe-from-compile-fl.patch63
-rw-r--r--meta/recipes-devtools/cmake/cmake/0001-Disable-use-of-ext2fs-ext2_fs.h-by-cmake-s-internal.patch (renamed from meta/recipes-devtools/cmake/cmake/0005-Disable-use-of-ext2fs-ext2_fs.h-by-cmake-s-internal-.patch)4
-rw-r--r--meta/recipes-devtools/cmake/cmake/0001-cmCurl-Avoid-using-undocumented-type-for-CURLOPT_NET.patch30
-rw-r--r--meta/recipes-devtools/cmake/cmake/0001-ctest-Allow-arbitrary-characters-in-test-names-of-CT.patch202
-rw-r--r--meta/recipes-devtools/cmake/cmake/0002-CMakeLists.txt-disable-USE_NGHTTP2.patch (renamed from meta/recipes-devtools/cmake/cmake/0001-CMakeLists.txt-disable-USE_NGHTTP2.patch)6
-rw-r--r--meta/recipes-devtools/cmake/cmake_4.0.3.bb (renamed from meta/recipes-devtools/cmake/cmake_3.31.6.bb)1
-rw-r--r--meta/recipes-devtools/createrepo-c/createrepo-c/0001-Fix-libname-of-Libs.private.patch22
-rw-r--r--meta/recipes-devtools/createrepo-c/createrepo-c/0002-Use-IMPORTED_TARGET-for-3rd-party-dependencies.patch226
-rw-r--r--meta/recipes-devtools/createrepo-c/createrepo-c/0003-Don-t-try-to-use-imported-targets-of-turned-off-depe.patch53
-rw-r--r--meta/recipes-devtools/createrepo-c/createrepo-c/0004-cmake-Allow-builds-without-Doxygen-being-present-wit.patch50
-rw-r--r--meta/recipes-devtools/createrepo-c/createrepo-c_1.2.1.bb4
-rw-r--r--meta/recipes-devtools/git/git/fixsort.patch16
-rw-r--r--meta/recipes-devtools/git/git_2.50.0.bb (renamed from meta/recipes-devtools/git/git_2.49.0.bb)2
-rw-r--r--meta/recipes-devtools/libcomps/libcomps/0001-libcomps-Support-builds-with-CMake-4.patch132
-rw-r--r--meta/recipes-devtools/libcomps/libcomps_0.1.21.bb1
-rw-r--r--meta/recipes-devtools/pseudo/pseudo_git.bb4
-rw-r--r--meta/recipes-graphics/pango/pango_1.56.4.bb (renamed from meta/recipes-graphics/pango/pango_1.56.3.bb)2
-rw-r--r--meta/recipes-sato/webkit/libwpe/0001-cmake-Bump-required-CMake-version-to-3.5-to-allow-bu.patch38
-rw-r--r--meta/recipes-sato/webkit/libwpe_1.16.2.bb6
29 files changed, 712 insertions, 328 deletions
diff --git a/meta/lib/oeqa/sdkext/files/myapp_cmake/CMakeLists.txt b/meta/lib/oeqa/sdkext/files/myapp_cmake/CMakeLists.txt
index 19d773dd63..b31f1622e2 100644
--- a/meta/lib/oeqa/sdkext/files/myapp_cmake/CMakeLists.txt
+++ b/meta/lib/oeqa/sdkext/files/myapp_cmake/CMakeLists.txt
@@ -1,4 +1,4 @@
1cmake_minimum_required (VERSION 2.6) 1cmake_minimum_required (VERSION 3.10)
2project (myapp) 2project (myapp)
3# The version number. 3# The version number.
4set (myapp_VERSION_MAJOR 1) 4set (myapp_VERSION_MAJOR 1)
diff --git a/meta/lib/oeqa/selftest/cases/devtool.py b/meta/lib/oeqa/selftest/cases/devtool.py
index 05f228f03e..9fc3eaa311 100644
--- a/meta/lib/oeqa/selftest/cases/devtool.py
+++ b/meta/lib/oeqa/selftest/cases/devtool.py
@@ -416,7 +416,7 @@ class DevtoolAddTests(DevtoolBase):
416 test_file_dir_full = os.path.join(test_file_package_root, test_file_dir) 416 test_file_dir_full = os.path.join(test_file_package_root, test_file_dir)
417 bb.utils.mkdirhier(test_file_dir_full) 417 bb.utils.mkdirhier(test_file_dir_full)
418 with open(os.path.join(test_file_dir_full, test_file_name), "w") as f: 418 with open(os.path.join(test_file_dir_full, test_file_name), "w") as f:
419 f.write(test_file_content) 419 f.write(test_file_content)
420 bin_package_path = os.path.join(tempdir, "%s.tar.gz" % pn) 420 bin_package_path = os.path.join(tempdir, "%s.tar.gz" % pn)
421 runCmd("tar czf %s -C %s ." % (bin_package_path, test_file_package_root)) 421 runCmd("tar czf %s -C %s ." % (bin_package_path, test_file_package_root))
422 422
@@ -519,7 +519,13 @@ class DevtoolAddTests(DevtoolBase):
519 # normally cover, which triggers the installed-vs-shipped QA test we have 519 # normally cover, which triggers the installed-vs-shipped QA test we have
520 # within do_package 520 # within do_package
521 recipefile = '%s/recipes/libftdi/libftdi_%s.bb' % (self.workspacedir, version) 521 recipefile = '%s/recipes/libftdi/libftdi_%s.bb' % (self.workspacedir, version)
522 result = runCmd('recipetool setvar %s EXTRA_OECMAKE -- \'-DPYTHON_BINDINGS=OFF -DLIBFTDI_CMAKE_CONFIG_DIR=${datadir}/cmake/Modules\'' % recipefile) 522 # There is no upstream release that supports building with CMake 4+ yet, so we explicitly
523 # set the policy minimum version via EXTRA_OECMAKE. That's easier than applying backported
524 # patches.
525 result = runCmd(
526 "recipetool setvar %s EXTRA_OECMAKE -- '-DCMAKE_POLICY_VERSION_MINIMUM=3.5 -DPYTHON_BINDINGS=OFF -DLIBFTDI_CMAKE_CONFIG_DIR=${datadir}/cmake/Modules'"
527 % recipefile
528 )
523 with open(recipefile, 'a') as f: 529 with open(recipefile, 'a') as f:
524 f.write('\nFILES:${PN}-dev += "${datadir}/cmake/Modules"\n') 530 f.write('\nFILES:${PN}-dev += "${datadir}/cmake/Modules"\n')
525 # We don't have the ability to pick up this dependency automatically yet... 531 # We don't have the ability to pick up this dependency automatically yet...
diff --git a/meta/recipes-bsp/u-boot/libubootenv/0001-Update-cmake_minimum_required-to-3.5.patch b/meta/recipes-bsp/u-boot/libubootenv/0001-Update-cmake_minimum_required-to-3.5.patch
new file mode 100644
index 0000000000..ee174ca59e
--- /dev/null
+++ b/meta/recipes-bsp/u-boot/libubootenv/0001-Update-cmake_minimum_required-to-3.5.patch
@@ -0,0 +1,50 @@
1From cd12d9dd2bea8e4580f458df77229477fc55ba70 Mon Sep 17 00:00:00 2001
2From: James Hilliard <james.hilliard1@gmail.com>
3Date: Wed, 14 May 2025 14:17:40 -0600
4Subject: [PATCH] Update cmake_minimum_required to 3.5
5
6This supports compilation with cmake-4.0.0.
7
8Fixes:
9CMake Error at CMakeLists.txt:5 (cmake_minimum_required):
10 Compatibility with CMake < 3.5 has been removed from CMake.
11
12 Update the VERSION argument <min> value. Or, use the <min>...<max> syntax
13 to tell CMake that the project requires at least <min> but has been updated
14 to work with policies introduced by <max> or earlier.
15
16 Or, add -DCMAKE_POLICY_VERSION_MINIMUM=3.5 to try configuring anyway.
17
18Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
19Upstream-Status: Backport [cd12d9dd2bea8e4580f458df77229477fc55ba70]
20---
21 CMakeLists.txt | 2 +-
22 src/CMakeLists.txt | 2 +-
23 2 files changed, 2 insertions(+), 2 deletions(-)
24
25diff --git a/CMakeLists.txt b/CMakeLists.txt
26index 796d7bc..0a11730 100644
27--- a/CMakeLists.txt
28+++ b/CMakeLists.txt
29@@ -2,7 +2,7 @@
30 #
31 # SPDX-License-Identifier: LGPL-2.1-or-later
32
33-cmake_minimum_required (VERSION 2.6)
34+cmake_minimum_required (VERSION 3.5)
35 project (libubootenv C)
36
37 # The version number.
38diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
39index c56d0c7..3370232 100644
40--- a/src/CMakeLists.txt
41+++ b/src/CMakeLists.txt
42@@ -1,7 +1,7 @@
43 # SPDX-FileCopyrightText: 2019-2021 Stefano Babic <stefano.babic@swupdate.org>
44 #
45 # SPDX-License-Identifier: LGPL-2.1-or-later
46-cmake_minimum_required (VERSION 2.6)
47+cmake_minimum_required (VERSION 3.5)
48 # Sources and private headers
49 SET(libubootenv_SOURCES
50 uboot_env.c
diff --git a/meta/recipes-bsp/u-boot/libubootenv_0.3.6.bb b/meta/recipes-bsp/u-boot/libubootenv_0.3.6.bb
index 35678e2361..b63b8ff87d 100644
--- a/meta/recipes-bsp/u-boot/libubootenv_0.3.6.bb
+++ b/meta/recipes-bsp/u-boot/libubootenv_0.3.6.bb
@@ -10,7 +10,9 @@ LICENSE = "LGPL-2.1-or-later"
10LIC_FILES_CHKSUM = "file://LICENSES/LGPL-2.1-or-later.txt;md5=4fbd65380cdd255951079008b364516c" 10LIC_FILES_CHKSUM = "file://LICENSES/LGPL-2.1-or-later.txt;md5=4fbd65380cdd255951079008b364516c"
11SECTION = "libs" 11SECTION = "libs"
12 12
13SRC_URI = "git://github.com/sbabic/libubootenv;protocol=https;branch=master" 13SRC_URI = "git://github.com/sbabic/libubootenv;protocol=https;branch=master \
14 file://0001-Update-cmake_minimum_required-to-3.5.patch \
15 "
14SRCREV = "5507339628b5caf244e1ff9d58cb3fa534b16beb" 16SRCREV = "5507339628b5caf244e1ff9d58cb3fa534b16beb"
15 17
16inherit cmake lib_package 18inherit cmake lib_package
diff --git a/meta/recipes-core/musl/musl-locales/0001-cmake-Support-builds-with-CMake-4.patch b/meta/recipes-core/musl/musl-locales/0001-cmake-Support-builds-with-CMake-4.patch
new file mode 100644
index 0000000000..d4d36eb522
--- /dev/null
+++ b/meta/recipes-core/musl/musl-locales/0001-cmake-Support-builds-with-CMake-4.patch
@@ -0,0 +1,46 @@
1From 89a314b03d0b2e600bb503a1e3d75faa655d65e0 Mon Sep 17 00:00:00 2001
2From: Moritz Haase <Moritz.Haase@bmw.de>
3Date: Wed, 2 Jul 2025 08:37:21 +0200
4Subject: [PATCH] cmake: Support builds with CMake 4+
5
6CMake 4 has removed support for compatibility with CMake < 3.5 and thus builds
7fail with:
8
9 CMake Error at CMakeLists.txt:2 (cmake_minimum_required):
10 Compatibility with CMake < 3.5 has been removed from CMake.
11
12 Update the VERSION argument <min> value. Or, use the <min>...<max> syntax
13 to tell CMake that the project requires at least <min> but has been
14 updated to work with policies introduced by <max> or earlier.
15
16 Or, add -DCMAKE_POLICY_VERSION_MINIMUM=3.5 to try configuring anyway.
17
18To ensure builds with older CMake versions are still possible, use the suggested
19'<min>...<max>' syntax instead of simply bumping '<min>'. To avoid a deprecation
20warning by CMake 3.31+, 3.10 was chosen as '<max>' instead of 3.5.
21
22While at it, move the 'cmake_minimum_required()' call before 'project()' to fix:
23
24 CMake Warning (dev) at CMakeLists.txt:2 (project):
25
26 cmake_minimum_required() should be called prior to this top-level
27 project() call. Please see the cmake-commands(7) manual for usage
28 documentation of both commands.
29
30Signed-off-by: Moritz Haase <Moritz.Haase@bmw.de>
31Upstream-Status: Submitted [https://git.adelielinux.org/adelie/musl-locales/-/merge_requests/10]
32---
33 CMakeLists.txt | 2 +-
34 1 file changed, 1 insertion(+), 1 deletion(-)
35
36diff --git a/CMakeLists.txt b/CMakeLists.txt
37index c8ac5c4..5744761 100644
38--- a/CMakeLists.txt
39+++ b/CMakeLists.txt
40@@ -1,5 +1,5 @@
41+cmake_minimum_required(VERSION 2.8...3.10)
42 project(locales C)
43-cmake_minimum_required(VERSION 2.8)
44
45 option(LOCALE_PROFILE "Install profile file setting the MUSL_LOCPATH environment variable" ON)
46
diff --git a/meta/recipes-core/musl/musl-locales_git.bb b/meta/recipes-core/musl/musl-locales_git.bb
index c8510596cf..3573a32062 100644
--- a/meta/recipes-core/musl/musl-locales_git.bb
+++ b/meta/recipes-core/musl/musl-locales_git.bb
@@ -7,7 +7,9 @@ LICENSE = "MIT & LGPL-3.0-or-later"
7LIC_FILES_CHKSUM = "file://LICENSE;md5=cf5713fba707073020b1db2acaa73e78 \ 7LIC_FILES_CHKSUM = "file://LICENSE;md5=cf5713fba707073020b1db2acaa73e78 \
8 file://LICENSE.MIT;md5=a4f1c6864a83ddf4b754cdab7d593523" 8 file://LICENSE.MIT;md5=a4f1c6864a83ddf4b754cdab7d593523"
9 9
10SRC_URI = "git://git.adelielinux.org/adelie/musl-locales;protocol=https;branch=main" 10SRC_URI = "git://git.adelielinux.org/adelie/musl-locales;protocol=https;branch=main \
11 file://0001-cmake-Support-builds-with-CMake-4.patch \
12 "
11 13
12PV = "1.0+git" 14PV = "1.0+git"
13SRCREV = "5663f5bfd30bf9e1e0ba3fc5fe2da6725969f30e" 15SRCREV = "5663f5bfd30bf9e1e0ba3fc5fe2da6725969f30e"
diff --git a/meta/recipes-devtools/apt/apt/0001-Raise-cmake_minimum_required-to-3.13-to-avoid-warnin.patch b/meta/recipes-devtools/apt/apt/0001-Raise-cmake_minimum_required-to-3.13-to-avoid-warnin.patch
new file mode 100644
index 0000000000..c3a5ded494
--- /dev/null
+++ b/meta/recipes-devtools/apt/apt/0001-Raise-cmake_minimum_required-to-3.13-to-avoid-warnin.patch
@@ -0,0 +1,47 @@
1From dc7a8b3050a2a43f49515a03ae19713dfced75dc Mon Sep 17 00:00:00 2001
2From: David Kalnischkies <david@kalnischkies.de>
3Date: Sat, 18 Nov 2023 13:10:05 +0000
4Subject: [PATCH] Raise cmake_minimum_required to 3.13 to avoid warnings
5
6CMake Deprecation Warning at CMakeLists.txt:6 (cmake_minimum_required):
7 Compatibility with CMake < 3.5 will be removed from a future version of
8 CMake.
9
10 Update the VERSION argument <min> value or use a ...<max> suffix to tell
11 CMake that the project does not need compatibility with older versions.
12
13Picking 3.13 here is a semi-random choice to avoid raising the requirement
14too much needlessly while also hopefully avoiding needing to raise it
15soon again based on the referenced mail.
16
17While we are at it, lets also fix the other spewed warning:
18
19CMake Warning (dev) at CMakeLists.txt:5 (project):
20 cmake_minimum_required() should be called prior to this top-level project()
21 call. Please see the cmake-commands(7) manual for usage documentation of
22 both commands.
23
24References: https://lists.debian.org/msgid-search/20230617162957.6pklb6632zf4nijc@mail.gaussglocke.de
25
26Upstream-Status: Backport [https://salsa.debian.org/apt-team/apt/-/commit/dc7a8b3050a2a43f49515a03ae19713dfced75dc]
27Signed-off-by: Moritz Haase <Moritz.Haase@bmw.de>
28---
29 CMakeLists.txt | 2 +-
30 1 file changed, 1 insertion(+), 1 deletion(-)
31
32diff --git a/CMakeLists.txt b/CMakeLists.txt
33index 62182cddf..dae12e7c3 100644
34--- a/CMakeLists.txt
35+++ b/CMakeLists.txt
36@@ -2,8 +2,8 @@
37 # Licensed under the same terms as APT; i.e. GPL 2 or later.
38
39 # set minimum version
40+cmake_minimum_required(VERSION 3.13)
41 project(apt)
42-cmake_minimum_required(VERSION 3.4.0)
43 # Generic header locations
44 include_directories(${PROJECT_BINARY_DIR}/include)
45
46--
47GitLab
diff --git a/meta/recipes-devtools/apt/apt_2.6.1.bb b/meta/recipes-devtools/apt/apt_2.6.1.bb
index d605d950dd..50ac2ea812 100644
--- a/meta/recipes-devtools/apt/apt_2.6.1.bb
+++ b/meta/recipes-devtools/apt/apt_2.6.1.bb
@@ -14,6 +14,7 @@ SRC_URI = "${DEBIAN_MIRROR}/main/a/apt/${BPN}_${PV}.tar.xz \
14 file://0001-aptwebserver.cc-Include-array.patch \ 14 file://0001-aptwebserver.cc-Include-array.patch \
15 file://0001-Remove-using-std-binary_function.patch \ 15 file://0001-Remove-using-std-binary_function.patch \
16 file://0001-strutl-Add-missing-include-cstdint-gcc-15.patch \ 16 file://0001-strutl-Add-missing-include-cstdint-gcc-15.patch \
17 file://0001-Raise-cmake_minimum_required-to-3.13-to-avoid-warnin.patch \
17 " 18 "
18 19
19SRC_URI:append:class-native = " \ 20SRC_URI:append:class-native = " \
diff --git a/meta/recipes-devtools/cmake/cmake-native_3.31.6.bb b/meta/recipes-devtools/cmake/cmake-native_4.0.3.bb
index b940abb3fd..7b90bff52f 100644
--- a/meta/recipes-devtools/cmake/cmake-native_3.31.6.bb
+++ b/meta/recipes-devtools/cmake/cmake-native_4.0.3.bb
@@ -5,8 +5,8 @@ DEPENDS += "bzip2-replacement-native xz-native zlib-native ncurses-native zstd-n
5 5
6SRC_URI += "file://OEToolchainConfig.cmake \ 6SRC_URI += "file://OEToolchainConfig.cmake \
7 file://environment.d-cmake.sh \ 7 file://environment.d-cmake.sh \
8 file://0005-Disable-use-of-ext2fs-ext2_fs.h-by-cmake-s-internal-.patch \ 8 file://0001-Disable-use-of-ext2fs-ext2_fs.h-by-cmake-s-internal.patch \
9 file://0001-CMakeLists.txt-disable-USE_NGHTTP2.patch \ 9 file://0002-CMakeLists.txt-disable-USE_NGHTTP2.patch \
10 " 10 "
11 11
12LICENSE:append = " & BSD-1-Clause & MIT & BSD-2-Clause & curl" 12LICENSE:append = " & BSD-1-Clause & MIT & BSD-2-Clause & curl"
@@ -16,7 +16,7 @@ LIC_FILES_CHKSUM:append = " \
16 file://Utilities/cmexpat/COPYING;md5=7b3b078238d0901d3b339289117cb7fb \ 16 file://Utilities/cmexpat/COPYING;md5=7b3b078238d0901d3b339289117cb7fb \
17 file://Utilities/cmlibrhash/COPYING;md5=a8c2a557a5c53b1c12cddbee98c099af \ 17 file://Utilities/cmlibrhash/COPYING;md5=a8c2a557a5c53b1c12cddbee98c099af \
18 file://Utilities/cmlibuv/LICENSE;md5=ad93ca1fffe931537fcf64f6fcce084d \ 18 file://Utilities/cmlibuv/LICENSE;md5=ad93ca1fffe931537fcf64f6fcce084d \
19 file://Utilities/cmcurl/COPYING;md5=eed2e5088e1ac619c9a1c747da291d75 \ 19 file://Utilities/cmcurl/COPYING;md5=72f4e9890e99e68d77b7e40703d789b8 \
20" 20"
21 21
22B = "${WORKDIR}/build" 22B = "${WORKDIR}/build"
diff --git a/meta/recipes-devtools/cmake/cmake.inc b/meta/recipes-devtools/cmake/cmake.inc
index 9b1898f22f..a15dfd3bb4 100644
--- a/meta/recipes-devtools/cmake/cmake.inc
+++ b/meta/recipes-devtools/cmake/cmake.inc
@@ -10,18 +10,16 @@ HOMEPAGE = "http://www.cmake.org/"
10BUGTRACKER = "http://public.kitware.com/Bug/my_view_page.php" 10BUGTRACKER = "http://public.kitware.com/Bug/my_view_page.php"
11SECTION = "console/utils" 11SECTION = "console/utils"
12LICENSE = "BSD-3-Clause" 12LICENSE = "BSD-3-Clause"
13LIC_FILES_CHKSUM = "file://Copyright.txt;md5=718f05155941b33862726348d3cd46ce \ 13LIC_FILES_CHKSUM = "file://LICENSE.rst;md5=0cafc0f3b6b28f3d5ecb5d1a68c36471 \
14 file://Source/cmake.h;beginline=1;endline=2;md5=a5f70e1fef8614734eae0d62b4f5891b \ 14 file://Source/cmake.h;beginline=1;endline=2;md5=4ba59ac0e953e1a713eea8c55b1d531b \
15 " 15 "
16 16
17CMAKE_MAJOR_VERSION = "${@'.'.join(d.getVar('PV').split('.')[0:2])}" 17CMAKE_MAJOR_VERSION = "${@'.'.join(d.getVar('PV').split('.')[0:2])}"
18 18
19SRC_URI = "https://cmake.org/files/v${CMAKE_MAJOR_VERSION}/cmake-${PV}.tar.gz \ 19SRC_URI = "https://cmake.org/files/v${CMAKE_MAJOR_VERSION}/cmake-${PV}.tar.gz \
20 file://0001-CMakeDetermineCompilerABI-Strip-pipe-from-compile-fl.patch \
21 file://0001-cmCurl-Avoid-using-undocumented-type-for-CURLOPT_NET.patch \
22 " 20 "
23 21
24SRC_URI[sha256sum] = "653427f0f5014750aafff22727fb2aa60c6c732ca91808cfb78ce22ddd9e55f0" 22SRC_URI[sha256sum] = "8d3537b7b7732660ea247398f166be892fe6131d63cc291944b45b91279f3ffb"
25 23
26UPSTREAM_CHECK_REGEX = "cmake-(?P<pver>\d+(\.\d+)+)\.tar" 24UPSTREAM_CHECK_REGEX = "cmake-(?P<pver>\d+(\.\d+)+)\.tar"
27 25
diff --git a/meta/recipes-devtools/cmake/cmake/0001-CMakeDetermineCompilerABI-Strip-pipe-from-compile-fl.patch b/meta/recipes-devtools/cmake/cmake/0001-CMakeDetermineCompilerABI-Strip-pipe-from-compile-fl.patch
deleted file mode 100644
index 3895c7e03b..0000000000
--- a/meta/recipes-devtools/cmake/cmake/0001-CMakeDetermineCompilerABI-Strip-pipe-from-compile-fl.patch
+++ /dev/null
@@ -1,63 +0,0 @@
1From e4061151ac13bc727512d961a80faca3ceb22b5a Mon Sep 17 00:00:00 2001
2From: Philip Lorenz <philip.lorenz@bmw.de>
3Date: Mon, 3 Jun 2024 13:19:24 +0200
4Subject: [PATCH] CMakeDetermineCompilerABI: Strip -pipe from compile flags
5
6When `-pipe` is enabled, GCC passes data between its different
7executables using pipes instead of temporary files. This leads to issues
8when cmake attempts to infer compiler internals via the `-v` parameter
9as each executable will print to `stderr` in parallel.
10
11For example we have observed the following outputs in our builds which
12sporadically lead to build failures as system include directories were
13not detected reliably:
14
15Parsed CXX implicit include dir info from above output: rv=done
16 found start of include info
17 found start of implicit include info
18 add: [.../usr/bin/x86_64-poky-linux/../../lib/x86_64-poky-linux/gcc/x86_64-poky-linux/11.4.0/include]
19 add: [.../usr/bin/x86_64-poky-linux/../../lib/x86_64-poky-linux/gcc/x86_64-poky-linux/11.4.0/include-fixed]
20 add: [.../usr/include/c++/11.4.0]
21 add: [.../usr/include/c++/11.4.0/x86_64-poky-linux]
22 add: [.../usr/include/c++/11.4.0/backward]
23 add: [.../usr/lib/x86_64-poky-linux/11.4.0/include]
24 add: [...GNU assembler version 2.38 (x86_64-poky-linux) using BFD version (GNU Binutils) 2.38.20220708]
25 add: [/usr/include]
26 end of search list found
27
28Fix this issue by stripping the `-pipe` parameter from the compilation
29flag when determining the toolchain configuration.
30
31Upstream-Status: Backport [3.32.0, 71be059f3f32b6791427893a48ba4815a19e2e78]
32Signed-off-by: Philip Lorenz <philip.lorenz@bmw.de>
33---
34 Modules/CMakeDetermineCompilerABI.cmake | 9 ++++++++-
35 1 file changed, 8 insertions(+), 1 deletion(-)
36
37diff --git a/Modules/CMakeDetermineCompilerABI.cmake b/Modules/CMakeDetermineCompilerABI.cmake
38index 4a75e25a..806f0b71 100644
39--- a/Modules/CMakeDetermineCompilerABI.cmake
40+++ b/Modules/CMakeDetermineCompilerABI.cmake
41@@ -52,14 +52,21 @@ function(CMAKE_DETERMINE_COMPILER_ABI lang src)
42
43 __TestCompiler_setTryCompileTargetType()
44
45- # Avoid failing ABI detection on warnings.
46+ # Avoid failing ABI detection caused by non-functionally relevant
47+ # compiler arguments
48 if(CMAKE_TRY_COMPILE_CONFIGURATION)
49 string(TOUPPER "${CMAKE_TRY_COMPILE_CONFIGURATION}" _tc_config)
50 else()
51 set(_tc_config "DEBUG")
52 endif()
53 foreach(v CMAKE_${lang}_FLAGS CMAKE_${lang}_FLAGS_${_tc_config})
54+ # Avoid failing ABI detection on warnings.
55 string(REGEX REPLACE "(^| )-Werror([= ][^-][^ ]*)?( |$)" " " ${v} "${${v}}")
56+ # Avoid passing of "-pipe" when determining the compiler internals. With
57+ # "-pipe" GCC will use pipes to pass data between the involved
58+ # executables. This may lead to issues when their stderr output (which
59+ # contains the relevant compiler internals) becomes interweaved.
60+ string(REGEX REPLACE "(^| )-pipe( |$)" " " ${v} "${${v}}")
61 endforeach()
62
63 # Save the current LC_ALL, LC_MESSAGES, and LANG environment variables
diff --git a/meta/recipes-devtools/cmake/cmake/0005-Disable-use-of-ext2fs-ext2_fs.h-by-cmake-s-internal-.patch b/meta/recipes-devtools/cmake/cmake/0001-Disable-use-of-ext2fs-ext2_fs.h-by-cmake-s-internal.patch
index 7559c52932..f31dce5644 100644
--- a/meta/recipes-devtools/cmake/cmake/0005-Disable-use-of-ext2fs-ext2_fs.h-by-cmake-s-internal-.patch
+++ b/meta/recipes-devtools/cmake/cmake/0001-Disable-use-of-ext2fs-ext2_fs.h-by-cmake-s-internal.patch
@@ -1,4 +1,4 @@
1From 8effa783e47e2b574be90733c38b27701e06e929 Mon Sep 17 00:00:00 2001 1From cf8210696ebbaff14612d845bc98fac447c0e6f5 Mon Sep 17 00:00:00 2001
2From: Otavio Salvador <otavio@ossystems.com.br> 2From: Otavio Salvador <otavio@ossystems.com.br>
3Date: Thu, 5 Jul 2018 10:28:04 -0300 3Date: Thu, 5 Jul 2018 10:28:04 -0300
4Subject: [PATCH] Disable use of ext2fs/ext2_fs.h by cmake's internal 4Subject: [PATCH] Disable use of ext2fs/ext2_fs.h by cmake's internal
@@ -18,7 +18,7 @@ Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
18 1 file changed, 2 insertions(+), 6 deletions(-) 18 1 file changed, 2 insertions(+), 6 deletions(-)
19 19
20diff --git a/Utilities/cmlibarchive/CMakeLists.txt b/Utilities/cmlibarchive/CMakeLists.txt 20diff --git a/Utilities/cmlibarchive/CMakeLists.txt b/Utilities/cmlibarchive/CMakeLists.txt
21index 4e4b49c1..50e9a733 100644 21index 04d986b6ea7d8dc0bd7e909d4e7b4e73c9e35437..014fe78063f7d30c9a4970b7cf3aeeaeb36bcdbc 100644
22--- a/Utilities/cmlibarchive/CMakeLists.txt 22--- a/Utilities/cmlibarchive/CMakeLists.txt
23+++ b/Utilities/cmlibarchive/CMakeLists.txt 23+++ b/Utilities/cmlibarchive/CMakeLists.txt
24@@ -745,12 +745,8 @@ LA_CHECK_INCLUDE_FILE("copyfile.h" HAVE_COPYFILE_H) 24@@ -745,12 +745,8 @@ LA_CHECK_INCLUDE_FILE("copyfile.h" HAVE_COPYFILE_H)
diff --git a/meta/recipes-devtools/cmake/cmake/0001-cmCurl-Avoid-using-undocumented-type-for-CURLOPT_NET.patch b/meta/recipes-devtools/cmake/cmake/0001-cmCurl-Avoid-using-undocumented-type-for-CURLOPT_NET.patch
deleted file mode 100644
index c719c1fdfb..0000000000
--- a/meta/recipes-devtools/cmake/cmake/0001-cmCurl-Avoid-using-undocumented-type-for-CURLOPT_NET.patch
+++ /dev/null
@@ -1,30 +0,0 @@
1From c608975f4490f67872926f2601e5c37f2e570307 Mon Sep 17 00:00:00 2001
2From: Wang Mingyu <wangmy@fujitsu.com>
3Date: Wed, 9 Apr 2025 01:40:46 +0000
4Subject: [PATCH] cmCurl: Avoid using undocumented type for CURLOPT_NETRC
5 values
6
7Fix: nativesdk-cmake/3.31.6/cmake-3.31.6/Source/cmCurl.cxx:178:26: error: invalid conversion from 'long int' to 'CURL_NETRC_OPTION' [-fpermissive]
8Upstream-Status: Backport [https://gitlab.kitware.com/cmake/cmake/-/merge_requests/10449/diffs?commit_id=1b0c92a3a1b782ff3e1c4499b6ab8db614d45bcd]
9
10Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
11---
12 Source/cmCurl.cxx | 2 +-
13 1 file changed, 1 insertion(+), 1 deletion(-)
14
15diff --git a/Source/cmCurl.cxx b/Source/cmCurl.cxx
16index b9133ed7..0cf8a71a 100644
17--- a/Source/cmCurl.cxx
18+++ b/Source/cmCurl.cxx
19@@ -170,7 +170,7 @@ std::string cmCurlSetNETRCOption(::CURL* curl, const std::string& netrc_level,
20 const std::string& netrc_file)
21 {
22 std::string e;
23- CURL_NETRC_OPTION curl_netrc_level = CURL_NETRC_LAST;
24+ long curl_netrc_level = CURL_NETRC_LAST;
25 ::CURLcode res;
26
27 if (!netrc_level.empty()) {
28--
292.43.0
30
diff --git a/meta/recipes-devtools/cmake/cmake/0001-ctest-Allow-arbitrary-characters-in-test-names-of-CT.patch b/meta/recipes-devtools/cmake/cmake/0001-ctest-Allow-arbitrary-characters-in-test-names-of-CT.patch
deleted file mode 100644
index 31f6148cac..0000000000
--- a/meta/recipes-devtools/cmake/cmake/0001-ctest-Allow-arbitrary-characters-in-test-names-of-CT.patch
+++ /dev/null
@@ -1,202 +0,0 @@
1From c7e8b03324883760a2d6fab86ae034beb82af651 Mon Sep 17 00:00:00 2001
2From: John Drouhard <john@drouhard.dev>
3Date: Thu, 9 Jan 2025 20:34:42 -0600
4Subject: [PATCH] ctest: Allow arbitrary characters in test names of
5 CTestCostData.txt
6
7This changes the way lines in CTestCostData.txt are parsed to allow for
8spaces in the test name.
9
10It does so by looking for space characters from the end; and once two
11have been found, assumes everything from the beginning up to that
12second-to-last-space is the test name.
13
14Additionally, parsing the file should be much more efficient since there
15is no string or vector heap allocation per line. The std::string used by
16the parse function to convert the int and float should be within most
17standard libraries' small string optimization.
18
19Fixes: #26594
20
21Upstream-Status: Backport [4.0.0, 040da7d83216ace59710407e8ce35d5fd38e1340]
22Signed-off-by: Moritz Haase <Moritz.Haase@bmw.de>
23---
24 Source/CTest/cmCTestMultiProcessHandler.cxx | 77 +++++++++++++++------
25 Source/CTest/cmCTestMultiProcessHandler.h | 3 +-
26 Tests/CTestTestScheduler/CMakeLists.txt | 4 +-
27 3 files changed, 61 insertions(+), 23 deletions(-)
28
29diff --git a/Source/CTest/cmCTestMultiProcessHandler.cxx b/Source/CTest/cmCTestMultiProcessHandler.cxx
30index 84ea32b84d40025ec333a90d30c42eeaf7adc9ef..231e7b5f39b1d8aa75f4e59a890a099b53fcdaac 100644
31--- a/Source/CTest/cmCTestMultiProcessHandler.cxx
32+++ b/Source/CTest/cmCTestMultiProcessHandler.cxx
33@@ -20,6 +20,7 @@
34
35 #include <cm/memory>
36 #include <cm/optional>
37+#include <cm/string_view>
38 #include <cmext/algorithm>
39
40 #include <cm3p/json/value.h>
41@@ -52,6 +53,48 @@ constexpr unsigned long kParallelLevelMinimum = 2u;
42 // Under a job server, parallelism is effectively limited
43 // only by available job server tokens.
44 constexpr unsigned long kParallelLevelUnbounded = 0x10000u;
45+
46+struct CostEntry
47+{
48+ cm::string_view name;
49+ int prevRuns;
50+ float cost;
51+};
52+
53+cm::optional<CostEntry> splitCostLine(cm::string_view line)
54+{
55+ std::string part;
56+ cm::string_view::size_type pos1 = line.size();
57+ cm::string_view::size_type pos2 = line.find_last_of(' ', pos1);
58+ auto findNext = [line, &part, &pos1, &pos2]() -> bool {
59+ if (pos2 != cm::string_view::npos) {
60+ cm::string_view sub = line.substr(pos2 + 1, pos1 - pos2 - 1);
61+ part.assign(sub.begin(), sub.end());
62+ pos1 = pos2;
63+ if (pos1 > 0) {
64+ pos2 = line.find_last_of(' ', pos1 - 1);
65+ }
66+ return true;
67+ }
68+ return false;
69+ };
70+
71+ // parse the cost
72+ if (!findNext()) {
73+ return cm::nullopt;
74+ }
75+ float cost = static_cast<float>(atof(part.c_str()));
76+
77+ // parse the previous runs
78+ if (!findNext()) {
79+ return cm::nullopt;
80+ }
81+ int prev = atoi(part.c_str());
82+
83+ // from start to the last found space is the name
84+ return CostEntry{ line.substr(0, pos1), prev, cost };
85+}
86+
87 }
88
89 namespace cmsys {
90@@ -797,24 +840,21 @@ void cmCTestMultiProcessHandler::UpdateCostData()
91 if (line == "---") {
92 break;
93 }
94- std::vector<std::string> parts = cmSystemTools::SplitString(line, ' ');
95 // Format: <name> <previous_runs> <avg_cost>
96- if (parts.size() < 3) {
97+ cm::optional<CostEntry> entry = splitCostLine(line);
98+ if (!entry) {
99 break;
100 }
101
102- std::string name = parts[0];
103- int prev = atoi(parts[1].c_str());
104- float cost = static_cast<float>(atof(parts[2].c_str()));
105-
106- int index = this->SearchByName(name);
107+ int index = this->SearchByName(entry->name);
108 if (index == -1) {
109 // This test is not in memory. We just rewrite the entry
110- fout << name << " " << prev << " " << cost << "\n";
111+ fout << entry->name << " " << entry->prevRuns << " " << entry->cost
112+ << "\n";
113 } else {
114 // Update with our new average cost
115- fout << name << " " << this->Properties[index]->PreviousRuns << " "
116- << this->Properties[index]->Cost << "\n";
117+ fout << entry->name << " " << this->Properties[index]->PreviousRuns
118+ << " " << this->Properties[index]->Cost << "\n";
119 temp.erase(index);
120 }
121 }
122@@ -850,28 +890,25 @@ void cmCTestMultiProcessHandler::ReadCostData()
123 break;
124 }
125
126- std::vector<std::string> parts = cmSystemTools::SplitString(line, ' ');
127+ // Format: <name> <previous_runs> <avg_cost>
128+ cm::optional<CostEntry> entry = splitCostLine(line);
129
130 // Probably an older version of the file, will be fixed next run
131- if (parts.size() < 3) {
132+ if (!entry) {
133 fin.close();
134 return;
135 }
136
137- std::string name = parts[0];
138- int prev = atoi(parts[1].c_str());
139- float cost = static_cast<float>(atof(parts[2].c_str()));
140-
141- int index = this->SearchByName(name);
142+ int index = this->SearchByName(entry->name);
143 if (index == -1) {
144 continue;
145 }
146
147- this->Properties[index]->PreviousRuns = prev;
148+ this->Properties[index]->PreviousRuns = entry->prevRuns;
149 // When not running in parallel mode, don't use cost data
150 if (this->GetParallelLevel() > 1 && this->Properties[index] &&
151 this->Properties[index]->Cost == 0) {
152- this->Properties[index]->Cost = cost;
153+ this->Properties[index]->Cost = entry->cost;
154 }
155 }
156 // Next part of the file is the failed tests
157@@ -884,7 +921,7 @@ void cmCTestMultiProcessHandler::ReadCostData()
158 }
159 }
160
161-int cmCTestMultiProcessHandler::SearchByName(std::string const& name)
162+int cmCTestMultiProcessHandler::SearchByName(cm::string_view name)
163 {
164 int index = -1;
165
166diff --git a/Source/CTest/cmCTestMultiProcessHandler.h b/Source/CTest/cmCTestMultiProcessHandler.h
167index fd6c17f2fac06949c20f3792dd3eae442b15850b..811be613c3387240c0181f8372b24cf09219621f 100644
168--- a/Source/CTest/cmCTestMultiProcessHandler.h
169+++ b/Source/CTest/cmCTestMultiProcessHandler.h
170@@ -13,6 +13,7 @@
171 #include <vector>
172
173 #include <cm/optional>
174+#include <cm/string_view>
175
176 #include "cmCTest.h"
177 #include "cmCTestResourceAllocator.h"
178@@ -110,7 +111,7 @@ protected:
179 void UpdateCostData();
180 void ReadCostData();
181 // Return index of a test based on its name
182- int SearchByName(std::string const& name);
183+ int SearchByName(cm::string_view name);
184
185 void CreateTestCostList();
186
187diff --git a/Tests/CTestTestScheduler/CMakeLists.txt b/Tests/CTestTestScheduler/CMakeLists.txt
188index 6f8cb4dbc0de35984540e1868788e0a02124e819..daf6ce2b23d8c048334ae1047759130b246dccef 100644
189--- a/Tests/CTestTestScheduler/CMakeLists.txt
190+++ b/Tests/CTestTestScheduler/CMakeLists.txt
191@@ -1,9 +1,9 @@
192-cmake_minimum_required(VERSION 3.10)
193+cmake_minimum_required(VERSION 3.19)
194 project (CTestTestScheduler)
195 include (CTest)
196
197 add_executable (Sleep sleep.c)
198
199 foreach (time RANGE 1 4)
200- add_test (TestSleep${time} Sleep ${time})
201+ add_test ("TestSleep ${time}" Sleep ${time})
202 endforeach ()
diff --git a/meta/recipes-devtools/cmake/cmake/0001-CMakeLists.txt-disable-USE_NGHTTP2.patch b/meta/recipes-devtools/cmake/cmake/0002-CMakeLists.txt-disable-USE_NGHTTP2.patch
index ab78fa26ba..158eea2c3e 100644
--- a/meta/recipes-devtools/cmake/cmake/0001-CMakeLists.txt-disable-USE_NGHTTP2.patch
+++ b/meta/recipes-devtools/cmake/cmake/0002-CMakeLists.txt-disable-USE_NGHTTP2.patch
@@ -1,4 +1,4 @@
1From 061253f390ada0661b30cf8856fa8d8d40a7355d Mon Sep 17 00:00:00 2001 1From e0a1996a85dcb43d69d3c7daecab4da74599e5ba Mon Sep 17 00:00:00 2001
2From: Changqing Li <changqing.li@windriver.com> 2From: Changqing Li <changqing.li@windriver.com>
3Date: Wed, 28 Dec 2022 17:51:27 +0800 3Date: Wed, 28 Dec 2022 17:51:27 +0800
4Subject: [PATCH] CMakeLists.txt: disable USE_NGHTTP2 4Subject: [PATCH] CMakeLists.txt: disable USE_NGHTTP2
@@ -22,10 +22,10 @@ Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com>
22 1 file changed, 1 insertion(+), 1 deletion(-) 22 1 file changed, 1 insertion(+), 1 deletion(-)
23 23
24diff --git a/Utilities/cmcurl/CMakeLists.txt b/Utilities/cmcurl/CMakeLists.txt 24diff --git a/Utilities/cmcurl/CMakeLists.txt b/Utilities/cmcurl/CMakeLists.txt
25index ef6c269e..ecaac497 100644 25index 75b510205984894ffa11461e7aa04d3c479709b4..83463042d82d9c7f17932753f47c47b12aeec85b 100644
26--- a/Utilities/cmcurl/CMakeLists.txt 26--- a/Utilities/cmcurl/CMakeLists.txt
27+++ b/Utilities/cmcurl/CMakeLists.txt 27+++ b/Utilities/cmcurl/CMakeLists.txt
28@@ -99,7 +99,7 @@ set(USE_ECH OFF) 28@@ -105,7 +105,7 @@ set(USE_ECH OFF)
29 set(USE_HTTPSRR OFF) 29 set(USE_HTTPSRR OFF)
30 set(USE_LIBIDN2 ON) 30 set(USE_LIBIDN2 ON)
31 set(USE_LIBRTMP OFF) 31 set(USE_LIBRTMP OFF)
diff --git a/meta/recipes-devtools/cmake/cmake_3.31.6.bb b/meta/recipes-devtools/cmake/cmake_4.0.3.bb
index 2d343d6f52..7d8b8cac65 100644
--- a/meta/recipes-devtools/cmake/cmake_3.31.6.bb
+++ b/meta/recipes-devtools/cmake/cmake_4.0.3.bb
@@ -5,7 +5,6 @@ inherit cmake bash-completion
5DEPENDS += "curl expat zlib libarchive xz ncurses bzip2" 5DEPENDS += "curl expat zlib libarchive xz ncurses bzip2"
6 6
7SRC_URI:append:class-nativesdk = " \ 7SRC_URI:append:class-nativesdk = " \
8 file://0001-ctest-Allow-arbitrary-characters-in-test-names-of-CT.patch \
9 file://OEToolchainConfig.cmake \ 8 file://OEToolchainConfig.cmake \
10 file://SDKToolchainConfig.cmake.template \ 9 file://SDKToolchainConfig.cmake.template \
11 file://cmake-setup.py \ 10 file://cmake-setup.py \
diff --git a/meta/recipes-devtools/createrepo-c/createrepo-c/0001-Fix-libname-of-Libs.private.patch b/meta/recipes-devtools/createrepo-c/createrepo-c/0001-Fix-libname-of-Libs.private.patch
new file mode 100644
index 0000000000..ceccbda9d6
--- /dev/null
+++ b/meta/recipes-devtools/createrepo-c/createrepo-c/0001-Fix-libname-of-Libs.private.patch
@@ -0,0 +1,22 @@
1From 122963c764b06a4b487b32d4d1da330bd83da4d8 Mon Sep 17 00:00:00 2001
2From: fundawang <fundawang@yeah.net>
3Date: Mon, 17 Mar 2025 19:05:08 +0800
4Subject: [PATCH] Fix libname of Libs.private
5
6Upstream-Status: Backport [1c712194e604f6dd4f8a881e09d8236d4f770b67]
7Signed-off-by: Moritz Haase <Moritz.Haase@bmw.de>
8---
9 src/createrepo_c.pc.cmake | 2 +-
10 1 file changed, 1 insertion(+), 1 deletion(-)
11
12diff --git a/src/createrepo_c.pc.cmake b/src/createrepo_c.pc.cmake
13index 466487e2f490db28576611924e3d9ac94a99cb51..b7eb66318781b01f2b1348ab2c9dbd24d9a5c32f 100644
14--- a/src/createrepo_c.pc.cmake
15+++ b/src/createrepo_c.pc.cmake
16@@ -8,5 +8,5 @@ Version: @VERSION@
17 Requires: glib-2.0 rpm libcurl sqlite3
18 Requires.private: zlib libxml-2.0
19 Libs: -L${libdir} -lcreaterepo_c
20-Libs.private: -lbz2 -lzma
21+Libs.private: -lbz2 -llzma
22 Cflags: -I${includedir}
diff --git a/meta/recipes-devtools/createrepo-c/createrepo-c/0002-Use-IMPORTED_TARGET-for-3rd-party-dependencies.patch b/meta/recipes-devtools/createrepo-c/createrepo-c/0002-Use-IMPORTED_TARGET-for-3rd-party-dependencies.patch
new file mode 100644
index 0000000000..da50d27a76
--- /dev/null
+++ b/meta/recipes-devtools/createrepo-c/createrepo-c/0002-Use-IMPORTED_TARGET-for-3rd-party-dependencies.patch
@@ -0,0 +1,226 @@
1From 545532ec468d0dc768fee8a5e83153440509b273 Mon Sep 17 00:00:00 2001
2From: Pietro Cerutti <gahr@gahr.ch>
3Date: Tue, 1 Oct 2024 12:10:40 +0000
4Subject: [PATCH] Use IMPORTED_TARGET for 3rd-party dependencies
5
6The current CMakeLists.txt fails to include the required link directories for 3rd-party packages.
7As an example, on FreeBSD where packages are installed under /usr/local, the link lines include -lgio-2.0 but not -L/usr/local/lib.
8
9The suggested solution is to use the IMPORTED_TARGET mode of pkg_check_modules. This requires CMake 3.6, so I have bumped the minimum required version.
10
11Upstream-Status: Backport [89fa02828cdaf1c710c38bde5fcbcf59538a9cce]
12Signed-off-by: Moritz Haase <Moritz.Haase@bmw.de>
13---
14 CMakeLists.txt | 22 +++++++++++-----------
15 src/CMakeLists.txt | 36 ++++++++++++++++++------------------
16 tests/CMakeLists.txt | 30 +++++++++++++++---------------
17 3 files changed, 44 insertions(+), 44 deletions(-)
18
19diff --git a/CMakeLists.txt b/CMakeLists.txt
20index 9a18393f526a4eb74a53d5bddc84f75afcf0499c..c4bf525200ba24eb69ad08feb68b30f065bdac22 100644
21--- a/CMakeLists.txt
22+++ b/CMakeLists.txt
23@@ -1,4 +1,4 @@
24-CMAKE_MINIMUM_REQUIRED (VERSION 2.8.12)
25+CMAKE_MINIMUM_REQUIRED (VERSION 3.7)
26 PROJECT (createrepo_c C)
27
28 include(GNUInstallDirs)
29@@ -39,13 +39,13 @@ find_package(LibXml2 REQUIRED)
30 find_package(OpenSSL REQUIRED)
31 find_package(ZLIB REQUIRED)
32
33-pkg_check_modules(GLIB2 REQUIRED glib-2.0)
34-pkg_check_modules(GIO REQUIRED gio-2.0)
35-pkg_check_modules(GTHREAD2 REQUIRED gthread-2.0)
36-pkg_check_modules(LZMA REQUIRED liblzma)
37-pkg_check_modules(SQLITE3 REQUIRED sqlite3>=3.6.18)
38-pkg_check_modules(RPM REQUIRED rpm)
39-pkg_check_modules(ZSTD REQUIRED libzstd)
40+pkg_check_modules(GLIB2 REQUIRED IMPORTED_TARGET glib-2.0)
41+pkg_check_modules(GIO REQUIRED IMPORTED_TARGET gio-2.0)
42+pkg_check_modules(GTHREAD2 REQUIRED IMPORTED_TARGET gthread-2.0)
43+pkg_check_modules(LZMA REQUIRED IMPORTED_TARGET liblzma)
44+pkg_check_modules(SQLITE3 REQUIRED IMPORTED_TARGET sqlite3>=3.6.18)
45+pkg_check_modules(RPM REQUIRED IMPORTED_TARGET rpm)
46+pkg_check_modules(ZSTD REQUIRED IMPORTED_TARGET libzstd)
47
48 # Add include dirs
49
50@@ -73,7 +73,7 @@ ENDIF (WITH_LEGACY_HASHES)
51 # drpm
52 OPTION (ENABLE_DRPM "Enable delta RPM support?" OFF)
53 IF (ENABLE_DRPM)
54- pkg_check_modules(DRPM REQUIRED drpm>=0.4.0)
55+ pkg_check_modules(DRPM REQUIRED IMPORTED_TARGET drpm>=0.4.0)
56 include_directories (${DRPM_INCLUDE_DIRS})
57 ADD_DEFINITIONS("-DCR_DELTA_RPM_SUPPORT")
58 ENDIF (ENABLE_DRPM)
59@@ -83,7 +83,7 @@ OPTION (ENABLE_PYTHON "Enable python support?" ON)
60
61 OPTION (WITH_ZCHUNK "Build with zchunk support" ON)
62 IF (WITH_ZCHUNK)
63- pkg_check_modules(ZCK REQUIRED zck)
64+ pkg_check_modules(ZCK REQUIRED IMPORTED_TARGET zck)
65 include_directories(${ZCK_INCLUDE_DIRS})
66 SET (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DWITH_ZCHUNK")
67 SET (CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DWITH_ZCHUNK")
68@@ -91,7 +91,7 @@ ENDIF (WITH_ZCHUNK)
69
70 OPTION (WITH_LIBMODULEMD "Build with libmodulemd support" ON)
71 IF (WITH_LIBMODULEMD)
72- pkg_check_modules(LIBMODULEMD REQUIRED modulemd-2.0)
73+ pkg_check_modules(LIBMODULEMD REQUIRED IMPORTED_TARGET modulemd-2.0)
74 include_directories(${LIBMODULEMD_INCLUDE_DIRS})
75 SET (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DWITH_LIBMODULEMD")
76 SET (CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DWITH_LIBMODULEMD")
77diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
78index 61b048044392b4204984af8969c3b1d74a9b8094..5309050bdadf6a14d9cddf4529d309ef97cc6d2c 100644
79--- a/src/CMakeLists.txt
80+++ b/src/CMakeLists.txt
81@@ -86,18 +86,18 @@ ENDIF ()
82 ADD_LIBRARY(libcreaterepo_c ${createrepo_c_library_type} ${createrepo_c_SRCS})
83 TARGET_LINK_LIBRARIES(libcreaterepo_c ${BZIP2_LIBRARIES})
84 TARGET_LINK_LIBRARIES(libcreaterepo_c ${CURL_LIBRARY})
85-TARGET_LINK_LIBRARIES(libcreaterepo_c ${GLIB2_LIBRARIES})
86-TARGET_LINK_LIBRARIES(libcreaterepo_c ${GIO_LIBRARIES})
87-TARGET_LINK_LIBRARIES(libcreaterepo_c ${LIBMODULEMD_LIBRARIES})
88+TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::GLIB2)
89+TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::GIO)
90+TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::LIBMODULEMD)
91 TARGET_LINK_LIBRARIES(libcreaterepo_c ${LIBXML2_LIBRARIES})
92-TARGET_LINK_LIBRARIES(libcreaterepo_c ${LZMA_LIBRARIES})
93+TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::LZMA)
94 TARGET_LINK_LIBRARIES(libcreaterepo_c ${OPENSSL_LIBRARIES})
95-TARGET_LINK_LIBRARIES(libcreaterepo_c ${RPM_LIBRARIES})
96-TARGET_LINK_LIBRARIES(libcreaterepo_c ${SQLITE3_LIBRARIES})
97+TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::RPM)
98+TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::SQLITE3)
99 TARGET_LINK_LIBRARIES(libcreaterepo_c ${ZLIB_LIBRARY})
100-TARGET_LINK_LIBRARIES(libcreaterepo_c ${ZCK_LIBRARIES})
101-TARGET_LINK_LIBRARIES(libcreaterepo_c ${DRPM_LIBRARIES})
102-TARGET_LINK_LIBRARIES(libcreaterepo_c ${ZSTD_LIBRARIES})
103+TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::ZCK)
104+TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::DRPM)
105+TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::ZSTD)
106
107 SET_TARGET_PROPERTIES(libcreaterepo_c PROPERTIES
108 OUTPUT_NAME "createrepo_c"
109@@ -108,27 +108,27 @@ SET_TARGET_PROPERTIES(libcreaterepo_c PROPERTIES
110 ADD_EXECUTABLE(createrepo_c createrepo_c.c cmd_parser.c)
111 TARGET_LINK_LIBRARIES(createrepo_c
112 libcreaterepo_c
113- ${GLIB2_LIBRARIES}
114- ${GTHREAD2_LIBRARIES})
115+ PkgConfig::GLIB2
116+ PkgConfig::GTHREAD2)
117
118 ADD_EXECUTABLE(mergerepo_c mergerepo_c.c)
119 TARGET_LINK_LIBRARIES(mergerepo_c
120 libcreaterepo_c
121- ${GLIB2_LIBRARIES}
122- ${GTHREAD2_LIBRARIES}
123- ${LIBMODULEMD_LIBRARIES})
124+ PkgConfig::GLIB2
125+ PkgConfig::GTHREAD2
126+ PkgConfig::LIBMODULEMD)
127
128 ADD_EXECUTABLE(modifyrepo_c modifyrepo_c.c)
129 TARGET_LINK_LIBRARIES(modifyrepo_c
130 libcreaterepo_c
131- ${GLIB2_LIBRARIES}
132- ${GTHREAD2_LIBRARIES})
133+ PkgConfig::GLIB2
134+ PkgConfig::GTHREAD2)
135
136 ADD_EXECUTABLE(sqliterepo_c sqliterepo_c.c)
137 TARGET_LINK_LIBRARIES(sqliterepo_c
138 libcreaterepo_c
139- ${GLIB2_LIBRARIES}
140- ${GTHREAD2_LIBRARIES})
141+ PkgConfig::GLIB2
142+ PkgConfig::GTHREAD2)
143
144 CONFIGURE_FILE("createrepo_c.pc.cmake" "${CMAKE_SOURCE_DIR}/src/createrepo_c.pc" @ONLY)
145 CONFIGURE_FILE("version.h.in" "${CMAKE_CURRENT_SOURCE_DIR}/version.h" @ONLY)
146diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
147index 4ffe837edb64153a7261d19dbaf67aceac4b5746..37339ad75190827a8e501de64dbf929f9aee4cd4 100644
148--- a/tests/CMakeLists.txt
149+++ b/tests/CMakeLists.txt
150@@ -1,61 +1,61 @@
151 ADD_EXECUTABLE(test_checksum test_checksum.c)
152-TARGET_LINK_LIBRARIES(test_checksum libcreaterepo_c ${GLIB2_LIBRARIES})
153+TARGET_LINK_LIBRARIES(test_checksum libcreaterepo_c PkgConfig::GLIB2)
154 ADD_DEPENDENCIES(tests test_checksum)
155
156 ADD_EXECUTABLE(test_compression_wrapper test_compression_wrapper.c)
157-TARGET_LINK_LIBRARIES(test_compression_wrapper libcreaterepo_c ${GLIB2_LIBRARIES})
158+TARGET_LINK_LIBRARIES(test_compression_wrapper libcreaterepo_c PkgConfig::GLIB2)
159 ADD_DEPENDENCIES(tests test_compression_wrapper)
160
161 ADD_EXECUTABLE(test_load_metadata test_load_metadata.c)
162-TARGET_LINK_LIBRARIES(test_load_metadata libcreaterepo_c ${GLIB2_LIBRARIES})
163+TARGET_LINK_LIBRARIES(test_load_metadata libcreaterepo_c PkgConfig::GLIB2)
164 ADD_DEPENDENCIES(tests test_load_metadata)
165
166 ADD_EXECUTABLE(test_locate_metadata test_locate_metadata.c)
167-TARGET_LINK_LIBRARIES(test_locate_metadata libcreaterepo_c ${GLIB2_LIBRARIES})
168+TARGET_LINK_LIBRARIES(test_locate_metadata libcreaterepo_c PkgConfig::GLIB2)
169 ADD_DEPENDENCIES(tests test_locate_metadata)
170
171 ADD_EXECUTABLE(test_misc test_misc.c)
172-TARGET_LINK_LIBRARIES(test_misc libcreaterepo_c ${GLIB2_LIBRARIES})
173+TARGET_LINK_LIBRARIES(test_misc libcreaterepo_c PkgConfig::GLIB2)
174 ADD_DEPENDENCIES(tests test_misc)
175
176 ADD_EXECUTABLE(test_sqlite test_sqlite.c)
177-TARGET_LINK_LIBRARIES(test_sqlite libcreaterepo_c ${GLIB2_LIBRARIES})
178+TARGET_LINK_LIBRARIES(test_sqlite libcreaterepo_c PkgConfig::GLIB2)
179 ADD_DEPENDENCIES(tests test_sqlite)
180
181 ADD_EXECUTABLE(test_xml_file test_xml_file.c)
182-TARGET_LINK_LIBRARIES(test_xml_file libcreaterepo_c ${GLIB2_LIBRARIES})
183+TARGET_LINK_LIBRARIES(test_xml_file libcreaterepo_c PkgConfig::GLIB2)
184 ADD_DEPENDENCIES(tests test_xml_file)
185
186 ADD_EXECUTABLE(test_xml_parser_filelists test_xml_parser_filelists.c)
187-TARGET_LINK_LIBRARIES(test_xml_parser_filelists libcreaterepo_c ${GLIB2_LIBRARIES})
188+TARGET_LINK_LIBRARIES(test_xml_parser_filelists libcreaterepo_c PkgConfig::GLIB2)
189 ADD_DEPENDENCIES(tests test_xml_parser_filelists)
190
191 ADD_EXECUTABLE(test_xml_parser_repomd test_xml_parser_repomd.c)
192-TARGET_LINK_LIBRARIES(test_xml_parser_repomd libcreaterepo_c ${GLIB2_LIBRARIES})
193+TARGET_LINK_LIBRARIES(test_xml_parser_repomd libcreaterepo_c PkgConfig::GLIB2)
194 ADD_DEPENDENCIES(tests test_xml_parser_repomd)
195
196 ADD_EXECUTABLE(test_xml_parser_updateinfo test_xml_parser_updateinfo.c)
197-TARGET_LINK_LIBRARIES(test_xml_parser_updateinfo libcreaterepo_c ${GLIB2_LIBRARIES})
198+TARGET_LINK_LIBRARIES(test_xml_parser_updateinfo libcreaterepo_c PkgConfig::GLIB2)
199 ADD_DEPENDENCIES(tests test_xml_parser_updateinfo)
200
201 ADD_EXECUTABLE(test_xml_parser_main_metadata_together test_xml_parser_main_metadata_together.c)
202-TARGET_LINK_LIBRARIES(test_xml_parser_main_metadata_together libcreaterepo_c ${GLIB2_LIBRARIES})
203+TARGET_LINK_LIBRARIES(test_xml_parser_main_metadata_together libcreaterepo_c PkgConfig::GLIB2)
204 ADD_DEPENDENCIES(tests test_xml_parser_main_metadata_together)
205
206 ADD_EXECUTABLE(test_xml_dump test_xml_dump.c)
207-TARGET_LINK_LIBRARIES(test_xml_dump libcreaterepo_c ${GLIB2_LIBRARIES})
208+TARGET_LINK_LIBRARIES(test_xml_dump libcreaterepo_c PkgConfig::GLIB2)
209 ADD_DEPENDENCIES(tests test_xml_dump)
210
211 ADD_EXECUTABLE(test_xml_dump_primary test_xml_dump_primary.c)
212-TARGET_LINK_LIBRARIES(test_xml_dump_primary libcreaterepo_c ${GLIB2_LIBRARIES})
213+TARGET_LINK_LIBRARIES(test_xml_dump_primary libcreaterepo_c PkgConfig::GLIB2)
214 ADD_DEPENDENCIES(tests test_xml_dump_primary)
215
216 ADD_EXECUTABLE(test_koji test_koji.c)
217-TARGET_LINK_LIBRARIES(test_koji libcreaterepo_c ${GLIB2_LIBRARIES})
218+TARGET_LINK_LIBRARIES(test_koji libcreaterepo_c PkgConfig::GLIB2)
219 ADD_DEPENDENCIES(tests test_koji)
220
221 ADD_EXECUTABLE(test_modifyrepo_shared test_modifyrepo_shared.c)
222-TARGET_LINK_LIBRARIES(test_modifyrepo_shared libcreaterepo_c ${GLIB2_LIBRARIES})
223+TARGET_LINK_LIBRARIES(test_modifyrepo_shared libcreaterepo_c PkgConfig::GLIB2)
224 ADD_DEPENDENCIES(tests test_modifyrepo_shared)
225
226 CONFIGURE_FILE("run_tests.sh.in" "${CMAKE_BINARY_DIR}/tests/run_tests.sh")
diff --git a/meta/recipes-devtools/createrepo-c/createrepo-c/0003-Don-t-try-to-use-imported-targets-of-turned-off-depe.patch b/meta/recipes-devtools/createrepo-c/createrepo-c/0003-Don-t-try-to-use-imported-targets-of-turned-off-depe.patch
new file mode 100644
index 0000000000..769976694e
--- /dev/null
+++ b/meta/recipes-devtools/createrepo-c/createrepo-c/0003-Don-t-try-to-use-imported-targets-of-turned-off-depe.patch
@@ -0,0 +1,53 @@
1From cfd899731f40695e9fd362dc64098e27636808fe Mon Sep 17 00:00:00 2001
2From: Pietro Cerutti <gahr@gahr.ch>
3Date: Mon, 14 Oct 2024 11:49:42 +0000
4Subject: [PATCH] Don't try to use imported targets of turned-off dependencies
5
6Upstream-Status: Backport [0a2da7c87ae9b7e3e11e77416a8e75633d4608a0]
7Signed-off-by: Moritz Haase <Moritz.Haase@bmw.de>
8---
9 src/CMakeLists.txt | 18 +++++++++++++-----
10 1 file changed, 13 insertions(+), 5 deletions(-)
11
12diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
13index 5309050bdadf6a14d9cddf4529d309ef97cc6d2c..9444875ff1a2fd2ce0ccc678e121ea54ce0d1b83 100644
14--- a/src/CMakeLists.txt
15+++ b/src/CMakeLists.txt
16@@ -88,15 +88,21 @@ TARGET_LINK_LIBRARIES(libcreaterepo_c ${BZIP2_LIBRARIES})
17 TARGET_LINK_LIBRARIES(libcreaterepo_c ${CURL_LIBRARY})
18 TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::GLIB2)
19 TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::GIO)
20-TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::LIBMODULEMD)
21+IF (WITH_LIBMODULEMD)
22+ TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::LIBMODULEMD)
23+ENDIF (WITH_LIBMODULEMD)
24 TARGET_LINK_LIBRARIES(libcreaterepo_c ${LIBXML2_LIBRARIES})
25 TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::LZMA)
26 TARGET_LINK_LIBRARIES(libcreaterepo_c ${OPENSSL_LIBRARIES})
27 TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::RPM)
28 TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::SQLITE3)
29 TARGET_LINK_LIBRARIES(libcreaterepo_c ${ZLIB_LIBRARY})
30-TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::ZCK)
31-TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::DRPM)
32+IF (WITH_ZCHUNK)
33+ TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::ZCK)
34+ENDIF (WITH_ZCHUNK)
35+IF (ENABLE_DRPM)
36+ TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::DRPM)
37+ENDIF (ENABLE_DRPM)
38 TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::ZSTD)
39
40 SET_TARGET_PROPERTIES(libcreaterepo_c PROPERTIES
41@@ -115,8 +121,10 @@ ADD_EXECUTABLE(mergerepo_c mergerepo_c.c)
42 TARGET_LINK_LIBRARIES(mergerepo_c
43 libcreaterepo_c
44 PkgConfig::GLIB2
45- PkgConfig::GTHREAD2
46- PkgConfig::LIBMODULEMD)
47+ PkgConfig::GTHREAD2)
48+IF (WITH_LIBMODULEMD)
49+ TARGET_LINK_LIBRARIES(mergerepo_c PkgConfig::LIBMODULEMD)
50+ENDIF (WITH_LIBMODULEMD)
51
52 ADD_EXECUTABLE(modifyrepo_c modifyrepo_c.c)
53 TARGET_LINK_LIBRARIES(modifyrepo_c
diff --git a/meta/recipes-devtools/createrepo-c/createrepo-c/0004-cmake-Allow-builds-without-Doxygen-being-present-wit.patch b/meta/recipes-devtools/createrepo-c/createrepo-c/0004-cmake-Allow-builds-without-Doxygen-being-present-wit.patch
new file mode 100644
index 0000000000..acf888e7ba
--- /dev/null
+++ b/meta/recipes-devtools/createrepo-c/createrepo-c/0004-cmake-Allow-builds-without-Doxygen-being-present-wit.patch
@@ -0,0 +1,50 @@
1From 90f39874bd122ca9e966f32c01e43e922031018e Mon Sep 17 00:00:00 2001
2From: Moritz Haase <Moritz.Haase@bmw.de>
3Date: Mon, 23 Jun 2025 09:21:07 +0200
4Subject: [PATCH] cmake: Allow builds without Doxygen being present with CMake
5 4+
6
7With CMake 4+, the initial CMake run fails with
8
9 CMake Error at doc/CMakeLists.txt:18 (ADD_DEPENDENCIES):
10 The dependency target "doc-c" of target "doc" does not exist.
11
12in case Doxygen is not installed on the system, since non-existent dependencies
13are not ignored anymore (see [0]). Rectify that by making sure that we only add
14the dependency in case Doxygen has been found.
15
16[0]: https://cmake.org/cmake/help/latest/policy/CMP0046.html
17
18Upstream-Status: Backport [908e3a4a5909ab107da41c2631a06c6b23617f3c]
19Signed-off-by: Moritz Haase <Moritz.Haase@bmw.de>
20---
21 doc/CMakeLists.txt | 7 ++++---
22 1 file changed, 4 insertions(+), 3 deletions(-)
23
24diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt
25index 6b2ef5e0593757c7b977cd5d228b7774b4f45641..6332b91260ff87f16e331071e652bfe0b167f518 100644
26--- a/doc/CMakeLists.txt
27+++ b/doc/CMakeLists.txt
28@@ -1,11 +1,15 @@
29 ADD_SUBDIRECTORY (python)
30
31+ADD_CUSTOM_TARGET (doc)
32+ADD_DEPENDENCIES (doc doc-python)
33+
34 find_package(Doxygen)
35 if(DOXYGEN_FOUND)
36 CONFIGURE_FILE("Doxyfile.in.in" "${CMAKE_CURRENT_BINARY_DIR}/Doxyfile.in" @ONLY)
37 add_custom_target(doc-c
38 ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile.in
39 COMMENT "Building C API documentation with Doxygen" VERBATIM)
40+ ADD_DEPENDENCIES (doc doc-c)
41 endif(DOXYGEN_FOUND)
42
43 IF(CREATEREPO_C_INSTALL_MANPAGES)
44@@ -13,6 +17,3 @@ IF(CREATEREPO_C_INSTALL_MANPAGES)
45 DESTINATION "${CMAKE_INSTALL_MANDIR}/man8"
46 COMPONENT bin)
47 ENDIF(CREATEREPO_C_INSTALL_MANPAGES)
48-
49-ADD_CUSTOM_TARGET (doc)
50-ADD_DEPENDENCIES (doc doc-python doc-c)
diff --git a/meta/recipes-devtools/createrepo-c/createrepo-c_1.2.1.bb b/meta/recipes-devtools/createrepo-c/createrepo-c_1.2.1.bb
index 63a717726c..ecd43b0c0b 100644
--- a/meta/recipes-devtools/createrepo-c/createrepo-c_1.2.1.bb
+++ b/meta/recipes-devtools/createrepo-c/createrepo-c_1.2.1.bb
@@ -7,6 +7,10 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
7SRC_URI = "git://github.com/rpm-software-management/createrepo_c;branch=master;protocol=https;tag=${PV} \ 7SRC_URI = "git://github.com/rpm-software-management/createrepo_c;branch=master;protocol=https;tag=${PV} \
8 file://0001-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch \ 8 file://0001-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch \
9 file://0001-include-rpm-rpmstring.h.patch \ 9 file://0001-include-rpm-rpmstring.h.patch \
10 file://0001-Fix-libname-of-Libs.private.patch \
11 file://0002-Use-IMPORTED_TARGET-for-3rd-party-dependencies.patch \
12 file://0003-Don-t-try-to-use-imported-targets-of-turned-off-depe.patch \
13 file://0004-cmake-Allow-builds-without-Doxygen-being-present-wit.patch \
10 " 14 "
11 15
12SRCREV = "8c6e6f88df86d1e34ca26d3835d77a2816326414" 16SRCREV = "8c6e6f88df86d1e34ca26d3835d77a2816326414"
diff --git a/meta/recipes-devtools/git/git/fixsort.patch b/meta/recipes-devtools/git/git/fixsort.patch
index e077eba8ff..7066e1808d 100644
--- a/meta/recipes-devtools/git/git/fixsort.patch
+++ b/meta/recipes-devtools/git/git/fixsort.patch
@@ -23,15 +23,15 @@ Upstream-Status: Submitted [https://public-inbox.org/git/f029a942dd3d50d85e60bd3
23 1 file changed, 1 insertion(+), 1 deletion(-) 23 1 file changed, 1 insertion(+), 1 deletion(-)
24 24
25diff --git a/generate-configlist.sh b/generate-configlist.sh 25diff --git a/generate-configlist.sh b/generate-configlist.sh
26index dffdaad..cc35a21 100755 26index 75c39ad..6d4525e 100755
27--- a/generate-configlist.sh 27--- a/generate-configlist.sh
28+++ b/generate-configlist.sh 28+++ b/generate-configlist.sh
29@@ -15,7 +15,7 @@ static const char *config_name_list[] = { 29@@ -23,7 +23,7 @@ EOF
30 EOF 30 d' \
31 grep -h '^[a-zA-Z].*\..*::$' "$SOURCE_DIR"/Documentation/*config.adoc "$SOURCE_DIR"/Documentation/config/*.adoc | 31 "$SOURCE_DIR"/Documentation/*config.adoc \
32 sed '/deprecated/d; s/::$//; s/, */\n/g' | 32 "$SOURCE_DIR"/Documentation/config/*.adoc |
33- sort | 33- sort
34+ LC_ALL=C sort | 34+ LC_ALL=C sort
35 sed 's/^.*$/ "&",/'
36 cat <<EOF 35 cat <<EOF
37 NULL, 36 NULL,
37 };
diff --git a/meta/recipes-devtools/git/git_2.49.0.bb b/meta/recipes-devtools/git/git_2.50.0.bb
index e1b501d62b..2d28fd05fc 100644
--- a/meta/recipes-devtools/git/git_2.49.0.bb
+++ b/meta/recipes-devtools/git/git_2.50.0.bb
@@ -170,4 +170,4 @@ EXTRA_OECONF += "ac_cv_snprintf_returns_bogus=no \
170 " 170 "
171EXTRA_OEMAKE += "NO_GETTEXT=1" 171EXTRA_OEMAKE += "NO_GETTEXT=1"
172 172
173SRC_URI[tarball.sha256sum] = "f8047f572f665bebeb637fd5f14678f31b3ca5d2ff9a18f20bd925bd48f75d3c" 173SRC_URI[tarball.sha256sum] = "920f8ca563d16a7d4fdecb44349cbffbc5cb814a8b36c96028463478197050da"
diff --git a/meta/recipes-devtools/libcomps/libcomps/0001-libcomps-Support-builds-with-CMake-4.patch b/meta/recipes-devtools/libcomps/libcomps/0001-libcomps-Support-builds-with-CMake-4.patch
new file mode 100644
index 0000000000..9a90e05888
--- /dev/null
+++ b/meta/recipes-devtools/libcomps/libcomps/0001-libcomps-Support-builds-with-CMake-4.patch
@@ -0,0 +1,132 @@
1From 702ec1423fb9b53244b902923fd87ef19b63a7f5 Mon Sep 17 00:00:00 2001
2From: Moritz Haase <Moritz.Haase@bmw.de>
3Date: Mon, 23 Jun 2025 08:32:18 +0200
4Subject: [PATCH] libcomps: Support builds with CMake 4+
5
6- Bump minimum required version to 3.10, the lowest one CMake 4+ don't complain
7 about. It's also possible to use 3.5, but that results in a deprecation
8 warning. The 'cmake_minimum_required()' invocation has been moved before the
9 initial 'project()' call as CMake complained about the wrong order.
10
11- Set policy CMP0148 [0] to OLD to unblock build without additional changes.
12 Eventually, the usage of the 'PythonInterp' and 'PythonLibs' find modules will
13 be need to be updated to use 'Python3' instead.
14
15- Set policy CMP0175 [1] to NEW and fix warnings.
16
17- Fix the 'No TARGET ... has been created in this directory' error in
18 'src/python'.
19
20- Fix 'Utility target <foo> must not be used as the target of a
21 target_link_libraries call' errors (see [2]).
22
23- Mark the 'check' library as required when tests are enabled to prevent test
24 targets from linking a non-existing library in case it's not installed.
25
26[0]: https://cmake.org/cmake/help/latest/policy/CMP0148.html
27[1]: https://cmake.org/cmake/help/latest/policy/CMP0175.html
28[2]: https://cmake.org/cmake/help/latest/policy/CMP0039.html
29
30Upstream-Status: Backport [702ec1423fb9b53244b902923fd87ef19b63a7f5]
31Signed-off-by: Moritz Haase <Moritz.Haase@bmw.de>
32---
33 README.md | 3 +--
34 libcomps/CMakeLists.txt | 7 +++++--
35 libcomps/src/python/docs/CMakeLists.txt | 3 ++-
36 libcomps/src/python/pycopy.cmake | 7 ++++---
37 libcomps/tests/CMakeLists.txt | 2 --
38 5 files changed, 12 insertions(+), 10 deletions(-)
39
40diff --git a/README.md b/README.md
41index 7f8314dd3f70d131c4d399f069d3d7bb77dcff02..24bf8a226d50b7b9b5372f98b52650ff4467c3d6 100644
42--- a/README.md
43+++ b/README.md
44@@ -27,7 +27,7 @@ for python bindings:
45
46 for C library tests:
47
48-* check http://check.sourceforge.net/
49+* check https://github.com/libcheck/check
50
51 for documentation build:
52
53@@ -128,4 +128,3 @@ Here's the most direct way to get your work merged into the project.
54
55 1. Push the branch to your fork
56 1. Send a pull request for your branch
57-
58diff --git a/libcomps/CMakeLists.txt b/libcomps/CMakeLists.txt
59index d8d628af1a8b863b6173ff11615a59aa58d8235e..3957e63a311fc42c85516c0e66fc6f598194cb8f 100644
60--- a/libcomps/CMakeLists.txt
61+++ b/libcomps/CMakeLists.txt
62@@ -1,5 +1,8 @@
63+cmake_minimum_required (VERSION 3.10)
64 project(libcomps C)
65-cmake_minimum_required (VERSION 2.8.10)
66+
67+cmake_policy(SET CMP0148 OLD)
68+cmake_policy(SET CMP0175 NEW)
69
70 include (GNUInstallDirs)
71 include (${CMAKE_ROOT}/Modules/CheckFunctionExists.cmake)
72@@ -32,7 +35,7 @@ include_directories("${PROJECT_SOURCE_DIR}/src")
73 #include_directories("${PROJECT_SOURCE_DIR}/src/libcomps")
74
75 if (ENABLE_TESTS)
76- find_library(CHECK_LIBRARY NAMES check)
77+ find_library(CHECK_LIBRARY REQUIRED NAMES check)
78 endif()
79 find_library(EXPAT_LIBRARY NAMES expat)
80
81diff --git a/libcomps/src/python/docs/CMakeLists.txt b/libcomps/src/python/docs/CMakeLists.txt
82index c4b388cb4a4bb2d962a625a448efcfee14ef71b3..9c92b2dacf4a2cb76f461b8038217cc8e895a369 100644
83--- a/libcomps/src/python/docs/CMakeLists.txt
84+++ b/libcomps/src/python/docs/CMakeLists.txt
85@@ -26,7 +26,8 @@ add_dependencies(pydocs pycomps)
86 include(../pycopy.cmake)
87 add_custom_command(TARGET pydocs PRE_BUILD COMMAND set -E $ENV{LD_LIBRARY_PATH} "${LIBCOMPS_OUT}:$ENV{LD_LIBRARY_PATH}")
88
89-add_custom_command(TARGET pydocs COMMAND ${PYTHON_EXECUTABLE} ${SPHINX_EXECUTABLE} -E -b html
90+add_custom_command(TARGET pydocs POST_BUILD
91+ COMMAND ${PYTHON_EXECUTABLE} ${SPHINX_EXECUTABLE} -E -b html
92 "${CMAKE_CURRENT_SOURCE_DIR}/doc-sources/"
93 "${CMAKE_CURRENT_BINARY_DIR}/html/"
94 COMMENT "LDLP $ENV{LD_LIBRARY_PATH}")
95diff --git a/libcomps/src/python/pycopy.cmake b/libcomps/src/python/pycopy.cmake
96index b22f83595c09b4af8f1c2e49ddbd7755f4c97f0b..0e99e38d791ffd13496bd8fbbf61cd7701e543b7 100644
97--- a/libcomps/src/python/pycopy.cmake
98+++ b/libcomps/src/python/pycopy.cmake
99@@ -6,9 +6,10 @@ math (EXPR len "${len} - 1")
100
101 #set(pycopy "py${pversion}-copy")
102
103-#if (NOT TARGET ${pycopy})
104+if (NOT TARGET ${pycopy})
105+ add_custom_target(${pycopy} DEPENDS pycomps)
106+endif()
107
108-#add_custom_target(${pycopy} DEPENDS pycomps)
109 set (pycomps_SRCDIR "${PROJECT_SOURCE_DIR}/src/python/src/")
110 set (pycomps_TESTDIR "${PROJECT_SOURCE_DIR}/src/python/tests/")
111 set (pycomps_LIBPATH ${PYCOMPS_LIB_PATH})#"${PROJECT_BINARY_DIR}/src/python/src/python${pversion}")
112@@ -16,7 +17,7 @@ set (pycomps_LIBPATH ${PYCOMPS_LIB_PATH})#"${PROJECT_BINARY_DIR}/src/python/src/
113 #add_custom_command(TARGET pycopy PRE_BUILD COMMAND ${CMAKE_COMMAND} -E
114 # make_directory "${CP_DST}")
115
116-add_custom_command(TARGET ${pycopy} COMMAND ${CMAKE_COMMAND} -E
117+add_custom_command(TARGET ${pycopy} POST_BUILD COMMAND ${CMAKE_COMMAND} -E
118 make_directory ${pycomps_LIBPATH}/libcomps/comps/)
119
120 foreach(x RANGE 0 ${len})
121diff --git a/libcomps/tests/CMakeLists.txt b/libcomps/tests/CMakeLists.txt
122index 23ced7450afa02977c63f9374a4fee33ae596d98..9d6e428e18d5a234c7be74d957c25961dea30050 100644
123--- a/libcomps/tests/CMakeLists.txt
124+++ b/libcomps/tests/CMakeLists.txt
125@@ -87,7 +87,5 @@ add_custom_target(test_parse_run
126 WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
127 DEPENDS test_parse
128 COMMENT "Running comps_parse test")
129-target_link_libraries(test_parse_run libcomps)
130-target_link_libraries(test_comps_run libcomps)
131
132 add_dependencies(ctest test_comps_run test_parse_run)
diff --git a/meta/recipes-devtools/libcomps/libcomps_0.1.21.bb b/meta/recipes-devtools/libcomps/libcomps_0.1.21.bb
index 5709f3e69f..9429c703e1 100644
--- a/meta/recipes-devtools/libcomps/libcomps_0.1.21.bb
+++ b/meta/recipes-devtools/libcomps/libcomps_0.1.21.bb
@@ -5,6 +5,7 @@ LICENSE = "GPL-2.0-only"
5LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" 5LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
6 6
7SRC_URI = "git://github.com/rpm-software-management/libcomps.git;branch=master;protocol=https \ 7SRC_URI = "git://github.com/rpm-software-management/libcomps.git;branch=master;protocol=https \
8 file://0001-libcomps-Support-builds-with-CMake-4.patch \
8 file://0002-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch \ 9 file://0002-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch \
9 " 10 "
10 11
diff --git a/meta/recipes-devtools/pseudo/pseudo_git.bb b/meta/recipes-devtools/pseudo/pseudo_git.bb
index 385b6f34d9..ae89d4d8e3 100644
--- a/meta/recipes-devtools/pseudo/pseudo_git.bb
+++ b/meta/recipes-devtools/pseudo/pseudo_git.bb
@@ -12,8 +12,8 @@ SRC_URI:append:class-nativesdk = " \
12 file://older-glibc-symbols.patch" 12 file://older-glibc-symbols.patch"
13SRC_URI[prebuilt.sha256sum] = "ed9f456856e9d86359f169f46a70ad7be4190d6040282b84c8d97b99072485aa" 13SRC_URI[prebuilt.sha256sum] = "ed9f456856e9d86359f169f46a70ad7be4190d6040282b84c8d97b99072485aa"
14 14
15SRCREV = "2c43381180f9cfef4c0a8bb0c1658a86c3fcc876" 15SRCREV = "b4645cb30573c5b3d5e94b9d50e1e2f8beefe9be"
16PV = "1.9.0+git" 16PV = "1.9.2"
17 17
18# largefile and 64bit time_t support adds these macros via compiler flags globally 18# largefile and 64bit time_t support adds these macros via compiler flags globally
19# remove them for pseudo since pseudo intercepts some of the functions which will be 19# remove them for pseudo since pseudo intercepts some of the functions which will be
diff --git a/meta/recipes-graphics/pango/pango_1.56.3.bb b/meta/recipes-graphics/pango/pango_1.56.4.bb
index 479327dfde..5de51508fe 100644
--- a/meta/recipes-graphics/pango/pango_1.56.3.bb
+++ b/meta/recipes-graphics/pango/pango_1.56.4.bb
@@ -18,7 +18,7 @@ UPSTREAM_CHECK_REGEX = "pango-(?P<pver>\d+\.(?!9\d+)\d+\.\d+)"
18GIR_MESON_ENABLE_FLAG = "enabled" 18GIR_MESON_ENABLE_FLAG = "enabled"
19GIR_MESON_DISABLE_FLAG = "disabled" 19GIR_MESON_DISABLE_FLAG = "disabled"
20 20
21SRC_URI[archive.sha256sum] = "2606252bc25cd8d24e1b7f7e92c3a272b37acd6734347b73b47a482834ba2491" 21SRC_URI[archive.sha256sum] = "17065e2fcc5f5a5bdbffc884c956bfc7c451a96e8c4fb2f8ad837c6413cb5a01"
22 22
23DEPENDS = "glib-2.0 glib-2.0-native fontconfig freetype virtual/libiconv cairo harfbuzz fribidi" 23DEPENDS = "glib-2.0 glib-2.0-native fontconfig freetype virtual/libiconv cairo harfbuzz fribidi"
24DEPENDS += "${@' python3-docutils-native' if d.getVar('GIDOCGEN_ENABLED') == 'True' else ''}" 24DEPENDS += "${@' python3-docutils-native' if d.getVar('GIDOCGEN_ENABLED') == 'True' else ''}"
diff --git a/meta/recipes-sato/webkit/libwpe/0001-cmake-Bump-required-CMake-version-to-3.5-to-allow-bu.patch b/meta/recipes-sato/webkit/libwpe/0001-cmake-Bump-required-CMake-version-to-3.5-to-allow-bu.patch
new file mode 100644
index 0000000000..05688ee463
--- /dev/null
+++ b/meta/recipes-sato/webkit/libwpe/0001-cmake-Bump-required-CMake-version-to-3.5-to-allow-bu.patch
@@ -0,0 +1,38 @@
1From 7b227c7c1ac226498b1ea3987f87350d0f14f49f Mon Sep 17 00:00:00 2001
2From: Moritz Haase <Moritz.Haase@bmw.de>
3Date: Wed, 2 Jul 2025 09:19:44 +0200
4Subject: [PATCH] cmake: Bump required CMake version to 3.5 to allow builds
5 with CMake 4+
6
7This enables builds with CMake 4+, fixing:
8
9 CMake Error at CMakeLists.txt:1 (cmake_minimum_required):
10 Compatibility with CMake < 3.5 has been removed from CMake.
11
12 Update the VERSION argument <min> value. Or, use the <min>...<max> syntax
13 to tell CMake that the project requires at least <min> but has been
14 updated to work with policies introduced by <max> or earlier.
15
16 Or, add -DCMAKE_POLICY_VERSION_MINIMUM=3.5 to try configuring anyway.
17
18While at it, remove the extra call to 'cmake_policy()'. When passing the same
19version as to 'cmake_minimum_required()' it's not needed, as the latter calls
20the former automatically.
21
22Signed-off-by: Moritz Haase <Moritz.Haase@bmw.de>
23Upstream-Status: Submitted [https://github.com/WebPlatformForEmbedded/libwpe/pull/136]
24---
25 CMakeLists.txt | 3 +--
26 1 file changed, 1 insertion(+), 2 deletions(-)
27
28diff --git a/CMakeLists.txt b/CMakeLists.txt
29index db9ae50..2a01daf 100644
30--- a/CMakeLists.txt
31+++ b/CMakeLists.txt
32@@ -1,5 +1,4 @@
33-cmake_minimum_required(VERSION 3.0)
34-cmake_policy(VERSION 3.0)
35+cmake_minimum_required(VERSION 3.5)
36
37 set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
38 include(VersioningUtils)
diff --git a/meta/recipes-sato/webkit/libwpe_1.16.2.bb b/meta/recipes-sato/webkit/libwpe_1.16.2.bb
index 324e2f213c..6cb6818acc 100644
--- a/meta/recipes-sato/webkit/libwpe_1.16.2.bb
+++ b/meta/recipes-sato/webkit/libwpe_1.16.2.bb
@@ -10,9 +10,11 @@ inherit cmake features_check pkgconfig
10 10
11REQUIRED_DISTRO_FEATURES = "opengl" 11REQUIRED_DISTRO_FEATURES = "opengl"
12 12
13SRC_URI = "https://wpewebkit.org/releases/${BPN}-${PV}.tar.xz" 13SRC_URI = "https://wpewebkit.org/releases/${BPN}-${PV}.tar.xz \
14 file://0001-cmake-Bump-required-CMake-version-to-3.5-to-allow-bu.patch \
15 "
14SRC_URI[sha256sum] = "960bdd11c3f2cf5bd91569603ed6d2aa42fd4000ed7cac930a804eac367888d7" 16SRC_URI[sha256sum] = "960bdd11c3f2cf5bd91569603ed6d2aa42fd4000ed7cac930a804eac367888d7"
15 17
16# This is a tweak of upstream-version-is-even needed because 18# This is a tweak of upstream-version-is-even needed because
17# ipstream directory contains tarballs for other components as well. 19# upstream directory contains tarballs for other components as well.
18UPSTREAM_CHECK_REGEX = "libwpe-(?P<pver>\d+\.(\d*[02468])+(\.\d+)+)\.tar" 20UPSTREAM_CHECK_REGEX = "libwpe-(?P<pver>\d+\.(\d*[02468])+(\.\d+)+)\.tar"