[evolution-patches] Fix for plugin portability issues



Hey,

Attaching a patch which fixes all the portability warning got 
when building plugins. This is because all the plugins link to
component libraries ( libevolution-mail.la, libevolution-calendar.la
and libevolution-addressbook.la) which have a [Link = no] tag. This 
only seriously enforced on the MAC OS X. On other platforms we get ugly
portability warnings.

The patches split the components into a component library and a 
private library. So all the plugins can link to the private library.
The server.in.in files use tha comonent library as their factory and 
the component library link to the private library,

Its easier to read the patch actually, than to understand all
the junk i just wrote.

Cheers,
Shreyas
Index: mail/ChangeLog
===================================================================
RCS file: /cvs/gnome/evolution/mail/ChangeLog,v
retrieving revision 1.3704.2.1
diff -u -p -w -r1.3704.2.1 ChangeLog
--- mail/ChangeLog	2 Sep 2005 17:59:40 -0000	1.3704.2.1
+++ mail/ChangeLog	29 Sep 2005 10:05:34 -0000
@@ -1,3 +1,12 @@
+2005-09-29  Shreyas Srinivasan  <sshreyas novell com>
+
+	* Makefile.am: Split component library (libevolution-mail.la)
+	into libevolution-mail.la and libevolution-mail-component.la.
+	Fixes the plugin portability issues on the MAC OS X.
+
+	* GNOME_Evolution_Mail.server.in.in: Change the mail factory to
+	libevolution-mail-component.la
+	
 2005-09-02  Harish Krishnaswamy  <kharish novell com>
 
 	* default/C/Inbox: Update the Welcome mail.
Index: mail/Makefile.am
===================================================================
RCS file: /cvs/gnome/evolution/mail/Makefile.am,v
retrieving revision 1.269
diff -u -p -w -r1.269 Makefile.am
--- mail/Makefile.am	18 Aug 2005 04:36:34 -0000	1.269
+++ mail/Makefile.am	29 Sep 2005 10:05:37 -0000
@@ -30,7 +30,9 @@ INCLUDES =						\
 	-DPREFIX=\""$(prefix)"\"			\
 	-DG_LOG_DOMAIN=\"evolution-mail\"
 
-component_LTLIBRARIES = libevolution-mail.la
+privlib_LTLIBRARIES = libevolution-mail.la
+component_LTLIBRARIES = libevolution-mail-component.la 
+
 
 # Code generation for Spell.idl
 
@@ -97,7 +99,6 @@ mailinclude_HEADERS =				\
 	em-utils.h				\
 	em-vfs-stream.h				\
 	mail-autofilter.h			\
-	mail-component.h			\
 	mail-config.h				\
 	mail-mt.h				\
 	mail-ops.h				\
@@ -108,6 +109,11 @@ mailinclude_HEADERS =				\
 
 # libevolution-mail
 
+libevolution_mail_component_la_SOURCES =	\
+	mail-component-factory.c		\
+	mail-component.c			\
+	mail-component.h
+
 libevolution_mail_la_SOURCES =			\
 	$(SPELL_IDL_GENERATED)			\
 	$(MAIL_IDL_GENERATED)			\
@@ -179,8 +185,6 @@ libevolution_mail_la_SOURCES =			\
 	em-vfolder-rule.h			\
 	em-vfs-stream.c				\
 	mail-autofilter.c			\
-	mail-component-factory.c		\
-	mail-component.c			\
 	mail-config-factory.c			\
 	mail-config-factory.h			\
 	mail-config.c				\
@@ -210,6 +214,9 @@ SMIME_LIBS =						\
 	$(top_builddir)/smime/gui/libevolution-smime.la
 endif
 
+libevolution_mail_component_la_LIBADD =				\
+	$(top_builddir)/mail/libevolution-mail.la
+
 libevolution_mail_la_LIBADD =					\
 	$(top_builddir)/mail/importers/libevolution-mail-importers.la\
 	$(top_builddir)/e-util/libeutil.la			\
