summaryrefslogtreecommitdiff
path: root/package
diff options
context:
space:
mode:
authorPeter Korsgaard <jacmet@sunsite.dk>2007-11-22 17:12:19 +0000
committerPeter Korsgaard <jacmet@sunsite.dk>2007-11-22 17:12:19 +0000
commit00de7fc62ff91f2e6cc3fd2ed29cc577f971335f (patch)
tree3307fedcfdb6ac7cce2bc8345c52beab1a4cedbb /package
parente200c1b15dbe6a5918bb4bdf8ceb9f862ae2a726 (diff)
Make XML library used by D-Bus selectable instead of requiring both Expat
and libxml2.
Diffstat (limited to 'package')
-rw-r--r--package/dbus/Config.in22
-rw-r--r--package/dbus/dbus.mk14
2 files changed, 31 insertions, 5 deletions
diff --git a/package/dbus/Config.in b/package/dbus/Config.in
index 7e668ce84..431c2d90e 100644
--- a/package/dbus/Config.in
+++ b/package/dbus/Config.in
@@ -1,9 +1,27 @@
config BR2_PACKAGE_DBUS
bool "dbus"
default n
- select BR2_PACKAGE_EXPAT
- select BR2_PACKAGE_LIBXML2
help
The D-Bus message bus system.
http://www.freedesktop.org/wiki/Software/dbus
+
+choice
+ prompt "XML library to use"
+ depends BR2_PACKAGE_DBUS
+ default BR2_DBUS_LIBXML2 if BR2_PACKAGE_LIBXML2
+ default BR2_DBUS_EXPAT
+ help
+ Select the XML library to use with D-Bus. Select Expat
+ unless you have specific reasons for using libxml2 as
+ Expat is significant smaller.
+
+ config BR2_DBUS_EXPAT
+ bool "Expat"
+ select BR2_PACKAGE_EXPAT
+
+ config BR2_DBUS_LIBXML2
+ bool "libxml2"
+ select BR2_PACKAGE_LIBXML2
+
+endchoice
diff --git a/package/dbus/dbus.mk b/package/dbus/dbus.mk
index edccb1d68..e8f3acce0 100644
--- a/package/dbus/dbus.mk
+++ b/package/dbus/dbus.mk
@@ -11,6 +11,14 @@ DBUS_CAT:=$(ZCAT)
DBUS_BINARY:=bus/dbus-daemon
DBUS_TARGET_BINARY:=usr/bin/dbus-daemon
+ifeq ($(strip $(BR2_DBUS_EXPAT)),y)
+DBUS_XML:=expat
+DBUS_XML_DEP:=expat
+else
+DBUS_XML:=libxml
+DBUS_XML_DEP:=libxml2-headers
+endif
+
$(DL_DIR)/$(DBUS_SOURCE):
$(WGET) -P $(DL_DIR) $(DBUS_SITE)/$(DBUS_SOURCE)
@@ -44,14 +52,14 @@ $(DBUS_DIR)/.configured: $(DBUS_DIR)/.unpacked
--disable-static \
--enable-dnotify \
--without-x \
- --without-xml \
+ --with-xml=$(DBUS_XML) \
--with-system-socket=/var/run/dbus/system_bus_socket \
--with-system-pid-file=/var/run/messagebus.pid \
)
touch $@
$(DBUS_DIR)/$(DBUS_BINARY): $(DBUS_DIR)/.configured
- $(MAKE) DBUS_BUS_LIBS="$(STAGING_DIR)/usr/lib/libexpat.so $(STAGING_DIR)/usr/lib/libxml2.so" -C $(DBUS_DIR) all
+ $(MAKE) -C $(DBUS_DIR) all
$(STAGING_DIR)/usr/lib/libdbus-1.so: $(DBUS_DIR)/$(DBUS_BINARY)
$(MAKE) DESTDIR=$(STAGING_DIR) -C $(DBUS_DIR)/dbus install
@@ -70,7 +78,7 @@ $(TARGET_DIR)/$(DBUS_TARGET_BINARY): $(STAGING_DIR)/usr/lib/libdbus-1.so
rmdir --ignore-fail-on-non-empty $(TARGET_DIR)/usr/share
rm -rf $(TARGET_DIR)/etc/rc.d
-dbus: uclibc expat libxml2-headers $(TARGET_DIR)/$(DBUS_TARGET_BINARY)
+dbus: uclibc $(DBUS_XML_DEP) $(TARGET_DIR)/$(DBUS_TARGET_BINARY)
dbus-clean:
rm -f $(TARGET_DIR)/etc/dbus-1/session.conf