Yocto Project Compatibility requires that including a layer in a build not change recipes in other layers. In this case, we were providing a newer version of a recipe that another layer provides.
The proper way of doing this is to create a bbappend and only change the minimal things needed to perform your changes. Additionally, to pass the yocto-check-layer the bbappend needs to be wrapped in a manner that only applies your changes in the event that you are making use of your layer. For Arago, that means only if we are building Arago. Signed-off-by: Ryan Eatmon <[email protected]> --- .../abseil-cpp/abseil-cpp-arago.inc | 17 ++++++ .../abseil-cpp/abseil-cpp_%.bbappend | 4 ++ .../abseil-cpp/abseil-cpp_20240722.0.bb | 54 ------------------- 3 files changed, 21 insertions(+), 54 deletions(-) create mode 100644 meta-arago-extras/recipes-devtools/abseil-cpp/abseil-cpp-arago.inc create mode 100644 meta-arago-extras/recipes-devtools/abseil-cpp/abseil-cpp_%.bbappend delete mode 100644 meta-arago-extras/recipes-devtools/abseil-cpp/abseil-cpp_20240722.0.bb diff --git a/meta-arago-extras/recipes-devtools/abseil-cpp/abseil-cpp-arago.inc b/meta-arago-extras/recipes-devtools/abseil-cpp/abseil-cpp-arago.inc new file mode 100644 index 00000000..99449654 --- /dev/null +++ b/meta-arago-extras/recipes-devtools/abseil-cpp/abseil-cpp-arago.inc @@ -0,0 +1,17 @@ +FILESEXTRAPATHS:prepend := "${THISDIR}/abseil-cpp:" + +PV = "20240722.0" + +SRCREV = "4447c7562e3bc702ade25105912dce503f0c4010" +BRANCH = "lts_2024_07_22" + +SRC_URI:remove = "\ + file://abseil-ppc-fixes.patch \ + file://0004-PR-1644-unscaledcycleclock-remove-RISC-V-support.patch \ + file://0001-PR-1739-container-internal-Explicitly-include-cstdin.patch \ +" + +SRC_URI += "\ + file://0004-abseil-ppc-fixes.patch \ + file://0005-Don-t-match-Wnon-virtual-dtor-in-the-flags-are-neede.patch \ +" diff --git a/meta-arago-extras/recipes-devtools/abseil-cpp/abseil-cpp_%.bbappend b/meta-arago-extras/recipes-devtools/abseil-cpp/abseil-cpp_%.bbappend new file mode 100644 index 00000000..e1e08204 --- /dev/null +++ b/meta-arago-extras/recipes-devtools/abseil-cpp/abseil-cpp_%.bbappend @@ -0,0 +1,4 @@ +ABSEIL_CPP_ARAGO = "" +ABSEIL_CPP_ARAGO:arago = "abseil-cpp-arago.inc" + +require ${ABSEIL_CPP_ARAGO} diff --git a/meta-arago-extras/recipes-devtools/abseil-cpp/abseil-cpp_20240722.0.bb b/meta-arago-extras/recipes-devtools/abseil-cpp/abseil-cpp_20240722.0.bb deleted file mode 100644 index 4bfc2100..00000000 --- a/meta-arago-extras/recipes-devtools/abseil-cpp/abseil-cpp_20240722.0.bb +++ /dev/null @@ -1,54 +0,0 @@ -SUMMARY = "Abseil is a cpp library like STL" -DESCRIPTION = "Abseil provides pieces missing from the C++ standard. Contains \ -additional useful libraries like algorithm, container, debugging, hash, memory, \ -meta, numeric, strings, synchronization, time, types and utility." -HOMEPAGE = "https://abseil.io/" -SECTION = "libs" -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=df52c6edb7adc22e533b2bacc3bd3915" - -SRCREV = "4447c7562e3bc702ade25105912dce503f0c4010" -BRANCH = "lts_2024_07_22" -SRC_URI = "git://github.com/abseil/abseil-cpp;branch=${BRANCH};protocol=https \ - file://0001-absl-always-use-asm-sgidefs.h.patch \ - file://0002-Remove-maes-option-from-cross-compilation.patch \ - file://0003-Remove-neon-option-from-cross-compilation.patch \ - file://0004-abseil-ppc-fixes.patch \ - file://0005-Don-t-match-Wnon-virtual-dtor-in-the-flags-are-neede.patch \ - " - -S = "${WORKDIR}/git" - -inherit cmake - -EXTRA_OECMAKE = "-DBUILD_SHARED_LIBS=ON \ - -DBUILD_TESTING=OFF \ - -DABSL_ENABLE_INSTALL=ON \ - " - -SYSROOT_DIRS:append:class-nativesdk:mingw32 = " ${bindir}" - -PACKAGES_DYNAMIC += "^libabsl-*" -PACKAGES_DYNAMIC:class-native = "" - -PACKAGESPLITFUNCS =+ "split_dynamic_packages" - -python split_dynamic_packages() { - libdir = d.getVar('libdir') - - libpackages = do_split_packages( - d, - root=libdir, - file_regex=r'^libabsl_(.*)\.so\..*$', - output_pattern='libabsl-%s', - description="abseil shared library %s", - prepend=True, - extra_depends='', - ) - if libpackages: - d.appendVar('RDEPENDS:' + d.getVar('PN'), ' ' + ' '.join(libpackages)) -} - -ALLOW_EMPTY:${PN} = "1" - -BBCLASSEXTEND = "native nativesdk" -- 2.17.1 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#16763): https://lists.yoctoproject.org/g/meta-arago/message/16763 Mute This Topic: https://lists.yoctoproject.org/mt/116283882/21656 Group Owner: [email protected] Unsubscribe: https://lists.yoctoproject.org/g/meta-arago/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