@@ -231,8 +238,13 @@ libevolution_mail_la_LIBADD =					\
 	$(CAMEL_LIBS)						\
 	$(REGEX_LIBS)
 
-libevolution_mail_la_LDFLAGS =				\
+libevolution_mail_component_la_LDFLAGS =		\
 	-avoid-version -module $(NO_UNDEFINED)
+
+libevolution_mail_la_LDFLAGS =				\
+	-avoid-version $(NO_UNDEFINED)
+
+libevolution_mail_component_la_DEPENDENCIES = libevolution-mail.la
 
 libevolution_mail_la_DEPENDENCIES = em-filter-i18n.h
 
Index: mail/GNOME_Evolution_Mail.server.in.in
===================================================================
RCS file: /cvs/gnome/evolution/mail/GNOME_Evolution_Mail.server.in.in,v
retrieving revision 1.26
diff -u -p -w -r1.26 GNOME_Evolution_Mail.server.in.in
--- mail/GNOME_Evolution_Mail.server.in.in	18 Jun 2005 11:32:35 -0000	1.26
+++ mail/GNOME_Evolution_Mail.server.in.in	29 Sep 2005 10:05:37 -0000
@@ -5,7 +5,7 @@
   <!-- (factory) -->
   <oaf_server iid="OAFIID:GNOME_Evolution_Mail_Factory:@VERSION@"
 	      type="shlib"
-	      location="@COMPONENTDIR@/libevolution-mail SOEXT@">
+	      location="@COMPONENTDIR@/libevolution-mail-component SOEXT@">
 
     <oaf_attribute name="repo_ids" type="stringv">
       <item value="IDL:GNOME/ObjectFactory:1.0"/>
Index: calendar/ChangeLog
===================================================================
RCS file: /cvs/gnome/evolution/calendar/ChangeLog,v
retrieving revision 1.2802.2.1
diff -u -p -w -r1.2802.2.1 ChangeLog
--- calendar/ChangeLog	2 Sep 2005 14:17:35 -0000	1.2802.2.1
+++ calendar/ChangeLog	29 Sep 2005 10:26:36 -0000
@@ -1,3 +1,12 @@
+2005-09-29  Shreyas Srinivasan  <sshreyas novell com>
+
+	* Makefile.am: Split component library (libevolution-calendar.la)
+	into libevolution-calendar.la and libevolution-calendar-component.la.
+	Fixes the plugin portability issues on the MAC OS X.
+
+	* GNOME_Evolution_Calendar.server.in.in: Change the factory to
+	libevolution-calendar-component.la
+
 2005-09-01  Dinesh Layek  <ldinesh novell com>
 
 	Fixes #314922, 311694, 314918
Index: calendar/gui/Makefile.am
===================================================================
RCS file: /cvs/gnome/evolution/calendar/gui/Makefile.am,v
retrieving revision 1.306
diff -u -p -w -r1.306 Makefile.am
--- calendar/gui/Makefile.am	18 Aug 2005 04:33:38 -0000	1.306
+++ calendar/gui/Makefile.am	29 Sep 2005 10:26:36 -0000
@@ -44,7 +44,8 @@ MARSHAL_GENERATED = e-calendar-marshal.c
 
 SUBDIRS = alarm-notify dialogs
 
-component_LTLIBRARIES = libevolution-calendar.la
+privlib_LTLIBRARIES = libevolution-calendar.la
+component_LTLIBRARIES = libevolution-calendar-component.la
 
 ecalendarincludedir = $(privincludedir)/calendar/gui
 
@@ -77,6 +78,12 @@ etspec_DATA =				\
 	e-meeting-time-sel.etspec	\
 	e-cal-list-view.etspec
 
+libevolution_calendar_component_la_SOURCES=	\
+	calendar-view-factory.c			\
+	calendar-view-factory.h			\
+	comp-editor-factory.c			\
+	comp-editor-factory.h			
+
 libevolution_calendar_la_SOURCES =		\
 	$(IDL_GENERATED)			\
 	$(MARSHAL_GENERATED)			\
