Bug 394502 Switch SeaMonkey to a default configuration of libxul with all comm-central libs being linked into libxul. r=KaiRo,feedback=Callek. bustage fix for CLOSED TREE
authorMark Banner <bugzilla@standard8.plus.com>
Wed, 22 Sep 2010 14:22:39 +0100
changeset 6392 3c34cdb6938b9c0f334d4ead075cf7f3198afaa2
parent 6391 47de99b5e40a28bff2aaca2be06b4ef09d897413
child 6393 6740532dfccb940c4a590a443f31aae0f95e1f79
push idunknown
push userunknown
push dateunknown
reviewersKaiRo
bugs394502
Bug 394502 Switch SeaMonkey to a default configuration of libxul with all comm-central libs being linked into libxul. r=KaiRo,feedback=Callek. bustage fix for CLOSED TREE
suite/build.mk
suite/components/Makefile.in
suite/components/nsSuiteComponents.h
suite/confvars.sh
suite/installer/package-manifest.in
suite/installer/removed-files.in
suite/makefiles.sh
--- a/suite/build.mk
+++ b/suite/build.mk
@@ -32,51 +32,52 @@
 # and other provisions required by the GPL or the LGPL. If you do not delete
 # the provisions above, a recipient may use your version of this file under
 # the terms of any one of the MPL, the GPL or the LGPL.
 #
 # ***** END LICENSE BLOCK *****
 
 ifndef COMM_BUILD # Mozilla Makefile
 
+ifdef MOZ_ENABLE_LIBXUL
+SUBDIR=/..
+include $(topsrcdir)/../bridge/bridge.mk
+
+APP_LIBXUL_DIRS += \
+	$(DEPTH)/../suite/components \
+	$(NULL)
+endif
+
 ifndef LIBXUL_SDK
 include $(topsrcdir)/toolkit/toolkit-tiers.mk
 endif
 
 TIERS += app
 
-tier_app_dirs += xpfe/components/autocomplete
-
 ifdef MOZ_EXTENSIONS
 tier_app_dirs += extensions
 endif
 
 else # toplevel Makefile
 
-TIERS += app
+ifndef MOZ_ENABLE_LIBXUL
+SUBDIR=
+include $(topsrcdir)/bridge/bridge.mk
+tier_app_staticdirs += $(APP_LIBXUL_STATICDIRS)
+tier_app_dirs += $(APP_LIBXUL_DIRS)
+endif
 
-ifdef MOZ_LDAP_XPCOM
-tier_app_staticdirs += directory/c-sdk
-tier_app_dirs += directory/xpcom
-endif
+TIERS += app
 
 ifdef MOZ_COMPOSER
 tier_app_dirs += editor/ui
 endif
 
 tier_app_dirs += $(MOZ_BRANDING_DIRECTORY)
 
-ifdef MOZ_MAIL_NEWS
-tier_app_dirs += \
-	mailnews/base \
-	mailnews/mime/public \
-	mailnews \
-	$(NULL)
-endif
-
 ifdef MOZ_CALENDAR
 tier_app_dirs += calendar/lightning
 endif
 
 tier_app_dirs += \
 	suite \
 	$(NULL)
 
