new file mode 100644
@@ -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 \
+"
new file mode 100644
@@ -0,0 +1,4 @@
+ABSEIL_CPP_ARAGO = ""
+ABSEIL_CPP_ARAGO:arago = "abseil-cpp-arago.inc"
+
+require ${ABSEIL_CPP_ARAGO}
deleted file mode 100644
@@ -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"
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 <reatmon@ti.com> --- .../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