AMB (automotive-message-broker): RDEPEND on python-curses
[AGL/meta-agl.git] / meta-ivi-common / recipes-automotive / automotive-message-broker / automotive-message-broker_git.bb
index ce4b127..dee6f59 100644 (file)
@@ -4,48 +4,24 @@ away from applications and provides a standard API for applications to easily \
 get the required information"
 
 HOMEPAGE = "https://github.com/otcshare/automotive-message-broker/wiki"
-LICENSE = "LGPL-2.1"
-LIC_FILES_CHKSUM = "file://COPYING;md5=b42382de5d854b9bb598acf2e8827de3"
-
-inherit cmake systemd
-
-# The 'gpsd' leads to a conflict between bluez4 and bluez5 because
-# meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd_3.10.bb is able to
-# select  bluez4 only instead AGL Distro choose bluez5 at changeset 4141.
-# <https://gerrit.automotivelinux.org/gerrit/#/c/4141/>
-#
-# As temporary treatment, removing 'gpsd' from DEPENDS will let bitbake to build correctly.
-#
-#DEPENDS = "glib-2.0 util-linux sqlite3 qtbase boost json-c libtool gpsd"
+
+require automotive-message-broker_git.inc
+
+CMAKE_QT5_CLASS = "${@bb.utils.contains('BBFILE_COLLECTIONS','qt5-layer','cmake_qt5','',d)}"
+inherit cmake systemd ${CMAKE_QT5_CLASS}
+
 DEPENDS = "glib-2.0 util-linux sqlite3 boost json-c libtool"
-RDEPENDS_${PN} = "python-misc python-json"
-
-PV = "0.14+git${SRCPV}"
-
-SRC_URI = "git://github.com/CogentEmbedded/automotive-message-broker.git;protocol=https;branch=master"
-SRCREV = "58569fac42bb8b6e1ad208caef5db8a51befc87f"
-
-# The paches from 0001 to 0009 are from difference between 
-# hash:58569fac42bb8b6e1ad208caef5db8a51befc87f(main branch) and
-# hash:8f761e02172544212915c82b7e8dd8d4dd1281a6(dev_0.14_2)
-SRC_URI += " \
-    file://0001-Improve-backward-compatibility-with-old-linaro-gcc.patch \
-    file://0002-Fix-library-versioning.patch \
-    file://0003-AmbSignalMapper-fix-can-interface-specification.patch \
-    file://0004-cansocketbcm-Fix-reading-of-frames-in-case-of-RX_TIM.patch \
-    file://0005-ambctl-remove-unnecessary-dependency-on-glib-introsp.patch \
-    file://0006-cangen-Implement-basic-handling-of-RX_TIMEOUT.patch \
-    file://0007-WORKAROUND-Allow-amb-qt-binding-to-work-in-case-of-m.patch \
-    file://0008-Add-simple-Qt-QML-example.patch \
-    file://0009-Add-Pressure-property-to-BrakeOperation.patch \
-    file://ambd.service \
+RDEPENDS_${PN} = "python-misc python-json python-curses"
+
+PACKAGECONFIG ??= " use_gps \
+    ${@bb.utils.contains('BBFILE_COLLECTIONS','qt5-layer','use_qt5','', d)} \
     "
+PACKAGECONFIG[use_gps] = "-Dgpsnmea_plugin=On"
+PACKAGECONFIG[use_qt5] = "-Dqtmainloop=On -Dqt_bindings=On,,qtbase qtdeclarative"
 
 SYSTEMD_PACKAGES = "${PN}"
 SYSTEMD_SERVICE_${PN} = "ambd.service"
 
-S = "${WORKDIR}/git"
-
 # amb detects icecc in cmake and would override the
 # compiler selection of yocto. This breaks the build
 # if icecc is installed on the host.
@@ -54,9 +30,19 @@ EXTRA_OECMAKE += " -Denable_icecc=OFF"
 
 do_install_append() {
     mv ${D}/usr/include/amb/* ${D}/usr/include
+    sed -i 's,/amb,,' ${D}${libdir}/pkgconfig/*.pc
 
     install -d ${D}${systemd_unitdir}/system/
     install -m 0644 ${WORKDIR}/ambd.service ${D}${systemd_unitdir}/system
+
+    if [ "${@bb.utils.contains('PACKAGECONFIG', 'use_gps', 'use_gps', '', d)}" = "use_gps" ]; then
+        install -m 0644 ${WORKDIR}/gps ${D}/${sysconfdir}/ambd/plugins.d
+    fi
 }
 
-FILES_${PN} += "${systemd_unitdir}/ambd.service"
+FILES_${PN} += " ${systemd_unitdir}/ambd.service \
+    ${@bb.utils.contains('BBFILE_COLLECTIONS','qt5-layer','${libdir}/qt5/qml/amb/','',d)} \
+    "
+FILES_${PN}-dbg += " \
+    ${@bb.utils.contains('BBFILE_COLLECTIONS', 'qt5-layer', '${libdir}/qt5/qml/amb/.debug', '', d)} \
+    "