new file mode 100644
--- /dev/null
+++ b/suite/components/Makefile.in
@@ -0,0 +1,49 @@
+# ***** BEGIN LICENSE BLOCK *****
+# Version: MPL 1.1/GPL 2.0/LGPL 2.1
+#
+# The contents of this file are subject to the Mozilla Public License Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+# http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS" basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# The Original Code is suite components.
+#
+# The Initial Developer of the Original Code is
+# the Mozilla Foundation.
+# Portions created by the Initial Developer are Copyright (C) 2010
+# the Initial Developer. All Rights Reserved.
+#
+# Contributor(s):
+#   Mark Banner <bugzilla@standard8.plus.com>
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 2 or later (the "GPL"), or
+# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+# in which case the provisions of the GPL or the LGPL are applicable instead
+# of those above. If you wish to allow use of your version of this file only
+# under the terms of either the GPL or the LGPL, and not to allow others to
+# use your version of this file under the terms of the MPL, indicate your
+# decision by deleting the provisions above and replace them with the notice
+# and other provisions required by the GPL or the LGPL. If you do not delete
+# the provisions above, a recipient may use your version of this file under
+# the terms of any one of the MPL, the GPL or the LGPL.
+#
+# ***** END LICENSE BLOCK *****
+
+DEPTH		= ../..
+topsrcdir	= @top_srcdir@
+srcdir		= @srcdir@
+VPATH		= @srcdir@
+
+include $(DEPTH)/config/autoconf.mk
+
+MODULE = suite
+
+EXPORTS = nsSuiteComponents.h
+
+include $(topsrcdir)/config/rules.mk
new file mode 100644
--- /dev/null
+++ b/suite/components/nsSuiteComponents.h
@@ -0,0 +1,44 @@
+/* ***** BEGIN LICENSE BLOCK *****
+ * Version: MPL 1.1/GPL 2.0/LGPL 2.1
+ *
+ * The contents of this file are subject to the Mozilla Public License Version
+ * 1.1 (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ * http://www.mozilla.org/MPL/
+ *
+ * Software distributed under the License is distributed on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+ * for the specific language governing rights and limitations under the
+ * License.
+ *
+ * The Original Code is Suite Components.
+ *
+ * The Initial Developer of the Original Code is
+ * the Mozilla Foundation.
+ * Portions created by the Initial Developer are Copyright (C) 2010
+ * the Initial Developer. All Rights Reserved.
+ *
+ * Contributor(s):
+ *   Mark Banner <bugzilla@standard8.plus.com>
+ *
+ * Alternatively, the contents of this file may be used under the terms of
+ * either the GNU General Public License Version 2 or later (the "GPL"), or
+ * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+ * in which case the provisions of the GPL or the LGPL are applicable instead
+ * of those above. If you wish to allow use of your version of this file only
+ * under the terms of either the GPL or the LGPL, and not to allow others to
+ * use your version of this file under the terms of the MPL, indicate your
+ * decision by deleting the provisions above and replace them with the notice
+ * and other provisions required by the GPL or the LGPL. If you do not delete
+ * the provisions above, a recipient may use your version of this file under
+ * the terms of any one of the MPL, the GPL or the LGPL.
+ *
+ * ***** END LICENSE BLOCK ***** */
+
+// When updating this file, please consider if
+// mail/components/build/nsMailComponents.h
+// needs updating to.
+
+// XXX This currently specifies nsMorkModule due to an error in the core build
+// config. Bug 598613 will fix this.
+#define APP_COMPONENT_MODULES MODULE(xpAutoComplete) MODULE(nsMailModule) MODULE(nsMsgSMIMEModule) MODULE(nsImportServiceModule) MODULE(nsLDAPProtocolModule) MODULE(nsMorkModule)
--- a/suite/confvars.sh
+++ b/suite/confvars.sh
@@ -49,13 +49,17 @@ MOZ_APP_VERSION=`cat ${_topsrcdir}/$MOZ_
 SEAMONKEY_VERSION=$MOZ_APP_VERSION
 MOZ_BRANDING_DIRECTORY=suite/branding/nightly
 MOZ_OFFICIAL_BRANDING_DIRECTORY=suite/branding/nightly
 MOZ_EXTENSIONS_DEFAULT=" venkman inspector irc gnomevfs"
 MOZ_UPDATER=1
 MOZ_HELP_VIEWER=1
 MOZ_TOOLKIT_SEARCH=
 MOZ_MORK=1
-
-# Disable libxul which is (now) the default on mozilla-central. (Bug 394502)
-MOZ_ENABLE_LIBXUL=
+MOZ_STATIC_BUILD_UNSUPPORTED=1
 # Until we can build with libxul, we can't have ipc either. (Bug 531292)
 MOZ_IPC=
+
+# XXX This currently specifies mork due to an error in the core build
+# config. Bug 598613 will fix this.
+MOZ_APP_COMPONENT_LIBS="mail msgsmime import xpautocomplete mork $LDAP_COMPONENT"
+MOZ_APP_EXTRA_LIBS="$LDAP_LIBS"
+MOZ_APP_COMPONENT_INCLUDE=nsSuiteComponents.h
--- a/suite/installer/package-manifest.in
+++ b/suite/installer/package-manifest.in
@@ -49,30 +49,22 @@
 @BINPATH@/dependentlibs.list
 #ifdef MOZ_IPC
 @BINPATH@/mozilla-runtime@BIN_SUFFIX@
 #endif
 @BINPATH@/@DLL_PREFIX@mozjs@DLL_SUFFIX@
 @BINPATH@/@DLL_PREFIX@plc4@DLL_SUFFIX@
 @BINPATH@/@DLL_PREFIX@plds4@DLL_SUFFIX@
 @BINPATH@/@DLL_PREFIX@xpcom@DLL_SUFFIX@
-#ifdef XP_OS2
-@BINPATH@/@DLL_PREFIX@xpcomcor@DLL_SUFFIX@
-#else
-@BINPATH@/@DLL_PREFIX@xpcom_core@DLL_SUFFIX@
-#endif
 @BINPATH@/@DLL_PREFIX@nspr4@DLL_SUFFIX@
-#ifndef MOZ_STATIC_BUILD
-@BINPATH@/@DLL_PREFIX@mozz@DLL_SUFFIX@
 #ifdef XP_MACOSX
 @BINPATH@/XUL
 #else
 @BINPATH@/@DLL_PREFIX@xul@DLL_SUFFIX@
 #endif
-#endif
 #ifdef WINCE
 @BINPATH@/mozce_shunt.dll
 #elifdef XP_WIN32
 #ifndef MOZ_MEMORY
 @BINPATH@/Microsoft.VC80.CRT.manifest
 @BINPATH@/msvcm80.dll
 @BINPATH@/msvcp80.dll
 @BINPATH@/msvcr80.dll
@@ -339,21 +331,16 @@
 @BINPATH@/components/inspector.xpt
 @BINPATH@/components/interfaces.manifest
 @BINPATH@/components/intl.xpt
 #ifndef MOZ_STATIC_BUILD
 @BINPATH@/components/@DLL_PREFIX@jar50@DLL_SUFFIX@
 #endif
 @BINPATH@/components/jar.xpt
 @BINPATH@/components/jsdservice.xpt
-#ifdef XP_WIN32
-@BINPATH@/components/@DLL_PREFIX@jsd3250@DLL_SUFFIX@
-#else
-@BINPATH@/components/@DLL_PREFIX@jsd@DLL_SUFFIX@
-#endif
 @BINPATH@/components/layout_base.xpt
 @BINPATH@/components/layout_forms.xpt
 #ifdef NS_PRINTING
 @BINPATH@/components/layout_printing.xpt
 #endif
 @BINPATH@/components/layout_xul_tree.xpt
 @BINPATH@/components/layout_xul.xpt
 @BINPATH@/components/locale.xpt
--- a/suite/installer/removed-files.in
+++ b/suite/installer/removed-files.in
@@ -187,16 +187,17 @@ LICENSE
 #ifdef XP_MACOSX
 libwidget.rsrc
 #endif
 modules/JSON.jsm
 modules/dbViewWrapper.js
 modules/mailViewManager.js
 modules/quickSearchManager.js
 modules/searchSpec.js
+@DLL_PREFIX@mozz@DLL_SUFFIX@
 #ifdef XP_WIN
 #ifdef MOZ_MEMORY
 Microsoft.VC80.CRT.manifest
 msvcm80.dll
 msvcp80.dll
 msvcr80.dll
 #else
 mozcpp19.dll
@@ -305,16 +306,22 @@ components/@DLL_PREFIX@msglocal@DLL_SUFF
 components/@DLL_PREFIX@msgmdn@DLL_SUFFIX@
 components/@DLL_PREFIX@msgnews@DLL_SUFFIX@
 components/@DLL_PREFIX@vcard@DLL_SUFFIX@
 #ifdef XP_OS2
 msgbsutl.dll
 #else
 @DLL_PREFIX@msgbaseutil@DLL_SUFFIX@
 #endif
+#ifdef XP_WIN32
+  components/@DLL_PREFIX@jsd3250@DLL_SUFFIX@
+#else
+  components/@DLL_PREFIX@jsd@DLL_SUFFIX@
+#endif
+
 
 #ifdef MOZ_STATIC_BUILD
 ; 'MOZ_STATIC_BUILD' case.
 components/@DLL_PREFIX@accessibility@DLL_SUFFIX@
 components/@DLL_PREFIX@appcomps@DLL_SUFFIX@
 components/@DLL_PREFIX@auth@DLL_SUFFIX@
 components/@DLL_PREFIX@autoconfig@DLL_SUFFIX@
 components/@DLL_PREFIX@chardet@DLL_SUFFIX@
@@ -368,31 +375,31 @@ components/@DLL_PREFIX@tkautocomplete@DL
 components/@DLL_PREFIX@toolkitcomps@DLL_SUFFIX@
 components/@DLL_PREFIX@txmgr@DLL_SUFFIX@
 components/@DLL_PREFIX@uconv@DLL_SUFFIX@
 components/@DLL_PREFIX@universalchardet@DLL_SUFFIX@
 components/@DLL_PREFIX@webbrwsr@DLL_SUFFIX@
 components/@DLL_PREFIX@widget_gtk2@DLL_SUFFIX@
 components/@DLL_PREFIX@windowds@DLL_SUFFIX@
 components/@DLL_PREFIX@xpautocomplete@DLL_SUFFIX@
+components/@DLL_PREFIX@xpcom_core@DLL_SUFFIX@
 components/@DLL_PREFIX@zipwriter@DLL_SUFFIX@
 #ifdef XP_MACOSX
 components/libjar50.dylib
 components/libwidget_mac.dylib
 #endif
 #ifdef XP_WIN
 components/gkwidget.dll
 components/msgMapi.dll
 components/xppref32.dll
 #endif
 @DLL_PREFIX@gkgfx@DLL_SUFFIX@
 #ifdef UNIX_BUT_NOT_MAC
 @DLL_PREFIX@gtkxtbin@DLL_SUFFIX@
 #endif
-@DLL_PREFIX@mozz@DLL_SUFFIX@
 @DLL_PREFIX@thebes@DLL_SUFFIX@
 #ifdef XP_MACOSX
 XUL
 #else
 @DLL_PREFIX@xul@DLL_SUFFIX@
 #endif
 ; MOZ_STATIC_BUILD
 #endif
--- a/suite/makefiles.sh
+++ b/suite/makefiles.sh
@@ -44,16 +44,17 @@ add_makefiles "
   suite/browser/src/Makefile
   suite/build/Makefile
   suite/debugQA/Makefile
   suite/debugQA/locales/Makefile
   suite/common/Makefile
   suite/common/public/Makefile
   suite/common/src/Makefile
   suite/common/tests/Makefile
+  suite/components/Makefile
   suite/feeds/public/Makefile
   suite/feeds/src/Makefile
   suite/installer/Makefile
   suite/installer/windows/Makefile
   suite/locales/Makefile
   suite/mailnews/Makefile
   suite/modules/Makefile
   suite/modules/test/Makefile