view libpurple/Makefile.am @ 15786:b25acae693cd

Change connection.c:gaim_connection_error() to still work even if the message parameter is NULL. There's no reason to error-out of that function just because some yuppie didn't pass us an error message. But we still log a critical message, so those of you at home running with fatal_criticals will still crash. I noticed this because Jabber isn't handling <stream:error/> correctly right now. Anyone else notice this? The code is written to look for "stream:error", but our xmlnode stuff just sees "error" (even though the "stream:error" format is sent over the wire). I think it's because of the libxml change. To reproduce the problem, sign onto the same resource twice and note that the error message that Gaim gives you sucks.
author Mark Doliner <mark@kingant.net>
date Tue, 13 Mar 2007 07:33:08 +0000
parents 7e0c0062c428
children 32c366eeeb99
line wrap: on
line source

EXTRA_DIST = \
		dbus-analyze-functions.py \
		dbus-analyze-types.py \
		gaim-notifications-example \
		gaim-remote \
		gaim-send \
		gaim-send-async \
		gaim-url-handler \
		purple.pc.in \
		Makefile.mingw \
		win32/global.mak \
		win32/libc_interface.c \
		win32/libc_interface.h \
		win32/libc_internal.h \
		win32/libpurplerc.rc.in \
		win32/rules.mak \
		win32/targets.mak \
		win32/wgaimerror.h \
		win32/win32dep.c \
		win32/giowin32.c \
		win32/win32dep.h

if USE_GCONFTOOL
GCONF_DIR=gconf
endif

pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = purple.pc

SUBDIRS = $(GCONF_DIR) plugins protocols tests . example

gaim_coresources = \
	account.c \
	accountopt.c \
	blist.c \
	buddyicon.c \
	cipher.c \
	circbuffer.c \
	cmds.c \
	connection.c \
	conversation.c \
	core.c \
	debug.c \
	desktopitem.c \
	eventloop.c \
	ft.c \
	idle.c \
	imgstore.c \
	log.c \
	mime.c \
	network.c \
	ntlm.c \
	notify.c \
	plugin.c \
	pluginpref.c \
	pounce.c \
	prefix.c \
	prefs.c \
	privacy.c \
	proxy.c \
	prpl.c \
	request.c \
	roomlist.c \
	savedstatuses.c \
	server.c \
	signals.c \
	dnsquery.c \
	dnssrv.c\
	status.c \
	stringref.c \
	stun.c \
	sound.c \
	sslconn.c \
	upnp.c \
	util.c \
	value.c \
	xmlnode.c \
	whiteboard.c

gaim_coreheaders = \
	account.h \
	accountopt.h \
	blist.h \
	buddyicon.h \
	cipher.h \
	circbuffer.h \
	cmds.h \
	connection.h \
	conversation.h \
	core.h \
	dbus-maybe.h \
	debug.h \
	desktopitem.h \
	eventloop.h \
	ft.h \
	gaim.h \
	idle.h \
	imgstore.h \
	log.h \
	mime.h \
	network.h \
	notify.h \
	ntlm.h \
	plugin.h \
	pluginpref.h \
	pounce.h \
	prefs.h \
	privacy.h \
	proxy.h \
	prpl.h \
	request.h \
	roomlist.h \
	savedstatuses.h \
	server.h \
	signals.h \
	dnsquery.h \
	dnssrv.h \
	status.h \
	stringref.h \
	stun.h \
	sound.h \
	sslconn.h \
	upnp.h \
	util.h \
	value.h \
	version.h \
	xmlnode.h \
	whiteboard.h

if ENABLE_DBUS

CLEANFILES = \
	dbus-bindings.c \
	dbus-client-binding.c \
	dbus-client-binding.h \
	dbus-types.c \
	dbus-types.h \
	gaim-client-bindings.c \
	gaim-client-bindings.h \
	gaim.service

# gaim dbus server

dbus_sources  = dbus-server.c dbus-useful.c
dbus_headers  = dbus-bindings.h dbus-gaim.h dbus-server.h dbus-useful.h dbus-define-api.h

dbus_exported = dbus-useful.h dbus-define-api.h account.h blist.h buddyicon.h \
                connection.h conversation.h core.h log.h prefs.h roomlist.h \
                savedstatuses.h status.h server.h xmlnode.h

