diff src/Makefile.am @ 11146:1c5398ccbeb0

[gaim-migrate @ 13217] Gaim-DBUS signal export works with DBUS >= 0.35 Various gaim API functions available through DBUS committer: Tailor Script <tailor@pidgin.im>
author Piotr Zielinski <zielaj>
date Fri, 22 Jul 2005 19:47:29 +0000
parents eeefaa62f5a2
children ebb02ea3c789
line wrap: on
line diff
--- a/src/Makefile.am	Fri Jul 22 07:11:08 2005 +0000
+++ b/src/Makefile.am	Fri Jul 22 19:47:29 2005 +0000
@@ -146,23 +146,37 @@
 
 if ENABLE_DBUS
 
-dbus_sources = dbus-server.c  
-dbus_headers  = dbus-server.h
+dbus_sources = dbus-server.c dbus-useful.c
+dbus_headers  = dbus-server.h dbus-useful.h dbus-maybe.h 
+dbus_exported_headers = dbus-useful.h dbus-define-api.h account.h blist.h connection.h conversation.h core.h roomlist.h
+
+CLEANFILES=dbus-auto-enum-types.h dbus-auto-enums.txt dbus-auto-structs.txt dbus-generated-code.c dbus-generated-code.xml dbus-service-all.xml dbus-server-bindings.c
 
-# do not use gaim-client, use gaim-send instead
-# bin_PROGRAMS      += gaim-client
-#gaim_client_SOURCES      = dbus-client.c
-#gaim_client_DEPENDENCIES = @LIBOBJS@
-#gaim_client_LDADD        = @LIBOBJS@ $(GLIB_LIBS) $(DBUS_LIBS) $(INTLLIBS)
+dbus-auto-structs.txt: dbus-analyze-types.py $(gaim_coreheaders)
+	cat $(gaim_coreheaders) | $(PYTHON) dbus-analyze-types.py --keyword=struct --list > $@
+
+dbus-auto-enums.txt: dbus-analyze-types.py $(gaim_coreheaders)
+	cat $(gaim_coreheaders) | $(PYTHON) dbus-analyze-types.py --keyword=enum --list > $@
+
+dbus-auto-enum-types.h: dbus-analyze-types.py $(gaim_coreheaders)
+	cat $(gaim_coreheaders) | $(PYTHON) dbus-analyze-types.py --keyword=struct --enum > $@
 
-dbus-client-bindings.c: dbus-service.xml
-	dbus-binding-tool --prefix=gaim_object --mode=glib-client --output=$@ $<
+dbus-generated-code.c: dbus-analyze-functions.py dbus-auto-structs.txt dbus-auto-enums.txt $(dbus_exported_headers)
+	cat $(dbus_exported_headers) | $(PYTHON) dbus-analyze-functions.py --mode=c > $@
+
+dbus-generated-code.xml: dbus-analyze-functions.py dbus-auto-structs.txt dbus-auto-enums.txt $(dbus_exported_headers)
+	cat $(dbus_exported_headers) | $(PYTHON) dbus-analyze-functions.py --mode=xml > $@
 
-dbus-server-bindings.c: dbus-service.xml
-	dbus-binding-tool --prefix=gaim_object --mode=glib-server --output=$@ $<
+dbus-service-all.xml: dbus-service.xml dbus-generated-code.xml dbus-service-end.xml
+	cat $^ > $@
 
-dbus-client.$(OBJEXT): dbus-client-bindings.c
-dbus-server.$(OBJEXT): dbus-server-bindings.c
+dbus-server-bindings.c: dbus-service-all.xml $(DBUS_BINDING_TOOL)
+	$(DBUS_BINDING_TOOL) --prefix=gaim_object --mode=glib-server --output=$@ $<
+
+
+$(gaim_OBJECTS): dbus-auto-enum-types.h
+
+dbus-server.$(OBJEXT): dbus-server-bindings.c dbus-generated-code.c
 
 endif