Bug 765294 - Fix packaging of services components; r=ted
authorGregory Szorc <gps@mozilla.com>
Fri, 22 Jun 2012 09:27:01 -0700
changeset 100396 be2ab5deb078f9daa36f139d15f2945609c61cd3
parent 100395 b4b7fb6242427f47f4528c8e4660d60c560ec523
child 100397 61aec3b7bae5c6e4cac69401c4530d027d83dd39
push idunknown
push userunknown
push dateunknown
reviewersted
bugs765294
milestone16.0a1
Bug 765294 - Fix packaging of services components; r=ted
browser/build.mk
browser/confvars.sh
browser/installer/package-manifest.in
config/autoconf.mk.in
configure.in
services/Makefile.in
services/makefiles.sh
--- a/browser/build.mk
+++ b/browser/build.mk
@@ -9,19 +9,17 @@ endif
 TIERS += app
 
 ifdef MOZ_EXTENSIONS
 tier_app_dirs += extensions
 endif
 
 tier_app_dirs += $(MOZ_BRANDING_DIRECTORY)
 
-ifdef MOZ_SERVICES_SYNC
 tier_app_dirs += services
-endif
 
 ifdef MOZ_WEBAPP_RUNTIME
 tier_app_dirs += webapprt
 endif
 
 tier_app_dirs += browser
 # Never add other tier_app_dirs after browser. They won't get packaged
 # properly on mac.
--- a/browser/confvars.sh
+++ b/browser/confvars.sh
@@ -12,16 +12,18 @@ if test "$OS_ARCH" = "WINNT"; then
   if ! test "$HAVE_64BIT_OS"; then
     MOZ_VERIFY_MAR_SIGNATURE=1
     MOZ_MAINTENANCE_SERVICE=1
   fi
 fi
 
 MOZ_CHROME_FILE_FORMAT=omni
 MOZ_SAFE_BROWSING=1
+MOZ_SERVICES_AITC=1
+MOZ_SERVICES_NOTIFICATIONS=1
 MOZ_SERVICES_SYNC=1
 MOZ_APP_VERSION=$FIREFOX_VERSION
 MOZ_EXTENSIONS_DEFAULT=" gnomevfs"
 # MOZ_APP_DISPLAYNAME will be set by branding/configure.sh
 # Changing MOZ_*BRANDING_DIRECTORY requires a clobber to ensure correct results,
 # because branding dependencies are broken.
 # MOZ_BRANDING_DIRECTORY is the default branding directory used when none is
 # specified. It should never point to the "official" branding directory.
--- a/browser/installer/package-manifest.in
+++ b/browser/installer/package-manifest.in
@@ -442,25 +442,27 @@
 #endif
 #ifdef MOZ_ENABLE_DBUS
 @BINPATH@/components/@DLL_PREFIX@dbusservice@DLL_SUFFIX@
 #endif
 @BINPATH@/components/nsINIProcessor.manifest
 @BINPATH@/components/nsINIProcessor.js
 @BINPATH@/components/nsPrompter.manifest
 @BINPATH@/components/nsPrompter.js
-#ifdef MOZ_SERVICES_SYNC
-@BINPATH@/components/SyncComponents.manifest
+#ifdef MOZ_SERVICES_AITC
 @BINPATH@/components/AitcComponents.manifest
-@BINPATH@/components/Weave.js
 @BINPATH@/components/Aitc.js
 #endif
 #ifdef MOZ_SERVICES_NOTIFICATIONS
 @BINPATH@/components/NotificationsComponents.manifest
 #endif
+#ifdef MOZ_SERVICES_SYNC
+@BINPATH@/components/SyncComponents.manifest
+@BINPATH@/components/Weave.js
+#endif
 @BINPATH@/components/TelemetryPing.js
 @BINPATH@/components/TelemetryPing.manifest
 @BINPATH@/components/messageWakeupService.js
 @BINPATH@/components/messageWakeupService.manifest
 @BINPATH@/components/SettingsManager.js
 @BINPATH@/components/SettingsManager.manifest
 @BINPATH@/components/Webapps.js
 @BINPATH@/components/Webapps.manifest