gaim_build_coreheaders = $(addprefix $(srcdir)/, $(gaim_coreheaders))
dbus_build_exported = $(addprefix $(srcdir)/, $(dbus_exported))

dbus-types.c: dbus-analyze-types.py $(gaim_coreheaders)
	cat $(gaim_build_coreheaders) | $(PYTHON) $(srcdir)/dbus-analyze-types.py --pattern=GAIM_DBUS_DEFINE_TYPE\(%s\) > $@

dbus-types.h: dbus-analyze-types.py $(dbus_coreheaders)
	cat $(gaim_build_coreheaders) | $(PYTHON) $(srcdir)/dbus-analyze-types.py --pattern=GAIM_DBUS_DECLARE_TYPE\(%s\) > $@

dbus-bindings.c: dbus-analyze-functions.py $(dbus_exported)
	cat $(dbus_build_exported) | $(PYTHON) $(srcdir)/dbus-analyze-functions.py > $@

dbus-server.$(OBJEXT): dbus-bindings.c dbus-types.c dbus-types.h
dbus-server.lo: dbus-bindings.c dbus-types.c dbus-types.h
$(libgaim_la_OBJECTS): dbus-types.h

# libgaim-client

libgaim_client_lib = libgaim-client.la

libgaim_client_la_SOURCES = gaim-client.c gaim-client.h

libgaim_client_la_LIBADD = $(DBUS_LIBS)

gaim-client-bindings.c: dbus-analyze-functions.py $(dbus_exported)
	cat $(dbus_build_exported) | $(PYTHON) $(srcdir)/dbus-analyze-functions.py --client > $@

gaim-client-bindings.h: dbus-analyze-types.py dbus-analyze-functions.py $(gaim_coreheaders) $(dbus_exported)
	cat $(gaim_build_coreheaders) | $(PYTHON) $(srcdir)/dbus-analyze-types.py --keyword=enum --verbatim > $@
	cat $(dbus_build_exported) | $(PYTHON) $(srcdir)/dbus-analyze-functions.py --client --headers >> $@

$(libgaim_client_la_OBJECTS): gaim-client-bindings.h gaim-client-bindings.c

# gaim-client-example

gaim_client_example_SOURCES = gaim-client-example.c

gaim_client_example_DEPENDENCIES = libgaim-client.la

gaim_client_example_LDADD = \
	libgaim-client.la \
	$(GLIB_LIBS) \
	$(DBUS_LIBS)

bin_PROGRAMS = gaim-client-example

gaim-client-example.$(OBJEXT): gaim-client-bindings.h

# scripts

bin_SCRIPTS = gaim-remote gaim-send gaim-send-async gaim-url-handler

endif

lib_LTLIBRARIES = libpurple.la $(libgaim_client_lib)

libpurple_la_SOURCES = \
	$(gaim_coresources) \
	$(dbus_sources)

noinst_HEADERS= \
	internal.h \
	prefix.h

libpurpleincludedir=$(includedir)/libpurple
libpurpleinclude_HEADERS = \
	$(gaim_coreheaders) \
	$(dbus_headers)

libpurple_la_DEPENDENCIES = $(STATIC_LINK_LIBS)
libpurple_la_LDFLAGS = -export-dynamic
libpurple_la_LIBADD = \
	$(DBUS_LIBS) \
	$(GLIB_LIBS) \
	$(LIBXML_LIBS) \
	$(LIBNM_LIBS) \
	$(STATIC_LINK_LIBS) \
	$(INTLLIBS) \
	-lm

AM_CPPFLAGS = \
	-DBR_PTHREADS=0 \
	-DDATADIR=\"$(datadir)\" \
	-DLIBDIR=\"$(libdir)/libpurple/\" \
	-DLOCALEDIR=\"$(datadir)/locale\" \
	-DSYSCONFDIR=\"$(sysconfdir)\" \
	$(GLIB_CFLAGS) \
	$(DEBUG_CFLAGS) \
	$(DBUS_CFLAGS) \
	$(LIBXML_CFLAGS) \
	$(LIBNM_CFLAGS)