/pidgin/main: 9ec9886a1ad3: cross-win32: correct dependencies an...

Tomasz Wasilczyk twasilczyk at pidgin.im
Wed Apr 16 19:29:38 EDT 2014


Changeset: 9ec9886a1ad3f67a52b935a458370e28deb76016
Author:	 Tomasz Wasilczyk <twasilczyk at pidgin.im>
Date:	 2014-04-17 01:29 +0200
Branch:	 default
URL: https://hg.pidgin.im/pidgin/main/rev/9ec9886a1ad3

Description:

cross-win32: correct dependencies and linker flags for Pidgin/libpurple/Finch plugins. They builds and runs now

diffstat:

 configure.ac                              |  11 ++++
 finch/Makefile.am                         |   2 +-
 finch/libgnt/wms/Makefile.am              |   4 +-
 finch/plugins/Makefile.am                 |  26 +++++-----
 libpurple/Makefile.am                     |   2 +-
 libpurple/plugins/Makefile.am             |  70 +++++++++++++++---------------
 libpurple/plugins/keyrings/Makefile.am    |  16 +++---
 libpurple/plugins/mono/loader/Makefile.am |   2 +-
 libpurple/plugins/perl/Makefile.am        |   4 +-
 libpurple/plugins/ssl/Makefile.am         |  12 ++--
 libpurple/plugins/tcl/Makefile.am         |   4 +-
 libpurple/protocols/bonjour/Makefile.am   |   6 +-
 libpurple/protocols/gg/Makefile.am        |   6 +-
 libpurple/protocols/irc/Makefile.am       |   4 +-
 libpurple/protocols/jabber/Makefile.am    |  10 +++-
 libpurple/protocols/msn/Makefile.am       |   4 +-
 libpurple/protocols/mxit/Makefile.am      |   4 +-
 libpurple/protocols/novell/Makefile.am    |   4 +-
 libpurple/protocols/null/Makefile.am      |   4 +-
 libpurple/protocols/oscar/Makefile.am     |   9 ++-
 libpurple/protocols/sametime/Makefile.am  |   4 +-
 libpurple/protocols/silc/Makefile.am      |   6 +-
 libpurple/protocols/simple/Makefile.am    |   4 +-
 libpurple/protocols/yahoo/Makefile.am     |   8 ++-
 libpurple/protocols/zephyr/Makefile.am    |   8 +-
 pidgin/Makefile.am                        |   2 +-
 pidgin/plugins/Makefile.am                |  62 +++++++++++++-------------
 pidgin/plugins/cap/Makefile.am            |   4 +-
 pidgin/plugins/crazychat/Makefile.am      |   5 +-
 pidgin/plugins/disco/Makefile.am          |   4 +-
 pidgin/plugins/gestures/Makefile.am       |   4 +-
 pidgin/plugins/gevolution/Makefile.am     |   4 +-
 pidgin/plugins/musicmessaging/Makefile.am |   4 +-
 pidgin/plugins/ticker/Makefile.am         |   4 +-
 34 files changed, 174 insertions(+), 153 deletions(-)

diffs (truncated from 948 to 300 lines):

diff --git a/configure.ac b/configure.ac
--- a/configure.ac
+++ b/configure.ac
@@ -127,6 +127,7 @@ case "$host" in
 		is_win32="yes"
 		LIBS="$LIBS -lws2_32"
 		DNSAPI_LIBS="-ldnsapi"
