[oe] [meta-oe][PATCH] Introduce recipes for sdbus-c++ library and its tools

Khem Raj raj.khem at gmail.com
Mon Jul 22 21:18:13 UTC 2019


From: sangelovic <angelovic.s at gmail.com>

---
 .../sdbus-c++/sdbus-c++-0.7.2/run-ptest       | 15 ++++++
 .../sdbus-c++/sdbus-c++-tools-native_0.7.2.bb | 14 ++++++
 .../recipes-core/sdbus-c++/sdbus-c++_0.7.2.bb | 49 +++++++++++++++++++
 3 files changed, 78 insertions(+)
 create mode 100644 meta-oe/recipes-core/sdbus-c++/sdbus-c++-0.7.2/run-ptest
 create mode 100644 meta-oe/recipes-core/sdbus-c++/sdbus-c++-tools-native_0.7.2.bb
 create mode 100644 meta-oe/recipes-core/sdbus-c++/sdbus-c++_0.7.2.bb

diff --git a/meta-oe/recipes-core/sdbus-c++/sdbus-c++-0.7.2/run-ptest b/meta-oe/recipes-core/sdbus-c++/sdbus-c++-0.7.2/run-ptest
new file mode 100644
index 0000000000..8fa9453e39
--- /dev/null
+++ b/meta-oe/recipes-core/sdbus-c++/sdbus-c++-0.7.2/run-ptest
@@ -0,0 +1,15 @@
+#!/bin/sh
+set -e
+set -o pipefail
+
+logger "** Starting sdbus-c++-unit-tests"
+/opt/test/bin/sdbus-c++-unit-tests --gtest_output=xml:/data/ptest/sdbus-c++/sdbus-c++-unit-tests.xml |& \
+sed -r 's/^\[\s+OK\s+\] (.*) \([0-9]+\sms\)$/OK: \1 /' | \
+sed -r 's/^\[\s+FAILED\s+\] (.*) \([0-9]+\sms\)$/FAILED: \1 /' | \
+awk '{if ($1 == "OK:" || $1 == "FAILED:") {print $0}}'
+
+logger "** Starting sdbus-c++-integration-tests"
+/opt/test/bin/sdbus-c++-integration-tests --gtest_output=xml:/data/ptest/sdbus-c++/sdbus-c++-integration-tests.xml |& \
+sed -r 's/^\[\s+OK\s+\] (.*) \([0-9]+\sms\)$/OK: \1 /' | \
+sed -r 's/^\[\s+FAILED\s+\] (.*) \([0-9]+\sms\)$/FAILED: \1 /' | \
+awk '{if ($1 == "OK:" || $1 == "FAILED:") {print $0}}' 
diff --git a/meta-oe/recipes-core/sdbus-c++/sdbus-c++-tools-native_0.7.2.bb b/meta-oe/recipes-core/sdbus-c++/sdbus-c++-tools-native_0.7.2.bb
new file mode 100644
index 0000000000..e319404f49
--- /dev/null
+++ b/meta-oe/recipes-core/sdbus-c++/sdbus-c++-tools-native_0.7.2.bb
@@ -0,0 +1,14 @@
+SUMMARY = "sdbus-c++ native tools"
+DESCRIPTION = "Native interface code generator for development with sdbus-c++"
+
+LICENSE = "LGPLv2.1"
+LIC_FILES_CHKSUM = "file://${WORKDIR}/git-tools/COPYING;md5=1803fa9c2c3ce8cb06b4861d75310742"
+
+inherit cmake native
+
+DEPENDS += "expat"
+
+SRCREV = "750dab39270f338181db8d841cd4b1a9a50ae4d7"
+SRC_URI = "git://github.com/Kistler-Group/sdbus-cpp.git;protocol=https;destsuffix=git-tools;branch=master;subpath=tools"
+
+S = "${WORKDIR}/git-tools"
diff --git a/meta-oe/recipes-core/sdbus-c++/sdbus-c++_0.7.2.bb b/meta-oe/recipes-core/sdbus-c++/sdbus-c++_0.7.2.bb
new file mode 100644
index 0000000000..457f5d676a
--- /dev/null
+++ b/meta-oe/recipes-core/sdbus-c++/sdbus-c++_0.7.2.bb
@@ -0,0 +1,49 @@
+SUMMARY = "sdbus-c++"
+DESCRIPTION = "High-level C++ D-Bus library designed to provide easy-to-use yet powerful API in modern C++"
+
+SECTION = "libs"
+
+LICENSE = "LGPLv2.1"
+LIC_FILES_CHKSUM = "file://COPYING;md5=1803fa9c2c3ce8cb06b4861d75310742"
+
+inherit cmake pkgconfig systemd ptest python3native
+
+TEST_BIN_DIR = "/opt/test/bin"
+
+PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'with-external-libsystemd', 'with-builtin-libsystemd', d)} \
+                   ${@bb.utils.contains('PTEST_ENABLED', '1', 'with-tests', '', d)}"
+PACKAGECONFIG[with-builtin-libsystemd] = "-DBUILD_LIBSYSTEMD=ON,-DBUILD_LIBSYSTEMD=OFF,meson-native ninja-native git-native gperf-native gettext-native util-linux libcap,libcap"
+PACKAGECONFIG[with-external-libsystemd] = "-DBUILD_LIBSYSTEMD=OFF,-DBUILD_LIBSYSTEMD=ON,systemd,libsystemd"
+PACKAGECONFIG[with-tests] = "-DBUILD_TESTS=ON -DTESTS_INSTALL_PATH=${TEST_BIN_DIR},-DBUILD_TESTS=OFF"
+
+DEPENDS += "expat"
+
+SRCREV = "750dab39270f338181db8d841cd4b1a9a50ae4d7"
+SRC_URI = "git://github.com/Kistler-Group/sdbus-cpp.git;protocol=https;destsuffix=sdbus-cpp-${PV};branch=master"
+SRC_URI += "file://run-ptest"
+
+# Allow CMake to use git on the host machine
+OECMAKE_FIND_ROOT_PATH_MODE_PROGRAM = "BOTH"
+# Ninja is the default CMake generator in Yocto now, so let's set Unix Makefiles explicitly
+OECMAKE_GENERATOR = "Unix Makefiles"
+
+EXTRA_OECMAKE = "-DBUILD_CODE_GEN=ON \
+                 -DBUILD_DOC=ON \
+                 -DBUILD_DOXYGEN_DOC=OFF"
+
+S = "${WORKDIR}/sdbus-cpp-${PV}"
+
+PACKAGES += "${PN}-test"
+ALLOW_EMPTY_${PN}-test = "1"
+RDEPENDS_${PN}-test = "${PN}"
+RDEPENDS_${PN}-ptest = "${PN}-test"
+
+# Don't take org.sdbuscpp.integrationtests.conf file into the base package
+FILES_${PN} = "${libdir}/"
+
+FILES_${PN}-test += "${sysconfdir}/dbus-1/system.d/"
+FILES_${PN}-test += "${TEST_BIN_DIR}/"
+
+FILES_${PN}-dev += "${bindir}/sdbus-c++-xml2cpp"
+FILES_${PN}-dev += "${libdir}/cmake/sdbus-c++/sdbus-c++-config.cmake"
+FILES_${PN}-dev += "${libdir}/cmake/sdbus-c++/sdbus-c++-config-version.cmake"
-- 
2.22.0



More information about the Openembedded-devel mailing list