summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--bitbake/doc/bitbake-user-manual/bitbake-user-manual-fetching.rst10
-rw-r--r--bitbake/lib/bb/cooker.py6
-rw-r--r--bitbake/lib/bb/tests/fetch.py2
-rw-r--r--bitbake/lib/bb/utils.py34
-rw-r--r--meta/classes-recipe/cmake.bbclass8
-rw-r--r--meta/classes-recipe/toolchain-scripts.bbclass2
-rw-r--r--meta/classes/toolchain/clang.bbclass2
-rw-r--r--meta/conf/distro/include/maintainers.inc1
-rw-r--r--meta/conf/distro/include/ptest-packagelists.inc1
-rw-r--r--meta/conf/machine/include/arm/armv8-2a/tune-cortexa75-cortexa55.inc6
-rw-r--r--meta/conf/machine/include/arm/armv8-2a/tune-cortexa76-cortexa55.inc6
-rw-r--r--meta/conf/machine/include/arm/armv8a/tune-cortexa57-cortexa53.inc6
-rw-r--r--meta/conf/machine/include/arm/armv8a/tune-cortexa72-cortexa53.inc6
-rw-r--r--meta/conf/machine/include/arm/armv8a/tune-cortexa73-cortexa35.inc6
-rw-r--r--meta/conf/machine/include/arm/armv8a/tune-cortexa73-cortexa53.inc6
-rw-r--r--meta/recipes-core/systemd/systemd_257.6.bb3
-rw-r--r--meta/recipes-devtools/binutils/binutils-2.44.inc2
-rw-r--r--meta/recipes-devtools/binutils/binutils/0020-CVE-2025-7545.patch39
-rw-r--r--meta/recipes-devtools/binutils/binutils/0020-CVE-2025-7546.patch58
-rw-r--r--meta/recipes-devtools/clang/clang/0001-libclc-allow-existing-prepare-builtins-in-standalone.patch57
-rw-r--r--meta/recipes-devtools/clang/clang_git.bb49
-rw-r--r--meta/recipes-devtools/clang/common.inc1
-rw-r--r--meta/recipes-devtools/clang/libclc_git.bb43
-rw-r--r--meta/recipes-extended/stress-ng/stress-ng_0.19.02.bb (renamed from meta/recipes-extended/stress-ng/stress-ng_0.18.12.bb)5
-rw-r--r--meta/recipes-graphics/harfbuzz/harfbuzz/0001-Use-Os-to-compile-hb-subset-plan-layout.cc.patch72
-rw-r--r--meta/recipes-graphics/harfbuzz/harfbuzz_11.2.1.bb6
-rw-r--r--meta/recipes-graphics/xorg-xserver/xserver-xorg_21.1.18.bb (renamed from meta/recipes-graphics/xorg-xserver/xserver-xorg_21.1.16.bb)2
-rw-r--r--meta/recipes-multimedia/gstreamer/gst-examples_1.26.3.bb3
-rw-r--r--meta/recipes-rt/rt-tests/files/0001-sched_attr-Do-not-define-for-glibc-2.41.patch44
-rw-r--r--meta/recipes-rt/rt-tests/rt-tests.inc6
-rw-r--r--meta/recipes-rt/rt-tests/rt-tests_git.bb1
-rw-r--r--meta/recipes-support/diffoscope/diffoscope_301.bb (renamed from meta/recipes-support/diffoscope/diffoscope_298.bb)2
-rw-r--r--meta/recipes-support/icu/icu/0001-ICU-23120-Mask-UnicodeStringTest-TestLargeMemory-on-.patch28
-rw-r--r--meta/recipes-support/icu/icu/0001-test-Add-support-ptest.patch84
-rwxr-xr-xmeta/recipes-support/icu/icu/run-ptest13
-rw-r--r--meta/recipes-support/icu/icu_77-1.bb23
-rw-r--r--meta/recipes-support/libgit2/libgit2/0001-src-libgit2-CMakeLists.txt-install-cmake-files-into-.patch32
-rw-r--r--meta/recipes-support/libgit2/libgit2_1.9.1.bb (renamed from meta/recipes-support/libgit2/libgit2_1.9.0.bb)6
38 files changed, 462 insertions, 219 deletions
diff --git a/bitbake/doc/bitbake-user-manual/bitbake-user-manual-fetching.rst b/bitbake/doc/bitbake-user-manual/bitbake-user-manual-fetching.rst
index 4762d2637a..f357765b77 100644
--- a/bitbake/doc/bitbake-user-manual/bitbake-user-manual-fetching.rst
+++ b/bitbake/doc/bitbake-user-manual/bitbake-user-manual-fetching.rst
@@ -439,10 +439,12 @@ This fetcher supports the following parameters:
439- *"rev":* The revision to use for the checkout. If :term:`SRCREV` is also set, 439- *"rev":* The revision to use for the checkout. If :term:`SRCREV` is also set,
440 this parameter must match its value. 440 this parameter must match its value.
441 441
442- *"tag":* Specifies a tag to use for the checkout. To correctly 442- *"tag":* Specifies a tag to use when fetching. To correctly resolve
443 resolve tags, BitBake must access the network. For that reason, tags 443 tags, BitBake must access the network. If a ``rev`` parameter or
444 are often not used. As far as Git is concerned, the "tag" parameter 444 :term:`SRCREV` is also specified, network access is not necessary to resolve
445 behaves effectively the same as the "rev" parameter. 445 the tag and instead, it is verified that they both resolve to the same commit
446 SHA at unpack time. The ``tag`` parameter is optional, but strongly
447 recommended if the checked out revision is a tag.
446 448
447- *"subpath":* Limits the checkout to a specific subpath of the tree. 449- *"subpath":* Limits the checkout to a specific subpath of the tree.
448 By default, the whole tree is checked out. 450 By default, the whole tree is checked out.
diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py
index fe33a4f34c..0ad79bd53e 100644
--- a/bitbake/lib/bb/cooker.py
+++ b/bitbake/lib/bb/cooker.py
@@ -2241,9 +2241,9 @@ class CookerParser(object):
2241 profiles.append(logfile) 2241 profiles.append(logfile)
2242 2242
2243 if profiles: 2243 if profiles:
2244 pout = "profile-parse.log.processed" 2244 fn_out = "profile-parse.log.report"
2245 bb.utils.process_profilelog(profiles, pout = pout) 2245 bb.utils.process_profilelog(profiles, fn_out=fn_out)
2246 print("Processed parsing statistics saved to %s" % (pout)) 2246 print("Processed parsing statistics saved to %s" % (fn_out))
2247 2247
2248 def final_cleanup(self): 2248 def final_cleanup(self):
2249 if self.syncthread: 2249 if self.syncthread:
diff --git a/bitbake/lib/bb/tests/fetch.py b/bitbake/lib/bb/tests/fetch.py
index 077472b8b3..cde1bf3390 100644
--- a/bitbake/lib/bb/tests/fetch.py
+++ b/bitbake/lib/bb/tests/fetch.py
@@ -1465,7 +1465,7 @@ class FetchLatestVersionTest(FetcherTest):
1465 # combination version pattern 1465 # combination version pattern
1466 ("sysprof", "git://git.yoctoproject.org/sysprof.git;protocol=https;branch=master", "cd44ee6644c3641507fb53b8a2a69137f2971219", "", "") 1466 ("sysprof", "git://git.yoctoproject.org/sysprof.git;protocol=https;branch=master", "cd44ee6644c3641507fb53b8a2a69137f2971219", "", "")
1467 : "1.2.0", 1467 : "1.2.0",
1468 ("u-boot-mkimage", "git://source.denx.de/u-boot/u-boot.git;branch=master;protocol=https", "62c175fbb8a0f9a926c88294ea9f7e88eb898f6c", "", "") 1468 ("u-boot-mkimage", "git://git.yoctoproject.org/bbfetchtests-u-boot.git;branch=master;protocol=https", "62c175fbb8a0f9a926c88294ea9f7e88eb898f6c", "", "")
1469 : "2014.01", 1469 : "2014.01",
1470 # version pattern "yyyymmdd" 1470 # version pattern "yyyymmdd"
1471 ("mobile-broadband-provider-info", "git://git.yoctoproject.org/mobile-broadband-provider-info.git;protocol=https;branch=master", "4ed19e11c2975105b71b956440acdb25d46a347d", "", "") 1471 ("mobile-broadband-provider-info", "git://git.yoctoproject.org/mobile-broadband-provider-info.git;protocol=https;branch=master", "4ed19e11c2975105b71b956440acdb25d46a347d", "", "")
diff --git a/bitbake/lib/bb/utils.py b/bitbake/lib/bb/utils.py
index 016036dbce..c288c826c0 100644
--- a/bitbake/lib/bb/utils.py
+++ b/bitbake/lib/bb/utils.py
@@ -1441,29 +1441,43 @@ def profile_function(profile, function, output_fn, process=True):
1441 prof.dump_stats(output_fn) 1441 prof.dump_stats(output_fn)
1442 if process: 1442 if process:
1443 process_profilelog(output_fn) 1443 process_profilelog(output_fn)
1444 serverlog("Raw profiling information saved to %s and processed statistics to %s.processed" % (output_fn, output_fn)) 1444 serverlog("Raw profiling information saved to %s and processed statistics to %s.report*" % (output_fn, output_fn))
1445 return ret 1445 return ret
1446 else: 1446 else:
1447 return function() 1447 return function()
1448 1448
1449def process_profilelog(fn, pout = None): 1449def process_profilelog(fn, fn_out = None):
1450 # Either call with a list of filenames and set pout or a filename and optionally pout. 1450 # Either call with a list of filenames and set pout or a filename and optionally pout.
1451 if not pout: 1451 import pstats
1452 pout = fn + '.processed'
1453 1452
1454 with open(pout, 'w') as pout: 1453 if not fn_out:
1455 import pstats 1454 fn_out = fn + '.report'
1455
1456 def pstatopen():
1456 if isinstance(fn, list): 1457 if isinstance(fn, list):
1457 p = pstats.Stats(*fn, stream=pout) 1458 return pstats.Stats(*fn, stream=pout)
1458 else: 1459 return pstats.Stats(fn, stream=pout)
1459 p = pstats.Stats(fn, stream=pout) 1460
1461 with open(fn_out + '.time', 'w') as pout:
1462 p = pstatopen()
1460 p.sort_stats('time') 1463 p.sort_stats('time')
1461 p.print_stats() 1464 p.print_stats()
1465
1466 with open(fn_out + '.time-callers', 'w') as pout:
1467 p = pstatopen()
1468 p.sort_stats('time')
1462 p.print_callers() 1469 p.print_callers()
1470
1471 with open(fn_out + '.cumulative', 'w') as pout:
1472 p = pstatopen()
1463 p.sort_stats('cumulative') 1473 p.sort_stats('cumulative')
1464 p.print_stats() 1474 p.print_stats()
1465 1475
1466 pout.flush() 1476 with open(fn_out + '.cumulative-callers', 'w') as pout:
1477 p = pstatopen()
1478 p.sort_stats('cumulative')
1479 p.print_callers()
1480
1467 1481
1468# 1482#
1469# Was present to work around multiprocessing pool bugs in python < 2.7.3 1483# Was present to work around multiprocessing pool bugs in python < 2.7.3
diff --git a/meta/classes-recipe/cmake.bbclass b/meta/classes-recipe/cmake.bbclass
index 449fe2bb44..1488d744d4 100644
--- a/meta/classes-recipe/cmake.bbclass
+++ b/meta/classes-recipe/cmake.bbclass
@@ -180,8 +180,6 @@ list(APPEND CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES ${includedir})
180 180
181EOF 181EOF
182 cat > ${WORKDIR}/toolchain-native.cmake <<EOF 182 cat > ${WORKDIR}/toolchain-native.cmake <<EOF
183set( CMAKE_SYSTEM_NAME ${@map_host_os_to_system_name(d.getVar('BUILD_OS'))} )
184set( CMAKE_SYSTEM_PROCESSOR ${@map_host_arch_to_uname_arch(d.getVar('BUILD_ARCH'))} )
185set( CMAKE_C_COMPILER ${OECMAKE_NATIVE_C_COMPILER} ) 183set( CMAKE_C_COMPILER ${OECMAKE_NATIVE_C_COMPILER} )
186set( CMAKE_CXX_COMPILER ${OECMAKE_NATIVE_CXX_COMPILER} ) 184set( CMAKE_CXX_COMPILER ${OECMAKE_NATIVE_CXX_COMPILER} )
187set( CMAKE_ASM_COMPILER ${OECMAKE_NATIVE_C_COMPILER} ) 185set( CMAKE_ASM_COMPILER ${OECMAKE_NATIVE_C_COMPILER} )
@@ -216,6 +214,12 @@ list(APPEND CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES ${STAGING_INCDIR_NATIVE})
216EOF 214EOF
217} 215}
218 216
217cmake_do_generate_toolchain_file:append:toolchain-clang() {
218 cat >> ${WORKDIR}/toolchain.cmake <<EOF
219set( CMAKE_CLANG_TIDY ${HOST_PREFIX}clang-tidy )
220EOF
221}
222
219addtask generate_toolchain_file after do_patch before do_configure 223addtask generate_toolchain_file after do_patch before do_configure
220 224
221CONFIGURE_FILES = "CMakeLists.txt *.cmake" 225CONFIGURE_FILES = "CMakeLists.txt *.cmake"
diff --git a/meta/classes-recipe/toolchain-scripts.bbclass b/meta/classes-recipe/toolchain-scripts.bbclass
index 3053cd0f1f..5874a48af8 100644
--- a/meta/classes-recipe/toolchain-scripts.bbclass
+++ b/meta/classes-recipe/toolchain-scripts.bbclass
@@ -9,7 +9,7 @@ inherit toolchain-scripts-base siteinfo kernel-arch meson-routines
9# We want to be able to change the value of MULTIMACH_TARGET_SYS, because it 9# We want to be able to change the value of MULTIMACH_TARGET_SYS, because it
10# doesn't always match our expectations... but we default to the stock value 10# doesn't always match our expectations... but we default to the stock value
11REAL_MULTIMACH_TARGET_SYS ?= "${MULTIMACH_TARGET_SYS}" 11REAL_MULTIMACH_TARGET_SYS ?= "${MULTIMACH_TARGET_SYS}"
12TARGET_CC_ARCH:append:libc-musl = " -mmusl" 12TARGET_CC_ARCH:append:toolchain-gcc:libc-musl = " -mmusl"
13 13
14# default debug prefix map isn't valid in the SDK 14# default debug prefix map isn't valid in the SDK
15DEBUG_PREFIX_MAP = "" 15DEBUG_PREFIX_MAP = ""
diff --git a/meta/classes/toolchain/clang.bbclass b/meta/classes/toolchain/clang.bbclass
index d7b8a3657c..7c6ed57fb3 100644
--- a/meta/classes/toolchain/clang.bbclass
+++ b/meta/classes/toolchain/clang.bbclass
@@ -27,7 +27,7 @@ PREFERRED_PROVIDER_virtual/nativesdk-cross-cc:class-cross-canadian = "clang-cros
27PREFERRED_PROVIDER_virtual/nativesdk-cross-c++:class-cross-canadian = "clang-crosssdk-${SDK_SYS}" 27PREFERRED_PROVIDER_virtual/nativesdk-cross-c++:class-cross-canadian = "clang-crosssdk-${SDK_SYS}"
28 28
29 29
30BASE_DEFAULT_DEPS:append:class-target = " compiler-rt" 30BASE_DEFAULT_DEPS:append:class-target = " compiler-rt libcxx"
31 31
32TUNE_CCARGS += "${@bb.utils.contains("DISTRO_FEATURES", "usrmerge", " --dyld-prefix=/usr", "", d)}" 32TUNE_CCARGS += "${@bb.utils.contains("DISTRO_FEATURES", "usrmerge", " --dyld-prefix=/usr", "", d)}"
33 33
diff --git a/meta/conf/distro/include/maintainers.inc b/meta/conf/distro/include/maintainers.inc
index 6bfc2efb16..927aac16d6 100644
--- a/meta/conf/distro/include/maintainers.inc
+++ b/meta/conf/distro/include/maintainers.inc
@@ -328,6 +328,7 @@ RECIPE_MAINTAINER:pn-libcap-ng = "Yi Zhao <yi.zhao@windriver.com>"
328RECIPE_MAINTAINER:pn-libcap-ng-python = "Yi Zhao <yi.zhao@windriver.com>" 328RECIPE_MAINTAINER:pn-libcap-ng-python = "Yi Zhao <yi.zhao@windriver.com>"
329RECIPE_MAINTAINER:pn-libcgroup = "Unassigned <unassigned@yoctoproject.org>" 329RECIPE_MAINTAINER:pn-libcgroup = "Unassigned <unassigned@yoctoproject.org>"
330RECIPE_MAINTAINER:pn-libcheck = "Yi Zhao <yi.zhao@windriver.com>" 330RECIPE_MAINTAINER:pn-libcheck = "Yi Zhao <yi.zhao@windriver.com>"
331RECIPE_MAINTAINER:pn-libclc = "Khem Raj <raj.khem@gmail.com>"
331RECIPE_MAINTAINER:pn-libcomps = "Unassigned <unassigned@yoctoproject.org>" 332RECIPE_MAINTAINER:pn-libcomps = "Unassigned <unassigned@yoctoproject.org>"
332RECIPE_MAINTAINER:pn-libconvert-asn1-perl = "Tim Orling <tim.orling@konsulko.com>" 333RECIPE_MAINTAINER:pn-libconvert-asn1-perl = "Tim Orling <tim.orling@konsulko.com>"
333RECIPE_MAINTAINER:pn-libcxx = "Khem Raj <raj.khem@gmail.com>" 334RECIPE_MAINTAINER:pn-libcxx = "Khem Raj <raj.khem@gmail.com>"
diff --git a/meta/conf/distro/include/ptest-packagelists.inc b/meta/conf/distro/include/ptest-packagelists.inc
index 46c8945eb4..85c0350161 100644
--- a/meta/conf/distro/include/ptest-packagelists.inc
+++ b/meta/conf/distro/include/ptest-packagelists.inc
@@ -25,6 +25,7 @@ PTESTS_FAST = "\
25 gdk-pixbuf \ 25 gdk-pixbuf \
26 glib-networking \ 26 glib-networking \
27 gzip \ 27 gzip \
28 icu \
28 json-c \ 29 json-c \
29 json-glib \ 30 json-glib \
30 libconvert-asn1-perl \ 31 libconvert-asn1-perl \
diff --git a/meta/conf/machine/include/arm/armv8-2a/tune-cortexa75-cortexa55.inc b/meta/conf/machine/include/arm/armv8-2a/tune-cortexa75-cortexa55.inc
index e18b2cb6e0..6b9b541f9a 100644
--- a/meta/conf/machine/include/arm/armv8-2a/tune-cortexa75-cortexa55.inc
+++ b/meta/conf/machine/include/arm/armv8-2a/tune-cortexa75-cortexa55.inc
@@ -5,7 +5,11 @@ DEFAULTTUNE ?= "cortexa75-cortexa55"
5 5
6TUNEVALID[cortexa75-cortexa55] = "Enable big.LITTLE Cortex-A75.Cortex-A55 specific processor optimizations" 6TUNEVALID[cortexa75-cortexa55] = "Enable big.LITTLE Cortex-A75.Cortex-A55 specific processor optimizations"
7MACHINEOVERRIDES =. "${@bb.utils.contains("TUNE_FEATURES", "cortexa75-cortexa55", "cortexa75-cortexa55:", "", d)}" 7MACHINEOVERRIDES =. "${@bb.utils.contains("TUNE_FEATURES", "cortexa75-cortexa55", "cortexa75-cortexa55:", "", d)}"
8TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "cortexa75-cortexa55", " -mcpu=cortex-a75.cortex-a55", "", d)}" 8
9CPU_TUNE_ARG = "cortex-a75.cortex-a55"
10# clang doesn't support big.LITTLE tunes, select the LITTLE tune
11CPU_TUNE_ARG:toolchain-clang = "cortex-a55"
12TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "cortexa75-cortexa55", " -mcpu=${CPU_TUNE_ARG}", "", d)}"
9 13
10require conf/machine/include/arm/arch-armv8-2a.inc 14require conf/machine/include/arm/arch-armv8-2a.inc
11 15
diff --git a/meta/conf/machine/include/arm/armv8-2a/tune-cortexa76-cortexa55.inc b/meta/conf/machine/include/arm/armv8-2a/tune-cortexa76-cortexa55.inc
index 7daf9d91a8..8195782cd9 100644
--- a/meta/conf/machine/include/arm/armv8-2a/tune-cortexa76-cortexa55.inc
+++ b/meta/conf/machine/include/arm/armv8-2a/tune-cortexa76-cortexa55.inc
@@ -5,7 +5,11 @@ DEFAULTTUNE ?= "cortexa76-cortexa55"
5 5
6TUNEVALID[cortexa76-cortexa55] = "Enable big.LITTLE Cortex-A76.Cortex-A55 specific processor optimizations" 6TUNEVALID[cortexa76-cortexa55] = "Enable big.LITTLE Cortex-A76.Cortex-A55 specific processor optimizations"
7MACHINEOVERRIDES =. "${@bb.utils.contains("TUNE_FEATURES", "cortexa76-cortexa55", "cortexa76-cortexa55:", "", d)}" 7MACHINEOVERRIDES =. "${@bb.utils.contains("TUNE_FEATURES", "cortexa76-cortexa55", "cortexa76-cortexa55:", "", d)}"
8TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "cortexa76-cortexa55", " -mcpu=cortex-a76.cortex-a55", "", d)}" 8
9CPU_TUNE_ARG = "cortex-a76.cortex-a55"
10# clang doesn't support big.LITTLE tunes, select the LITTLE tune
11CPU_TUNE_ARG:toolchain-clang = "cortex-a55"
12TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "cortexa76-cortexa55", " -mcpu=${CPU_TUNE_ARG}", "", d)}"
9 13
10require conf/machine/include/arm/arch-armv8-2a.inc 14require conf/machine/include/arm/arch-armv8-2a.inc
11 15
diff --git a/meta/conf/machine/include/arm/armv8a/tune-cortexa57-cortexa53.inc b/meta/conf/machine/include/arm/armv8a/tune-cortexa57-cortexa53.inc
index 052d1173c9..ee86c1c84b 100644
--- a/meta/conf/machine/include/arm/armv8a/tune-cortexa57-cortexa53.inc
+++ b/meta/conf/machine/include/arm/armv8a/tune-cortexa57-cortexa53.inc
@@ -1,7 +1,11 @@
1DEFAULTTUNE ?= "cortexa57-cortexa53" 1DEFAULTTUNE ?= "cortexa57-cortexa53"
2 2
3TUNEVALID[cortexa57-cortexa53] = "Enable big.LITTLE Cortex-A57.Cortex-A53 specific processor optimizations" 3TUNEVALID[cortexa57-cortexa53] = "Enable big.LITTLE Cortex-A57.Cortex-A53 specific processor optimizations"
4TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "cortexa57-cortexa53", " -mcpu=cortex-a57.cortex-a53", "", d)}" 4
5CPU_TUNE_ARG = "cortex-a57.cortex-a53"
6# clang doesn't support big.LITTLE tunes, select the LITTLE tune
7CPU_TUNE_ARG:toolchain-clang = "cortex-a53"
8TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "cortexa57-cortexa53", " -mcpu=${CPU_TUNE_ARG}", "", d)}"
5MACHINEOVERRIDES =. "${@bb.utils.contains("TUNE_FEATURES", "cortexa57-cortexa53", "cortexa57-cortexa53:", "", d)}" 9MACHINEOVERRIDES =. "${@bb.utils.contains("TUNE_FEATURES", "cortexa57-cortexa53", "cortexa57-cortexa53:", "", d)}"
6 10
7require conf/machine/include/arm/arch-armv8a.inc 11require conf/machine/include/arm/arch-armv8a.inc
diff --git a/meta/conf/machine/include/arm/armv8a/tune-cortexa72-cortexa53.inc b/meta/conf/machine/include/arm/armv8a/tune-cortexa72-cortexa53.inc
index ff188aec5f..ba92161b9f 100644
--- a/meta/conf/machine/include/arm/armv8a/tune-cortexa72-cortexa53.inc
+++ b/meta/conf/machine/include/arm/armv8a/tune-cortexa72-cortexa53.inc
@@ -1,7 +1,11 @@
1DEFAULTTUNE ?= "cortexa72-cortexa53" 1DEFAULTTUNE ?= "cortexa72-cortexa53"
2 2
3TUNEVALID[cortexa72-cortexa53] = "Enable big.LITTLE Cortex-A72.Cortex-A53 specific processor optimizations" 3TUNEVALID[cortexa72-cortexa53] = "Enable big.LITTLE Cortex-A72.Cortex-A53 specific processor optimizations"
4TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "cortexa72-cortexa53", " -mcpu=cortex-a72.cortex-a53", "", d)}" 4
5CPU_TUNE_ARG = "cortex-a72.cortex-a53"
6# clang doesn't support big.LITTLE tunes, select the LITTLE tune
7CPU_TUNE_ARG:toolchain-clang = "cortex-a53"
8TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "cortexa72-cortexa53", " -mcpu=${CPU_TUNE_ARG}", "", d)}"
5MACHINEOVERRIDES =. "${@bb.utils.contains("TUNE_FEATURES", "cortexa72-cortexa53", "cortexa72-cortexa53:", "", d)}" 9MACHINEOVERRIDES =. "${@bb.utils.contains("TUNE_FEATURES", "cortexa72-cortexa53", "cortexa72-cortexa53:", "", d)}"
6 10
7require conf/machine/include/arm/arch-armv8a.inc 11require conf/machine/include/arm/arch-armv8a.inc
diff --git a/meta/conf/machine/include/arm/armv8a/tune-cortexa73-cortexa35.inc b/meta/conf/machine/include/arm/armv8a/tune-cortexa73-cortexa35.inc
index 4f4f25f511..370882f299 100644
--- a/meta/conf/machine/include/arm/armv8a/tune-cortexa73-cortexa35.inc
+++ b/meta/conf/machine/include/arm/armv8a/tune-cortexa73-cortexa35.inc
@@ -5,7 +5,11 @@ DEFAULTTUNE ?= "cortexa73-cortexa35"
5 5
6TUNEVALID[cortexa73-cortexa35] = "Enable big.LITTLE Cortex-A73.Cortex-A35 specific processor optimizations" 6TUNEVALID[cortexa73-cortexa35] = "Enable big.LITTLE Cortex-A73.Cortex-A35 specific processor optimizations"
7MACHINEOVERRIDES =. "${@bb.utils.contains("TUNE_FEATURES", "cortexa73-cortexa35", "cortexa73-cortexa35:", "", d)}" 7MACHINEOVERRIDES =. "${@bb.utils.contains("TUNE_FEATURES", "cortexa73-cortexa35", "cortexa73-cortexa35:", "", d)}"
8TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "cortexa73-cortexa35", " -mcpu=cortex-a73.cortex-a35", "", d)}" 8
9CPU_TUNE_ARG = "cortex-a73.cortex-a35"
10# clang doesn't support big.LITTLE tunes, select the LITTLE tune
11CPU_TUNE_ARG:toolchain-clang = "cortex-a35"
12TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "cortexa73-cortexa35", " -mcpu=${CPU_TUNE_ARG}", "", d)}"
9 13
10require conf/machine/include/arm/arch-armv8a.inc 14require conf/machine/include/arm/arch-armv8a.inc
11 15
diff --git a/meta/conf/machine/include/arm/armv8a/tune-cortexa73-cortexa53.inc b/meta/conf/machine/include/arm/armv8a/tune-cortexa73-cortexa53.inc
index 1d152ed83b..388df5fb66 100644
--- a/meta/conf/machine/include/arm/armv8a/tune-cortexa73-cortexa53.inc
+++ b/meta/conf/machine/include/arm/armv8a/tune-cortexa73-cortexa53.inc
@@ -2,7 +2,11 @@ DEFAULTTUNE ?= "cortexa73-cortexa53"
2 2
3TUNEVALID[cortexa73-cortexa53] = "Enable big.LITTLE Cortex-A73.Cortex-A53 specific processor optimizations" 3TUNEVALID[cortexa73-cortexa53] = "Enable big.LITTLE Cortex-A73.Cortex-A53 specific processor optimizations"
4MACHINEOVERRIDES =. "${@bb.utils.contains("TUNE_FEATURES", "cortexa73-cortexa53", "cortexa73-cortexa53:", "", d)}" 4MACHINEOVERRIDES =. "${@bb.utils.contains("TUNE_FEATURES", "cortexa73-cortexa53", "cortexa73-cortexa53:", "", d)}"
5TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "cortexa73-cortexa53", " -mcpu=cortex-a73.cortex-a53", "", d)}" 5
6CPU_TUNE_ARG = "cortex-a73.cortex-a53"
7# clang doesn't support big.LITTLE tunes, select the LITTLE tune
8CPU_TUNE_ARG:toolchain-clang = "cortex-a53"
9TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "cortexa73-cortexa53", " -mcpu=${CPU_TUNE_ARG}", "", d)}"
6 10
7require conf/machine/include/arm/arch-armv8a.inc 11require conf/machine/include/arm/arch-armv8a.inc
8 12
diff --git a/meta/recipes-core/systemd/systemd_257.6.bb b/meta/recipes-core/systemd/systemd_257.6.bb
index 9092d02c51..a104e2179a 100644
--- a/meta/recipes-core/systemd/systemd_257.6.bb
+++ b/meta/recipes-core/systemd/systemd_257.6.bb
@@ -75,6 +75,7 @@ PACKAGECONFIG ??= " \
75 ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'sysvinit', 'link-udev-shared', d)} \ 75 ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'sysvinit', 'link-udev-shared', d)} \
76 backlight \ 76 backlight \
77 binfmt \ 77 binfmt \
78 blkid \
78 gshadow \ 79 gshadow \
79 hibernate \ 80 hibernate \
80 hostnamed \ 81 hostnamed \
@@ -135,6 +136,7 @@ PACKAGECONFIG[audit] = "-Daudit=enabled,-Daudit=disabled,audit"
135PACKAGECONFIG[apparmor] = "-Dapparmor=enabled,-Dapparmor=disabled,apparmor" 136PACKAGECONFIG[apparmor] = "-Dapparmor=enabled,-Dapparmor=disabled,apparmor"
136PACKAGECONFIG[backlight] = "-Dbacklight=true,-Dbacklight=false" 137PACKAGECONFIG[backlight] = "-Dbacklight=true,-Dbacklight=false"
137PACKAGECONFIG[binfmt] = "-Dbinfmt=true,-Dbinfmt=false" 138PACKAGECONFIG[binfmt] = "-Dbinfmt=true,-Dbinfmt=false"
139PACKAGECONFIG[blkid] = "-Dblkid=enabled,-Dblkid=disabled,util-linux,util-linux-libblkid util-linux-blkid"
138PACKAGECONFIG[bpf-framework] = "-Dbpf-framework=enabled,-Dbpf-framework=disabled,clang-native bpftool-native libbpf,libbpf" 140PACKAGECONFIG[bpf-framework] = "-Dbpf-framework=enabled,-Dbpf-framework=disabled,clang-native bpftool-native libbpf,libbpf"
139PACKAGECONFIG[bzip2] = "-Dbzip2=enabled,-Dbzip2=disabled,bzip2" 141PACKAGECONFIG[bzip2] = "-Dbzip2=enabled,-Dbzip2=disabled,bzip2"
140PACKAGECONFIG[coredump] = "-Dcoredump=true,-Dcoredump=false" 142PACKAGECONFIG[coredump] = "-Dcoredump=true,-Dcoredump=false"
@@ -150,6 +152,7 @@ PACKAGECONFIG[default-compression-zstd] = "-Dzstd=true -Ddefault-compression=zst
150PACKAGECONFIG[dbus] = "-Ddbus=enabled,-Ddbus=disabled,dbus" 152PACKAGECONFIG[dbus] = "-Ddbus=enabled,-Ddbus=disabled,dbus"
151PACKAGECONFIG[efi] = "-Defi=true -Dbootloader=enabled,-Defi=false -Dbootloader=disabled,python3-pyelftools-native" 153PACKAGECONFIG[efi] = "-Defi=true -Dbootloader=enabled,-Defi=false -Dbootloader=disabled,python3-pyelftools-native"
152PACKAGECONFIG[elfutils] = "-Delfutils=enabled,-Delfutils=disabled,elfutils,,libelf libdw" 154PACKAGECONFIG[elfutils] = "-Delfutils=enabled,-Delfutils=disabled,elfutils,,libelf libdw"
155PACKAGECONFIG[fdisk] = "-Dfdisk=enabled,-Dfdisk=disabled,util-linux,util-linux-libfdisk util-linux-fdisk"
153PACKAGECONFIG[fido] = "-Dlibfido2=enabled,-Dlibfido2=disabled,libfido2" 156PACKAGECONFIG[fido] = "-Dlibfido2=enabled,-Dlibfido2=disabled,libfido2"
154PACKAGECONFIG[firstboot] = "-Dfirstboot=true,-Dfirstboot=false" 157PACKAGECONFIG[firstboot] = "-Dfirstboot=true,-Dfirstboot=false"
155PACKAGECONFIG[repart] = "-Drepart=enabled,-Drepart=disabled" 158PACKAGECONFIG[repart] = "-Drepart=enabled,-Drepart=disabled"
diff --git a/meta/recipes-devtools/binutils/binutils-2.44.inc b/meta/recipes-devtools/binutils/binutils-2.44.inc
index 2219ada4ac..3313e011bf 100644
--- a/meta/recipes-devtools/binutils/binutils-2.44.inc
+++ b/meta/recipes-devtools/binutils/binutils-2.44.inc
@@ -43,4 +43,6 @@ SRC_URI = "\
43 file://0018-CVE-2025-5245.patch \ 43 file://0018-CVE-2025-5245.patch \
44 file://0019-CVE-2025-5244.patch \ 44 file://0019-CVE-2025-5244.patch \
45 file://0019-CVE-2025-3198.patch \ 45 file://0019-CVE-2025-3198.patch \
46 file://0020-CVE-2025-7546.patch \
47 file://0020-CVE-2025-7545.patch \
46" 48"
diff --git a/meta/recipes-devtools/binutils/binutils/0020-CVE-2025-7545.patch b/meta/recipes-devtools/binutils/binutils/0020-CVE-2025-7545.patch
new file mode 100644
index 0000000000..062d6721b6
--- /dev/null
+++ b/meta/recipes-devtools/binutils/binutils/0020-CVE-2025-7545.patch
@@ -0,0 +1,39 @@
1From: "H.J. Lu" <hjl.tools@gmail.com>
2Date: Sat, 21 Jun 2025 06:36:56 +0800
3
4Upstream-Status: Backport [https://sourceware.org/git/?p=binutils-gdb.git;a=patch;h08c3cbe5926e4d355b5cb70bbec2b1eeb40c2944]
5CVE: CVE-2025-7545
6
7Since the output section contents are copied from the input, don't
8extend the output section size beyond the input section size.
9
10 PR binutils/33049
11 * objcopy.c (copy_section): Don't extend the output section
12 size beyond the input section size.
13
14Signed-off-by: Deepesh Varatharajan <Deepesh.Varatharajan@windriver.com>
15
16diff --git a/binutils/objcopy.c b/binutils/objcopy.c
17index e2e6bd7e..3cbb3977 100644
18--- a/binutils/objcopy.c
19+++ b/binutils/objcopy.c
20@@ -4634,6 +4634,7 @@ copy_section (bfd *ibfd, sec_ptr isection, bfd *obfd)
21 char *to = (char *) memhunk;
22 char *end = (char *) memhunk + size;
23 int i;
24+ bfd_size_type memhunk_size = size;
25
26 /* If the section address is not exactly divisible by the interleave,
27 then we must bias the from address. If the copy_byte is less than
28@@ -4653,6 +4654,11 @@ copy_section (bfd *ibfd, sec_ptr isection, bfd *obfd)
29 }
30
31 size = (size + interleave - 1 - copy_byte) / interleave * copy_width;
32+
33+ /* Don't extend the output section size. */
34+ if (size > memhunk_size)
35+ size = memhunk_size;
36+
37 osection->lma /= interleave;
38 if (copy_byte < extra)
39 osection->lma++;
diff --git a/meta/recipes-devtools/binutils/binutils/0020-CVE-2025-7546.patch b/meta/recipes-devtools/binutils/binutils/0020-CVE-2025-7546.patch
new file mode 100644
index 0000000000..23c38091a2
--- /dev/null
+++ b/meta/recipes-devtools/binutils/binutils/0020-CVE-2025-7546.patch
@@ -0,0 +1,58 @@
1From 41461010eb7c79fee7a9d5f6209accdaac66cc6b Mon Sep 17 00:00:00 2001
2From: "H.J. Lu" <hjl.tools@gmail.com>
3Date: Sat, 21 Jun 2025 06:52:00 +0800
4Subject: [PATCH] elf: Report corrupted group section
5
6Report corrupted group section instead of trying to recover.
7
8 PR binutils/33050
9 * elf.c (bfd_elf_set_group_contents): Report corrupted group
10 section.
11
12Upstream-Status: Backport [https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=41461010eb7c79fee7a9d5f6209accdaac66cc6b]
13CVE: CVE-2025-7546
14
15Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
16Signed-off-by: Yash Shinde <Yash.Shinde@windriver.com>
17---
18 bfd/elf.c | 23 ++++++++++-------------
19 1 file changed, 10 insertions(+), 13 deletions(-)
20
21diff --git a/bfd/elf.c b/bfd/elf.c
22index 14ce15c7254..ee894eb05f2 100644
23--- a/bfd/elf.c
24+++ b/bfd/elf.c
25@@ -3971,20 +3971,17 @@ bfd_elf_set_group_contents (bfd *abfd, asection *sec, void *failedptrarg)
26 break;
27 }
28
29- /* We should always get here with loc == sec->contents + 4, but it is
30- possible to craft bogus SHT_GROUP sections that will cause segfaults
31- in objcopy without checking loc here and in the loop above. */
32- if (loc == sec->contents)
33- BFD_ASSERT (0);
34- else
35+ /* We should always get here with loc == sec->contents + 4. Return
36+ an error for bogus SHT_GROUP sections. */
37+ loc -= 4;
38+ if (loc != sec->contents)
39 {
40- loc -= 4;
41- if (loc != sec->contents)
42- {
43- BFD_ASSERT (0);
44- memset (sec->contents + 4, 0, loc - sec->contents);
45- loc = sec->contents;
46- }
47+ /* xgettext:c-format */
48+ _bfd_error_handler (_("%pB: corrupted group section: `%pA'"),
49+ abfd, sec);
50+ bfd_set_error (bfd_error_bad_value);
51+ *failedptr = true;
52+ return;
53 }
54
55 H_PUT_32 (abfd, sec->flags & SEC_LINK_ONCE ? GRP_COMDAT : 0, loc);
56--
572.43.5
58
diff --git a/meta/recipes-devtools/clang/clang/0001-libclc-allow-existing-prepare-builtins-in-standalone.patch b/meta/recipes-devtools/clang/clang/0001-libclc-allow-existing-prepare-builtins-in-standalone.patch
new file mode 100644
index 0000000000..46929798ad
--- /dev/null
+++ b/meta/recipes-devtools/clang/clang/0001-libclc-allow-existing-prepare-builtins-in-standalone.patch
@@ -0,0 +1,57 @@
1From 348f846b206780646430d6477c04b7793b669f34 Mon Sep 17 00:00:00 2001
2From: Ross Burton <ross.burton@arm.com>
3Date: Wed, 16 Jul 2025 23:24:21 +0100
4Subject: [PATCH] allow external prepare_builtins
5
6In standalone cross builds, libclc can't build a native prepare_builtins.
7
8Hack the CMake to allow it to use an existing binary, which we build in the recipe.
9
10Upstream-Status: Inappropriate [discussion for a proper fix in https://github.com/llvm/llvm-project/issues/149814]
11Signed-off-by: Ross Burton <ross.burton@arm.com>
12---
13 libclc/CMakeLists.txt | 23 +++++++++++++++++------
14 1 file changed, 17 insertions(+), 6 deletions(-)
15
16diff --git a/libclc/CMakeLists.txt b/libclc/CMakeLists.txt
17index 43e213b385f5..d4a6d096169e 100644
18--- a/libclc/CMakeLists.txt
19+++ b/libclc/CMakeLists.txt
20@@ -181,17 +181,28 @@ set(LLVM_LINK_COMPONENTS
21 IRReader
22 Support
23 )
24+
25 if( LIBCLC_STANDALONE_BUILD )
26- add_llvm_executable( prepare_builtins utils/prepare-builtins.cpp )
27- set( prepare_builtins_exe prepare_builtins )
28- set( prepare_builtins_target prepare_builtins )
29+ message("cross ${CMAKE_CROSSCOMPILING}")
30+ if(CMAKE_CROSSCOMPILING)
31+ find_program(PREPARE_BUILTINS prepare_builtins REQUIRED)
32+ message("found ${PREPARE_BUILTINS}")
33+ set( prepare_builtins_exe ${PREPARE_BUILTINS} )
34+ else()
35+ add_llvm_executable( prepare_builtins utils/prepare-builtins.cpp )
36+ set( prepare_builtins_exe prepare_builtins )
37+ set( prepare_builtins_target prepare_builtins )
38+ target_compile_definitions( prepare_builtins PRIVATE ${LLVM_VERSION_DEFINE} )
39+ # These were not properly reported in early LLVM and we don't need them
40+ target_compile_options( prepare_builtins PRIVATE -fno-rtti -fno-exceptions )
41+ endif()
42 else()
43 add_llvm_utility( prepare_builtins utils/prepare-builtins.cpp )
44 setup_host_tool( prepare_builtins PREPARE_BUILTINS prepare_builtins_exe prepare_builtins_target )
45+ target_compile_definitions( prepare_builtins PRIVATE ${LLVM_VERSION_DEFINE} )
46+ # These were not properly reported in early LLVM and we don't need them
47+ target_compile_options( prepare_builtins PRIVATE -fno-rtti -fno-exceptions )
48 endif()
49-target_compile_definitions( prepare_builtins PRIVATE ${LLVM_VERSION_DEFINE} )
50-# These were not properly reported in early LLVM and we don't need them
51-target_compile_options( prepare_builtins PRIVATE -fno-rtti -fno-exceptions )
52
53 # Setup arch devices
54 set( r600--_devices cedar cypress barts cayman )
55--
562.43.0
57
diff --git a/meta/recipes-devtools/clang/clang_git.bb b/meta/recipes-devtools/clang/clang_git.bb
index ed6e2d7da7..830c0282cd 100644
--- a/meta/recipes-devtools/clang/clang_git.bb
+++ b/meta/recipes-devtools/clang/clang_git.bb
@@ -54,6 +54,7 @@ def get_clang_target_arch(bb, d):
54 return get_clang_arch(bb, d, 'TARGET_ARCH') 54 return get_clang_arch(bb, d, 'TARGET_ARCH')
55 55
56PACKAGECONFIG_CLANG_COMMON = "build-id eh libedit rtti shared-libs libclang-python \ 56PACKAGECONFIG_CLANG_COMMON = "build-id eh libedit rtti shared-libs libclang-python \
57 ${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-lld', 'lld', '', d)} \
57 ${@bb.utils.contains('TC_CXX_RUNTIME', 'llvm', 'compiler-rt libcplusplus libomp unwindlib', '', d)} \ 58 ${@bb.utils.contains('TC_CXX_RUNTIME', 'llvm', 'compiler-rt libcplusplus libomp unwindlib', '', d)} \
58 " 59 "
59 60
@@ -111,16 +112,18 @@ CLANG_DEFAULT_CXX_STDLIB;CLANG_DEFAULT_RTLIB;CLANG_DEFAULT_UNWINDLIB;\
111CLANG_DEFAULT_OPENMP_RUNTIME;LLVM_ENABLE_PER_TARGET_RUNTIME_DIR;\ 112CLANG_DEFAULT_OPENMP_RUNTIME;LLVM_ENABLE_PER_TARGET_RUNTIME_DIR;\
112LLVM_BUILD_TOOLS;LLVM_USE_HOST_TOOLS;LLVM_CONFIG_PATH;LLVM_EXTERNAL_SPIRV_HEADERS_SOURCE_DIR;\ 113LLVM_BUILD_TOOLS;LLVM_USE_HOST_TOOLS;LLVM_CONFIG_PATH;LLVM_EXTERNAL_SPIRV_HEADERS_SOURCE_DIR;\
113" 114"
114#
115# Default to build all OE-Core supported target arches (user overridable).
116# Gennerally setting LLVM_TARGETS_TO_BUILD = "" in local.conf is ok in most simple situations
117# where only one target architecture is needed along with just one build arch (usually X86)
118# Core tier targets:
119# AArch64;AMDGPU;ARM;AVR;BPF;Hexagon;Lanai;LoongArch;Mips;MSP430;NVPTX;PowerPC;RISCV;Sparc;SPIRV;SystemZ;VE;WebAssembly;X86;XCore
120# Known experimental targets: ARC;CSKY;DirectX;M68k;Xtensa
121 115
122LLVM_TARGETS_TO_BUILD ?= "AMDGPU;AArch64;ARM;BPF;Mips;PowerPC;RISCV;X86;LoongArch;NVPTX;SPIRV" 116# By default we build all the supported CPU architectures, and the GPU targets
123LLVM_TARGETS_TO_BUILD:class-target ?= "${@get_clang_host_arch(bb, d)};AMDGPU;BPF;NVPTX;SPIRV" 117# if the opengl or vulkan DISTRO_FEATURES are enabled.
118#
119# For target builds we default to building that specific architecture, BPF, and the GPU targets if required.
120#
121# The available target list can be seen in the source code
122# in the LLVM_ALL_TARGETS assignment:
123# https://github.com/llvm/llvm-project/blob/main/llvm/CMakeLists.txt
124LLVM_TARGETS_GPU ?= "${@bb.utils.contains_any('DISTRO_FEATURES', 'opengl vulkan', 'AMDGPU;NVPTX;SPIRV', '', d)}"
125LLVM_TARGETS_TO_BUILD ?= "AArch64;ARM;BPF;Mips;PowerPC;RISCV;X86;LoongArch;${LLVM_TARGETS_GPU}"
126LLVM_TARGETS_TO_BUILD:class-target ?= "${@get_clang_host_arch(bb, d)};BPF;${LLVM_TARGETS_GPU}"
124 127
125LLVM_EXPERIMENTAL_TARGETS_TO_BUILD ?= "" 128LLVM_EXPERIMENTAL_TARGETS_TO_BUILD ?= ""
126 129
@@ -130,7 +133,7 @@ HF[vardepvalue] = "${HF}"
130 133
131# Ensure that LLVM_PROJECTS does not contain compiler runtime components e.g. libcxx etc 134# Ensure that LLVM_PROJECTS does not contain compiler runtime components e.g. libcxx etc
132# they are enabled via LLVM_ENABLE_RUNTIMES 135# they are enabled via LLVM_ENABLE_RUNTIMES
133LLVM_PROJECTS ?= "clang;clang-tools-extra;libclc;lld" 136LLVM_PROJECTS ?= "clang;clang-tools-extra;lld"
134 137
135# linux hosts (.so) on Windows .pyd 138# linux hosts (.so) on Windows .pyd
136SOLIBSDEV:mingw32 = ".pyd" 139SOLIBSDEV:mingw32 = ".pyd"
@@ -147,7 +150,6 @@ EXTRA_OECMAKE += "-DLLVM_ENABLE_ASSERTIONS=OFF \
147 -DLLVM_ENABLE_FFI=ON \ 150 -DLLVM_ENABLE_FFI=ON \
148 -DLLVM_ENABLE_ZSTD=ON \ 151 -DLLVM_ENABLE_ZSTD=ON \
149 -DFFI_INCLUDE_DIR=$(pkg-config --variable=includedir libffi) \ 152 -DFFI_INCLUDE_DIR=$(pkg-config --variable=includedir libffi) \
150 -DLLVM_OPTIMIZED_TABLEGEN=ON \
151 -DLLVM_BUILD_EXTERNAL_COMPILER_RT=ON \ 153 -DLLVM_BUILD_EXTERNAL_COMPILER_RT=ON \
152 -DCMAKE_SYSTEM_NAME=Linux \ 154 -DCMAKE_SYSTEM_NAME=Linux \
153 -DCMAKE_BUILD_TYPE=Release \ 155 -DCMAKE_BUILD_TYPE=Release \
@@ -157,26 +159,20 @@ EXTRA_OECMAKE += "-DLLVM_ENABLE_ASSERTIONS=OFF \
157 -DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=ON \ 159 -DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=ON \
158 -DLLVM_TARGETS_TO_BUILD='${LLVM_TARGETS_TO_BUILD}' \ 160 -DLLVM_TARGETS_TO_BUILD='${LLVM_TARGETS_TO_BUILD}' \
159 -DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD='${LLVM_EXPERIMENTAL_TARGETS_TO_BUILD}' \ 161 -DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD='${LLVM_EXPERIMENTAL_TARGETS_TO_BUILD}' \
162 -DLLVM_NATIVE_TOOL_DIR=${STAGING_BINDIR_NATIVE} \
163 -DLLVM_HEADERS_TABLEGEN=${STAGING_BINDIR_NATIVE}/llvm-min-tblgen \
160" 164"
161 165
162EXTRA_OECMAKE:append:class-native = "\
163 -DPYTHON_EXECUTABLE='${PYTHON}' \
164"
165EXTRA_OECMAKE:append:class-nativesdk = "\ 166EXTRA_OECMAKE:append:class-nativesdk = "\
166 -DCROSS_TOOLCHAIN_FLAGS_NATIVE='-DCMAKE_TOOLCHAIN_FILE=${WORKDIR}/toolchain-native.cmake' \ 167 -DCROSS_TOOLCHAIN_FLAGS_NATIVE='-DCMAKE_TOOLCHAIN_FILE=${WORKDIR}/toolchain-native.cmake' \
167 -DCMAKE_RANLIB=${STAGING_BINDIR_TOOLCHAIN}/${TARGET_PREFIX}llvm-ranlib \ 168 -DCMAKE_RANLIB=${STAGING_BINDIR_TOOLCHAIN}/${TARGET_PREFIX}llvm-ranlib \
168 -DCMAKE_AR=${STAGING_BINDIR_TOOLCHAIN}/${TARGET_PREFIX}llvm-ar \ 169 -DCMAKE_AR=${STAGING_BINDIR_TOOLCHAIN}/${TARGET_PREFIX}llvm-ar \
169 -DCMAKE_NM=${STAGING_BINDIR_TOOLCHAIN}/${TARGET_PREFIX}llvm-nm \ 170 -DCMAKE_NM=${STAGING_BINDIR_TOOLCHAIN}/${TARGET_PREFIX}llvm-nm \
170 -DCMAKE_STRIP=${STAGING_BINDIR_TOOLCHAIN}/${TARGET_PREFIX}llvm-strip \ 171 -DCMAKE_STRIP=${STAGING_BINDIR_TOOLCHAIN}/${TARGET_PREFIX}llvm-strip \
171 -DLLVM_NATIVE_TOOL_DIR=${STAGING_BINDIR_NATIVE} \
172 -DLLVM_HEADERS_TABLEGEN=${STAGING_BINDIR_NATIVE}/llvm-min-tblgen \
173 -DPYTHON_LIBRARY=${STAGING_LIBDIR}/lib${PYTHON_DIR}${PYTHON_ABI}.so \ 172 -DPYTHON_LIBRARY=${STAGING_LIBDIR}/lib${PYTHON_DIR}${PYTHON_ABI}.so \
174 -DPYTHON_INCLUDE_DIR=${STAGING_INCDIR}/${PYTHON_DIR}${PYTHON_ABI} \ 173 -DPYTHON_INCLUDE_DIR=${STAGING_INCDIR}/${PYTHON_DIR}${PYTHON_ABI} \
175 -DPYTHON_EXECUTABLE='${PYTHON}' \
176" 174"
177EXTRA_OECMAKE:append:class-target = "\ 175EXTRA_OECMAKE:append:class-target = "\
178 -DLLVM_NATIVE_TOOL_DIR=${STAGING_BINDIR_NATIVE} \
179 -DLLVM_HEADERS_TABLEGEN=${STAGING_BINDIR_NATIVE}/llvm-min-tblgen \
180 -DCMAKE_RANLIB=${STAGING_BINDIR_TOOLCHAIN}/${TARGET_PREFIX}llvm-ranlib \ 176 -DCMAKE_RANLIB=${STAGING_BINDIR_TOOLCHAIN}/${TARGET_PREFIX}llvm-ranlib \
181 -DCMAKE_AR=${STAGING_BINDIR_TOOLCHAIN}/${TARGET_PREFIX}llvm-ar \ 177 -DCMAKE_AR=${STAGING_BINDIR_TOOLCHAIN}/${TARGET_PREFIX}llvm-ar \
182 -DCMAKE_NM=${STAGING_BINDIR_TOOLCHAIN}/${TARGET_PREFIX}llvm-nm \ 178 -DCMAKE_NM=${STAGING_BINDIR_TOOLCHAIN}/${TARGET_PREFIX}llvm-nm \
@@ -191,7 +187,7 @@ EXTRA_OECMAKE:append:class-target = "\
191 187
192DEPENDS = "binutils zlib zstd libffi libxml2 libxml2-native ninja-native swig-native spirv-tools-native llvm-tblgen-native" 188DEPENDS = "binutils zlib zstd libffi libxml2 libxml2-native ninja-native swig-native spirv-tools-native llvm-tblgen-native"
193DEPENDS:append:class-nativesdk = " clang-crosssdk-${SDK_SYS} virtual/nativesdk-cross-binutils nativesdk-python3" 189DEPENDS:append:class-nativesdk = " clang-crosssdk-${SDK_SYS} virtual/nativesdk-cross-binutils nativesdk-python3"
194DEPENDS:append:class-target = " clang-cross-${TARGET_ARCH} python3 ${@bb.utils.contains('TC_CXX_RUNTIME', 'llvm', 'compiler-rt libcxx', '', d)} spirv-llvm-translator-native" 190DEPENDS:append:class-target = " clang-cross-${TARGET_ARCH} python3 ${@bb.utils.contains('TC_CXX_RUNTIME', 'llvm', 'compiler-rt libcxx', '', d)}"
195 191
196RRECOMMENDS:${PN} = "binutils" 192RRECOMMENDS:${PN} = "binutils"
197RRECOMMENDS:${PN}:append:class-target = "${@bb.utils.contains('TC_CXX_RUNTIME', 'llvm', ' libcxx-dev', '', d)}" 193RRECOMMENDS:${PN}:append:class-target = "${@bb.utils.contains('TC_CXX_RUNTIME', 'llvm', ' libcxx-dev', '', d)}"
@@ -258,7 +254,6 @@ do_install:append:class-native () {
258 install -Dm 0755 ${B}${BINPATHPREFIX}/bin/clangd-indexer ${D}${bindir}/clangd-indexer 254 install -Dm 0755 ${B}${BINPATHPREFIX}/bin/clangd-indexer ${D}${bindir}/clangd-indexer
259 fi 255 fi
260 install -Dm 0755 ${B}${BINPATHPREFIX}/bin/clang-tidy-confusable-chars-gen ${D}${bindir}/clang-tidy-confusable-chars-gen 256 install -Dm 0755 ${B}${BINPATHPREFIX}/bin/clang-tidy-confusable-chars-gen ${D}${bindir}/clang-tidy-confusable-chars-gen
261 install -Dm 0755 ${B}${BINPATHPREFIX}/bin/prepare_builtins ${D}${bindir}/prepare_builtins
262 257
263 for f in `find ${D}${bindir} -executable -type f -not -type l`; do 258 for f in `find ${D}${bindir} -executable -type f -not -type l`; do
264 test -n "`file -b $f|grep -i ELF`" && ${STRIP} $f 259 test -n "`file -b $f|grep -i ELF`" && ${STRIP} $f
@@ -294,11 +289,11 @@ do_install:append:class-nativesdk () {
294 fi 289 fi
295} 290}
296 291
297PROVIDES:append:class-native = " llvm-native libclc-native" 292PROVIDES:append:class-native = " llvm-native"
298PROVIDES:append:class-target = " llvm libclc" 293PROVIDES:append:class-target = " llvm"
299PROVIDES:append:class-nativesdk = " nativesdk-llvm nativesdk-libclc" 294PROVIDES:append:class-nativesdk = " nativesdk-llvm"
300 295
301PACKAGES =+ "${PN}-libllvm ${PN}-libclang-python ${PN}-libclang-cpp ${PN}-tidy ${PN}-format ${PN}-tools ${PN}-clc \ 296PACKAGES =+ "${PN}-libllvm ${PN}-libclang-python ${PN}-libclang-cpp ${PN}-tidy ${PN}-format ${PN}-tools \
302 libclang llvm-linker-tools" 297 libclang llvm-linker-tools"
303 298
304BBCLASSEXTEND = "native nativesdk" 299BBCLASSEXTEND = "native nativesdk"
@@ -315,8 +310,6 @@ RDEPENDS:${PN}-tools += "\
315 perl-module-term-ansicolor \ 310 perl-module-term-ansicolor \
316" 311"
317 312
318RPROVIDES:${PN}-clc = "${MLPREFIX}libclc"
319
320RRECOMMENDS:${PN}-tidy += "${PN}-tools" 313RRECOMMENDS:${PN}-tidy += "${PN}-tools"
321 314
322FILES:llvm-linker-tools = "${libdir}/LLVMgold* ${libdir}/libLTO.so.* ${libdir}/LLVMPolly*" 315FILES:llvm-linker-tools = "${libdir}/LLVMgold* ${libdir}/libLTO.so.* ${libdir}/LLVMPolly*"
@@ -383,8 +376,6 @@ FILES:${PN} += "\
383 ${nonarch_libdir}/${BPN}/*/include/ \ 376 ${nonarch_libdir}/${BPN}/*/include/ \
384" 377"
385 378
386FILES:${PN}-clc += "${datadir}/clc"
387
388FILES:${PN}-libllvm =+ "\ 379FILES:${PN}-libllvm =+ "\
389 ${libdir}/libLLVM.so.${MAJOR_VER}.${MINOR_VER} \ 380 ${libdir}/libLLVM.so.${MAJOR_VER}.${MINOR_VER} \
390 ${libdir}/libLLVM-${MAJOR_VER}.so \ 381 ${libdir}/libLLVM-${MAJOR_VER}.so \
diff --git a/meta/recipes-devtools/clang/common.inc b/meta/recipes-devtools/clang/common.inc
index d66f9059b2..d6280c2fbe 100644
--- a/meta/recipes-devtools/clang/common.inc
+++ b/meta/recipes-devtools/clang/common.inc
@@ -59,6 +59,7 @@ SRC_URI = "\
59 file://0036-libunwind-Use-gcs-instead-of-gcs-target-attribute.patch \ 59 file://0036-libunwind-Use-gcs-instead-of-gcs-target-attribute.patch \
60 file://0037-compiler-rt-Exclude-sync_fetch_and_-for-any-pre-ARMv.patch \ 60 file://0037-compiler-rt-Exclude-sync_fetch_and_-for-any-pre-ARMv.patch \
61 file://0038-compiler-rt-Hardcode-uptr-sptr-typedefs-on-Mips-Linu.patch \ 61 file://0038-compiler-rt-Hardcode-uptr-sptr-typedefs-on-Mips-Linu.patch \
62 file://0001-libclc-allow-existing-prepare-builtins-in-standalone.patch \
62" 63"
63# Fallback to no-PIE if not set 64# Fallback to no-PIE if not set
64GCCPIE ??= "" 65GCCPIE ??= ""
diff --git a/meta/recipes-devtools/clang/libclc_git.bb b/meta/recipes-devtools/clang/libclc_git.bb
new file mode 100644
index 0000000000..ed31de503a
--- /dev/null
+++ b/meta/recipes-devtools/clang/libclc_git.bb
@@ -0,0 +1,43 @@
1SUMMARY = "Implementation of the library requirements of the OpenCL C programming language."
2HOMEPAGE = "https://libclc.llvm.org"
3SECTION = "devel"
4
5require common-clang.inc
6require common-source.inc
7
8LIC_FILES_CHKSUM = "file://libclc/LICENSE.TXT;md5=7cc795f6cbb2d801d84336b83c8017db"
9
10inherit cmake pkgconfig
11
12# Depend explicitly on clang-native instead of using TOOLCHAIN as the build
13# objects from this recipe are build explicitly using clang for GPU targets.
14# We could INHIBIT_DEFAULT_DEPS to avoid any other toolchain but then we need
15# to wrestle CMake to configure without a toolchain.
16DEPENDS += "clang-native spirv-llvm-translator-native"
17
18OECMAKE_SOURCEPATH = "${S}/libclc"
19B_NATIVE = "${B}-native"
20
21# Semicolon-separated list of targets to build
22LIBCLC_TARGETS ?= "all"
23
24EXTRA_OECMAKE = "-DLIBCLC_TARGETS_TO_BUILD=${LIBCLC_TARGETS} \
25 -DPREPARE_BUILTINS=${B_NATIVE}/prepare_builtins"
26
27# Need to build a native prepare_builtins binary in target builds. The easiest
28# way to do this is with a second native cmake build tree.
29do_build_prepare_builtins() {
30 cmake --fresh -G Ninja \
31 -S ${OECMAKE_SOURCEPATH} -B ${B_NATIVE} \
32 -DCMAKE_TOOLCHAIN_FILE:FILEPATH=${WORKDIR}/toolchain-native.cmake \
33 -DLIBCLC_TARGETS_TO_BUILD=
34 cmake --build ${B_NATIVE} --target prepare_builtins
35}
36do_build_prepare_builtins:class-native() {
37 :
38}
39do_configure[prefuncs] += "do_build_prepare_builtins"
40
41FILES:${PN} += "${datadir}/clc"
42
43BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-extended/stress-ng/stress-ng_0.18.12.bb b/meta/recipes-extended/stress-ng/stress-ng_0.19.02.bb
index 85a0d6a709..dd8d3a8406 100644
--- a/meta/recipes-extended/stress-ng/stress-ng_0.18.12.bb
+++ b/meta/recipes-extended/stress-ng/stress-ng_0.19.02.bb
@@ -5,9 +5,8 @@ HOMEPAGE = "https://github.com/ColinIanKing/stress-ng#readme"
5LICENSE = "GPL-2.0-only" 5LICENSE = "GPL-2.0-only"
6LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" 6LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
7 7
8SRC_URI = "git://github.com/ColinIanKing/stress-ng.git;protocol=https;branch=master;tag=V${PV} \ 8SRC_URI = "git://github.com/ColinIanKing/stress-ng.git;protocol=https;branch=master;tag=V${PV}"
9 " 9SRCREV = "8d5399b282225f758606cd2b522382f65d947a8d"
10SRCREV = "d4eef982dc98fe915aa82303c0a24070d0a51b00"
11 10
12DEPENDS = "coreutils-native libbsd" 11DEPENDS = "coreutils-native libbsd"
13 12
diff --git a/meta/recipes-graphics/harfbuzz/harfbuzz/0001-Use-Os-to-compile-hb-subset-plan-layout.cc.patch b/meta/recipes-graphics/harfbuzz/harfbuzz/0001-Use-Os-to-compile-hb-subset-plan-layout.cc.patch
deleted file mode 100644
index 38ff58fce5..0000000000
--- a/meta/recipes-graphics/harfbuzz/harfbuzz/0001-Use-Os-to-compile-hb-subset-plan-layout.cc.patch
+++ /dev/null
@@ -1,72 +0,0 @@
1From a4325b6f6ddbebf3ecaee8f3825a2f03096adb6d Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Sun, 27 Apr 2025 15:26:09 -0700
4Subject: [PATCH] Use -Os to compile hb-subset-plan-layout.cc
5
6This helps compiling with GCC 15
7
8Reported upstream with GH Issues [1]
9
10[1] https://github.com/harfbuzz/harfbuzz/issues/5306
11
12Upstream-Status: Inappropriate [GCC-15 workaround]
13
14Signed-off-by: Khem Raj <raj.khem@gmail.com>
15---
16 src/meson.build | 15 ++++++++++++---
17 1 file changed, 12 insertions(+), 3 deletions(-)
18
19diff --git a/src/meson.build b/src/meson.build
20index cbe5d9e..d7fc764 100644
21--- a/src/meson.build
22+++ b/src/meson.build
23@@ -398,7 +398,6 @@ hb_subset_sources = files(
24 'hb-subset-instancer-solver.hh',
25 'hb-subset-instancer-solver.cc',
26 'hb-subset-plan.cc',
27- 'hb-subset-plan-layout.cc',
28 'hb-subset-plan-var.cc',
29 'hb-subset-plan.hh',
30 'hb-subset-plan-member-list.hh',
31@@ -415,6 +414,10 @@ hb_subset_sources = files(
32 'hb-subset.hh',
33 )
34
35+hb_subset_sources_os = files(
36+ 'hb-subset-plan-layout.cc',
37+)
38+
39 hb_subset_headers = files(
40 'hb-subset.h',
41 'hb-subset-serialize.h'
42@@ -629,6 +632,12 @@ endif
43
44 darwin_versions = [hb_version_int, '@0@.0.0'.format(hb_version_int)]
45
46+special_subset_layout_lib = static_library('special_subset_layout',
47+ 'hb-subset-plan-layout.cc',
48+ include_directories: incconfig,
49+ cpp_args: cpp_args + extra_hb_cpp_args + ['-Os'], # <== compile this one with -Os
50+)
51+
52 libharfbuzz = library('harfbuzz', hb_sources,
53 include_directories: incconfig,
54 dependencies: harfbuzz_deps,
55@@ -656,7 +665,7 @@ defs_list += [harfbuzz_subset_def]
56 libharfbuzz_subset = library('harfbuzz-subset', hb_subset_sources,
57 include_directories: incconfig,
58 dependencies: [m_dep],
59- link_with: [libharfbuzz],
60+ link_with: [libharfbuzz] + [special_subset_layout_lib],
61 cpp_args: cpp_args + extra_hb_cpp_args,
62 soversion: hb_so_version,
63 version: version,
64@@ -668,7 +677,7 @@ libharfbuzz_subset = library('harfbuzz-subset', hb_subset_sources,
65 custom_target('harfbuzz-subset.cc',
66 build_by_default: true,
67 output: 'harfbuzz-subset.cc',
68- input: hb_base_sources + hb_subset_sources,
69+ input: hb_base_sources + hb_subset_sources + hb_subset_sources_os,
70 command: [find_program('gen-harfbuzzcc.py'),
71 '@OUTPUT@', meson.current_source_dir(), '@INPUT@'],
72 )
diff --git a/meta/recipes-graphics/harfbuzz/harfbuzz_11.2.1.bb b/meta/recipes-graphics/harfbuzz/harfbuzz_11.2.1.bb
index 71eada7f28..2c8a1363d0 100644
--- a/meta/recipes-graphics/harfbuzz/harfbuzz_11.2.1.bb
+++ b/meta/recipes-graphics/harfbuzz/harfbuzz_11.2.1.bb
@@ -9,7 +9,6 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=b98429b8e8e3c2a67cfef01e99e4893d \
9 " 9 "
10 10
11SRC_URI = "${GITHUB_BASE_URI}/download/${PV}/${BPN}-${PV}.tar.xz" 11SRC_URI = "${GITHUB_BASE_URI}/download/${PV}/${BPN}-${PV}.tar.xz"
12SRC_URI += "file://0001-Use-Os-to-compile-hb-subset-plan-layout.cc.patch"
13SRC_URI[sha256sum] = "093714c8548a285094685f0bdc999e202d666b59eeb3df2ff921ab68b8336a49" 12SRC_URI[sha256sum] = "093714c8548a285094685f0bdc999e202d666b59eeb3df2ff921ab68b8336a49"
14 13
15DEPENDS += "glib-2.0-native" 14DEPENDS += "glib-2.0-native"
@@ -21,6 +20,11 @@ GIR_MESON_DISABLE_FLAG = 'disabled'
21GTKDOC_MESON_ENABLE_FLAG = 'enabled' 20GTKDOC_MESON_ENABLE_FLAG = 'enabled'
22GTKDOC_MESON_DISABLE_FLAG = 'disabled' 21GTKDOC_MESON_DISABLE_FLAG = 'disabled'
23 22
23# As per upstream CONFIG.md, it is recommended to always build with -Os.
24FULL_OPTIMIZATION = "-Os ${DEBUG_LEVELFLAG}"
25
26EXTRA_OEMESON = "-Dtests=disabled"
27
24PACKAGECONFIG ??= "cairo freetype glib icu" 28PACKAGECONFIG ??= "cairo freetype glib icu"
25PACKAGECONFIG[cairo] = "-Dcairo=enabled,-Dcairo=disabled,cairo" 29PACKAGECONFIG[cairo] = "-Dcairo=enabled,-Dcairo=disabled,cairo"
26PACKAGECONFIG[chafa] = "-Dchafa=enabled,-Dchafa=disabled,chafa" 30PACKAGECONFIG[chafa] = "-Dchafa=enabled,-Dchafa=disabled,chafa"
diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xorg_21.1.16.bb b/meta/recipes-graphics/xorg-xserver/xserver-xorg_21.1.18.bb
index 38c81f2372..14c45be432 100644
--- a/meta/recipes-graphics/xorg-xserver/xserver-xorg_21.1.16.bb
+++ b/meta/recipes-graphics/xorg-xserver/xserver-xorg_21.1.18.bb
@@ -3,7 +3,7 @@ require xserver-xorg.inc
3SRC_URI += "file://0001-xf86pciBus.c-use-Intel-ddx-only-for-pre-gen4-hardwar.patch \ 3SRC_URI += "file://0001-xf86pciBus.c-use-Intel-ddx-only-for-pre-gen4-hardwar.patch \
4 file://0001-Avoid-duplicate-definitions-of-IOPortBase.patch \ 4 file://0001-Avoid-duplicate-definitions-of-IOPortBase.patch \
5 " 5 "
6SRC_URI[sha256sum] = "b14a116d2d805debc5b5b2aac505a279e69b217dae2fae2dfcb62400471a9970" 6SRC_URI[sha256sum] = "c878d1930d87725d4a5bf498c24f4be8130d5b2646a9fd0f2994deff90116352"
7 7
8# These extensions are now integrated into the server, so declare the migration 8# These extensions are now integrated into the server, so declare the migration
9# path for in-place upgrades. 9# path for in-place upgrades.
diff --git a/meta/recipes-multimedia/gstreamer/gst-examples_1.26.3.bb b/meta/recipes-multimedia/gstreamer/gst-examples_1.26.3.bb
index 8835b7d97b..df8fd4bd26 100644
--- a/meta/recipes-multimedia/gstreamer/gst-examples_1.26.3.bb
+++ b/meta/recipes-multimedia/gstreamer/gst-examples_1.26.3.bb
@@ -18,6 +18,9 @@ S = "${UNPACKDIR}/${BP}/subprojects/gst-examples"
18 18
19inherit meson pkgconfig features_check 19inherit meson pkgconfig features_check
20 20
21# gtk-play has runtime errors otherwise
22TARGET_LDFLAGS += "-rdynamic"
23
21UPSTREAM_CHECK_GITTAGREGEX = "^(?P<pver>\d+\.(\d*[02468])+(\.\d+)+)" 24UPSTREAM_CHECK_GITTAGREGEX = "^(?P<pver>\d+\.(\d*[02468])+(\.\d+)+)"
22 25
23ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" 26ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
diff --git a/meta/recipes-rt/rt-tests/files/0001-sched_attr-Do-not-define-for-glibc-2.41.patch b/meta/recipes-rt/rt-tests/files/0001-sched_attr-Do-not-define-for-glibc-2.41.patch
deleted file mode 100644
index 915f8baa61..0000000000
--- a/meta/recipes-rt/rt-tests/files/0001-sched_attr-Do-not-define-for-glibc-2.41.patch
+++ /dev/null
@@ -1,44 +0,0 @@
1From e1f5f9379a68471c9f5fb0859e87dd84001b0b6f Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Tue, 28 Jan 2025 15:03:59 -0800
4Subject: [PATCH] sched_attr: Do not define for glibc >= 2.41
5
6glibc 2.41+ has added [1] definitions for sched_setattr and sched_getattr functions
7and struct sched_attr. Therefore, it needs to be checked for here as well before
8defining sched_attr
9
10Define sched_attr conditionally on SCHED_ATTR_SIZE_VER0
11
12Fixes builds with glibc/trunk
13
14[1] https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=21571ca0d70302909cf72707b2a7736cf12190a0;hp=298bc488fdc047da37482f4003023cb9adef78f8
15
16Upstream-Status: Submitted [https://lore.kernel.org/linux-rt-users/20250128230838.2311298-1-raj.khem@gmail.com/T/#u]
17Signed-off-by: Khem Raj <raj.khem@gmail.com>
18Cc: Clark Williams <williams@redhat.com>
19Cc: John Kacur <jkacur@redhat.com>
20Cc: rt-users <linux-rt-users@vger.kernel.org>
21---
22 src/include/rt-sched.h | 4 ++++
23 1 file changed, 4 insertions(+)
24
25diff --git a/src/include/rt-sched.h b/src/include/rt-sched.h
26index 80171c7..9cf0e3a 100644
27--- a/src/include/rt-sched.h
28+++ b/src/include/rt-sched.h
29@@ -42,6 +42,8 @@
30 #define __NR_sched_getattr 275
31 #endif
32
33+/* sched_attr is not defined in glibc < 2.41 */
34+#ifndef SCHED_ATTR_SIZE_VER0
35 struct sched_attr {
36 uint32_t size;
37 uint32_t sched_policy;
38@@ -68,4 +70,6 @@ int sched_getattr(pid_t pid,
39 unsigned int size,
40 unsigned int flags);
41
42+#endif /* SCHED_ATTR_SIZE_VER0 */
43+
44 #endif /* __RT_SCHED_H__ */
diff --git a/meta/recipes-rt/rt-tests/rt-tests.inc b/meta/recipes-rt/rt-tests/rt-tests.inc
index a2e8558c4c..2042768d5a 100644
--- a/meta/recipes-rt/rt-tests/rt-tests.inc
+++ b/meta/recipes-rt/rt-tests/rt-tests.inc
@@ -1,6 +1,6 @@
1SRCREV = "f5b910a90b6f5ab0ef6df392e009ffe1429d53af" 1SRCREV = "9166c3f0bb9c5d3e31dc80aff165a5073b5ac5be"
2PV = "2.8" 2PV = "2.9"
3PE = "1" 3PE = "1"
4 4
5SRC_URI = "git://git.kernel.org/pub/scm/utils/rt-tests/rt-tests.git;branch=main;protocol=https" 5SRC_URI = "git://git.kernel.org/pub/scm/utils/rt-tests/rt-tests.git;branch=main;protocol=https;tag=v${PV}"
6 6
diff --git a/meta/recipes-rt/rt-tests/rt-tests_git.bb b/meta/recipes-rt/rt-tests/rt-tests_git.bb
index 5fa980dbdf..1f48e143d4 100644
--- a/meta/recipes-rt/rt-tests/rt-tests_git.bb
+++ b/meta/recipes-rt/rt-tests/rt-tests_git.bb
@@ -13,7 +13,6 @@ SRC_URI += " \
13 file://run-ptest \ 13 file://run-ptest \
14 file://rt_bmark.py \ 14 file://rt_bmark.py \
15 file://0001-Makefile-Allow-for-CC-and-AR-to-be-overridden.patch \ 15 file://0001-Makefile-Allow-for-CC-and-AR-to-be-overridden.patch \
16 file://0001-sched_attr-Do-not-define-for-glibc-2.41.patch \
17 " 16 "
18 17
19# rt-tests needs PI mutex support in libc 18# rt-tests needs PI mutex support in libc
diff --git a/meta/recipes-support/diffoscope/diffoscope_298.bb b/meta/recipes-support/diffoscope/diffoscope_301.bb
index 4a50059c99..c93ff4f588 100644
--- a/meta/recipes-support/diffoscope/diffoscope_298.bb
+++ b/meta/recipes-support/diffoscope/diffoscope_301.bb
@@ -12,7 +12,7 @@ PYPI_PACKAGE = "diffoscope"
12 12
13inherit pypi setuptools3 13inherit pypi setuptools3
14 14
15SRC_URI[sha256sum] = "9644b7e711df71f13c5f50f3d1353c1e6d09f462d342d9771576e75f3dd8c3e1" 15SRC_URI[sha256sum] = "2b46b60afe3fbb9ba79946e5196157b272ddad27692ccf5e4839def1ef3019c6"
16 16
17RDEPENDS:${PN} += "\ 17RDEPENDS:${PN} += "\
18 binutils \ 18 binutils \
diff --git a/meta/recipes-support/icu/icu/0001-ICU-23120-Mask-UnicodeStringTest-TestLargeMemory-on-.patch b/meta/recipes-support/icu/icu/0001-ICU-23120-Mask-UnicodeStringTest-TestLargeMemory-on-.patch
new file mode 100644
index 0000000000..e2e9546679
--- /dev/null
+++ b/meta/recipes-support/icu/icu/0001-ICU-23120-Mask-UnicodeStringTest-TestLargeMemory-on-.patch
@@ -0,0 +1,28 @@
1From 4b3e6888c2aaba6465f1bc96f61b17a2513050f3 Mon Sep 17 00:00:00 2001
2From: David Seifert <soap@gentoo.org>
3Date: Sat, 21 Jun 2025 12:28:15 +0200
4Subject: [PATCH] ICU-23120 Mask UnicodeStringTest::TestLargeMemory on 32-bit
5 platforms
6
7Upstream-Status: Submitted [https://github.com/unicode-org/icu/pull/3496]
8Signed-off-by: Daisuke Yamane <yamane07ynct@gmail.com>
9---
10 test/intltest/ustrtest.cpp | 2 +-
11 1 file changed, 1 insertion(+), 1 deletion(-)
12
13diff --git a/test/intltest/ustrtest.cpp b/test/intltest/ustrtest.cpp
14index 56976b3e3d2..26225f5b5b5 100644
15--- a/test/intltest/ustrtest.cpp
16+++ b/test/intltest/ustrtest.cpp
17@@ -2353,7 +2353,7 @@ void UnicodeStringTest::TestUnicodeStringInsertAppendToSelf() {
18 }
19
20 void UnicodeStringTest::TestLargeMemory() {
21-#if U_PLATFORM_IS_LINUX_BASED || U_PLATFORM_IS_DARWIN_BASED
22+#if (U_PLATFORM_IS_LINUX_BASED || U_PLATFORM_IS_DARWIN_BASED) && (UINTPTR_MAX == 0xFFFFFFFFFFFFFFFF)
23 if(quick) { return; }
24 IcuTestErrorCode status(*this, "TestLargeMemory");
25 constexpr uint32_t len = 2147483643;
26--
272.43.0
28
diff --git a/meta/recipes-support/icu/icu/0001-test-Add-support-ptest.patch b/meta/recipes-support/icu/icu/0001-test-Add-support-ptest.patch
new file mode 100644
index 0000000000..88350c0db5
--- /dev/null
+++ b/meta/recipes-support/icu/icu/0001-test-Add-support-ptest.patch
@@ -0,0 +1,84 @@
1From 783d9e0d3d7824fbca53c2c3a80e8e5e23eacc82 Mon Sep 17 00:00:00 2001
2From: Daisuke Yamane <yamane07ynct@gmail.com>
3Date: Tue, 1 Jul 2025 18:35:25 +0900
4Subject: [PATCH] test: Add support ptest
5
6Upstream-Status: Inappropriate [oe-core specific]
7
8Signed-off-by: Daisuke Yamane <yamane07ynct@gmail.com>
9---
10 test/cintltst/Makefile.in | 2 +-
11 test/intltest/Makefile.in | 2 +-
12 test/intltest/intltest.cpp | 2 +-
13 test/iotest/Makefile.in | 2 +-
14 test/letest/Makefile.in | 2 +-
15 5 files changed, 5 insertions(+), 5 deletions(-)
16
17diff --git a/test/cintltst/Makefile.in b/test/cintltst/Makefile.in
18index 552a105..9cf3071 100644
19--- a/test/cintltst/Makefile.in
20+++ b/test/cintltst/Makefile.in
21@@ -39,7 +39,7 @@ CPPFLAGS += -I$(top_srcdir)/common -I$(top_srcdir)/i18n -I$(top_srcdir)/tools/ct
22 ifdef QNX_TARGET
23 DEFS += -D'ICU_UNICODE_VERSION="$(UNICODE_VERSION)"' -D'ICU_VERSION="@VERSION@"' -D'ICUDATA_NAME="$(ICUDATA_PLATFORM_NAME)"' -D'U_TOPSRCDIR="/var/icu_tests"' -D'U_TOPBUILDDIR="/var/icu_tests/"'
24 else
25-DEFS += -D'ICU_UNICODE_VERSION="$(UNICODE_VERSION)"' -D'ICU_VERSION="@VERSION@"' -D'ICUDATA_NAME="$(ICUDATA_PLATFORM_NAME)"' -D'U_TOPSRCDIR="$(top_srcdir)/"' -D'U_TOPBUILDDIR="$(BUILDDIR)"'
26+DEFS += -D'ICU_UNICODE_VERSION="$(UNICODE_VERSION)"' -D'ICU_VERSION="@VERSION@"' -D'ICUDATA_NAME="$(ICUDATA_PLATFORM_NAME)"' -D'U_TOPSRCDIR="$(PTEST_PATH)/"' -D'U_TOPBUILDDIR="$(PTEST_PATH)/"'
27 endif
28 LIBS = $(LIBCTESTFW) $(LIBICUI18N) $(LIBICUTOOLUTIL) $(LIBICUUC) $(DEFAULT_LIBS) $(LIB_M)
29
30diff --git a/test/intltest/Makefile.in b/test/intltest/Makefile.in
31index 5d4a03b..ca4e4cd 100644
32--- a/test/intltest/Makefile.in
33+++ b/test/intltest/Makefile.in
34@@ -39,7 +39,7 @@ CPPFLAGS += -DUNISTR_FROM_CHAR_EXPLICIT= -DUNISTR_FROM_STRING_EXPLICIT=
35 ifdef QNX_TARGET
36 DEFS += -D'U_TOPSRCDIR="/var/icu_tests"' -D'U_TOPBUILDDIR="/var/icu_tests/"'
37 else
38-DEFS += -D'U_TOPSRCDIR="$(top_srcdir)/"' -D'U_TOPBUILDDIR="$(BUILDDIR)"'
39+DEFS += -D'U_TOPSRCDIR="$(PTEST_PATH)/"' -D'U_TOPBUILDDIR="$(PTEST_PATH)/"'
40 endif
41 LIBS = $(LIBCTESTFW) $(LIBICUI18N) $(LIBICUUC) $(LIBICUTOOLUTIL) $(DEFAULT_LIBS) $(LIB_M) $(LIB_THREAD)
42
43diff --git a/test/intltest/intltest.cpp b/test/intltest/intltest.cpp
44index 3806d0f..33829b0 100644
45--- a/test/intltest/intltest.cpp
46+++ b/test/intltest/intltest.cpp
47@@ -1713,7 +1713,7 @@ static bool fileExists(const char* fileName) {
48 * Returns the path to icu/testdata/
49 */
50 const char *IntlTest::getSharedTestData(UErrorCode& err) {
51-#define SOURCE_TARBALL_TOP U_TOPSRCDIR U_FILE_SEP_STRING ".." U_FILE_SEP_STRING
52+#define SOURCE_TARBALL_TOP U_TOPSRCDIR U_FILE_SEP_STRING
53 #define REPO_TOP SOURCE_TARBALL_TOP ".." U_FILE_SEP_STRING
54 #define FILE_NAME U_FILE_SEP_STRING "message2" U_FILE_SEP_STRING "valid-tests.json"
55 const char *srcDataDir = nullptr;
56diff --git a/test/iotest/Makefile.in b/test/iotest/Makefile.in
57index 16c510f..9eeff4b 100644
58--- a/test/iotest/Makefile.in
59+++ b/test/iotest/Makefile.in
60@@ -39,7 +39,7 @@ CPPFLAGS += -DUNISTR_FROM_CHAR_EXPLICIT= -DUNISTR_FROM_STRING_EXPLICIT=
61 ifdef QNX_TARGET
62 DEFS += -D'U_TOPSRCDIR="/var/icu_tests"' -D'U_TOPBUILDDIR="/var/icu_tests/"'
63 else
64-DEFS += -D'U_TOPSRCDIR="$(top_srcdir)/"' -D'U_TOPBUILDDIR="$(BUILDDIR)"'
65+DEFS += -D'U_TOPSRCDIR="$(PTEST_PATH)/"' -D'U_TOPBUILDDIR="$(PTEST_PATH)/"'
66 endif
67 LIBS = $(LIBCTESTFW) $(LIBICUTOOLUTIL) $(LIBICUIO) $(LIBICUI18N) $(LIBICUUC) $(DEFAULT_LIBS) $(LIB_M)
68
69diff --git a/test/letest/Makefile.in b/test/letest/Makefile.in
70index 156c86f..555a820 100644
71--- a/test/letest/Makefile.in
72+++ b/test/letest/Makefile.in
73@@ -30,7 +30,7 @@ BUILDDIR := $(BUILDDIR:test\\cintltst/../../=)
74 BUILDDIR := $(BUILDDIR:TEST\\CINTLTST/../../=)
75
76 CPPFLAGS += -I$(top_srcdir)/common -I$(top_srcdir)/i18n -I$(top_srcdir)/tools/ctestfw -I$(top_srcdir)/tools/toolutil -I$(top_srcdir)/layoutex $(ICULE_CFLAGS) $(ICULEHB_CFLAGS)
77-DEFS += -D'U_TOPSRCDIR="$(top_srcdir)/"' -D'U_TOPBUILDDIR="$(BUILDDIR)"'
78+DEFS += -D'U_TOPSRCDIR="$(PTEST_PATH)/"' -D'U_TOPBUILDDIR="$(PTEST_PATH)/"'
79 LIBS = $(LIBICULX) $(LIBICUUC) $(LIBICUI18N) $(LIBCTESTFW) $(LIBICUTOOLUTIL) $(DEFAULT_LIBS) $(LIB_M) $(ICULEHB_LIBS)
80
81 COMMONOBJECTS = SimpleFontInstance.o
82--
832.43.0
84
diff --git a/meta/recipes-support/icu/icu/run-ptest b/meta/recipes-support/icu/icu/run-ptest
new file mode 100755
index 0000000000..e5bf27a822
--- /dev/null
+++ b/meta/recipes-support/icu/icu/run-ptest
@@ -0,0 +1,13 @@
1#!/bin/sh
2
3TOPDIR=$(dirname "$(realpath $0)")
4cd ${TOPDIR}/test/tests
5TESTS=$(find . -executable -type f)
6for t in ${TESTS}; do
7 ./$t
8 if [ "$?" = "0" ]; then
9 echo "PASS: $t"
10 else
11 echo "FAIL: $t"
12 fi
13done
diff --git a/meta/recipes-support/icu/icu_77-1.bb b/meta/recipes-support/icu/icu_77-1.bb
index e655b18ad2..cd81a6c729 100644
--- a/meta/recipes-support/icu/icu_77-1.bb
+++ b/meta/recipes-support/icu/icu_77-1.bb
@@ -119,6 +119,9 @@ SRC_URI = "${BASE_SRC_URI};name=code \
119 ${DATA_SRC_URI};name=data \ 119 ${DATA_SRC_URI};name=data \
120 file://filter.json \ 120 file://filter.json \
121 file://0001-icu-Added-armeb-support.patch \ 121 file://0001-icu-Added-armeb-support.patch \
122 file://0001-ICU-23120-Mask-UnicodeStringTest-TestLargeMemory-on-.patch \
123 file://0001-test-Add-support-ptest.patch \
124 file://run-ptest \
122 " 125 "
123 126
124SRC_URI:append:class-target = "\ 127SRC_URI:append:class-target = "\
@@ -160,3 +163,23 @@ do_make_icudata() {
160} 163}
161 164
162addtask make_icudata before do_configure after do_patch do_prepare_recipe_sysroot 165addtask make_icudata before do_configure after do_patch do_prepare_recipe_sysroot
166
167inherit ptest
168RDEPENDS:${PN}-ptest += "bash"
169
170do_compile_ptest() {
171 oe_runmake -C test everything PTEST_PATH=${PTEST_PATH}
172}
173
174do_install_ptest() {
175 install -d ${D}${PTEST_PATH}/test
176 install -d ${D}${PTEST_PATH}/data
177 cp -r ${S}/test/testdata ${D}/${PTEST_PATH}/test
178 cp -r ${S}/data/unidata ${D}/${PTEST_PATH}/data/
179 cp -r ${S}/data/sprep ${D}/${PTEST_PATH}/data/
180 cp -r ${S}/../testdata ${D}/${PTEST_PATH}/
181 cp -r ${B}/test/testdata/out ${D}/${PTEST_PATH}/test/testdata
182
183 install -d ${D}${PTEST_PATH}/test/tests
184 find ${B}/test/ -type f -executable -exec cp {} ${D}${PTEST_PATH}/test/tests \;
185}
diff --git a/meta/recipes-support/libgit2/libgit2/0001-src-libgit2-CMakeLists.txt-install-cmake-files-into-.patch b/meta/recipes-support/libgit2/libgit2/0001-src-libgit2-CMakeLists.txt-install-cmake-files-into-.patch
deleted file mode 100644
index ae48524e0d..0000000000
--- a/meta/recipes-support/libgit2/libgit2/0001-src-libgit2-CMakeLists.txt-install-cmake-files-into-.patch
+++ /dev/null
@@ -1,32 +0,0 @@
1From 8ca35649c33d0d2fcdcd573ce6a9edd91c77e4da Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex@linutronix.de>
3Date: Tue, 7 Jan 2025 18:56:19 +0100
4Subject: [PATCH] src/libgit2/CMakeLists.txt: install cmake files into
5 configured libdir
6
7libdir can be something else than /usr/lib, e.g. /usr/lib64 or similar.
8
9Upstream-Status: Submitted [https://github.com/libgit2/libgit2/pull/7004]
10Signed-off-by: Alexander Kanavin <alex@linutronix.de>
11---
12 src/libgit2/CMakeLists.txt | 4 ++--
13 1 file changed, 2 insertions(+), 2 deletions(-)
14
15diff --git a/src/libgit2/CMakeLists.txt b/src/libgit2/CMakeLists.txt
16index a7d3c7ca4..16b3a23d9 100644
17--- a/src/libgit2/CMakeLists.txt
18+++ b/src/libgit2/CMakeLists.txt
19@@ -119,11 +119,11 @@ configure_file(config.cmake.in
20 install(FILES
21 "${PROJECT_BINARY_DIR}/cmake/${PROJECT_NAME}Config.cmake"
22 "${PROJECT_BINARY_DIR}/cmake/${PROJECT_NAME}ConfigVersion.cmake"
23- DESTINATION "lib/cmake/${PROJECT_NAME}")
24+ DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}")
25 install(
26 EXPORT ${LIBGIT2_TARGETS_EXPORT_NAME}
27 NAMESPACE "${PROJECT_NAME}::"
28- DESTINATION "lib/cmake/${PROJECT_NAME}")
29+ DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}")
30
31 # Install
32
diff --git a/meta/recipes-support/libgit2/libgit2_1.9.0.bb b/meta/recipes-support/libgit2/libgit2_1.9.1.bb
index 66ec62f17a..43957a2087 100644
--- a/meta/recipes-support/libgit2/libgit2_1.9.0.bb
+++ b/meta/recipes-support/libgit2/libgit2_1.9.1.bb
@@ -5,10 +5,8 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=8eacfdc17c8f4d219e131a073973b97d"
5 5
6DEPENDS = "curl openssl zlib libssh2 libgcrypt libpcre2" 6DEPENDS = "curl openssl zlib libssh2 libgcrypt libpcre2"
7 7
8SRC_URI = "git://github.com/libgit2/libgit2.git;branch=main;protocol=https \ 8SRC_URI = "git://github.com/libgit2/libgit2.git;branch=maint/v1.9;protocol=https;tag=v${PV}"
9 file://0001-src-libgit2-CMakeLists.txt-install-cmake-files-into-.patch \ 9SRCREV = "0060d9cf5666f015b1067129bd874c6cc4c9c7ac"
10 "
11SRCREV = "338e6fb681369ff0537719095e22ce9dc602dbf0"
12 10
13inherit cmake 11inherit cmake
14 12