@@ -91,10 +98,6 @@ libevolution_calendar_la_SOURCES =		\
 	calendar-component.h			\
 	calendar-view.c				\
 	calendar-view.h				\
-	calendar-view-factory.c			\
-	calendar-view-factory.h			\
-	comp-editor-factory.c			\
-	comp-editor-factory.h			\
 	comp-util.c				\
 	comp-util.h				\
 	control-factory.c			\
@@ -213,6 +216,9 @@ libevolution_calendar_la_SOURCES =		\
 	weekday-picker.c			\
 	weekday-picker.h
 
+libevolution_calendar_component_la_LIBADD =				\
+	$(top_builddir)/calendar/gui/libevolution-calendar.la
+
 libevolution_calendar_la_LIBADD =					\
 	$(WIN32_BOOTSTRAP_LIBS)						\
 	$(top_builddir)/widgets/menus/libmenus.la			\
@@ -228,9 +234,13 @@ libevolution_calendar_la_LIBADD =					\
 	$(CAMEL_LIBS)							\
 	$(EVOLUTION_CALENDAR_LIBS)
 
-libevolution_calendar_la_LDFLAGS = -avoid-version -module $(NO_UNDEFINED)
+libevolution_calendar_component_la_LDFLAGS = -avoid-version -module $(NO_UNDEFINED)
+
+libevolution_calendar_la_LDFLAGS = -avoid-version $(NO_UNDEFINED)
+
+libevolution_calendar_component_la_DEPENDENCIES = libevolution-calendar.la
 
-server_in_files = GNOME_Evolution_Calendar.server.in.in
+Server_in_files = GNOME_Evolution_Calendar.server.in.in
 server_DATA = $(server_in_files:.server.in.in=_$(BASE_VERSION).server)
 @EVO_SERVER_RULE@
 @INTLTOOL_SERVER_RULE@
Index: calendar/gui/GNOME_Evolution_Calendar.server.in.in
===================================================================
RCS file: /cvs/gnome/evolution/calendar/gui/GNOME_Evolution_Calendar.server.in.in,v
retrieving revision 1.17
diff -u -p -w -r1.17 GNOME_Evolution_Calendar.server.in.in
--- calendar/gui/GNOME_Evolution_Calendar.server.in.in	18 Jun 2005 11:31:51 -0000	1.17
+++ calendar/gui/GNOME_Evolution_Calendar.server.in.in	29 Sep 2005 10:26:37 -0000
@@ -2,7 +2,7 @@
 
 <oaf_server iid="OAFIID:GNOME_Evolution_Calendar_Factory:@VERSION@"
             type="shlib"
-            location="@COMPONENTDIR@/libevolution-calendar SOEXT@">
+            location="@COMPONENTDIR@/libevolution-calendar-component SOEXT@">
 
 	<oaf_attribute name="repo_ids" type="stringv">
 		<item value="IDL:GNOME/ObjectFactory:1.0"/>
Index: addressbook/ChangeLog
===================================================================
RCS file: /cvs/gnome/evolution/addressbook/ChangeLog,v
retrieving revision 1.1990.2.1
diff -u -p -w -r1.1990.2.1 ChangeLog
--- addressbook/ChangeLog	14 Sep 2005 10:32:37 -0000	1.1990.2.1
+++ addressbook/ChangeLog	29 Sep 2005 10:33:31 -0000
@@ -1,3 +1,12 @@
+2005-09-29  Shreyas Srinivasan  <sshreyas novell com>
+
+	* gui/component/Makefile.am: Split component library (libevolution-addressbook.la)
+	into libevolution-addressbook.la and libevolution-mail-component.la.
+	Fixes the plugin portability issues on the MAC OS X.
+
+	* gui/component/GNOME_Evolution_Addressbook.server.in.in: Change the factory to
+	libevolution-addressbook-component.la
+
 2005-09-14  Sushma Rai  <rsushma novell com>
 
 	* gui/contact-list-editor/e-contact-list-editor.etspec: Set selection
