blob: f52ba141e17eaa9d79b18aa55874e16359a05080 [file] [log] [blame]
Patrick Williamsac13d5f2023-11-24 18:59:46 -06001SUMMARY = "sdbus-c++"
2DESCRIPTION = "High-level C++ D-Bus library designed to provide easy-to-use yet powerful API in modern C++"
3
4SECTION = "libs"
5
6LICENSE = "LGPL-2.1-only"
7LIC_FILES_CHKSUM = "file://COPYING;md5=1803fa9c2c3ce8cb06b4861d75310742"
8
9inherit cmake pkgconfig systemd ptest
10
11PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'with-external-libsystemd', 'with-builtin-libsystemd', d)} \
12 ${@bb.utils.contains('PTEST_ENABLED', '1', 'with-tests', '', d)}"
Patrick Williamsda295312023-12-05 16:48:56 -060013PACKAGECONFIG[with-builtin-libsystemd] = ",,sdbus-c++-libsystemd,libcap,basu"
Patrick Williamsac13d5f2023-11-24 18:59:46 -060014PACKAGECONFIG[with-external-libsystemd] = ",,systemd,libsystemd"
Patrick Williamsda295312023-12-05 16:48:56 -060015PACKAGECONFIG[with-tests] = "-DBUILD_TESTS=ON -DTESTS_INSTALL_PATH=${PTEST_PATH},-DBUILD_TESTS=OFF,googletest gmock"
Patrick Williamsac13d5f2023-11-24 18:59:46 -060016
17DEPENDS += "expat"
18
Patrick Williams03514f12024-04-05 07:04:11 -050019SRCREV = "30d9f1d46258c2be4ce29b7f7f168ecdf6d4f328"
Patrick Williamsac13d5f2023-11-24 18:59:46 -060020
21SRC_URI = "git://github.com/Kistler-Group/sdbus-cpp.git;protocol=https;branch=master"
22SRC_URI += "file://run-ptest"
23
24EXTRA_OECMAKE = "-DBUILD_CODE_GEN=OFF \
25 -DBUILD_DOC=ON \
26 -DBUILD_DOXYGEN_DOC=OFF"
27
28S = "${WORKDIR}/git"
29
30# Link libatomic on architectures without 64bit atomics fixes
31# libsdbus-c++.so.1.1.0: undefined reference to `__atomic_load_8'
32LDFLAGS:append:mips = " -Wl,--no-as-needed -latomic -Wl,--as-needed"
33LDFLAGS:append:powerpc = " -Wl,--no-as-needed -latomic -Wl,--as-needed"
34LDFLAGS:append:riscv32 = " -Wl,--no-as-needed -latomic -Wl,--as-needed"
35
36do_install:append() {
37 if ! ${@bb.utils.contains('PTEST_ENABLED', '1', 'true', 'false', d)}; then
38 rm -rf ${D}${sysconfdir}/dbus-1
39 fi
40}
41
Patrick Williamsac13d5f2023-11-24 18:59:46 -060042do_install_ptest() {
Patrick Williamsda295312023-12-05 16:48:56 -060043 DESTDIR='${D}' cmake_runcmake_build --target tests/install
Patrick Williamsac13d5f2023-11-24 18:59:46 -060044}
45
46FILES:${PN}-ptest =+ "${sysconfdir}/dbus-1/system.d/"
47FILES:${PN}-dev += "${bindir}/sdbus-c++-xml2cpp"
48
Patrick Williamsda295312023-12-05 16:48:56 -060049RDEPENDS:${PN}-ptest += "dbus"
Patrick Williamsac13d5f2023-11-24 18:59:46 -060050# It adds -isystem which is spurious, no idea where it gets it from
51CCACHE_DISABLE = "1"