summaryrefslogtreecommitdiffstats
path: root/meta
diff options
context:
space:
mode:
Diffstat (limited to 'meta')
-rw-r--r--meta/classes-recipe/uboot-config.bbclass15
-rw-r--r--meta/files/license-hashes.csv18
-rw-r--r--meta/lib/oe/go.py6
-rw-r--r--meta/lib/oeqa/core/case.py8
-rw-r--r--meta/lib/oeqa/selftest/cases/buildhistory.py61
-rw-r--r--meta/lib/oeqa/selftest/cases/buildoptions.py38
-rw-r--r--meta/lib/oeqa/selftest/cases/oescripts.py24
-rw-r--r--meta/recipes-bsp/barebox/barebox-common.inc4
-rw-r--r--meta/recipes-bsp/u-boot/u-boot.inc80
-rw-r--r--meta/recipes-core/glibc/glibc-version.inc2
-rw-r--r--meta/recipes-core/glibc/glibc/0001-Propagate-ffile-prefix-map-from-CFLAGS-to-ASFLAGS.patch2
-rw-r--r--meta/recipes-core/glibc/glibc/0023-tests-Skip-2-qemu-tests-that-can-hang-in-oe-selftest.patch2
-rw-r--r--meta/recipes-core/glibc/glibc_2.41.bb2
-rw-r--r--meta/recipes-devtools/rpm/files/0001-CMakeLists.txt-Fix-checking-for-CFLAGS.patch42
-rw-r--r--meta/recipes-extended/libarchive/libarchive_3.8.1.bb (renamed from meta/recipes-extended/libarchive/libarchive_3.7.9.bb)4
15 files changed, 160 insertions, 148 deletions
diff --git a/meta/classes-recipe/uboot-config.bbclass b/meta/classes-recipe/uboot-config.bbclass
index f44605cb6a..bc20913f73 100644
--- a/meta/classes-recipe/uboot-config.bbclass
+++ b/meta/classes-recipe/uboot-config.bbclass
@@ -22,12 +22,17 @@ def removesuffix(s, suffix):
22UBOOT_ENTRYPOINT ?= "0x20008000" 22UBOOT_ENTRYPOINT ?= "0x20008000"
23UBOOT_LOADADDRESS ?= "${UBOOT_ENTRYPOINT}" 23UBOOT_LOADADDRESS ?= "${UBOOT_ENTRYPOINT}"
24 24
25# When naming the files we install/deploy, the package version and revision
26# are part of the filename. Create a single variable to represent this and
27# allow it to be customized if desired.
28UBOOT_VERSION ?= "${PV}-${PR}"
29
25# Some versions of u-boot use .bin and others use .img. By default use .bin 30# Some versions of u-boot use .bin and others use .img. By default use .bin
26# but enable individual recipes to change this value. 31# but enable individual recipes to change this value.
27UBOOT_SUFFIX ??= "bin" 32UBOOT_SUFFIX ??= "bin"
28UBOOT_BINARY ?= "u-boot.${UBOOT_SUFFIX}" 33UBOOT_BINARY ?= "u-boot.${UBOOT_SUFFIX}"
29UBOOT_BINARYNAME ?= "${@os.path.splitext(d.getVar("UBOOT_BINARY"))[0]}" 34UBOOT_BINARYNAME ?= "${@os.path.splitext(d.getVar("UBOOT_BINARY"))[0]}"
30UBOOT_IMAGE ?= "${UBOOT_BINARYNAME}-${MACHINE}-${PV}-${PR}.${UBOOT_SUFFIX}" 35UBOOT_IMAGE ?= "${UBOOT_BINARYNAME}-${MACHINE}-${UBOOT_VERSION}.${UBOOT_SUFFIX}"
31UBOOT_SYMLINK ?= "${UBOOT_BINARYNAME}-${MACHINE}.${UBOOT_SUFFIX}" 36UBOOT_SYMLINK ?= "${UBOOT_BINARYNAME}-${MACHINE}.${UBOOT_SUFFIX}"
32UBOOT_MAKE_TARGET ?= "all" 37UBOOT_MAKE_TARGET ?= "all"
33 38
@@ -36,7 +41,7 @@ UBOOT_MAKE_TARGET ?= "all"
36# purposes. 41# purposes.
37UBOOT_ELF ?= "" 42UBOOT_ELF ?= ""
38UBOOT_ELF_SUFFIX ?= "elf" 43UBOOT_ELF_SUFFIX ?= "elf"
39UBOOT_ELF_IMAGE ?= "u-boot-${MACHINE}-${PV}-${PR}.${UBOOT_ELF_SUFFIX}" 44UBOOT_ELF_IMAGE ?= "u-boot-${MACHINE}-${UBOOT_VERSION}.${UBOOT_ELF_SUFFIX}"
40UBOOT_ELF_BINARY ?= "u-boot.${UBOOT_ELF_SUFFIX}" 45UBOOT_ELF_BINARY ?= "u-boot.${UBOOT_ELF_SUFFIX}"
41UBOOT_ELF_SYMLINK ?= "u-boot-${MACHINE}.${UBOOT_ELF_SUFFIX}" 46UBOOT_ELF_SYMLINK ?= "u-boot-${MACHINE}.${UBOOT_ELF_SUFFIX}"
42 47
@@ -49,7 +54,7 @@ SPL_BINARY ?= ""
49SPL_DELIMITER ?= "${@'.' if d.getVar("SPL_SUFFIX") else ''}" 54SPL_DELIMITER ?= "${@'.' if d.getVar("SPL_SUFFIX") else ''}"
50SPL_BINARYFILE ?= "${@os.path.basename(d.getVar("SPL_BINARY"))}" 55SPL_BINARYFILE ?= "${@os.path.basename(d.getVar("SPL_BINARY"))}"
51SPL_BINARYNAME ?= "${@removesuffix(d.getVar("SPL_BINARYFILE"), "." + d.getVar("SPL_SUFFIX"))}" 56SPL_BINARYNAME ?= "${@removesuffix(d.getVar("SPL_BINARYFILE"), "." + d.getVar("SPL_SUFFIX"))}"
52SPL_IMAGE ?= "${SPL_BINARYNAME}-${MACHINE}-${PV}-${PR}${SPL_DELIMITER}${SPL_SUFFIX}" 57SPL_IMAGE ?= "${SPL_BINARYNAME}-${MACHINE}-${UBOOT_VERSION}${SPL_DELIMITER}${SPL_SUFFIX}"
53SPL_SYMLINK ?= "${SPL_BINARYNAME}-${MACHINE}${SPL_DELIMITER}${SPL_SUFFIX}" 58SPL_SYMLINK ?= "${SPL_BINARYNAME}-${MACHINE}${SPL_DELIMITER}${SPL_SUFFIX}"
54 59
55# Additional environment variables or a script can be installed alongside 60# Additional environment variables or a script can be installed alongside
@@ -62,14 +67,14 @@ UBOOT_ENV ?= ""
62UBOOT_ENV_SRC_SUFFIX ?= "cmd" 67UBOOT_ENV_SRC_SUFFIX ?= "cmd"
63UBOOT_ENV_SRC ?= "${UBOOT_ENV}.${UBOOT_ENV_SRC_SUFFIX}" 68UBOOT_ENV_SRC ?= "${UBOOT_ENV}.${UBOOT_ENV_SRC_SUFFIX}"
64UBOOT_ENV_BINARY ?= "${UBOOT_ENV}.${UBOOT_ENV_SUFFIX}" 69UBOOT_ENV_BINARY ?= "${UBOOT_ENV}.${UBOOT_ENV_SUFFIX}"
65UBOOT_ENV_IMAGE ?= "${UBOOT_ENV}-${MACHINE}-${PV}-${PR}.${UBOOT_ENV_SUFFIX}" 70UBOOT_ENV_IMAGE ?= "${UBOOT_ENV}-${MACHINE}-${UBOOT_VERSION}.${UBOOT_ENV_SUFFIX}"
66UBOOT_ENV_SYMLINK ?= "${UBOOT_ENV}-${MACHINE}.${UBOOT_ENV_SUFFIX}" 71UBOOT_ENV_SYMLINK ?= "${UBOOT_ENV}-${MACHINE}.${UBOOT_ENV_SUFFIX}"
67 72
68# U-Boot EXTLINUX variables. U-Boot searches for /boot/extlinux/extlinux.conf 73# U-Boot EXTLINUX variables. U-Boot searches for /boot/extlinux/extlinux.conf
69# to find EXTLINUX conf file. 74# to find EXTLINUX conf file.
70UBOOT_EXTLINUX_INSTALL_DIR ?= "/boot/extlinux" 75UBOOT_EXTLINUX_INSTALL_DIR ?= "/boot/extlinux"
71UBOOT_EXTLINUX_CONF_NAME ?= "extlinux.conf" 76UBOOT_EXTLINUX_CONF_NAME ?= "extlinux.conf"
72UBOOT_EXTLINUX_SYMLINK ?= "${UBOOT_EXTLINUX_CONF_NAME}-${MACHINE}-${PR}" 77UBOOT_EXTLINUX_SYMLINK ?= "${UBOOT_EXTLINUX_CONF_NAME}-${MACHINE}-${UBOOT_VERSION}"
73 78
74# Options for the device tree compiler passed to mkimage '-D' feature: 79# Options for the device tree compiler passed to mkimage '-D' feature:
75UBOOT_MKIMAGE_DTCOPTS ??= "" 80UBOOT_MKIMAGE_DTCOPTS ??= ""
diff --git a/meta/files/license-hashes.csv b/meta/files/license-hashes.csv
index 906660b85d..5e81dbcdec 100644
--- a/meta/files/license-hashes.csv
+++ b/meta/files/license-hashes.csv
@@ -3,7 +3,8 @@
30636e73ff0215e8d672dc4c32c317bb3,GPL-2.0-only 30636e73ff0215e8d672dc4c32c317bb3,GPL-2.0-only
4063b5c3ebb5f3aa4c85a2ed18a31fbe7,GPL-2.0-only 4063b5c3ebb5f3aa4c85a2ed18a31fbe7,GPL-2.0-only
50a97f8e4cbaf889d6fa51f84b89a79f6,ISC 50a97f8e4cbaf889d6fa51f84b89a79f6,ISC
60ceb9ff3b27d3a8cf451ca3785d73c71,BSD-3-Clause & MIT 60c241922fc69330e2e5590de114f3bf5,BSD-3-Clause
70ceb9ff3b27d3a8cf451ca3785d73c71,MIT
70dd48ae8103725bd7b401261520cdfbb,BSD-3-Clause 80dd48ae8103725bd7b401261520cdfbb,BSD-3-Clause
80e46634a01bfef056892949acaea85b1,BSD-3-Clause 90e46634a01bfef056892949acaea85b1,BSD-3-Clause
91034431802e57486b393d00c5d262b8a,Apache-2.0 101034431802e57486b393d00c5d262b8a,Apache-2.0
@@ -13,16 +14,22 @@
13201414b6610203caed355323b1ab3116,BSD-3-Clause 14201414b6610203caed355323b1ab3116,BSD-3-Clause
14252890d9eee26aab7b432e8b8a616475,LGPL-2.0-only 15252890d9eee26aab7b432e8b8a616475,LGPL-2.0-only
152b8c039b2b9a25f0feb4410c4542d346,BSD-2-Clause 162b8c039b2b9a25f0feb4410c4542d346,BSD-2-Clause
172d1c30374313ae40df7772dc92ef9fd5,GPL-3.0-only
162d5025d4aa3495befef8f17206a5b0a1,LGPL-2.1-only 182d5025d4aa3495befef8f17206a5b0a1,LGPL-2.1-only
173214f080875748938ba060314b4f727d,LGPL-2.0-only 193214f080875748938ba060314b4f727d,LGPL-2.0-only
2037acb030ba070680be4a9fcb57f2735a,MIT
18385c55653886acac3821999a3ccd17b3,Artistic-1.0 | GPL-2.0-only 21385c55653886acac3821999a3ccd17b3,Artistic-1.0 | GPL-2.0-only
2238be95f95200434dc208e2ee3dab5081,BSD-3-Clause
19393a5ca445f6965873eca0259a17f833,GPL-2.0-only 23393a5ca445f6965873eca0259a17f833,GPL-2.0-only
203b83ef96387f14655fc854ddc3c6bd57,Apache-2.0 243b83ef96387f14655fc854ddc3c6bd57,Apache-2.0
213bf50002aefd002f49e7bb854063f7e7,LGPL-2.0-only 253bf50002aefd002f49e7bb854063f7e7,LGPL-2.0-only
263c91c17266710e16afdbb2b6d15c761c,Apache-2.0
223debde09238a8c8e1f6a847e1ec9055b,LGPL-2.1-only 273debde09238a8c8e1f6a847e1ec9055b,LGPL-2.1-only
234325afd396febcb659c36b49533135d4,GPL-2.0-only 284325afd396febcb659c36b49533135d4,GPL-2.0-only
244c641f2d995c47f5cb08bdb4b5b6ea05,BSD-2-Clause 294c641f2d995c47f5cb08bdb4b5b6ea05,BSD-2-Clause
304e2a8d8f9935d6a766a5879a77ddc24d,Apache-2.0
254ee4feb2b545c2231749e5c54ace343e,BSD-3-Clause 314ee4feb2b545c2231749e5c54ace343e,BSD-3-Clause
324efd8bdbab9cff00dcd75f2c3ee4e190,BSD-2-Clause
264fbd65380cdd255951079008b364516c,LGPL-2.1-only 334fbd65380cdd255951079008b364516c,LGPL-2.1-only
2750fab24ce589d69af8964fdbfe414c60,BSD-2-Clause 3450fab24ce589d69af8964fdbfe414c60,BSD-2-Clause
2854c7042be62e169199200bc6477f04d1,BSD-3-Clause 3554c7042be62e169199200bc6477f04d1,BSD-3-Clause
@@ -30,6 +37,7 @@
3059530bdf33659b29e73d4adb9f9f6552,GPL-2.0-only 3759530bdf33659b29e73d4adb9f9f6552,GPL-2.0-only
315d4950ecb7b26d2c5e4e7b4e0dd74707,BSD-3-Clause 385d4950ecb7b26d2c5e4e7b4e0dd74707,BSD-3-Clause
325f30f0716dfdd0d91eb439ebec522ec2,LGPL-2.0-only 395f30f0716dfdd0d91eb439ebec522ec2,LGPL-2.0-only
406551d79bf661eed41a50157513ee4ad6,BSD-3-Clause
336a6a8e020838b23406c81b19c1d46df6,LGPL-3.0-only 416a6a8e020838b23406c81b19c1d46df6,LGPL-3.0-only
34721f23a96ff4161ca3a5f071bbe18108,MIT 42721f23a96ff4161ca3a5f071bbe18108,MIT
357364d1e4653d3584181e9d22d81f275f,CC0-1.0 437364d1e4653d3584181e9d22d81f275f,CC0-1.0
@@ -41,8 +49,10 @@
417fbc338309ac38fefcd64b04bb903e34,LGPL-2.1-only 497fbc338309ac38fefcd64b04bb903e34,LGPL-2.1-only
4280fa7b56a28e8c902e6af194003220a5,BSD-2-Clause 5080fa7b56a28e8c902e6af194003220a5,BSD-2-Clause
4385d8a977ee9d7c5ab4ac03c9b95431c4,MIT-0 5185d8a977ee9d7c5ab4ac03c9b95431c4,MIT-0
5288073b6dd8ec00fe09da59e0b6dfded1,BSD-3-Clause
4488a4355858a1433fea99fae34a44da88,GPL-2.0-only 5388a4355858a1433fea99fae34a44da88,GPL-2.0-only
458bd23871802951c9ad63855151204c2c,BSD-2-Clause 548bd23871802951c9ad63855151204c2c,BSD-2-Clause
558c6127b79304a5e0a5756d03c7a58766,MIT
468ca43cbc842c2336e835926c2166c28b,GPL-2.0-only 568ca43cbc842c2336e835926c2166c28b,GPL-2.0-only
47939cce1ec101726fa754e698ac871622,BSD-3-Clause 57939cce1ec101726fa754e698ac871622,BSD-3-Clause
4894d55d512a9ba36caa9b7df079bae19f,GPL-2.0-only 5894d55d512a9ba36caa9b7df079bae19f,GPL-2.0-only
@@ -53,8 +63,10 @@ a54a1a6a39e7f9dbb4a23a42f5c7fd1c,Apache-2.0
53a651bb3d8b1c412632e28823bb432b40,BSD-3-Clause 63a651bb3d8b1c412632e28823bb432b40,BSD-3-Clause
54a6f89e2100d9b6cdffcea4f398e37343,LGPL-2.1-only 64a6f89e2100d9b6cdffcea4f398e37343,LGPL-2.1-only
55ad4e9d34a2e966dfe9837f18de03266d,GFDL-1.1-only 65ad4e9d34a2e966dfe9837f18de03266d,GFDL-1.1-only
66ae6de3dee02712a1e55b280671be53bf,BSD-3-Clause
56b234ee4d69f5fce4486a80fdaf4a4263,GPL-2.0-only 67b234ee4d69f5fce4486a80fdaf4a4263,GPL-2.0-only
57b27575459e02221ccef97ec0bfd457ae,Apache-2.0 68b27575459e02221ccef97ec0bfd457ae,Apache-2.0
69b278a92d2c1509760384428817710378,MPL-2.0
58b376d29a53c9573006b9970709231431,MIT 70b376d29a53c9573006b9970709231431,MIT
59b5f72aef53d3b2b432702c30b0215666,BSD-3-Clause 71b5f72aef53d3b2b432702c30b0215666,BSD-3-Clause
60b66384e7137e41a9b1904ef4d39703b6,Apache-2.0 72b66384e7137e41a9b1904ef4d39703b6,Apache-2.0
@@ -63,12 +75,16 @@ bfe1f75d606912a4111c90743d6c7325,MPL-1.1-only
63c93c0550bd3173f4504b2cbd8991e50b,GPL-2.0-only 75c93c0550bd3173f4504b2cbd8991e50b,GPL-2.0-only
64d014fb11a34eb67dc717fdcfc97e60ed,GFDL-1.2-only 76d014fb11a34eb67dc717fdcfc97e60ed,GFDL-1.2-only
65d0b68be4a2dc957aaf09144970bc6696,MIT 77d0b68be4a2dc957aaf09144970bc6696,MIT
78d0fd9ebda39468b51ff4539c9fbb13a8,BSD-3-Clause
66d32239bcb673463ab874e80d47fae504,GPL-3.0-only 79d32239bcb673463ab874e80d47fae504,GPL-3.0-only
80d44fdeb607e2d2614db9464dbedd4094,MPL-2.0
81d4eb2084b3083d2c275ec52ef4ba9ac1,BSD-3-Clause
67d7810fab7487fb0aad327b76f1be7cd7,GPL-2.0-only 82d7810fab7487fb0aad327b76f1be7cd7,GPL-2.0-only
68d8045f3b8f929c1cb29a1e3fd737b499,LGPL-2.1-only 83d8045f3b8f929c1cb29a1e3fd737b499,LGPL-2.1-only
69db979804f025cf55aabec7129cb671ed,LGPL-2.0-only 84db979804f025cf55aabec7129cb671ed,LGPL-2.0-only
70e020ca655b06c112def28e597ab844f1,GFDL-1.3-only 85e020ca655b06c112def28e597ab844f1,GFDL-1.3-only
71e659f77bfd9002659e112d0d3d59b2c1,BSD-2-Clause 86e659f77bfd9002659e112d0d3d59b2c1,BSD-2-Clause
87eb1e647870add0502f8f010b19de32af,AGPL-3.0-or-later
72eb723b61539feef013de476e68b5c50a,GPL-2.0-only 88eb723b61539feef013de476e68b5c50a,GPL-2.0-only
73ebb5c50ab7cab4baeffba14977030c07,GPL-2.0-only 89ebb5c50ab7cab4baeffba14977030c07,GPL-2.0-only
74efe2cb9a35826992b9df68224e3c2628,EPL-1.0 90efe2cb9a35826992b9df68224e3c2628,EPL-1.0
diff --git a/meta/lib/oe/go.py b/meta/lib/oe/go.py
index dfd957d157..4559dc63b2 100644
--- a/meta/lib/oe/go.py
+++ b/meta/lib/oe/go.py
@@ -7,6 +7,10 @@
7import re 7import re
8 8
9def map_arch(a): 9def map_arch(a):
10 """
11 Map our architecture names to Go's GOARCH names.
12 See https://github.com/golang/go/blob/master/src/internal/syslist/syslist.go for the complete list.
13 """
10 if re.match('i.86', a): 14 if re.match('i.86', a):
11 return '386' 15 return '386'
12 elif a == 'x86_64': 16 elif a == 'x86_64':
@@ -31,4 +35,4 @@ def map_arch(a):
31 return 'riscv64' 35 return 'riscv64'
32 elif a == 'loongarch64': 36 elif a == 'loongarch64':
33 return 'loong64' 37 return 'loong64'
34 return '' 38 raise KeyError(f"Cannot map architecture {a}")
diff --git a/meta/lib/oeqa/core/case.py b/meta/lib/oeqa/core/case.py
index bc4446a938..ad5524a714 100644
--- a/meta/lib/oeqa/core/case.py
+++ b/meta/lib/oeqa/core/case.py
@@ -5,6 +5,7 @@
5# 5#
6 6
7import base64 7import base64
8import os
8import zlib 9import zlib
9import unittest 10import unittest
10 11
@@ -57,6 +58,13 @@ class OETestCase(unittest.TestCase):
57 d.tearDownDecorator() 58 d.tearDownDecorator()
58 self.tearDownMethod() 59 self.tearDownMethod()
59 60
61 def assertFileExists(self, filename, msg=None):
62 """
63 Test that filename exists. If it does not, the test will fail.
64 """
65 if not os.path.exists(filename):
66 self.fail(msg or "%s does not exist" % filename)
67
60class OEPTestResultTestCase: 68class OEPTestResultTestCase:
61 """ 69 """
62 Mix-in class to provide functions to make interacting with extraresults for 70 Mix-in class to provide functions to make interacting with extraresults for
diff --git a/meta/lib/oeqa/selftest/cases/buildhistory.py b/meta/lib/oeqa/selftest/cases/buildhistory.py
index 2d55994916..511c666554 100644
--- a/meta/lib/oeqa/selftest/cases/buildhistory.py
+++ b/meta/lib/oeqa/selftest/cases/buildhistory.py
@@ -9,10 +9,10 @@ import re
9import datetime 9import datetime
10 10
11from oeqa.selftest.case import OESelftestTestCase 11from oeqa.selftest.case import OESelftestTestCase
12from oeqa.utils.commands import bitbake, get_bb_vars 12from oeqa.utils.commands import bitbake, get_bb_vars, get_bb_var, runCmd
13 13
14 14
15class BuildhistoryBase(OESelftestTestCase): 15class BuildhistoryTests(OESelftestTestCase):
16 16
17 def config_buildhistory(self, tmp_bh_location=False): 17 def config_buildhistory(self, tmp_bh_location=False):
18 bb_vars = get_bb_vars(['USER_CLASSES', 'INHERIT']) 18 bb_vars = get_bb_vars(['USER_CLASSES', 'INHERIT'])
@@ -48,5 +48,58 @@ class BuildhistoryBase(OESelftestTestCase):
48 else: 48 else:
49 self.assertEqual(result.status, 0, msg="Command 'bitbake %s' has failed unexpectedly: %s" % (target, result.output)) 49 self.assertEqual(result.status, 0, msg="Command 'bitbake %s' has failed unexpectedly: %s" % (target, result.output))
50 50
51 # No tests should be added to the base class. 51
52 # Please create a new class that inherit this one, or use one of those already available for adding tests. 52 def test_buildhistory_basic(self):
53 self.run_buildhistory_operation('xcursor-transparent-theme')
54 self.assertTrue(os.path.isdir(get_bb_var('BUILDHISTORY_DIR')), "buildhistory dir was not created.")
55
56 def test_buildhistory_buildtime_pr_backwards(self):
57 target = 'xcursor-transparent-theme'
58 error = "ERROR:.*QA Issue: Package version for package %s went backwards which would break package feeds \(from .*-r1.* to .*-r0.*\)" % target
59 self.run_buildhistory_operation(target, target_config="PR = \"r1\"", change_bh_location=True)
60 self.run_buildhistory_operation(target, target_config="PR = \"r0\"", change_bh_location=False, expect_error=True, error_regex=error)
61
62 def test_fileinfo(self):
63 self.config_buildhistory()
64 bitbake('hicolor-icon-theme')
65 history_dir = get_bb_var('BUILDHISTORY_DIR_PACKAGE', 'hicolor-icon-theme')
66 self.assertTrue(os.path.isdir(history_dir), 'buildhistory dir was not created.')
67
68 def load_bh(f):
69 d = {}
70 for line in open(f):
71 split = [s.strip() for s in line.split('=', 1)]
72 if len(split) > 1:
73 d[split[0]] = split[1]
74 return d
75
76 data = load_bh(os.path.join(history_dir, 'hicolor-icon-theme', 'latest'))
77 self.assertIn('FILELIST', data)
78 self.assertEqual(data['FILELIST'], '/usr/share/icons/hicolor/index.theme')
79 self.assertGreater(int(data['PKGSIZE']), 0)
80
81 data = load_bh(os.path.join(history_dir, 'hicolor-icon-theme-dev', 'latest'))
82 if 'FILELIST' in data:
83 self.assertEqual(data['FILELIST'], '/usr/share/pkgconfig/default-icon-theme.pc')
84 self.assertGreater(int(data['PKGSIZE']), 0)
85
86 def test_buildhistory_diff(self):
87 target = 'xcursor-transparent-theme'
88 self.run_buildhistory_operation(target, target_config="PR = \"r1\"", change_bh_location=True)
89 self.run_buildhistory_operation(target, target_config="PR = \"r0\"", change_bh_location=False, expect_error=True)
90 result = runCmd("oe-pkgdata-util read-value PKGV %s" % target)
91 pkgv = result.output.rstrip()
92 result = runCmd("buildhistory-diff -p %s" % get_bb_var('BUILDHISTORY_DIR'))
93 expected_endlines = [
94 "xcursor-transparent-theme-dev: RRECOMMENDS: removed \"xcursor-transparent-theme (['= %s-r1'])\", added \"xcursor-transparent-theme (['= %s-r0'])\"" % (pkgv, pkgv),
95 "xcursor-transparent-theme-staticdev: RDEPENDS: removed \"xcursor-transparent-theme-dev (['= %s-r1'])\", added \"xcursor-transparent-theme-dev (['= %s-r0'])\"" % (pkgv, pkgv)
96 ]
97 for line in result.output.splitlines():
98 for el in expected_endlines:
99 if line.endswith(el):
100 expected_endlines.remove(el)
101 break
102 else:
103 self.fail('Unexpected line:\n%s\nExpected line endings:\n %s' % (line, '\n '.join(expected_endlines)))
104 if expected_endlines:
105 self.fail('Missing expected line endings:\n %s' % '\n '.join(expected_endlines)) \ No newline at end of file
diff --git a/meta/lib/oeqa/selftest/cases/buildoptions.py b/meta/lib/oeqa/selftest/cases/buildoptions.py
index b509bcf951..767e19bd88 100644
--- a/meta/lib/oeqa/selftest/cases/buildoptions.py
+++ b/meta/lib/oeqa/selftest/cases/buildoptions.py
@@ -10,7 +10,6 @@ import glob as g
10import shutil 10import shutil
11import tempfile 11import tempfile
12from oeqa.selftest.case import OESelftestTestCase 12from oeqa.selftest.case import OESelftestTestCase
13from oeqa.selftest.cases.buildhistory import BuildhistoryBase
14from oeqa.core.decorator.data import skipIfMachine 13from oeqa.core.decorator.data import skipIfMachine
15from oeqa.utils.commands import bitbake, get_bb_var, get_bb_vars 14from oeqa.utils.commands import bitbake, get_bb_var, get_bb_vars
16import oeqa.utils.ftools as ftools 15import oeqa.utils.ftools as ftools
@@ -139,43 +138,6 @@ class SanityOptionsTest(OESelftestTestCase):
139 138
140 self.assertNotIn(err, ret.output) 139 self.assertNotIn(err, ret.output)
141 140
142
143class BuildhistoryTests(BuildhistoryBase):
144
145 def test_buildhistory_basic(self):
146 self.run_buildhistory_operation('xcursor-transparent-theme')
147 self.assertTrue(os.path.isdir(get_bb_var('BUILDHISTORY_DIR')), "buildhistory dir was not created.")
148
149 def test_buildhistory_buildtime_pr_backwards(self):
150 target = 'xcursor-transparent-theme'
151 error = "ERROR:.*QA Issue: Package version for package %s went backwards which would break package feeds \(from .*-r1.* to .*-r0.*\)" % target
152 self.run_buildhistory_operation(target, target_config="PR = \"r1\"", change_bh_location=True)
153 self.run_buildhistory_operation(target, target_config="PR = \"r0\"", change_bh_location=False, expect_error=True, error_regex=error)
154
155 def test_fileinfo(self):
156 self.config_buildhistory()
157 bitbake('hicolor-icon-theme')
158 history_dir = get_bb_var('BUILDHISTORY_DIR_PACKAGE', 'hicolor-icon-theme')
159 self.assertTrue(os.path.isdir(history_dir), 'buildhistory dir was not created.')
160
161 def load_bh(f):
162 d = {}
163 for line in open(f):
164 split = [s.strip() for s in line.split('=', 1)]
165 if len(split) > 1:
166 d[split[0]] = split[1]
167 return d
168
169 data = load_bh(os.path.join(history_dir, 'hicolor-icon-theme', 'latest'))
170 self.assertIn('FILELIST', data)
171 self.assertEqual(data['FILELIST'], '/usr/share/icons/hicolor/index.theme')
172 self.assertGreater(int(data['PKGSIZE']), 0)
173
174 data = load_bh(os.path.join(history_dir, 'hicolor-icon-theme-dev', 'latest'))
175 if 'FILELIST' in data:
176 self.assertEqual(data['FILELIST'], '/usr/share/pkgconfig/default-icon-theme.pc')
177 self.assertGreater(int(data['PKGSIZE']), 0)
178
179class ArchiverTest(OESelftestTestCase): 141class ArchiverTest(OESelftestTestCase):
180 def test_arch_work_dir_and_export_source(self): 142 def test_arch_work_dir_and_export_source(self):
181 """ 143 """
diff --git a/meta/lib/oeqa/selftest/cases/oescripts.py b/meta/lib/oeqa/selftest/cases/oescripts.py
index bfbc33b08d..3f9899b289 100644
--- a/meta/lib/oeqa/selftest/cases/oescripts.py
+++ b/meta/lib/oeqa/selftest/cases/oescripts.py
@@ -9,33 +9,9 @@ import shutil
9import importlib 9import importlib
10import unittest 10import unittest
11from oeqa.selftest.case import OESelftestTestCase 11from oeqa.selftest.case import OESelftestTestCase
12from oeqa.selftest.cases.buildhistory import BuildhistoryBase
13from oeqa.utils.commands import runCmd, bitbake, get_bb_var 12from oeqa.utils.commands import runCmd, bitbake, get_bb_var
14from oeqa.utils import CommandError 13from oeqa.utils import CommandError
15 14
16class BuildhistoryDiffTests(BuildhistoryBase):
17
18 def test_buildhistory_diff(self):
19 target = 'xcursor-transparent-theme'
20 self.run_buildhistory_operation(target, target_config="PR = \"r1\"", change_bh_location=True)
21 self.run_buildhistory_operation(target, target_config="PR = \"r0\"", change_bh_location=False, expect_error=True)
22 result = runCmd("oe-pkgdata-util read-value PKGV %s" % target)
23 pkgv = result.output.rstrip()
24 result = runCmd("buildhistory-diff -p %s" % get_bb_var('BUILDHISTORY_DIR'))
25 expected_endlines = [
26 "xcursor-transparent-theme-dev: RRECOMMENDS: removed \"xcursor-transparent-theme (['= %s-r1'])\", added \"xcursor-transparent-theme (['= %s-r0'])\"" % (pkgv, pkgv),
27 "xcursor-transparent-theme-staticdev: RDEPENDS: removed \"xcursor-transparent-theme-dev (['= %s-r1'])\", added \"xcursor-transparent-theme-dev (['= %s-r0'])\"" % (pkgv, pkgv)
28 ]
29 for line in result.output.splitlines():
30 for el in expected_endlines:
31 if line.endswith(el):
32 expected_endlines.remove(el)
33 break
34 else:
35 self.fail('Unexpected line:\n%s\nExpected line endings:\n %s' % (line, '\n '.join(expected_endlines)))
36 if expected_endlines:
37 self.fail('Missing expected line endings:\n %s' % '\n '.join(expected_endlines))
38
39@unittest.skipUnless(importlib.util.find_spec("cairo"), "Python cairo module is not present") 15@unittest.skipUnless(importlib.util.find_spec("cairo"), "Python cairo module is not present")
40class OEPybootchartguyTests(OESelftestTestCase): 16class OEPybootchartguyTests(OESelftestTestCase):
41 17
diff --git a/meta/recipes-bsp/barebox/barebox-common.inc b/meta/recipes-bsp/barebox/barebox-common.inc
index d6ea1eedfe..67bc964188 100644
--- a/meta/recipes-bsp/barebox/barebox-common.inc
+++ b/meta/recipes-bsp/barebox/barebox-common.inc
@@ -3,6 +3,6 @@ SECTION = "bootloaders"
3 3
4LIC_FILES_CHKSUM = "file://COPYING;md5=f5125d13e000b9ca1f0d3364286c4192" 4LIC_FILES_CHKSUM = "file://COPYING;md5=f5125d13e000b9ca1f0d3364286c4192"
5 5
6PV = "2025.04.0" 6PV = "2025.06.0"
7SRC_URI = "https://barebox.org/download/barebox-${PV}.tar.bz2" 7SRC_URI = "https://barebox.org/download/barebox-${PV}.tar.bz2"
8SRC_URI[sha256sum] = "3124f3c2b69d9ce0512b2d40fa17cace9c356f65f005a63da0474387b8839c41" 8SRC_URI[sha256sum] = "d05bc1f85dc1d95b0b6b6a52cac0a469148fbb8f1edb0d352c3ca3b632426941"
diff --git a/meta/recipes-bsp/u-boot/u-boot.inc b/meta/recipes-bsp/u-boot/u-boot.inc
index 8720bbcda1..b7242de5de 100644
--- a/meta/recipes-bsp/u-boot/u-boot.inc
+++ b/meta/recipes-bsp/u-boot/u-boot.inc
@@ -192,16 +192,16 @@ uboot_install_config () {
192 config=$1 192 config=$1
193 type=$2 193 type=$2
194 194
195 install -D -m 644 ${B}/${config}/${UBOOT_BINARYNAME}-${type}.${UBOOT_SUFFIX} ${D}/boot/${UBOOT_BINARYNAME}-${type}-${PV}-${PR}.${UBOOT_SUFFIX} 195 install -D -m 644 ${B}/${config}/${UBOOT_BINARYNAME}-${type}.${UBOOT_SUFFIX} ${D}/boot/${UBOOT_BINARYNAME}-${type}-${UBOOT_VERSION}.${UBOOT_SUFFIX}
196 ln -sf ${UBOOT_BINARYNAME}-${type}-${PV}-${PR}.${UBOOT_SUFFIX} ${D}/boot/${UBOOT_BINARY}-${type} 196 ln -sf ${UBOOT_BINARYNAME}-${type}-${UBOOT_VERSION}.${UBOOT_SUFFIX} ${D}/boot/${UBOOT_BINARY}-${type}
197 ln -sf ${UBOOT_BINARYNAME}-${type}-${PV}-${PR}.${UBOOT_SUFFIX} ${D}/boot/${UBOOT_BINARY} 197 ln -sf ${UBOOT_BINARYNAME}-${type}-${UBOOT_VERSION}.${UBOOT_SUFFIX} ${D}/boot/${UBOOT_BINARY}
198 198
199 # Install the uboot-initial-env 199 # Install the uboot-initial-env
200 if [ -n "${UBOOT_INITIAL_ENV}" ]; then 200 if [ -n "${UBOOT_INITIAL_ENV}" ]; then
201 install -D -m 644 ${B}/${config}/u-boot-initial-env-${type} ${D}/${sysconfdir}/${UBOOT_INITIAL_ENV}-${MACHINE}-${type}-${PV}-${PR} 201 install -D -m 644 ${B}/${config}/u-boot-initial-env-${type} ${D}/${sysconfdir}/${UBOOT_INITIAL_ENV}-${MACHINE}-${type}-${UBOOT_VERSION}
202 ln -sf ${UBOOT_INITIAL_ENV}-${MACHINE}-${type}-${PV}-${PR} ${D}/${sysconfdir}/${UBOOT_INITIAL_ENV}-${MACHINE}-${type} 202 ln -sf ${UBOOT_INITIAL_ENV}-${MACHINE}-${type}-${UBOOT_VERSION} ${D}/${sysconfdir}/${UBOOT_INITIAL_ENV}-${MACHINE}-${type}
203 ln -sf ${UBOOT_INITIAL_ENV}-${MACHINE}-${type}-${PV}-${PR} ${D}/${sysconfdir}/${UBOOT_INITIAL_ENV}-${type} 203 ln -sf ${UBOOT_INITIAL_ENV}-${MACHINE}-${type}-${UBOOT_VERSION} ${D}/${sysconfdir}/${UBOOT_INITIAL_ENV}-${type}
204 ln -sf ${UBOOT_INITIAL_ENV}-${MACHINE}-${type}-${PV}-${PR} ${D}/${sysconfdir}/${UBOOT_INITIAL_ENV} 204 ln -sf ${UBOOT_INITIAL_ENV}-${MACHINE}-${type}-${UBOOT_VERSION} ${D}/${sysconfdir}/${UBOOT_INITIAL_ENV}
205 fi 205 fi
206} 206}
207 207
@@ -211,9 +211,9 @@ uboot_install () {
211 211
212 # Install the uboot-initial-env 212 # Install the uboot-initial-env
213 if [ -n "${UBOOT_INITIAL_ENV}" ]; then 213 if [ -n "${UBOOT_INITIAL_ENV}" ]; then
214 install -D -m 644 ${B}/u-boot-initial-env ${D}/${sysconfdir}/${UBOOT_INITIAL_ENV}-${MACHINE}-${PV}-${PR} 214 install -D -m 644 ${B}/u-boot-initial-env ${D}/${sysconfdir}/${UBOOT_INITIAL_ENV}-${MACHINE}-${UBOOT_VERSION}
215 ln -sf ${UBOOT_INITIAL_ENV}-${MACHINE}-${PV}-${PR} ${D}/${sysconfdir}/${UBOOT_INITIAL_ENV}-${MACHINE} 215 ln -sf ${UBOOT_INITIAL_ENV}-${MACHINE}-${UBOOT_VERSION} ${D}/${sysconfdir}/${UBOOT_INITIAL_ENV}-${MACHINE}
216 ln -sf ${UBOOT_INITIAL_ENV}-${MACHINE}-${PV}-${PR} ${D}/${sysconfdir}/${UBOOT_INITIAL_ENV} 216 ln -sf ${UBOOT_INITIAL_ENV}-${MACHINE}-${UBOOT_VERSION} ${D}/${sysconfdir}/${UBOOT_INITIAL_ENV}
217 fi 217 fi
218} 218}
219 219
@@ -221,9 +221,9 @@ uboot_install_elf_config () {
221 config=$1 221 config=$1
222 type=$2 222 type=$2
223 223
224 install -m 644 ${B}/${config}/${UBOOT_ELF} ${D}/boot/u-boot-${type}-${PV}-${PR}.${UBOOT_ELF_SUFFIX} 224 install -m 644 ${B}/${config}/${UBOOT_ELF} ${D}/boot/u-boot-${type}-${UBOOT_VERSION}.${UBOOT_ELF_SUFFIX}
225 ln -sf u-boot-${type}-${PV}-${PR}.${UBOOT_ELF_SUFFIX} ${D}/boot/${UBOOT_BINARY}-${type} 225 ln -sf u-boot-${type}-${UBOOT_VERSION}.${UBOOT_ELF_SUFFIX} ${D}/boot/${UBOOT_BINARY}-${type}
226 ln -sf u-boot-${type}-${PV}-${PR}.${UBOOT_ELF_SUFFIX} ${D}/boot/${UBOOT_BINARY} 226 ln -sf u-boot-${type}-${UBOOT_VERSION}.${UBOOT_ELF_SUFFIX} ${D}/boot/${UBOOT_BINARY}
227} 227}
228 228
229uboot_install_elf () { 229uboot_install_elf () {
@@ -235,9 +235,9 @@ uboot_install_spl_config () {
235 config=$1 235 config=$1
236 type=$2 236 type=$2
237 237
238 install -m 644 ${B}/${config}/${SPL_BINARY} ${D}/boot/${SPL_BINARYNAME}-${type}-${PV}-${PR}${SPL_DELIMITER}${SPL_SUFFIX} 238 install -m 644 ${B}/${config}/${SPL_BINARY} ${D}/boot/${SPL_BINARYNAME}-${type}-${UBOOT_VERSION}${SPL_DELIMITER}${SPL_SUFFIX}
239 ln -sf ${SPL_BINARYNAME}-${type}-${PV}-${PR}${SPL_DELIMITER}${SPL_SUFFIX} ${D}/boot/${SPL_BINARYFILE}-${type} 239 ln -sf ${SPL_BINARYNAME}-${type}-${UBOOT_VERSION}${SPL_DELIMITER}${SPL_SUFFIX} ${D}/boot/${SPL_BINARYFILE}-${type}
240 ln -sf ${SPL_BINARYNAME}-${type}-${PV}-${PR}${SPL_DELIMITER}${SPL_SUFFIX} ${D}/boot/${SPL_BINARYFILE} 240 ln -sf ${SPL_BINARYNAME}-${type}-${UBOOT_VERSION}${SPL_DELIMITER}${SPL_SUFFIX} ${D}/boot/${SPL_BINARYFILE}
241} 241}
242 242
243uboot_install_spl () { 243uboot_install_spl () {
@@ -282,10 +282,10 @@ do_deploy () {
282 fi 282 fi
283 283
284 if [ -e ${UNPACKDIR}/fw_env.config ] ; then 284 if [ -e ${UNPACKDIR}/fw_env.config ] ; then
285 install -D -m 644 ${UNPACKDIR}/fw_env.config ${DEPLOYDIR}/fw_env.config-${MACHINE}-${PV}-${PR} 285 install -D -m 644 ${UNPACKDIR}/fw_env.config ${DEPLOYDIR}/fw_env.config-${MACHINE}-${UBOOT_VERSION}
286 cd ${DEPLOYDIR} 286 cd ${DEPLOYDIR}
287 ln -sf fw_env.config-${MACHINE}-${PV}-${PR} fw_env.config-${MACHINE} 287 ln -sf fw_env.config-${MACHINE}-${UBOOT_VERSION} fw_env.config-${MACHINE}
288 ln -sf fw_env.config-${MACHINE}-${PV}-${PR} fw_env.config 288 ln -sf fw_env.config-${MACHINE}-${UBOOT_VERSION} fw_env.config
289 fi 289 fi
290 290
291 if [ -n "${UBOOT_ELF}" ] 291 if [ -n "${UBOOT_ELF}" ]
@@ -354,19 +354,19 @@ uboot_deploy_config () {
354 config=$1 354 config=$1
355 type=$2 355 type=$2
356 356
357 install -D -m 644 ${B}/${config}/${UBOOT_BINARYNAME}-${type}.${UBOOT_SUFFIX} ${DEPLOYDIR}/${UBOOT_BINARYNAME}-${type}-${PV}-${PR}.${UBOOT_SUFFIX} 357 install -D -m 644 ${B}/${config}/${UBOOT_BINARYNAME}-${type}.${UBOOT_SUFFIX} ${DEPLOYDIR}/${UBOOT_BINARYNAME}-${type}-${UBOOT_VERSION}.${UBOOT_SUFFIX}
358 cd ${DEPLOYDIR} 358 cd ${DEPLOYDIR}
359 ln -sf ${UBOOT_BINARYNAME}-${type}-${PV}-${PR}.${UBOOT_SUFFIX} ${UBOOT_SYMLINK}-${type} 359 ln -sf ${UBOOT_BINARYNAME}-${type}-${UBOOT_VERSION}.${UBOOT_SUFFIX} ${UBOOT_SYMLINK}-${type}
360 ln -sf ${UBOOT_BINARYNAME}-${type}-${PV}-${PR}.${UBOOT_SUFFIX} ${UBOOT_SYMLINK} 360 ln -sf ${UBOOT_BINARYNAME}-${type}-${UBOOT_VERSION}.${UBOOT_SUFFIX} ${UBOOT_SYMLINK}
361 ln -sf ${UBOOT_BINARYNAME}-${type}-${PV}-${PR}.${UBOOT_SUFFIX} ${UBOOT_BINARY}-${type} 361 ln -sf ${UBOOT_BINARYNAME}-${type}-${UBOOT_VERSION}.${UBOOT_SUFFIX} ${UBOOT_BINARY}-${type}
362 ln -sf ${UBOOT_BINARYNAME}-${type}-${PV}-${PR}.${UBOOT_SUFFIX} ${UBOOT_BINARY} 362 ln -sf ${UBOOT_BINARYNAME}-${type}-${UBOOT_VERSION}.${UBOOT_SUFFIX} ${UBOOT_BINARY}
363 363
364 # Deploy the uboot-initial-env 364 # Deploy the uboot-initial-env
365 if [ -n "${UBOOT_INITIAL_ENV}" ]; then 365 if [ -n "${UBOOT_INITIAL_ENV}" ]; then
366 install -D -m 644 ${B}/${config}/u-boot-initial-env-${type} ${DEPLOYDIR}/${UBOOT_INITIAL_ENV}-${MACHINE}-${type}-${PV}-${PR} 366 install -D -m 644 ${B}/${config}/u-boot-initial-env-${type} ${DEPLOYDIR}/${UBOOT_INITIAL_ENV}-${MACHINE}-${type}-${UBOOT_VERSION}
367 cd ${DEPLOYDIR} 367 cd ${DEPLOYDIR}
368 ln -sf ${UBOOT_INITIAL_ENV}-${MACHINE}-${type}-${PV}-${PR} ${UBOOT_INITIAL_ENV}-${MACHINE}-${type} 368 ln -sf ${UBOOT_INITIAL_ENV}-${MACHINE}-${type}-${UBOOT_VERSION} ${UBOOT_INITIAL_ENV}-${MACHINE}-${type}
369 ln -sf ${UBOOT_INITIAL_ENV}-${MACHINE}-${type}-${PV}-${PR} ${UBOOT_INITIAL_ENV}-${type} 369 ln -sf ${UBOOT_INITIAL_ENV}-${MACHINE}-${type}-${UBOOT_VERSION} ${UBOOT_INITIAL_ENV}-${type}
370 fi 370 fi
371} 371}
372 372
@@ -380,10 +380,10 @@ uboot_deploy () {
380 380
381 # Deploy the uboot-initial-env 381 # Deploy the uboot-initial-env
382 if [ -n "${UBOOT_INITIAL_ENV}" ]; then 382 if [ -n "${UBOOT_INITIAL_ENV}" ]; then
383 install -D -m 644 ${B}/u-boot-initial-env ${DEPLOYDIR}/${UBOOT_INITIAL_ENV}-${MACHINE}-${PV}-${PR} 383 install -D -m 644 ${B}/u-boot-initial-env ${DEPLOYDIR}/${UBOOT_INITIAL_ENV}-${MACHINE}-${UBOOT_VERSION}
384 cd ${DEPLOYDIR} 384 cd ${DEPLOYDIR}
385 ln -sf ${UBOOT_INITIAL_ENV}-${MACHINE}-${PV}-${PR} ${UBOOT_INITIAL_ENV}-${MACHINE} 385 ln -sf ${UBOOT_INITIAL_ENV}-${MACHINE}-${UBOOT_VERSION} ${UBOOT_INITIAL_ENV}-${MACHINE}
386 ln -sf ${UBOOT_INITIAL_ENV}-${MACHINE}-${PV}-${PR} ${UBOOT_INITIAL_ENV} 386 ln -sf ${UBOOT_INITIAL_ENV}-${MACHINE}-${UBOOT_VERSION} ${UBOOT_INITIAL_ENV}
387 fi 387 fi
388} 388}
389 389
@@ -391,11 +391,11 @@ uboot_deploy_elf_config () {
391 config=$1 391 config=$1
392 type=$2 392 type=$2
393 393
394 install -m 644 ${B}/${config}/${UBOOT_ELF} ${DEPLOYDIR}/u-boot-${type}-${PV}-${PR}.${UBOOT_ELF_SUFFIX} 394 install -m 644 ${B}/${config}/${UBOOT_ELF} ${DEPLOYDIR}/u-boot-${type}-${UBOOT_VERSION}.${UBOOT_ELF_SUFFIX}
395 ln -sf u-boot-${type}-${PV}-${PR}.${UBOOT_ELF_SUFFIX} ${DEPLOYDIR}/${UBOOT_ELF_BINARY}-${type} 395 ln -sf u-boot-${type}-${UBOOT_VERSION}.${UBOOT_ELF_SUFFIX} ${DEPLOYDIR}/${UBOOT_ELF_BINARY}-${type}
396 ln -sf u-boot-${type}-${PV}-${PR}.${UBOOT_ELF_SUFFIX} ${DEPLOYDIR}/${UBOOT_ELF_BINARY} 396 ln -sf u-boot-${type}-${UBOOT_VERSION}.${UBOOT_ELF_SUFFIX} ${DEPLOYDIR}/${UBOOT_ELF_BINARY}
397 ln -sf u-boot-${type}-${PV}-${PR}.${UBOOT_ELF_SUFFIX} ${DEPLOYDIR}/${UBOOT_ELF_SYMLINK}-${type} 397 ln -sf u-boot-${type}-${UBOOT_VERSION}.${UBOOT_ELF_SUFFIX} ${DEPLOYDIR}/${UBOOT_ELF_SYMLINK}-${type}
398 ln -sf u-boot-${type}-${PV}-${PR}.${UBOOT_ELF_SUFFIX} ${DEPLOYDIR}/${UBOOT_ELF_SYMLINK} 398 ln -sf u-boot-${type}-${UBOOT_VERSION}.${UBOOT_ELF_SUFFIX} ${DEPLOYDIR}/${UBOOT_ELF_SYMLINK}
399} 399}
400 400
401uboot_deploy_elf () { 401uboot_deploy_elf () {
@@ -408,12 +408,12 @@ uboot_deploy_spl_config () {
408 config=$1 408 config=$1
409 type=$2 409 type=$2
410 410
411 install -m 644 ${B}/${config}/${SPL_BINARY} ${DEPLOYDIR}/${SPL_BINARYNAME}-${type}-${PV}-${PR}${SPL_DELIMITER}${SPL_SUFFIX} 411 install -m 644 ${B}/${config}/${SPL_BINARY} ${DEPLOYDIR}/${SPL_BINARYNAME}-${type}-${UBOOT_VERSION}${SPL_DELIMITER}${SPL_SUFFIX}
412 rm -f ${DEPLOYDIR}/${SPL_BINARYFILE} ${DEPLOYDIR}/${SPL_SYMLINK} 412 rm -f ${DEPLOYDIR}/${SPL_BINARYFILE} ${DEPLOYDIR}/${SPL_SYMLINK}
413 ln -sf ${SPL_BINARYNAME}-${type}-${PV}-${PR}${SPL_DELIMITER}${SPL_SUFFIX} ${DEPLOYDIR}/${SPL_BINARYFILE}-${type} 413 ln -sf ${SPL_BINARYNAME}-${type}-${UBOOT_VERSION}${SPL_DELIMITER}${SPL_SUFFIX} ${DEPLOYDIR}/${SPL_BINARYFILE}-${type}
414 ln -sf ${SPL_BINARYNAME}-${type}-${PV}-${PR}${SPL_DELIMITER}${SPL_SUFFIX} ${DEPLOYDIR}/${SPL_BINARYFILE} 414 ln -sf ${SPL_BINARYNAME}-${type}-${UBOOT_VERSION}${SPL_DELIMITER}${SPL_SUFFIX} ${DEPLOYDIR}/${SPL_BINARYFILE}
415 ln -sf ${SPL_BINARYNAME}-${type}-${PV}-${PR}${SPL_DELIMITER}${SPL_SUFFIX} ${DEPLOYDIR}/${SPL_SYMLINK}-${type} 415 ln -sf ${SPL_BINARYNAME}-${type}-${UBOOT_VERSION}${SPL_DELIMITER}${SPL_SUFFIX} ${DEPLOYDIR}/${SPL_SYMLINK}-${type}
416 ln -sf ${SPL_BINARYNAME}-${type}-${PV}-${PR}${SPL_DELIMITER}${SPL_SUFFIX} ${DEPLOYDIR}/${SPL_SYMLINK} 416 ln -sf ${SPL_BINARYNAME}-${type}-${UBOOT_VERSION}${SPL_DELIMITER}${SPL_SUFFIX} ${DEPLOYDIR}/${SPL_SYMLINK}
417} 417}
418 418
419uboot_deploy_spl () { 419uboot_deploy_spl () {
diff --git a/meta/recipes-core/glibc/glibc-version.inc b/meta/recipes-core/glibc/glibc-version.inc
index d84106fb95..2d31131e03 100644
--- a/meta/recipes-core/glibc/glibc-version.inc
+++ b/meta/recipes-core/glibc/glibc-version.inc
@@ -1,6 +1,6 @@
1SRCBRANCH ?= "release/2.41/master" 1SRCBRANCH ?= "release/2.41/master"
2PV = "2.41+git" 2PV = "2.41+git"
3SRCREV_glibc ?= "5b4c4617016d28569106549dff6f9fec73eed5ce" 3SRCREV_glibc ?= "0c76c951620f9e12df2a89b2c684878b55bb6795"
4SRCREV_localedef ?= "fab74f31b3811df543e24b6de47efdf45b538abc" 4SRCREV_localedef ?= "fab74f31b3811df543e24b6de47efdf45b538abc"
5 5
6GLIBC_GIT_URI ?= "git://sourceware.org/git/glibc.git;protocol=https" 6GLIBC_GIT_URI ?= "git://sourceware.org/git/glibc.git;protocol=https"
diff --git a/meta/recipes-core/glibc/glibc/0001-Propagate-ffile-prefix-map-from-CFLAGS-to-ASFLAGS.patch b/meta/recipes-core/glibc/glibc/0001-Propagate-ffile-prefix-map-from-CFLAGS-to-ASFLAGS.patch
index 862c7b9086..b42b186418 100644
--- a/meta/recipes-core/glibc/glibc/0001-Propagate-ffile-prefix-map-from-CFLAGS-to-ASFLAGS.patch
+++ b/meta/recipes-core/glibc/glibc/0001-Propagate-ffile-prefix-map-from-CFLAGS-to-ASFLAGS.patch
@@ -13,7 +13,7 @@ diff --git a/Makeconfig b/Makeconfig
13index e35c5cfe4e..7a19c731c6 100644 13index e35c5cfe4e..7a19c731c6 100644
14--- a/Makeconfig 14--- a/Makeconfig
15+++ b/Makeconfig 15+++ b/Makeconfig
16@@ -1176,7 +1176,7 @@ endif 16@@ -1172,7 +1172,7 @@ endif
17 17
18 # The assembler can generate debug information too. 18 # The assembler can generate debug information too.
19 ifndef ASFLAGS 19 ifndef ASFLAGS
diff --git a/meta/recipes-core/glibc/glibc/0023-tests-Skip-2-qemu-tests-that-can-hang-in-oe-selftest.patch b/meta/recipes-core/glibc/glibc/0023-tests-Skip-2-qemu-tests-that-can-hang-in-oe-selftest.patch
index 71777d3f2c..50d80ed577 100644
--- a/meta/recipes-core/glibc/glibc/0023-tests-Skip-2-qemu-tests-that-can-hang-in-oe-selftest.patch
+++ b/meta/recipes-core/glibc/glibc/0023-tests-Skip-2-qemu-tests-that-can-hang-in-oe-selftest.patch
@@ -40,7 +40,7 @@ index 8a755293b3..22dafcaad1 100644
40 # tests 40 # tests
41 41
42 # process_madvise requires CAP_SYS_ADMIN. 42 # process_madvise requires CAP_SYS_ADMIN.
43@@ -277,9 +278,10 @@ tests-time64 += \ 43@@ -282,9 +283,10 @@ tests-time64 += \
44 tst-ntp_gettimex-time64 \ 44 tst-ntp_gettimex-time64 \
45 tst-ppoll-time64 \ 45 tst-ppoll-time64 \
46 tst-prctl-time64 \ 46 tst-prctl-time64 \
diff --git a/meta/recipes-core/glibc/glibc_2.41.bb b/meta/recipes-core/glibc/glibc_2.41.bb
index eb6a674039..7771fac041 100644
--- a/meta/recipes-core/glibc/glibc_2.41.bb
+++ b/meta/recipes-core/glibc/glibc_2.41.bb
@@ -17,7 +17,7 @@ Allows for ASLR bypass so can bypass some hardening, not an exploit in itself, m
17easier access for another. 'ASLR bypass itself is not a vulnerability.'" 17easier access for another. 'ASLR bypass itself is not a vulnerability.'"
18 18
19CVE_STATUS_GROUPS += "CVE_STATUS_STABLE_BACKPORTS" 19CVE_STATUS_GROUPS += "CVE_STATUS_STABLE_BACKPORTS"
20CVE_STATUS_STABLE_BACKPORTS = "" 20CVE_STATUS_STABLE_BACKPORTS = "CVE-2025-4802 CVE-2025-5702 CVE-2025-5745"
21CVE_STATUS_STABLE_BACKPORTS[status] = "cpe-stable-backport: fix available in used git hash" 21CVE_STATUS_STABLE_BACKPORTS[status] = "cpe-stable-backport: fix available in used git hash"
22 22
23DEPENDS += "gperf-native bison-native" 23DEPENDS += "gperf-native bison-native"
diff --git a/meta/recipes-devtools/rpm/files/0001-CMakeLists.txt-Fix-checking-for-CFLAGS.patch b/meta/recipes-devtools/rpm/files/0001-CMakeLists.txt-Fix-checking-for-CFLAGS.patch
index ed270a5704..412e1c146d 100644
--- a/meta/recipes-devtools/rpm/files/0001-CMakeLists.txt-Fix-checking-for-CFLAGS.patch
+++ b/meta/recipes-devtools/rpm/files/0001-CMakeLists.txt-Fix-checking-for-CFLAGS.patch
@@ -1,18 +1,9 @@
1From 19f7ef341f19ac5594c7d0113f9eb8224934464a Mon Sep 17 00:00:00 2001 1From e14502834fe6a9c6c9a439401ac3d2c8fd979267 Mon Sep 17 00:00:00 2001
2From: Robert Yang <liezhi.yang@windriver.com> 2From: Robert Yang <liezhi.yang@windriver.com>
3Date: Sun, 8 Jun 2025 00:19:06 -0700 3Date: Sun, 8 Jun 2025 00:36:38 -0700
4Subject: [PATCH] CMakeLists.txt: Fix checking for CFLAGS 4Subject: [PATCH] CMakeLists.txt: Improve checking for CFLAGS
5 5
6The previous code doesn't work because the check_c_compiler_flag() only ran 6The previous log wasn't clear:
7once because 'found' is in CACHE, here is log:
8-- Performing Test found
9-- Performing Test found - Success
10
11That would result in:
12* All the flags are added when the first one works
13* None of the flags is added when the first one doesn't work
14
15We can use "unset(found CACHE)" to fix that, but the log is still not clear:
16-- Performing Test found 7-- Performing Test found
17-- Performing Test found - Success 8-- Performing Test found - Success
18-- Performing Test found 9-- Performing Test found
@@ -20,15 +11,15 @@ We can use "unset(found CACHE)" to fix that, but the log is still not clear:
20-- Performing Test found 11-- Performing Test found
21-- Performing Test found - Failed 12-- Performing Test found - Failed
22 13
23Use a new var SUPPORTS_${flag} will make it more clear: 14Use a new var compiler-supports${flag} will make it more clear:
24-- Performing Test SUPPORTS_-fno-strict-overflow 15-- Performing Test compiler-supports-fno-strict-overflow
25-- Performing Test SUPPORTS_-fno-strict-overflow - Success 16-- Performing Test compiler-supports-fno-strict-overflow - Success
26-- Performing Test SUPPORTS_-fno-delete-null-pointer-checks 17-- Performing Test compiler-supports-fno-delete-null-pointer-checks
27-- Performing Test SUPPORTS_-fno-delete-null-pointer-checks - Success 18-- Performing Test compiler-supports-fno-delete-null-pointer-checks - Success
28-- Performing Test SUPPORTS_-fhardened 19-- Performing Test compiler-supports-fhardened
29-- Performing Test SUPPORTS_-fhardened - Failed 20-- Performing Test compiler-supports-fhardened - Failed
30 21
31Upstream-Status: Submitted [https://github.com/rpm-software-management/rpm/pull/3796] 22Upstream-Status: Backport [https://github.com/rpm-software-management/rpm/commit/e14502834fe6a9c6c9a439401ac3d2c8fd979267]
32 23
33Signed-off-by: Robert Yang <liezhi.yang@windriver.com> 24Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
34--- 25---
@@ -36,7 +27,7 @@ Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
36 1 file changed, 2 insertions(+), 3 deletions(-) 27 1 file changed, 2 insertions(+), 3 deletions(-)
37 28
38diff --git a/CMakeLists.txt b/CMakeLists.txt 29diff --git a/CMakeLists.txt b/CMakeLists.txt
39index 08e3e5274..a7566ab5a 100644 30index 08e3e5274..f275c396b 100644
40--- a/CMakeLists.txt 31--- a/CMakeLists.txt
41+++ b/CMakeLists.txt 32+++ b/CMakeLists.txt
42@@ -416,11 +416,10 @@ endif() 33@@ -416,11 +416,10 @@ endif()
@@ -45,14 +36,11 @@ index 08e3e5274..a7566ab5a 100644
45 foreach (flag -fno-strict-overflow -fno-delete-null-pointer-checks -fhardened) 36 foreach (flag -fno-strict-overflow -fno-delete-null-pointer-checks -fhardened)
46- check_c_compiler_flag(${flag} found) 37- check_c_compiler_flag(${flag} found)
47- if (found) 38- if (found)
48+ check_c_compiler_flag(${flag} SUPPORTS_${flag}) 39+ check_c_compiler_flag(${flag} compiler-supports${flag})
49+ if (SUPPORTS_${flag}) 40+ if (compiler-supports${flag})
50 add_compile_options(${flag}) 41 add_compile_options(${flag})
51 endif() 42 endif()
52- unset(found) 43- unset(found)
53 endforeach() 44 endforeach()
54 45
55 # generated sources 46 # generated sources
56--
572.49.0
58
diff --git a/meta/recipes-extended/libarchive/libarchive_3.7.9.bb b/meta/recipes-extended/libarchive/libarchive_3.8.1.bb
index d70cdb3d83..472b5820f0 100644
--- a/meta/recipes-extended/libarchive/libarchive_3.7.9.bb
+++ b/meta/recipes-extended/libarchive/libarchive_3.8.1.bb
@@ -3,7 +3,7 @@ DESCRIPTION = "C library and command-line tools for reading and writing tar, cpi
3HOMEPAGE = "http://www.libarchive.org/" 3HOMEPAGE = "http://www.libarchive.org/"
4SECTION = "devel" 4SECTION = "devel"
5LICENSE = "BSD-2-Clause" 5LICENSE = "BSD-2-Clause"
6LIC_FILES_CHKSUM = "file://COPYING;md5=d499814247adaee08d88080841cb5665" 6LIC_FILES_CHKSUM = "file://COPYING;md5=7ce08437ff7f5e24d72e666313ae4084"
7 7
8DEPENDS = "e2fsprogs-native" 8DEPENDS = "e2fsprogs-native"
9 9
@@ -31,7 +31,7 @@ EXTRA_OECONF += "--enable-largefile --without-iconv"
31 31
32SRC_URI = "https://libarchive.org/downloads/libarchive-${PV}.tar.gz" 32SRC_URI = "https://libarchive.org/downloads/libarchive-${PV}.tar.gz"
33 33
34SRC_URI[sha256sum] = "aa90732c5a6bdda52fda2ad468ac98d75be981c15dde263d7b5cf6af66fd009f" 34SRC_URI[sha256sum] = "bde832a5e3344dc723cfe9cc37f8e54bde04565bfe6f136bc1bd31ab352e9fab"
35 35
36inherit autotools update-alternatives pkgconfig 36inherit autotools update-alternatives pkgconfig
37 37