@@ -530,19 +532,24 @@
 @BINPATH@/icons/*.png
 #endif
 #endif
 
 ; [Default Preferences]
 ; All the pref files must be part of base to prevent migration bugs
 @BINPATH@/@PREF_DIR@/firefox.js
 @BINPATH@/@PREF_DIR@/firefox-branding.js
+#ifdef MOZ_SERVICES_AITC
+@BINPATH@/@PREF_DIR@/services-aitc.js
+#endif
+#ifdef MOZ_SERVICES_NOTIFICATIONS
+@BINPATH@/@PREF_DIR@/services-notifications.js
+#endif
 #ifdef MOZ_SERVICES_SYNC
 @BINPATH@/@PREF_DIR@/services-sync.js
-@BINPATH@/@PREF_DIR@/services-aitc.js
 #endif
 @BINPATH@/greprefs.js
 @BINPATH@/defaults/autoconfig/platform.js
 @BINPATH@/defaults/autoconfig/prefcalls.js
 #ifndef LIBXUL_SDK
 ; Warning: changing the path to channel-prefs.js can cause bugs (Bug 756325)
 @BINPATH@/defaults/pref/channel-prefs.js
 #else
--- a/config/autoconf.mk.in
+++ b/config/autoconf.mk.in
@@ -622,16 +622,18 @@ WRAP_SYSTEM_INCLUDES = @WRAP_SYSTEM_INCL
 
 HAVE_ARM_SIMD = @HAVE_ARM_SIMD@
 HAVE_ARM_NEON = @HAVE_ARM_NEON@
 HAVE_GCC_ALIGN_ARG_POINTER = @HAVE_GCC_ALIGN_ARG_POINTER@
 HAVE_COMPILER_FLAG_MSSSE3 = @HAVE_COMPILER_FLAG_MSSSE3@
 
 MOZ_THEME_FASTSTRIPE = @MOZ_THEME_FASTSTRIPE@
 
+MOZ_SERVICES_AITC = @MOZ_SERVICES_AITC@
+MOZ_SERVICES_NOTIFICATIONS = @MOZ_SERVICES_NOTIFICATIONS@
 MOZ_SERVICES_SYNC = @MOZ_SERVICES_SYNC@
 
 MOZ_WEBAPP_RUNTIME = @MOZ_WEBAPP_RUNTIME@
 
 MOZ_OFFICIAL_BRANDING = @MOZ_OFFICIAL_BRANDING@
 
 HAVE_CLOCK_MONOTONIC = @HAVE_CLOCK_MONOTONIC@
 REALTIME_LIBS = @REALTIME_LIBS@
--- a/configure.in
+++ b/configure.in
@@ -8209,16 +8209,28 @@ fi
 dnl NECKO_ configuration options are not global
 _NON_GLOBAL_ACDEFINES="$_NON_GLOBAL_ACDEFINES NECKO_"
 
 dnl Build Places if required
 if test "$MOZ_PLACES"; then
   AC_DEFINE(MOZ_PLACES)
 fi
 
+dnl Build Apps in the Cloud (AITC) if required
+AC_SUBST(MOZ_SERVICES_AITC)
+if test -n "$MOZ_SERVICES_AITC"; then
+  AC_DEFINE(MOZ_SERVICES_AITC)
+fi
+
+dnl Build Notifications if required
+AC_SUBST(MOZ_SERVICES_NOTIFICATIONS)
+if test -n "$MOZ_SERVICES_NOTIFICATIONS"; then
+  AC_DEFINE(MOZ_SERVICES_NOTIFICATIONS)
+fi
+
 dnl Build Sync Services if required
 AC_SUBST(MOZ_SERVICES_SYNC)
 if test -n "$MOZ_SERVICES_SYNC"; then
   AC_DEFINE(MOZ_SERVICES_SYNC)
 fi
 
 dnl ========================================================
 if test "$MOZ_DEBUG" -o "$NS_TRACE_MALLOC"; then
--- a/services/Makefile.in
+++ b/services/Makefile.in
@@ -5,13 +5,23 @@
 
 DEPTH     = ..
 topsrcdir = @top_srcdir@
 srcdir    = @srcdir@
 VPATH     = @srcdir@
 
 include $(DEPTH)/config/autoconf.mk
 
+PARALLEL_DIRS += common crypto
+
+ifdef MOZ_SERVICES_AITC
+PARALLEL_DIRS += aitc
+endif
+
+ifdef MOZ_SERVICES_NOTIFICATIONS
+PARALLEL_DIRS += notifications
+endif
+
 ifdef MOZ_SERVICES_SYNC
-PARALLEL_DIRS += aitc common crypto notifications sync
+PARALLEL_DIRS += sync
 endif
 
 include $(topsrcdir)/config/rules.mk
--- a/services/makefiles.sh
+++ b/services/makefiles.sh
@@ -1,23 +1,25 @@
 #
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
 add_makefiles "
   services/Makefile
+  services/aitc/Makefile
   services/common/Makefile
   services/crypto/Makefile
   services/crypto/component/Makefile
   services/notifications/Makefile
   services/sync/Makefile
   services/sync/locales/Makefile
 "
 
 if [ "$ENABLE_TESTS" ]; then
   add_makefiles "
+    services/aitc/tests/Makefile
     services/common/tests/Makefile
     services/crypto/tests/Makefile
     services/notifications/tests/Makefile
     services/sync/tests/Makefile
   "
 fi