+		PLUGIN_LDFLAGS="-avoid-version -no-undefined"
 		AC_SUBST(DNSAPI_LIBS)
 		AC_DEFINE(IS_WIN32_CROSS_COMPILED, 1,
 			[Define to 1, when building with autotools (not necessarily
@@ -136,10 +137,20 @@ case "$host" in
 		;;
 	*)
 		is_win32="no"
+		PLUGIN_LDFLAGS="-avoid-version"
 		AC_CHECK_HEADERS(signal.h)
 		;;
 esac
 AM_CONDITIONAL(IS_WIN32, test "x$is_win32" = "xyes")
+AC_SUBST([PLUGIN_LDFLAGS])
+
+dnl Define *_LIBS
+PURPLE_LIBS="\$(top_builddir)/libpurple/libpurple.la \$(GLIB_LIBS)"
+PIDGIN_LIBS="\$(top_builddir)/pidgin/libpidgin.la \$(GTK_LIBS)"
+FINCH_LIBS="\$(top_builddir)/finch/libfinch.la \$(top_builddir)/finch/libgnt/libgnt.la \$(GLIB_LIBS)"
+AC_SUBST(PURPLE_LIBS)
+AC_SUBST(PIDGIN_LIBS)
+AC_SUBST(FINCH_LIBS)
 
 dnl Checks for header files.
 AC_HEADER_STDC
diff --git a/finch/Makefile.am b/finch/Makefile.am
--- a/finch/Makefile.am
+++ b/finch/Makefile.am
@@ -7,7 +7,7 @@ EXTRA_DIST = \
 pkgconfigdir = $(libdir)/pkgconfig
 pkgconfig_DATA = finch.pc
 
-SUBDIRS = libgnt plugins
+SUBDIRS = libgnt . plugins
 
 if ENABLE_GNT
 
diff --git a/finch/libgnt/wms/Makefile.am b/finch/libgnt/wms/Makefile.am
--- a/finch/libgnt/wms/Makefile.am
+++ b/finch/libgnt/wms/Makefile.am
@@ -6,8 +6,8 @@ else
 purple_wms =
 endif
 
-s_la_LDFLAGS             = -module -avoid-version
-irssi_la_LDFLAGS         = -module -avoid-version
+s_la_LDFLAGS     = -module @PLUGIN_LDFLAGS@
+irssi_la_LDFLAGS = -module @PLUGIN_LDFLAGS@
 
 plugin_LTLIBRARIES = \
 	$(wms) \
diff --git a/finch/plugins/Makefile.am b/finch/plugins/Makefile.am
--- a/finch/plugins/Makefile.am
+++ b/finch/plugins/Makefile.am
@@ -1,9 +1,9 @@
-gntclipboard_la_LDFLAGS = -module -avoid-version
-gntgf_la_LDFLAGS      = -module -avoid-version
-gnthistory_la_LDFLAGS = -module -avoid-version
-gntlastlog_la_LDFLAGS = -module -avoid-version
-gnttinyurl_la_LDFLAGS = -module -avoid-version
-grouping_la_LDFLAGS   = -module -avoid-version
+gntclipboard_la_LDFLAGS = -module @PLUGIN_LDFLAGS@
+gntgf_la_LDFLAGS        = -module @PLUGIN_LDFLAGS@
+gnthistory_la_LDFLAGS   = -module @PLUGIN_LDFLAGS@
+gntlastlog_la_LDFLAGS   = -module @PLUGIN_LDFLAGS@
+gnttinyurl_la_LDFLAGS   = -module @PLUGIN_LDFLAGS@
+grouping_la_LDFLAGS     = -module @PLUGIN_LDFLAGS@
 
 if PLUGINS
 
@@ -27,12 +27,12 @@ grouping_la_SOURCES   = grouping.c
 gntclipboard_la_CFLAGS = $(X11_CFLAGS)
 gntgf_la_CFLAGS = $(X11_CFLAGS)
 
-gntclipboard_la_LIBADD = $(GLIB_LIBS) $(X11_LIBS)
-gntgf_la_LIBADD       = $(GLIB_LIBS) $(X11_LIBS) $(top_builddir)/finch/libgnt/libgnt.la
-gnthistory_la_LIBADD  = $(GLIB_LIBS)
-gntlastlog_la_LIBADD  = $(GLIB_LIBS)
-gnttinyurl_la_LIBADD  = $(GLIB_LIBS)
-grouping_la_LIBADD    = $(GLIB_LIBS) $(top_builddir)/finch/libgnt/libgnt.la
+gntclipboard_la_LIBADD = @FINCH_LIBS@ $(X11_LIBS)
+gntgf_la_LIBADD        = @FINCH_LIBS@ $(X11_LIBS)
+gnthistory_la_LIBADD   = @FINCH_LIBS@
+gntlastlog_la_LIBADD   = @FINCH_LIBS@
+gnttinyurl_la_LIBADD   = @FINCH_LIBS@
+grouping_la_LIBADD     = @FINCH_LIBS@
 
 endif # PLUGINS
 
@@ -56,7 +56,7 @@ AM_CPPFLAGS = \
 SUFFIXES = .c .so
 .c.so:
 	$(LIBTOOL) --mode=compile $(CC) -DHAVE_CONFIG_H -I$(top_builddir) $(AM_CPPFLAGS) $(CFLAGS) -c $< -o tmp$@.lo $(PLUGIN_CFLAGS)
-	$(LIBTOOL) --mode=link    $(CC) $(CFLAGS) -o libtmp$@.la -rpath $(plugindir) tmp$@.lo $(LIBS) $(LDFLAGS) -module -avoid-version $(PLUGIN_LIBS)
+	$(LIBTOOL) --mode=link    $(CC) $(CFLAGS) -o libtmp$@.la -rpath $(plugindir) tmp$@.lo $(LIBS) $(LDFLAGS) -module @PLUGIN_LDFLAGS@ $(PLUGIN_LIBS)
 	@rm -f tmp$@.lo tmp$@.o libtmp$@.la
 	@cp .libs/libtmp$@.so.so $@
 	@rm -rf .libs/libtmp$@.*
diff --git a/libpurple/Makefile.am b/libpurple/Makefile.am
--- a/libpurple/Makefile.am
+++ b/libpurple/Makefile.am
@@ -36,7 +36,7 @@ endif
 pkgconfigdir = $(libdir)/pkgconfig
 pkgconfig_DATA = purple-3.pc
 
-SUBDIRS = $(GCONF_DIR) plugins protocols . tests example
+SUBDIRS = $(GCONF_DIR) . plugins protocols tests example
 
 purple_coresources = \
 	account.c \
diff --git a/libpurple/plugins/Makefile.am b/libpurple/plugins/Makefile.am
--- a/libpurple/plugins/Makefile.am
+++ b/libpurple/plugins/Makefile.am
@@ -25,26 +25,26 @@ SUBDIRS = \
 
 plugindir = $(libdir)/purple-$(PURPLE_MAJOR_VERSION)
 
-autoaccept_la_LDFLAGS       = -module -avoid-version
-buddynote_la_LDFLAGS        = -module -avoid-version
-ciphertest_la_LDFLAGS		= -module -avoid-version
-codeinline_la_LDFLAGS		= -module -avoid-version
-debug_example_la_LDFLAGS    = -module -avoid-version
-helloworld_la_LDFLAGS       = -module -avoid-version
-idle_la_LDFLAGS             = -module -avoid-version
-joinpart_la_LDFLAGS         = -module -avoid-version
-log_reader_la_LDFLAGS       = -module -avoid-version
-notify_example_la_LDFLAGS   = -module -avoid-version
-offlinemsg_la_LDFLAGS       = -module -avoid-version
-one_time_password_la_LDFLAGS	= -module -avoid-version
-pluginpref_example_la_LDFLAGS = -module -avoid-version
-psychic_la_LDFLAGS          = -module -avoid-version
-signals_test_la_LDFLAGS		= -module -avoid-version
-simple_la_LDFLAGS			= -module -avoid-version
-statenotify_la_LDFLAGS      = -module -avoid-version
+autoaccept_la_LDFLAGS         = -module @PLUGIN_LDFLAGS@
+buddynote_la_LDFLAGS          = -module @PLUGIN_LDFLAGS@
+ciphertest_la_LDFLAGS         = -module @PLUGIN_LDFLAGS@
+codeinline_la_LDFLAGS         = -module @PLUGIN_LDFLAGS@
+debug_example_la_LDFLAGS      = -module @PLUGIN_LDFLAGS@
+helloworld_la_LDFLAGS         = -module @PLUGIN_LDFLAGS@
+idle_la_LDFLAGS               = -module @PLUGIN_LDFLAGS@
+joinpart_la_LDFLAGS           = -module @PLUGIN_LDFLAGS@
+log_reader_la_LDFLAGS         = -module @PLUGIN_LDFLAGS@
+notify_example_la_LDFLAGS     = -module @PLUGIN_LDFLAGS@
+offlinemsg_la_LDFLAGS         = -module @PLUGIN_LDFLAGS@
+one_time_password_la_LDFLAGS  = -module @PLUGIN_LDFLAGS@
+pluginpref_example_la_LDFLAGS = -module @PLUGIN_LDFLAGS@
+psychic_la_LDFLAGS            = -module @PLUGIN_LDFLAGS@
+signals_test_la_LDFLAGS       = -module @PLUGIN_LDFLAGS@
+simple_la_LDFLAGS             = -module @PLUGIN_LDFLAGS@
+statenotify_la_LDFLAGS        = -module @PLUGIN_LDFLAGS@
 
 # this can't be in a conditional otherwise automake 1.4 yells
-dbus_example_la_LDFLAGS     = -module -avoid-version
+dbus_example_la_LDFLAGS       = -module @PLUGIN_LDFLAGS@
 
 if PLUGINS
 
@@ -88,28 +88,28 @@ signals_test_la_SOURCES		= signals-test.
 simple_la_SOURCES			= simple.c
 statenotify_la_SOURCES      = statenotify.c
 
-autoaccept_la_LIBADD        = $(GLIB_LIBS)
-buddynote_la_LIBADD         = $(GLIB_LIBS)
-ciphertest_la_LIBADD		= $(GLIB_LIBS)
-codeinline_la_LIBADD		= $(GLIB_LIBS)
-idle_la_LIBADD              = $(GLIB_LIBS)
-joinpart_la_LIBADD          = $(GLIB_LIBS)
-log_reader_la_LIBADD        = $(GLIB_LIBS)
-notify_example_la_LIBADD    = $(GLIB_LIBS)
-offlinemsg_la_LIBADD        = $(GLIB_LIBS)
-one_time_password_la_LIBADD = $(GLIB_LIBS)
-pluginpref_example_la_LIBADD = $(GLIB_LIBS)
-psychic_la_LIBADD           = $(GLIB_LIBS)
-signals_test_la_LIBADD		= $(GLIB_LIBS)
-simple_la_LIBADD			= $(GLIB_LIBS)
-statenotify_la_LIBADD       = $(GLIB_LIBS)
+autoaccept_la_LIBADD         = @PURPLE_LIBS@
+buddynote_la_LIBADD          = @PURPLE_LIBS@
+ciphertest_la_LIBADD         = @PURPLE_LIBS@
+codeinline_la_LIBADD         = @PURPLE_LIBS@
+idle_la_LIBADD               = @PURPLE_LIBS@
+joinpart_la_LIBADD           = @PURPLE_LIBS@
+log_reader_la_LIBADD         = @PURPLE_LIBS@
+notify_example_la_LIBADD     = @PURPLE_LIBS@
+offlinemsg_la_LIBADD         = @PURPLE_LIBS@
+one_time_password_la_LIBADD  = @PURPLE_LIBS@
+pluginpref_example_la_LIBADD = @PURPLE_LIBS@
+psychic_la_LIBADD            = @PURPLE_LIBS@
+signals_test_la_LIBADD       = @PURPLE_LIBS@
+simple_la_LIBADD             = @PURPLE_LIBS@
+statenotify_la_LIBADD        = @PURPLE_LIBS@
 
 if ENABLE_DBUS
 
 CLEANFILES              = dbus-example-bindings.c
 dbus_example_la_SOURCES = dbus-example.c
 
-dbus_example_la_LIBADD      = $(GLIB_LIBS) $(DBUS_LIBS)
+dbus_example_la_LIBADD       = @PURPLE_LIBS@ $(DBUS_LIBS)
 
 .PHONY: always
 
@@ -155,7 +155,7 @@ PLUGIN_LIBS = \
 SUFFIXES = .c .so
 .c.so:
 	$(LIBTOOL) --mode=compile $(CC) -DHAVE_CONFIG_H -I$(top_builddir) $(AM_CPPFLAGS) $(CFLAGS) -c $< -o tmp$@.lo $(PLUGIN_CFLAGS)
-	$(LIBTOOL) --mode=link    $(CC) $(CFLAGS) -o libtmp$@.la -rpath $(plugindir) tmp$@.lo $(LIBS) $(LDFLAGS) -module -avoid-version $(PLUGIN_LIBS)
+	$(LIBTOOL) --mode=link    $(CC) $(CFLAGS) -o libtmp$@.la -rpath $(plugindir) tmp$@.lo $(LIBS) $(LDFLAGS) -module @PLUGIN_LDFLAGS@ $(PLUGIN_LIBS)
 	@rm -f tmp$@.lo tmp$@.o libtmp$@.la
 	@cp .libs/libtmp$@*.so $@
 	@rm -rf .libs/libtmp$@.*
diff --git a/libpurple/plugins/keyrings/Makefile.am b/libpurple/plugins/keyrings/Makefile.am
--- a/libpurple/plugins/keyrings/Makefile.am
+++ b/libpurple/plugins/keyrings/Makefile.am
@@ -6,35 +6,35 @@ CLEANFILES =
 plugindir = $(libdir)/purple-$(PURPLE_MAJOR_VERSION)
 
 internalkeyring_la_CFLAGS  = $(AM_CPPFLAGS)
-internalkeyring_la_LDFLAGS = -module -avoid-version
+internalkeyring_la_LDFLAGS = -module @PLUGIN_LDFLAGS@
 internalkeyring_la_SOURCES = internalkeyring.c
-internalkeyring_la_LIBADD  = $(GLIB_LIBS)
+internalkeyring_la_LIBADD  = @PURPLE_LIBS@
 
 if ENABLE_SECRETSERVICE
 
 secretservice_la_CFLAGS  = $(AM_CPPFLAGS) $(SECRETSERVICE_CFLAGS)
-secretservice_la_LDFLAGS = -module -avoid-version
+secretservice_la_LDFLAGS = -module @PLUGIN_LDFLAGS@
 secretservice_la_SOURCES = secretservice.c
-secretservice_la_LIBADD  = $(GLIB_LIBS) $(SECRETSERVICE_LIBS)
+secretservice_la_LIBADD  = @PURPLE_LIBS@ $(SECRETSERVICE_LIBS)
 
 endif
 
 if ENABLE_GNOMEKEYRING
 
 gnomekeyring_la_CFLAGS  = $(AM_CPPFLAGS) $(GNOMEKEYRING_CFLAGS)
-gnomekeyring_la_LDFLAGS = -module -avoid-version
+gnomekeyring_la_LDFLAGS = -module @PLUGIN_LDFLAGS@
 gnomekeyring_la_SOURCES = gnomekeyring.c
-gnomekeyring_la_LIBADD  = $(GLIB_LIBS) $(GNOMEKEYRING_LIBS)
+gnomekeyring_la_LIBADD  = @PURPLE_LIBS@ $(GNOMEKEYRING_LIBS)
 
 endif
 
 if ENABLE_KWALLET
 
 kwallet_la_CXXFLAGS  = $(KWALLET_CXXFLAGS) $(QT4_CFLAGS)
-kwallet_la_LDFLAGS = -module -avoid-version
+kwallet_la_LDFLAGS = -module @PLUGIN_LDFLAGS@
 kwallet_la_SOURCES = kwallet.cpp
 kwallet_la_BUILTSOURCES = kwallet.moc
-kwallet_la_LIBADD  = $(GLIB_LIBS) $(KWALLET_LIBS) $(QT4_LIBS)
+kwallet_la_LIBADD  = @PURPLE_LIBS@ $(KWALLET_LIBS) $(QT4_LIBS)
 
 kwallet.cpp: kwallet.moc
 
diff --git a/libpurple/plugins/mono/loader/Makefile.am b/libpurple/plugins/mono/loader/Makefile.am
--- a/libpurple/plugins/mono/loader/Makefile.am
+++ b/libpurple/plugins/mono/loader/Makefile.am
@@ -12,7 +12,7 @@ mono_la_SOURCES	= \
 	blist-glue.c \
 	status-glue.c 
 
-mono_la_LDFLAGS  = -module -avoid-version
+mono_la_LDFLAGS = -module @PLUGIN_LDFLAGS@
 
 mono_la_LIBADD = $(MONO_LIBS)
 
diff --git a/libpurple/plugins/perl/Makefile.am b/libpurple/plugins/perl/Makefile.am
--- a/libpurple/plugins/perl/Makefile.am
+++ b/libpurple/plugins/perl/Makefile.am
@@ -4,8 +4,8 @@ perl_dirs = common
 
 plugin_LTLIBRARIES = perl.la
 
-perl_la_LDFLAGS = -module -avoid-version
-perl_la_LIBADD = $(GLIB_LIBS) $(PERL_LIBS)
+perl_la_LDFLAGS = -module @PLUGIN_LDFLAGS@
+perl_la_LIBADD = @PURPLE_LIBS@ $(PERL_LIBS)
 perl_la_SOURCES = \
 	perl.c \
 	perl-common.c \
diff --git a/libpurple/plugins/ssl/Makefile.am b/libpurple/plugins/ssl/Makefile.am
--- a/libpurple/plugins/ssl/Makefile.am
+++ b/libpurple/plugins/ssl/Makefile.am
@@ -3,9 +3,9 @@ EXTRA_DIST = \
 
 plugindir = $(libdir)/purple-$(PURPLE_MAJOR_VERSION)
 
-ssl_la_LDFLAGS        = -module -avoid-version



More information about the Commits mailing list