Index: addressbook/gui/component/Makefile.am
===================================================================
RCS file: /cvs/gnome/evolution/addressbook/gui/component/Makefile.am,v
retrieving revision 1.114
diff -u -p -w -r1.114 Makefile.am
--- addressbook/gui/component/Makefile.am	26 Jul 2005 16:30:51 -0000	1.114
+++ addressbook/gui/component/Makefile.am	29 Sep 2005 10:33:31 -0000
@@ -16,11 +16,16 @@ INCLUDES =									\
 	$(LDAP_CFLAGS)						\
 	$(EVOLUTION_ADDRESSBOOK_CFLAGS)
 
-component_LTLIBRARIES = libevolution-addressbook.la
+component_LTLIBRARIES = libevolution-addressbook-component.la
 
-libevolution_addressbook_la_SOURCES = 	\
+privlib_LTLIBRARIES = libevolution-addressbook.la
+
+libevolution_addressbook_component_la_SOURCES = 	\
 	addressbook-component.c		\
 	addressbook-component.h		\
+	component-factory.c
+
+libevolution_addressbook_la_SOURCES = 	\
 	addressbook-config.c		\
 	addressbook-config.h		\
 	addressbook-migrate.c		\
@@ -30,8 +35,8 @@ libevolution_addressbook_la_SOURCES = 	\
 	addressbook.c			\
 	addressbook.h			\
 	addressbook-view.c		\
-	addressbook-view.h		\
-	component-factory.c
+	addressbook-view.h		
+
 
 #	$(top_builddir)/addressbook/printing/libecontactprint.la
 
@@ -39,6 +44,10 @@ if ENABLE_SMIME
 SMIME_LIB=$(top_builddir)/smime/gui/libevolution-smime.la
 endif
 
+libevolution_addressbook_component_la_LIBADD =						\
+	$(SMIME_LIB)									\
+	$(top_builddir)/addressbook/gui/component/libevolution-addressbook.la
+
 libevolution_addressbook_la_LIBADD =							\
 	$(SMIME_LIB)									\
 	$(top_builddir)/e-util/libeutil.la						\
@@ -60,8 +69,11 @@ libevolution_addressbook_la_LIBADD =				
 	$(EVOLUTION_ADDRESSBOOK_LIBS) $(LDAP_LIBS)
 
 
+libevolution_addressbook_la_LDFLAGS = -avoid-version $(NO_UNDEFINED)
+
+libevolution_addressbook_component_la_LDFLAGS = -module -avoid-version $(NO_UNDEFINED)
 
-libevolution_addressbook_la_LDFLAGS = -module -avoid-version $(NO_UNDEFINED)
+libevolution_addressbook_component_la_DEPENDENCIES = libevolution-addressbook.la
 
 # GConf schemas
 
Index: addressbook/gui/component/GNOME_Evolution_Addressbook.server.in.in
===================================================================
RCS file: /cvs/gnome/evolution/addressbook/gui/component/GNOME_Evolution_Addressbook.server.in.in,v
retrieving revision 1.22
diff -u -p -w -r1.22 GNOME_Evolution_Addressbook.server.in.in
--- addressbook/gui/component/GNOME_Evolution_Addressbook.server.in.in	22 Jul 2005 11:34:39 -0000	1.22
+++ addressbook/gui/component/GNOME_Evolution_Addressbook.server.in.in	29 Sep 2005 10:33:31 -0000
@@ -2,7 +2,7 @@
 
 <oaf_server iid="OAFIID:GNOME_Evolution_Addressbook_Factory:@VERSION@"
             type="shlib"
-            location="@COMPONENTDIR@/libevolution-addressbook SOEXT@">
+            location="@COMPONENTDIR@/libevolution-addressbook-component SOEXT@">
 
 	<oaf_attribute name="repo_ids" type="stringv">
 		<item value="IDL:GNOME/ObjectFactory:1.0"/>


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]