dbus-python: add host package
authorBrent Generous <bgenerous@impinj.com>
Fri, 9 Nov 2018 00:38:55 +0000 (00:38 +0000)
committerArnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Thu, 1 Aug 2019 10:52:29 +0000 (12:52 +0200)
This can be useful for Python scripts running on a host machine that
need to connect to a bus on a remote device, e.g. test scripts.

The target dbus-python depends on dbus instead of selecting it because
dbus has dependencies that check that it is supported. Using 'select'
would override those dependencies. For host-dbus, there are no such
checks -- it's assumed the host has the features neeeded to run dbus, so
it is okay to just depend on host-dbus.

The pyexpat dependency is not needed, as it is forced on for
host-python.

Signed-off-by: Brent Generous <bgenerous@impinj.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
package/Config.in.host
package/dbus-python/Config.in.host [new file with mode: 0644]
package/dbus-python/dbus-python.mk

index 1501889b72ccce969b7b893578aa24584366a709..93822304e96e802b8f61028f5accbf32658e8466 100644 (file)
@@ -10,6 +10,7 @@ menu "Host utilities"
        source "package/cmake/Config.in.host"
        source "package/cramfs/Config.in.host"
        source "package/cryptsetup/Config.in.host"
+       source "package/dbus-python/Config.in.host"
        source "package/dfu-util/Config.in.host"
        source "package/dos2unix/Config.in.host"
        source "package/dosfstools/Config.in.host"
diff --git a/package/dbus-python/Config.in.host b/package/dbus-python/Config.in.host
new file mode 100644 (file)
index 0000000..1e30e0a
--- /dev/null
@@ -0,0 +1,6 @@
+config BR2_PACKAGE_HOST_DBUS_PYTHON
+       bool "host dbus-python"
+       help
+         Python bindings for D-Bus
+
+         http://dbus.freedesktop.org/doc/dbus-python/
index d6af7454afe8fa670a8c2a77cb89fbac3fd254ba..eaf4e5f4837498dd429f0018c06703a7dcbd1730 100644 (file)
@@ -12,6 +12,9 @@ DBUS_PYTHON_LICENSE_FILES = COPYING
 DBUS_PYTHON_DEPENDENCIES = dbus-glib
 DBUS_PYTHON_CONF_OPTS = --disable-html-docs --disable-api-docs
 
+HOST_DBUS_PYTHON_DEPENDENCIES = host-dbus-glib
+HOST_DBUS_PYTHON_CONF_OPTS = --disable-html-docs --disable-api-docs
+
 ifeq ($(BR2_PACKAGE_PYTHON),y)
 DBUS_PYTHON_DEPENDENCIES += python host-python
 
@@ -19,6 +22,13 @@ DBUS_PYTHON_CONF_ENV += \
        PYTHON=$(HOST_DIR)/bin/python2 \
        PYTHON_INCLUDES="`$(STAGING_DIR)/usr/bin/python2-config --includes`" \
        PYTHON_LIBS="`$(STAGING_DIR)/usr/bin/python2-config --ldflags`"
+
+HOST_DBUS_PYTHON_DEPENDENCIES += host-python
+
+HOST_DBUS_PYTHON_CONF_ENV += \
+       PYTHON=$(HOST_DIR)/bin/python2 \
+       PYTHON_INCLUDES="`$(HOST_DIR)/usr/bin/python2-config --includes`" \
+       PYTHON_LIBS="`$(HOST_DIR)/usr/bin/python2-config --ldflags`"
 else
 DBUS_PYTHON_DEPENDENCIES += python3 host-python3
 
@@ -26,6 +36,14 @@ DBUS_PYTHON_CONF_ENV += \
        PYTHON=$(HOST_DIR)/bin/python3 \
        PYTHON_INCLUDES="`$(STAGING_DIR)/usr/bin/python3-config --includes`" \
        PYTHON_LIBS="`$(STAGING_DIR)/usr/bin/python3-config --ldflags`"
+
+HOST_DBUS_PYTHON_DEPENDENCIES += host-python3
+
+HOST_DBUS_PYTHON_CONF_ENV += \
+       PYTHON=$(HOST_DIR)/bin/python3 \
+       PYTHON_INCLUDES="`$(HOST_DIR)/usr/bin/python3-config --includes`" \
+       PYTHON_LIBS="`$(HOST_DIR)/usr/bin/python3-config --ldflags`"
 endif
 
 $(eval $(autotools-package))
+$(eval $(host-autotools-package))