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]> --- .../sysrepo/libyang-arago.inc | 9 ++++ .../sysrepo/libyang_%.bbappend | 5 +++ .../recipes-extended/sysrepo/libyang_3.7.8.bb | 45 ------------------- 3 files changed, 14 insertions(+), 45 deletions(-) create mode 100644 meta-arago-extras/recipes-extended/sysrepo/libyang-arago.inc delete mode 100644 meta-arago-extras/recipes-extended/sysrepo/libyang_3.7.8.bb diff --git a/meta-arago-extras/recipes-extended/sysrepo/libyang-arago.inc b/meta-arago-extras/recipes-extended/sysrepo/libyang-arago.inc new file mode 100644 index 00000000..b76701a8 --- /dev/null +++ b/meta-arago-extras/recipes-extended/sysrepo/libyang-arago.inc @@ -0,0 +1,9 @@ +PV = "3.7.8" + +LIC_FILES_CHKSUM = "file://LICENSE;md5=9bb3d334294e8719f41c531e28a9a697" + +SRCREV = "03e294d83b610f89e8ba7b2156a80dc0ad534443" + +do_install:append () { + oe_multilib_header libyang/ly_config.h +} diff --git a/meta-arago-extras/recipes-extended/sysrepo/libyang_%.bbappend b/meta-arago-extras/recipes-extended/sysrepo/libyang_%.bbappend index 608377e3..60d1258e 100644 --- a/meta-arago-extras/recipes-extended/sysrepo/libyang_%.bbappend +++ b/meta-arago-extras/recipes-extended/sysrepo/libyang_%.bbappend @@ -1 +1,6 @@ +LIBYANG_ARAGO = "" +LIBYANG_ARAGO:arago = "libyang-arago.inc" + +require ${LIBYANG_ARAGO} + BBCLASSEXTEND = "native nativesdk" diff --git a/meta-arago-extras/recipes-extended/sysrepo/libyang_3.7.8.bb b/meta-arago-extras/recipes-extended/sysrepo/libyang_3.7.8.bb deleted file mode 100644 index 3bea9bc2..00000000 --- a/meta-arago-extras/recipes-extended/sysrepo/libyang_3.7.8.bb +++ /dev/null @@ -1,45 +0,0 @@ -SUMMARY = "YANG data modeling language library" -DESCRIPTION = "libyang is a YANG data modelling language parser and toolkit written (and providing API) in C." -HOMEPAGE = "https://github.com/CESNET/libyang" -SECTION = "libs" -LICENSE = "BSD-3-Clause" - -LIC_FILES_CHKSUM = "file://LICENSE;md5=9bb3d334294e8719f41c531e28a9a697" - -SRCREV = "03e294d83b610f89e8ba7b2156a80dc0ad534443" - -SRC_URI = "git://github.com/CESNET/libyang.git;branch=master;protocol=https \ - file://0001-test_context-skip-test-case-test_searchdirs.patch \ - file://run-ptest \ - " - -S = "${WORKDIR}/git" - -# Main dependencies -inherit cmake pkgconfig lib_package ptest multilib_header -DEPENDS = "libpcre2" -DEPENDS += "${@bb.utils.contains('PTEST_ENABLED', '1', 'cmocka', '', d)}" - -EXTRA_OECMAKE = "-DCMAKE_BUILD_TYPE=Release" -EXTRA_OECMAKE += " ${@bb.utils.contains('PTEST_ENABLED', '1', '-DENABLE_TESTS=ON -DENABLE_VALGRIND_TESTS=OFF', '', d)}" - -do_compile:prepend () { - if [ ${PTEST_ENABLED} = "1" ]; then - sed -i -e 's|${S}|${PTEST_PATH}|g' ${B}/tests/tests_config.h - sed -i -e 's|${B}|${PTEST_PATH}|g' ${B}/tests/tests_config.h - fi -} - -do_install:append () { - oe_multilib_header libyang/ly_config.h -} - -do_install_ptest () { - install -d ${D}${PTEST_PATH}/tests - cp -f ${B}/tests/utest_* ${D}${PTEST_PATH}/tests/ - cp -fR ${S}/tests/modules ${D}${PTEST_PATH}/tests/ - install -d ${D}${PTEST_PATH}/tests/plugins - cp -f ${B}/tests/plugins/plugin_*.so ${D}${PTEST_PATH}/tests/plugins/ -} - -FILES:${PN} += "${datadir}/yang/*" -- 2.17.1 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#16760): https://lists.yoctoproject.org/g/meta-arago/message/16760 Mute This Topic: https://lists.yoctoproject.org/mt/116283879/21656 Group Owner: [email protected] Unsubscribe: https://lists.yoctoproject.org/g/meta-arago/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
