Merge with mozilla-central ac667309bea6
authorDoug Turner <dougt@dougt.org>
Fri, 18 Nov 2011 15:58:04 -0800
changeset 83546 9c8859beb0aceb6eb24a692f646bc6e56c07d0f6
parent 83545 80569c9d351d9c1a850e34c646209d23e39cb278 (current diff)
parent 82095 ac667309bea6bb2b1c3e93035023ac709d013c86 (diff)
child 83547 a36e1ad44e6ca8c55a5815e20a2f2f415308d8ad
push idunknown
push userunknown
push dateunknown
milestone11.0a1
Merge with mozilla-central ac667309bea6
build/win32/mozilla-dos2unix.py
config/autoconf.mk.in
configure.in
embedding/Makefile.in
toolkit/components/places/Makefile.in
toolkit/components/places/nsAndroidHistory.cpp
toolkit/components/places/nsPlacesModule.cpp
toolkit/library/Makefile.in
toolkit/library/libxul-config.mk
toolkit/library/libxul-rules.mk
toolkit/mozapps/installer/packager.mk
deleted file mode 100755
--- a/build/win32/mozilla-dos2unix.py
+++ /dev/null
@@ -1,73 +0,0 @@
-#!/usr/bin/python
-
-import sys
-if not sys.platform == "win32":
-    raise Exception("This script was only meant for Windows.")
-
-import os
-
-def dos2unix(path):
-    print "dos2unix: %s" % path
-
-    inf = open(path, "r")
-    data = inf.read()
-    inf.close()
-
-
-    outf = open(path, "wb")
-    outf.write(data)
-    outf.close()
-
-adminfiles = [
-    "Root",
-    "Repository",
-    "Entries",
-    "Entries.Log",
-    "Entries.Static",
-    "Tag",
-    "Notify",
-    "Template"
-    ]
-
-def walkdirectory(path):
-    if not os.path.exists(os.path.join(path, "CVS")):
-        return
-
-    print "Directory: %s" % path
-
-    for f in adminfiles:
-        cvsf = os.path.join(path, "CVS", f)
-        if os.path.exists(cvsf):
-            dos2unix(cvsf)
-
-    entries = open(os.path.join(path, "CVS", "Entries"), "r")
-    for entry in entries:
-        if entry == "D\n":
-            continue
-        
-        (type, filename, rev, date, flags, extra) = entry.split('/')
-        if type == "D" or flags == "-kb" or rev[0] == "-":
-            continue
-
-        dos2unix(os.path.join(path, filename))
-
-    # Now walk subdirectories
-    for entry in os.listdir(path):
-        subdir = os.path.join(path, entry)
-        if os.path.isdir(subdir):
-            walkdirectory(subdir)
-
-topsrcdir = os.sep.join(os.path.abspath(__file__).split(os.sep)[:-3])
-
-print """This command will convert the source tree at
-%s 
-to an MSYS-compatible (unix mode) source tree. You can run this
-command multiple times safely. Are you sure you want to continue (Y/N)? """ % topsrcdir,
-sys.stdout.flush()
-print
-
-ask = raw_input()
-if len(ask) == 0 or (ask[0] != "y" and ask[0] != "Y"):
-    raise Exception("User aborted action.")
-
-walkdirectory(topsrcdir)
--- a/config/autoconf.mk.in
+++ b/config/autoconf.mk.in
@@ -135,16 +135,17 @@ MOZ_BRANDING_DIRECTORY = @MOZ_BRANDING_D
 XPCOM_USE_LEA = @XPCOM_USE_LEA@
 MOZ_INSTALLER	= @MOZ_INSTALLER@
 MOZ_UPDATER	= @MOZ_UPDATER@
 MOZ_UPDATE_CHANNEL	= @MOZ_UPDATE_CHANNEL@
 MOZ_UPDATE_PACKAGING	= @MOZ_UPDATE_PACKAGING@
 MOZ_DISABLE_PARENTAL_CONTROLS = @MOZ_DISABLE_PARENTAL_CONTROLS@
 NS_ENABLE_TSF = @NS_ENABLE_TSF@
 MOZ_SPELLCHECK = @MOZ_SPELLCHECK@
+MOZ_ANDROID_HISTORY = @MOZ_ANDROID_HISTORY@
 MOZ_JAVA_COMPOSITOR = @MOZ_JAVA_COMPOSITOR@
 MOZ_PROFILELOCKING = @MOZ_PROFILELOCKING@
 MOZ_FEEDS = @MOZ_FEEDS@
 MOZ_TOOLKIT_SEARCH = @MOZ_TOOLKIT_SEARCH@
 MOZ_PLACES = @MOZ_PLACES@
 MOZ_SAFE_BROWSING = @MOZ_SAFE_BROWSING@
 MOZ_URL_CLASSIFIER = @MOZ_URL_CLASSIFIER@
 MOZ_ZIPWRITER = @MOZ_ZIPWRITER@
--- a/config/rules.mk
+++ b/config/rules.mk
@@ -117,16 +117,29 @@ endif
 ################################################################################
 # Testing frameworks support
 ################################################################################
 
 testxpcobjdir = $(DEPTH)/_tests/xpcshell
 
 ifdef ENABLE_TESTS
 
+# Add test directories to the regular directories list. TEST_DIRS should
+# arguably have the same status as TOOL_DIRS and other *_DIRS variables. It is
+# coded this way until Makefiles stop using the "ifdef ENABLE_TESTS; DIRS +="
+# convention.
+#
+# The current developer workflow expects tests to be updated when processing
+# the default target. If we ever change this implementation, the behavior
+# should be preserved or the change should be widely communicated. A
+# consequence of not processing test dir targets during the default target is
+# that changes to tests may not be updated and code could assume to pass
+# locally against non-current test code.
+DIRS += $(TEST_DIRS)
+
 ifdef XPCSHELL_TESTS
 ifndef relativesrcdir
 $(error Must define relativesrcdir when defining XPCSHELL_TESTS.)
 endif
 
 define _INSTALL_TESTS
 $(DIR_INSTALL) $(wildcard $(srcdir)/$(dir)/*) $(testxpcobjdir)/$(relativesrcdir)/$(dir)
 
--- a/configure.in
+++ b/configure.in
@@ -4676,17 +4676,17 @@ MOZ_PDF_PRINTING=
 MOZ_DISABLE_DOMCRYPTO=
 NSS_DISABLE_DBM=
 NECKO_WIFI=1
 NECKO_COOKIES=1
 NECKO_PROTOCOLS_DEFAULT="about data file ftp http res viewsource websocket wyciwyg device"
 USE_ARM_KUSER=
 BUILD_CTYPES=1
 MOZ_USE_NATIVE_POPUP_WINDOWS=
-
+MOZ_ANDROID_HISTORY=
 
 case "${target}" in
 *darwin*)
     ACCESSIBILITY=
     ;;
 *)
     ACCESSIBILITY=1
     ;;
@@ -8460,16 +8460,17 @@ AC_SUBST(MOZ_ANGLE)
 AC_SUBST(MOZ_DIRECTX_SDK_PATH)
 AC_SUBST(MOZ_DIRECTX_SDK_CPU_SUFFIX)
 AC_SUBST(MOZ_D3DX9_VERSION)
 AC_SUBST(MOZ_D3DX9_CAB)
 AC_SUBST(MOZ_D3DCOMPILER_CAB)
 AC_SUBST(MOZ_D3DX9_DLL)
 AC_SUBST(MOZ_D3DCOMPILER_DLL)
 
+AC_SUBST(MOZ_ANDROID_HISTORY)
 AC_SUBST(ENABLE_STRIP)
 AC_SUBST(PKG_SKIP_STRIP)
 AC_SUBST(USE_ELF_DYNSTR_GC)
 AC_SUBST(USE_ELF_HACK)
 AC_SUBST(INCREMENTAL_LINKER)
 AC_SUBST(MOZ_COMPONENTS_VERSION_SCRIPT_LDFLAGS)
 AC_SUBST(MOZ_COMPONENT_NSPR_LIBS)
 
--- a/embedding/Makefile.in
+++ b/embedding/Makefile.in
@@ -48,9 +48,18 @@ MODULE       = embed
 
 DIRS = base components browser
 
 ifdef ENABLE_TESTS
 XPCSHELL_TESTS = tests/unit
 DIRS += test
 endif
 
+<<<<<<< local
+=======
+ifeq ($(MOZ_WIDGET_TOOLKIT),android)
+ifeq ($(MOZ_BUILD_APP),mobile/xul)
+DIRS += android
+endif
+endif
+
+>>>>>>> other
 include $(topsrcdir)/config/rules.mk
--- a/js/src/config/rules.mk
+++ b/js/src/config/rules.mk
@@ -117,16 +117,29 @@ endif
 ################################################################################
 # Testing frameworks support
 ################################################################################
 
 testxpcobjdir = $(DEPTH)/_tests/xpcshell
 
 ifdef ENABLE_TESTS
 
+# Add test directories to the regular directories list. TEST_DIRS should
+# arguably have the same status as TOOL_DIRS and other *_DIRS variables. It is
+# coded this way until Makefiles stop using the "ifdef ENABLE_TESTS; DIRS +="
+# convention.
+#
+# The current developer workflow expects tests to be updated when processing
+# the default target. If we ever change this implementation, the behavior
+# should be preserved or the change should be widely communicated. A
+# consequence of not processing test dir targets during the default target is
+# that changes to tests may not be updated and code could assume to pass
+# locally against non-current test code.
+DIRS += $(TEST_DIRS)
+
 ifdef XPCSHELL_TESTS
 ifndef relativesrcdir
 $(error Must define relativesrcdir when defining XPCSHELL_TESTS.)
 endif
 
 define _INSTALL_TESTS
 $(DIR_INSTALL) $(wildcard $(srcdir)/$(dir)/*) $(testxpcobjdir)/$(relativesrcdir)/$(dir)
 
--- a/toolkit/components/places/Database.cpp
+++ b/toolkit/components/places/Database.cpp
@@ -292,16 +292,22 @@ Database::~Database()
   if (gDatabase == this) {
     gDatabase = nsnull;
   }
 }
 
 nsresult
 Database::Init()
 {
+#ifdef MOZ_ANDROID_HISTORY
+  // Currently places has deeply weaved it way throughout the gecko codebase.
+  // Here we disable all database creation and loading of places.
+  return NS_ERROR_NOT_IMPLEMENTED;
+#endif
+
   MOZ_ASSERT(NS_IsMainThread());
 
   nsCOMPtr<mozIStorageService> storage =
     do_GetService(MOZ_STORAGE_SERVICE_CONTRACTID);
   NS_ENSURE_STATE(storage);
 
   // Init the database file and connect to it.
   bool databaseCreated = false;
--- a/toolkit/components/places/Makefile.in
+++ b/toolkit/components/places/Makefile.in
@@ -96,28 +96,24 @@ CPPSRCS = \
   AsyncFaviconHelpers.cpp \
   PlaceInfo.cpp \
   VisitInfo.cpp \
   Database.cpp \
   $(NULL)
 
 LOCAL_INCLUDES += -I$(srcdir)/../build
 
-ifeq ($(OS_TARGET),Android)
+ifdef MOZ_ANDROID_HISTORY
 CPPSRCS += nsAndroidHistory.cpp
 LOCAL_INCLUDES += \
   -I$(topsrcdir)/docshell/base \
   -I$(topsrcdir)/content/base/src \
   $(NULL)
 endif
 
-
-# This is the default value.  Must be in sync with the one defined in SQLite.
-DEFINES += -DSQLITE_DEFAULT_PAGE_SIZE=32768
-
 EXTRA_COMPONENTS = \
   toolkitplaces.manifest \
   nsLivemarkService.js \
   nsTaggingService.js \
   nsPlacesExpiration.js \
   PlacesCategoriesStarter.js \
   $(NULL)
 
--- a/toolkit/components/places/nsPlacesModule.cpp
+++ b/toolkit/components/places/nsPlacesModule.cpp
@@ -5,58 +5,59 @@
 #include "nsAnnotationService.h"
 #include "nsNavHistory.h"
 #include "nsNavBookmarks.h"
 #include "nsFaviconService.h"
 #include "nsPlacesImportExportService.h"
 #include "History.h"
 #include "nsDocShellCID.h"
 
-#ifdef ANDROID
+#ifdef MOZ_ANDROID_HISTORY
 #include "nsAndroidHistory.h"
 #endif
 
 using namespace mozilla::places;
 
 NS_GENERIC_FACTORY_SINGLETON_CONSTRUCTOR(nsNavHistory,
                                          nsNavHistory::GetSingleton)
 NS_GENERIC_FACTORY_SINGLETON_CONSTRUCTOR(nsAnnotationService,
                                          nsAnnotationService::GetSingleton)
 NS_GENERIC_FACTORY_SINGLETON_CONSTRUCTOR(nsNavBookmarks,
                                          nsNavBookmarks::GetSingleton)
 NS_GENERIC_FACTORY_SINGLETON_CONSTRUCTOR(nsFaviconService,
                                          nsFaviconService::GetSingleton)
-#ifdef ANDROID
+NS_GENERIC_FACTORY_SINGLETON_CONSTRUCTOR(nsPlacesImportExportService,
+                                         nsPlacesImportExportService::GetSingleton)
+#ifdef MOZ_ANDROID_HISTORY
 NS_GENERIC_FACTORY_SINGLETON_CONSTRUCTOR(nsAndroidHistory, nsAndroidHistory::GetSingleton)
 #else
 NS_GENERIC_FACTORY_SINGLETON_CONSTRUCTOR(History, History::GetSingleton)
 #endif
-NS_GENERIC_FACTORY_SINGLETON_CONSTRUCTOR(nsPlacesImportExportService,
-                                         nsPlacesImportExportService::GetSingleton)
 
 NS_GENERIC_FACTORY_CONSTRUCTOR(nsAnnoProtocolHandler)
 NS_DEFINE_NAMED_CID(NS_NAVHISTORYSERVICE_CID);
 NS_DEFINE_NAMED_CID(NS_ANNOTATIONSERVICE_CID);
 NS_DEFINE_NAMED_CID(NS_ANNOPROTOCOLHANDLER_CID);
 NS_DEFINE_NAMED_CID(NS_NAVBOOKMARKSSERVICE_CID);
 NS_DEFINE_NAMED_CID(NS_FAVICONSERVICE_CID);
-#ifdef ANDROID
+NS_DEFINE_NAMED_CID(NS_PLACESIMPORTEXPORTSERVICE_CID);
+
+#ifdef MOZ_ANDROID_HISTORY
 NS_DEFINE_NAMED_CID(NS_ANDROIDHISTORY_CID);
 #else
 NS_DEFINE_NAMED_CID(NS_HISTORYSERVICE_CID);
 #endif
-NS_DEFINE_NAMED_CID(NS_PLACESIMPORTEXPORTSERVICE_CID);
 
 const mozilla::Module::CIDEntry kPlacesCIDs[] = {
   { &kNS_NAVHISTORYSERVICE_CID, false, NULL, nsNavHistoryConstructor },
   { &kNS_ANNOTATIONSERVICE_CID, false, NULL, nsAnnotationServiceConstructor },
   { &kNS_ANNOPROTOCOLHANDLER_CID, false, NULL, nsAnnoProtocolHandlerConstructor },
   { &kNS_NAVBOOKMARKSSERVICE_CID, false, NULL, nsNavBookmarksConstructor },
   { &kNS_FAVICONSERVICE_CID, false, NULL, nsFaviconServiceConstructor },
-#ifdef ANDROID
+#ifdef MOZ_ANDROID_HISTORY
   { &kNS_ANDROIDHISTORY_CID, false, NULL, nsAndroidHistoryConstructor },
 #else
   { &kNS_HISTORYSERVICE_CID, false, NULL, HistoryConstructor },
 #endif
   { &kNS_PLACESIMPORTEXPORTSERVICE_CID, false, NULL, nsPlacesImportExportServiceConstructor },
   { NULL }
 };
 
@@ -64,17 +65,17 @@ const mozilla::Module::ContractIDEntry k
   { NS_NAVHISTORYSERVICE_CONTRACTID, &kNS_NAVHISTORYSERVICE_CID },
   { NS_GLOBALHISTORY2_CONTRACTID, &kNS_NAVHISTORYSERVICE_CID },
   { NS_DOWNLOADHISTORY_CONTRACTID, &kNS_NAVHISTORYSERVICE_CID },
   { NS_ANNOTATIONSERVICE_CONTRACTID, &kNS_ANNOTATIONSERVICE_CID },
   { NS_NETWORK_PROTOCOL_CONTRACTID_PREFIX "moz-anno", &kNS_ANNOPROTOCOLHANDLER_CID },
   { NS_NAVBOOKMARKSSERVICE_CONTRACTID, &kNS_NAVBOOKMARKSSERVICE_CID },
   { NS_FAVICONSERVICE_CONTRACTID, &kNS_FAVICONSERVICE_CID },
   { "@mozilla.org/embeddor.implemented/bookmark-charset-resolver;1", &kNS_NAVHISTORYSERVICE_CID },
-#ifdef ANDROID
+#ifdef MOZ_ANDROID_HISTORY
   { NS_IHISTORY_CONTRACTID, &kNS_ANDROIDHISTORY_CID },
 #else
   { NS_IHISTORY_CONTRACTID, &kNS_HISTORYSERVICE_CID },
 #endif
   { NS_PLACESIMPORTEXPORTSERVICE_CONTRACTID, &kNS_PLACESIMPORTEXPORTSERVICE_CID },
   { NULL }
 };
 
--- a/toolkit/library/Makefile.in
+++ b/toolkit/library/Makefile.in
@@ -15,35 +15,36 @@
 # The Original Code is mozilla.org code.
 #
 # The Initial Developer of the Original Code is
 # Benjamin Smedberg <benjamin@smedbergs.us>
 # Portions created by the Initial Developer are Copyright (C) 1998
 # the Initial Developer. All Rights Reserved.
 #
 # Contributor(s):
+#   Shawn Wilsher <me@shawnwilsher.com>
 #
 # Alternatively, the contents of this file may be used under the terms of
 # either of 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@
+DEPTH     = ../..
+topsrcdir = @top_srcdir@
+srcdir    = @srcdir@
+VPATH     = @srcdir@
 
 include $(DEPTH)/config/autoconf.mk
 
 include $(topsrcdir)/rdf/util/src/objs.mk
 include $(topsrcdir)/intl/unicharutil/util/objs.mk
 
 MODULE = libxul
 LIBRARY_NAME = xul
@@ -71,103 +72,439 @@ ifeq ($(OS_ARCH),OS2)
 CPPSRCS += dlldeps-xul.cpp
 endif
 
 ifneq (,$(MOZ_ENABLE_GTK2))
 DEFINES += -DMOZ_ENABLE_GTK2
 endif
 
 SHARED_LIBRARY_LIBS += \
-	$(DEPTH)/toolkit/xre/$(LIB_PREFIX)xulapp_s.$(LIB_SUFFIX) \
-	$(NULL)
+  $(DEPTH)/toolkit/xre/$(LIB_PREFIX)xulapp_s.$(LIB_SUFFIX) \
+  $(NULL)
 
 SHARED_LIBRARY_LIBS += \
-	$(foreach component,$(COMPONENT_LIBS),$(DEPTH)/staticlib/components/$(LIB_PREFIX)$(component).$(LIB_SUFFIX)) \
-	$(foreach lib,$(STATIC_LIBS),$(DEPTH)/staticlib/$(LIB_PREFIX)$(lib).$(LIB_SUFFIX)) \
+  $(foreach component,$(COMPONENT_LIBS),$(DEPTH)/staticlib/components/$(LIB_PREFIX)$(component).$(LIB_SUFFIX)) \
+  $(foreach lib,$(STATIC_LIBS),$(DEPTH)/staticlib/$(LIB_PREFIX)$(lib).$(LIB_SUFFIX)) \
+  $(NULL)
+
+CPPSRCS += \
+  nsStaticXULComponents.cpp \
+  $(NULL)
+
+ifeq ($(OS_ARCH),WINNT)
+REQUIRES += widget gfx
+CPPSRCS += \
+  nsDllMain.cpp \
+  $(NULL)
+endif
+
+ifeq ($(OS_ARCH)_$(GNU_CC),WINNT_)
+CPPSRCS += \
+  nsGFXDeps.cpp \
+  $(NULL)
+
+RCINCLUDE = xulrunner.rc
+
+ifndef MOZ_NATIVE_ZLIB
+CPPSRCS += dlldeps-zlib.cpp
+endif
+
+LOCAL_INCLUDES += -I$(topsrcdir)/widget/src/windows
+LOCAL_INCLUDES += -I$(topsrcdir)/xpcom/base
+endif
+
+ifneq (,$(filter WINNT OS2,$(OS_ARCH)))
+REQUIRES += libreg
+DEFINES += -DZLIB_DLL=1
+endif
+
+ifeq ($(OS_ARCH),OS2)
+REQUIRES += widget gfx
+
+CPPSRCS += \
+  nsGFXDeps.cpp \
+  $(NULL)
+
+ifndef MOZ_NATIVE_ZLIB
+CPPSRCS += dlldeps-zlib.cpp
+endif
+
+RESFILE = xulrunos2.res
+RCFLAGS += -i $(topsrcdir)/widget/src/os2
+
+LOCAL_INCLUDES += -I$(topsrcdir)/widget/src/os2
+LOCAL_INCLUDES += -I$(topsrcdir)/xpcom/base
+endif
+
+# dependent libraries
+STATIC_LIBS += \
+  jsipc_s \
+  domipc_s \
+  domplugins_s \
+  mozipc_s \
+  mozipdlgen_s \
+  ipcshell_s \
+  gfx2d \
+  gfxipc_s \
+  hal_s \
+  $(NULL)
+
+ifdef MOZ_IPDL_TESTS
+STATIC_LIBS += ipdlunittest_s
+endif
+
+ifeq (Linux,$(OS_ARCH))
+ifneq (Android,$(OS_TARGET))
+OS_LIBS += -lrt
+endif
+endif
+
+STATIC_LIBS += \
+  xpcom_core \
+  ucvutil_s \
+  chromium_s \
+  mozreg_s \
+  $(NULL)
+
+# component libraries
+COMPONENT_LIBS += \
+  necko \
+  uconv \
+  i18n \
+  chardet \
+  jar$(VERSION_NUMBER) \
+  startupcache \
+  pref \
+  htmlpars \
+  imglib2 \
+  gkgfx \
+  gklayout \
+  docshell \
+  embedcomponents \
+  webbrwsr \
+  nsappshell \
+  txmgr \
+  commandlines \
+  toolkitcomps \
+  pipboot \
+  pipnss \
+  appcomps \
+  jsreflect \
+  composer \
+  jetpack_s \
+  telemetry \
+  jsdebugger \
+  storagecomps \
+  rdf \
+  windowds \
+  $(NULL)
+
+ifdef BUILD_CTYPES
+COMPONENT_LIBS += \
+  jsctypes \
+  $(NULL)
+endif
+
+COMPONENT_LIBS += \
+  jsperf \
+  gkplugin \
+  $(NULL)
+
+ifdef MOZ_XUL
+ifdef MOZ_ENABLE_GTK2
+COMPONENT_LIBS += \
+  unixproxy \
+  $(NULL)
+endif
+endif
+
+ifneq (,$(filter cocoa,$(MOZ_WIDGET_TOOLKIT)))
+COMPONENT_LIBS += \
+  osxproxy \
+  $(NULL)
+endif
+
+ifdef MOZ_XUL
+ifeq (qt,$(MOZ_WIDGET_TOOLKIT))
+COMPONENT_LIBS += \
+        unixproxy \
+        $(NULL)
+endif
+endif
+
+ifneq (,$(filter windows,$(MOZ_WIDGET_TOOLKIT)))
+COMPONENT_LIBS += \
+  windowsproxy \
+  $(NULL)
+endif
+
+ifdef MOZ_JSDEBUGGER
+DEFINES += -DMOZ_JSDEBUGGER
+COMPONENT_LIBS += \
+  jsd \
+  $(NULL)
+endif
+
+ifdef MOZ_PREF_EXTENSIONS
+DEFINES += -DMOZ_PREF_EXTENSIONS
+COMPONENT_LIBS += \
+  autoconfig \
+  $(NULL)
+endif
+
+ifdef MOZ_AUTH_EXTENSION
+COMPONENT_LIBS += auth
+DEFINES += -DMOZ_AUTH_EXTENSION
+endif
+
+ifdef MOZ_PERMISSIONS
+COMPONENT_LIBS += cookie permissions
+DEFINES += -DMOZ_PERMISSIONS
+endif
+
+ifdef MOZ_UNIVERSALCHARDET
+COMPONENT_LIBS += universalchardet
+DEFINES += -DMOZ_UNIVERSALCHARDET
+endif
+
+ifeq (,$(filter android gonk qt os2 cocoa windows,$(MOZ_WIDGET_TOOLKIT)))
+ifdef MOZ_XUL
+COMPONENT_LIBS += fileview
+DEFINES += -DMOZ_FILEVIEW
+endif
+endif
+
+ifdef MOZ_PLACES
+COMPONENT_LIBS += \
+	places \
 	$(NULL)
+endif
 
-include $(srcdir)/libxul-config.mk
+ifdef MOZ_XUL
+COMPONENT_LIBS += \
+	tkautocomplete \
+	satchel \
+	pippki \
+	$(NULL)
+endif
+
+ifdef MOZ_ENABLE_GTK2
+COMPONENT_LIBS += widget_gtk2
+ifdef MOZ_PREF_EXTENSIONS
+COMPONENT_LIBS += system-pref
+endif
+endif
+
+ifdef MOZ_ENABLE_GTK2
+ifdef MOZ_X11
+STATIC_LIBS += gtkxtbin
+endif
+endif
+
+# Platform-specific icon channel stuff - supported mostly-everywhere
+ifneq (,$(filter windows os2 mac cocoa gtk2 qt android,$(MOZ_WIDGET_TOOLKIT)))
+DEFINES += -DICON_DECODER
+COMPONENT_LIBS += imgicon
+endif
+
+ifeq ($(MOZ_WIDGET_TOOLKIT),android)
+COMPONENT_LIBS += widget_android
+endif
+
+ifeq ($(MOZ_WIDGET_TOOLKIT),gonk)
+COMPONENT_LIBS += widget_gonk
+endif
+
+STATIC_LIBS += thebes ycbcr
+
+ifeq ($(MOZ_WIDGET_TOOLKIT),android)
+STATIC_LIBS += profiler skia-npapi
+endif
+
+STATIC_LIBS += angle
+
+ifeq (windows,$(MOZ_WIDGET_TOOLKIT))
+COMPONENT_LIBS += gkwidget
+endif
+ifeq (os2,$(MOZ_WIDGET_TOOLKIT))
+COMPONENT_LIBS += wdgtos2
+endif
+ifeq (cocoa,$(MOZ_WIDGET_TOOLKIT))
+COMPONENT_LIBS += widget_mac
+endif
+ifeq (qt,$(MOZ_WIDGET_TOOLKIT))
+COMPONENT_LIBS += widget_qt
+endif
+
+ifdef ACCESSIBILITY
+COMPONENT_LIBS += accessibility
+endif
+
+ifdef MOZ_ENABLE_XREMOTE
+COMPONENT_LIBS += remoteservice
+endif
+
+ifdef MOZ_SPELLCHECK
+DEFINES += -DMOZ_SPELLCHECK
+COMPONENT_LIBS += spellchecker
+endif
+
+ifdef MOZ_ZIPWRITER
+DEFINES += -DMOZ_ZIPWRITER
+COMPONENT_LIBS += zipwriter
+endif
+
+COMPONENT_LIBS += services-crypto
+
+ifdef MOZ_DEBUG
+ifdef ENABLE_TESTS
+COMPONENT_LIBS += gkdebug
+endif
+endif
+
+ifdef MOZ_APP_COMPONENT_LIBS
+COMPONENT_LIBS += $(MOZ_APP_COMPONENT_LIBS)
+endif
+
+ifeq ($(MOZ_WIDGET_TOOLKIT),cocoa)
+OS_LIBS += -framework OpenGL -lcups
+endif
+
+EXTRA_DSO_LDOPTS += \
+  $(LIBS_DIR) \
+  $(JPEG_LIBS) \
+  $(PNG_LIBS) \
+  $(QCMS_LIBS) \
+  $(MOZ_JS_LIBS) \
+  $(NSS_LIBS) \
+  $(MOZ_CAIRO_LIBS) \
+  $(MOZ_HARFBUZZ_LIBS) \
+  $(MOZ_OTS_LIBS) \
+  $(MOZ_APP_EXTRA_LIBS) \
+  $(SQLITE_LIBS) \
+  $(NULL)
+
+ifdef MOZ_NATIVE_ZLIB
+EXTRA_DSO_LDOPTS += $(ZLIB_LIBS)
+else
+EXTRA_DSO_LDOPTS += $(MOZ_ZLIB_LIBS)
+endif
+
+ifdef MOZ_NATIVE_HUNSPELL
+EXTRA_DSO_LDOPTS += $(MOZ_HUNSPELL_LIBS)
+endif
+
+ifdef MOZ_NATIVE_LIBEVENT
+EXTRA_DSO_LDOPTS += $(MOZ_LIBEVENT_LIBS)
+endif
+
+ifdef MOZ_NATIVE_LIBVPX
+EXTRA_DSO_LDOPTS += $(MOZ_LIBVPX_LIBS)
+endif
+
+ifdef MOZ_SYDNEYAUDIO
+ifeq ($(OS_ARCH),Linux)
+EXTRA_DSO_LDOPTS += $(MOZ_ALSA_LIBS)
+endif
+endif
+
+ifdef HAVE_CLOCK_MONOTONIC
+EXTRA_DSO_LDOPTS += $(REALTIME_LIBS)
+endif
+
+ifeq (,$(filter-out cocoa android windows,$(MOZ_WIDGET_TOOLKIT)))
+EXTRA_DSO_LDOPTS += $(MOZ_SKIA_LIBS)
+endif
+
+ifeq (android,$(MOZ_WIDGET_TOOLKIT))
+OS_LIBS += -lGLESv2
+endif
+
+ifeq (gonk,$(MOZ_WIDGET_TOOLKIT))
+OS_LIBS += -lui
+endif
 
 EXTRA_DEPS += \
-  $(srcdir)/libxul-config.mk \
-  $(srcdir)/libxul-rules.mk \
   $(topsrcdir)/intl/unicharutil/util/objs.mk \
   $(topsrcdir)/rdf/util/src/objs.mk \
   $(NULL)
 
 CPPSRCS += \
   $(INTL_UNICHARUTIL_UTIL_LCPPSRCS) \
   $(RDF_UTIL_SRC_LCPPSRCS) \
   $(NULL)
 
-GARBAGE	+= \
+GARBAGE += \
   $(INTL_UNICHARUTIL_UTIL_LCPPSRCS) \
   $(wildcard *.$(OBJ_SUFFIX)) \
   $(RDF_UTIL_SRC_LCPPSRCS) \
   $(NULL)
 
 LOCAL_INCLUDES += -I$(topsrcdir)/intl/unicharutil/util \
   -I$(topsrcdir)/intl/unicharutil/src
 
 ifneq (,$(filter OS2 WINNT,$(OS_ARCH)))
 SDK_LIBRARY = $(IMPORT_LIBRARY)
 else
 SDK_LIBRARY = $(SHARED_LIBRARY)
 endif
 
-# See bug 653662 - some builders are hitting an internal size limit
-# on incremental builds. Disable this for debug builds using VC8/9.
+# See bug 653662 - some builders are hitting an internal size limit on
+# incremental builds. Disable incremental linking for debug builds on VC8 or
+# on 32-bit hosts.
+# See: http://social.msdn.microsoft.com/Forums/en-US/vcgeneral/thread/c34d5c37-ca4a-4580-9c7c-4379a8c76d1f/
 ifeq ($(OS_ARCH),WINNT)
-ifeq (,$(filter-out 1400 1500,$(_MSC_VER)))
+IS_32BIT_HOST := $(if $(filter AMD64,$(PROCESSOR_ARCHITECTURE) $(PROCESSOR_ARCHITEW6432)),,yes)
+ifneq (,$(or $(filter 1400,$(_MSC_VER)),$(IS_32BIT_HOST)))
 ifdef MOZ_DEBUG
 EXTRA_DSO_LDOPTS += -INCREMENTAL:NO
 endif
 endif
 endif
 
 EXTRA_DSO_LDOPTS += $(LIBS_DIR) $(EXTRA_DSO_LIBS)
 
 DEFINES += -DIMPL_XREAPI
 
 EXTRA_DSO_LDOPTS += $(NSPR_LIBS) $(MOZALLOC_LIB)
 
 ifeq ($(MOZ_WIDGET_TOOLKIT),cocoa)
-CXXFLAGS	+= $(TK_CFLAGS)
+CXXFLAGS += $(TK_CFLAGS)
 OS_LIBS += \
-	-framework SystemConfiguration \
-	-framework QuickTime \
-	-framework IOKit \
-	-F/System/Library/PrivateFrameworks -framework CoreUI \
-	$(TK_LIBS) \
-	$(NULL)
+  -framework SystemConfiguration \
+  -framework QuickTime \
+  -framework IOKit \
+  -F/System/Library/PrivateFrameworks -framework CoreUI \
+  $(TK_LIBS) \
+  $(NULL)
 endif
 
 ifeq ($(OS_ARCH),Darwin)
 ifdef MOZ_SYDNEYAUDIO
 EXTRA_DSO_LDOPTS += \
-	-framework Carbon \
-	-framework CoreAudio \
-	-framework AudioToolbox \
-	-framework AudioUnit \
-	-framework IOKit \
-	-framework Foundation \
-	-framework AppKit \
-	$(NULL)
+  -framework Carbon \
+  -framework CoreAudio \
+  -framework AudioToolbox \
+  -framework AudioUnit \
+  -framework IOKit \
+  -framework Foundation \
+  -framework AppKit \
+  $(NULL)
 endif
 endif
 
 ifneq (,$(filter NetBSD OpenBSD,$(OS_ARCH)))
 ifdef MOZ_SYDNEYAUDIO
 EXTRA_DSO_LDOPTS += -lossaudio
 endif
 endif
 
 ifdef MOZ_PLATFORM_MAEMO
 EXTRA_DSO_LDOPTS += $(MOZ_PLATFORM_MAEMO_LIBS)
-endif 
+endif
 
 ifdef MOZ_ENABLE_LIBCONIC
 EXTRA_DSO_LDOPTS += $(LIBCONIC_LIBS)
 endif
 
 ifdef MOZ_ENABLE_DBUS
 EXTRA_DSO_LDOPTS += $(MOZ_DBUS_GLIB_LIBS)
 endif
@@ -223,17 +560,37 @@ ifdef MOZ_ENABLE_QT
 EXTRA_DSO_LDOPTS += $(MOZ_QT_LDFLAGS) $(XEXT_LIBS)
 endif
 
 include $(topsrcdir)/config/rules.mk
 
 export:: $(RDF_UTIL_SRC_CPPSRCS) $(INTL_UNICHARUTIL_UTIL_CPPSRCS)
 	$(INSTALL) $^ .
 
-include $(srcdir)/libxul-rules.mk
+# need widget/src/windows for resource.h (included from widget.rc)
+LOCAL_INCLUDES += \
+  -I$(topsrcdir)/config \
+  -I$(topsrcdir)/widget/src/windows \
+  -I$(topsrcdir)/widget/src/build \
+  $(NULL)
+
+OS_LIBS += $(LIBICONV)
+
+DEFINES += \
+  -D_IMPL_NS_COM \
+  -D_IMPL_NS_STRINGAPI \
+  -DEXPORT_XPT_API \
+  -DEXPORT_XPTC_API \
+  -D_IMPL_NS_GFX \
+  -D_IMPL_NS_WIDGET \
+  $(NULL)
+
+ifeq ($(MOZ_WIDGET_TOOLKIT),windows)
+OS_LIBS += $(call EXPAND_LIBNAME,usp10 oleaut32)
+endif
 
 ifeq ($(OS_ARCH),OpenBSD)
 # Needed by nsAuthGSSAPI
 EXTRA_DSO_LDOPTS += -lkrb5 -lcrypto
 endif
 
 ifdef MOZ_DEBUG
 ifdef ENABLE_TESTS
deleted file mode 100644
--- a/toolkit/library/libxul-config.mk
+++ /dev/null
@@ -1,375 +0,0 @@
-#
-# ***** 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 Mozilla libxul
-#
-# The Initial Developer of the Original Code is
-# Benjamin Smedberg <benjamin@smedbergs.us>
-#
-# Portions created by the Initial Developer are Copyright (C) 2005
-# the Initial Developer. All Rights Reserved.
-#
-# Contributor(s):
-#   Shawn Wilsher <me@shawnwilsher.com>
-#
-# Alternatively, the contents of this file may be used under the terms of
-# either of 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 *****
-
-CPPSRCS += \
-	nsStaticXULComponents.cpp \
-	$(NULL)
-
-ifeq ($(OS_ARCH),WINNT)
-REQUIRES += widget gfx
-CPPSRCS += \
-	nsDllMain.cpp \
-	$(NULL)
-endif
-
-ifeq ($(OS_ARCH)_$(GNU_CC),WINNT_)
-CPPSRCS += \
-	nsGFXDeps.cpp \
-	$(NULL)
-
-RCINCLUDE = xulrunner.rc
-
-ifndef MOZ_NATIVE_ZLIB
-CPPSRCS += dlldeps-zlib.cpp
-endif
-
-LOCAL_INCLUDES += -I$(topsrcdir)/widget/src/windows
-LOCAL_INCLUDES += -I$(topsrcdir)/xpcom/base
-endif
-
-ifneq (,$(filter WINNT OS2,$(OS_ARCH)))
-REQUIRES += libreg
-DEFINES	+= -DZLIB_DLL=1
-endif
-
-ifeq ($(OS_ARCH),OS2)
-REQUIRES += widget gfx
-
-CPPSRCS += \
-	nsGFXDeps.cpp \
-	$(NULL)
-
-ifndef MOZ_NATIVE_ZLIB
-CPPSRCS += dlldeps-zlib.cpp
-endif
-
-RESFILE = xulrunos2.res
-RCFLAGS += -i $(topsrcdir)/widget/src/os2
-
-LOCAL_INCLUDES += -I$(topsrcdir)/widget/src/os2
-LOCAL_INCLUDES += -I$(topsrcdir)/xpcom/base
-endif
-
-# dependent libraries
-STATIC_LIBS += \
-  jsipc_s \
-  domipc_s \
-  domplugins_s \
-  mozipc_s \
-  mozipdlgen_s \
-  ipcshell_s \
-  gfx2d \
-  gfxipc_s \
-  hal_s \
-  $(NULL)
-
-ifdef MOZ_IPDL_TESTS
-STATIC_LIBS += ipdlunittest_s
-endif
-
-ifeq (Linux,$(OS_ARCH))
-ifneq (Android,$(OS_TARGET))
-OS_LIBS += -lrt
-endif
-endif
-
-STATIC_LIBS += \
-	xpcom_core \
-	ucvutil_s \
-	chromium_s \
-	mozreg_s \
-	$(NULL)
-
-# component libraries
-COMPONENT_LIBS += \
-	necko \
-	uconv \
-	i18n \
-	chardet \
-	jar$(VERSION_NUMBER) \
-	startupcache \
-	pref \
-	htmlpars \
-	imglib2 \
-	gkgfx \
-	gklayout \
-	docshell \
-	embedcomponents \
-	webbrwsr \
-	nsappshell \
-	txmgr \
-	commandlines \
-	toolkitcomps \
-	pipboot \
-	pipnss \
-	appcomps \
-	jsreflect \
-	composer \
-	jetpack_s \
-	telemetry \
-	jsdebugger \
-	storagecomps \
-	rdf \
-	windowds \
-	$(NULL)
-
-ifdef BUILD_CTYPES
-COMPONENT_LIBS += \
-	jsctypes \
-	$(NULL)
-endif
-
-COMPONENT_LIBS += \
-  jsperf \
-  gkplugin \
-  $(NULL)
-
-ifdef MOZ_XUL
-ifdef MOZ_ENABLE_GTK2
-COMPONENT_LIBS += \
-	unixproxy \
-	$(NULL)
-endif
-endif
-
-ifneq (,$(filter cocoa,$(MOZ_WIDGET_TOOLKIT)))
-COMPONENT_LIBS += \
-	osxproxy \
-	$(NULL)
-endif
-
-ifdef MOZ_XUL
-ifeq (qt,$(MOZ_WIDGET_TOOLKIT))
-COMPONENT_LIBS += \
-        unixproxy \
-        $(NULL)
-endif
-endif
-
-ifneq (,$(filter windows,$(MOZ_WIDGET_TOOLKIT)))
-COMPONENT_LIBS += \
-	windowsproxy \
-	$(NULL)
-endif
-
-ifdef MOZ_JSDEBUGGER
-DEFINES += -DMOZ_JSDEBUGGER
-COMPONENT_LIBS += \
-	jsd \
-	$(NULL)
-endif
-
-ifdef MOZ_PREF_EXTENSIONS
-DEFINES += -DMOZ_PREF_EXTENSIONS
-COMPONENT_LIBS += \
-	autoconfig \
-	$(NULL)
-endif
-
-ifdef MOZ_AUTH_EXTENSION
-COMPONENT_LIBS += auth
-DEFINES += -DMOZ_AUTH_EXTENSION
-endif
-
-ifdef MOZ_PERMISSIONS
-COMPONENT_LIBS += cookie permissions
-DEFINES += -DMOZ_PERMISSIONS
-endif
-
-ifdef MOZ_UNIVERSALCHARDET
-COMPONENT_LIBS += universalchardet
-DEFINES += -DMOZ_UNIVERSALCHARDET
-endif
-
-ifeq (,$(filter android gonk qt os2 cocoa windows,$(MOZ_WIDGET_TOOLKIT)))
-ifdef MOZ_XUL
-COMPONENT_LIBS += fileview
-DEFINES += -DMOZ_FILEVIEW
-endif
-endif
-
-ifdef MOZ_PLACES
-COMPONENT_LIBS += \
-	places \
-	$(NULL)
-endif
-
-ifdef MOZ_XUL
-COMPONENT_LIBS += \
-	tkautocomplete \
-	satchel \
-	pippki \
-	$(NULL)
-endif
-
-ifdef MOZ_ENABLE_GTK2
-COMPONENT_LIBS += widget_gtk2
-ifdef MOZ_PREF_EXTENSIONS
-COMPONENT_LIBS += system-pref
-endif
-endif
-
-ifdef MOZ_ENABLE_GTK2
-ifdef MOZ_X11
-STATIC_LIBS += gtkxtbin
-endif
-endif
-
-# Platform-specific icon channel stuff - supported mostly-everywhere
-ifneq (,$(filter windows os2 mac cocoa gtk2 qt android,$(MOZ_WIDGET_TOOLKIT)))
-DEFINES += -DICON_DECODER
-COMPONENT_LIBS += imgicon
-endif
-
-ifeq ($(MOZ_WIDGET_TOOLKIT),android)
-COMPONENT_LIBS += widget_android
-endif
-
-ifeq ($(MOZ_WIDGET_TOOLKIT),gonk)
-COMPONENT_LIBS += widget_gonk
-endif
-
-STATIC_LIBS += thebes ycbcr
-
-ifeq ($(MOZ_WIDGET_TOOLKIT),android)
-STATIC_LIBS += profiler skia_npapi
-endif
-
-STATIC_LIBS += angle
-
-ifeq (windows,$(MOZ_WIDGET_TOOLKIT))
-COMPONENT_LIBS += gkwidget
-endif
-ifeq (os2,$(MOZ_WIDGET_TOOLKIT))
-COMPONENT_LIBS += wdgtos2
-endif
-ifeq (cocoa,$(MOZ_WIDGET_TOOLKIT))
-COMPONENT_LIBS += widget_mac
-endif
-ifeq (qt,$(MOZ_WIDGET_TOOLKIT))
-COMPONENT_LIBS += widget_qt
-endif
-
-ifdef ACCESSIBILITY
-COMPONENT_LIBS += accessibility
-endif
-
-ifdef MOZ_ENABLE_XREMOTE
-COMPONENT_LIBS += remoteservice
-endif
-
-ifdef MOZ_SPELLCHECK
-DEFINES += -DMOZ_SPELLCHECK
-COMPONENT_LIBS += spellchecker
-endif
-
-ifdef MOZ_ZIPWRITER
-DEFINES += -DMOZ_ZIPWRITER
-COMPONENT_LIBS += zipwriter
-endif
-
-COMPONENT_LIBS += services-crypto
-
-ifdef MOZ_DEBUG
-ifdef ENABLE_TESTS
-COMPONENT_LIBS += gkdebug
-endif
-endif
-
-ifdef MOZ_APP_COMPONENT_LIBS
-COMPONENT_LIBS += $(MOZ_APP_COMPONENT_LIBS)
-endif
-
-ifeq ($(MOZ_WIDGET_TOOLKIT),cocoa)
-OS_LIBS += -framework OpenGL -lcups
-endif
-
-EXTRA_DSO_LDOPTS += \
-	$(LIBS_DIR) \
-	$(JPEG_LIBS) \
-	$(PNG_LIBS) \
-	$(QCMS_LIBS) \
-	$(MOZ_JS_LIBS) \
-	$(NSS_LIBS) \
-	$(MOZ_CAIRO_LIBS) \
-	$(MOZ_HARFBUZZ_LIBS) \
-	$(MOZ_OTS_LIBS) \
-	$(MOZ_APP_EXTRA_LIBS) \
-	$(SQLITE_LIBS) \
-	$(NULL)
-
-ifdef MOZ_NATIVE_ZLIB
-EXTRA_DSO_LDOPTS += $(ZLIB_LIBS)
-else
-EXTRA_DSO_LDOPTS += $(MOZ_ZLIB_LIBS)
-endif
-
-ifdef MOZ_NATIVE_HUNSPELL
-EXTRA_DSO_LDOPTS += $(MOZ_HUNSPELL_LIBS)
-endif
-
-ifdef MOZ_NATIVE_LIBEVENT
-EXTRA_DSO_LDOPTS += $(MOZ_LIBEVENT_LIBS)
-endif
-
-ifdef MOZ_NATIVE_LIBVPX
-EXTRA_DSO_LDOPTS += $(MOZ_LIBVPX_LIBS)
-endif
-
-ifdef MOZ_SYDNEYAUDIO
-ifeq ($(OS_ARCH),Linux)
-EXTRA_DSO_LDOPTS += $(MOZ_ALSA_LIBS)
-endif
-endif
-
-ifdef HAVE_CLOCK_MONOTONIC
-EXTRA_DSO_LDOPTS += $(REALTIME_LIBS)
-endif
-
-ifeq (,$(filter-out cocoa android windows,$(MOZ_WIDGET_TOOLKIT)))
-EXTRA_DSO_LDOPTS += $(MOZ_SKIA_LIBS)
-endif
-
-ifeq (android,$(MOZ_WIDGET_TOOLKIT))
-OS_LIBS += -lGLESv2
-endif
-
-ifeq (gonk,$(MOZ_WIDGET_TOOLKIT))
-OS_LIBS += -lui
-endif
deleted file mode 100644
--- a/toolkit/library/libxul-rules.mk
+++ /dev/null
@@ -1,59 +0,0 @@
-#
-# ***** 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 Mozilla libxul
-#
-# The Initial Developer of the Original Code is
-# Benjamin Smedberg <benjamin@smedbergs.us>
-#
-# Portions created by the Initial Developer are Copyright (C) 2005
-# the Initial Developer. All Rights Reserved.
-#
-# Contributor(s):
-#
-# Alternatively, the contents of this file may be used under the terms of
-# either of 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 *****
-
-# need widget/src/windows for resource.h (included from widget.rc)
-LOCAL_INCLUDES += \
-	-I$(topsrcdir)/config \
-	-I$(topsrcdir)/widget/src/windows \
-	-I$(topsrcdir)/widget/src/build \
-	$(NULL)
-
-OS_LIBS += $(LIBICONV)
-
-DEFINES += \
-	-D_IMPL_NS_COM \
-	-D_IMPL_NS_STRINGAPI \
-	-DEXPORT_XPT_API \
-	-DEXPORT_XPTC_API \
-	-D_IMPL_NS_GFX \
-	-D_IMPL_NS_WIDGET \
-	$(NULL)
-
-ifeq ($(MOZ_WIDGET_TOOLKIT),windows)
-OS_LIBS += $(call EXPAND_LIBNAME,usp10 oleaut32)
-endif
--- a/toolkit/mozapps/installer/packager.mk
+++ b/toolkit/mozapps/installer/packager.mk
@@ -315,20 +315,26 @@ ABI_DIR = x86
 else
 ifdef MOZ_THUMB2
 ABI_DIR = armeabi-v7a
 else
 ABI_DIR = armeabi
 endif
 endif
 
+ifeq ($(MOZ_BUILD_APP),mobile/xul)
+GECKO_APP_AP_PATH = ../embedding/android
+else
+GECKO_APP_AP_PATH = ../mobile/android/base
+endif
+
 PKG_SUFFIX      = .apk
 INNER_MAKE_PACKAGE	= \
-  make -C ../mobile/android/base gecko.ap_ && \
-  cp ../mobile/android/base/gecko.ap_ $(_ABS_DIST) && \
+  make -C $(GECKO_APP_AP_PATH) gecko.ap_ && \
+  cp $(GECKO_APP_AP_PATH)/gecko.ap_ $(_ABS_DIST) && \
   ( cd $(STAGEPATH)$(MOZ_PKG_DIR)$(_BINPATH) && \
     mkdir -p lib/$(ABI_DIR) && \
     mv libmozutils.so $(MOZ_CHILD_PROCESS_NAME) lib/$(ABI_DIR) && \
     rm -f lib.id && \
     for SOMELIB in *.so ; \
     do \
       printf "`basename $$SOMELIB`:`$(_ABS_DIST)/host/bin/file_id $$SOMELIB`\n" >> lib.id ; \
     done && \
@@ -657,17 +663,17 @@ endif
 
 elfhack:
 ifdef USE_ELF_HACK
 	@echo ===
 	@echo === If you get failures below, please file a bug describing the error
 	@echo === and your environment \(compiler and linker versions\), and use
 	@echo === --disable-elf-hack until this is fixed.
 	@echo ===
-	cd $(DIST)/bin; find . -name "*$(DLL_SUFFIX)" | xargs $(DEPTH)/build/unix/elfhack/elfhack
+	cd $(DIST)/bin; find . -name "*$(DLL_SUFFIX)" | xargs ../../build/unix/elfhack/elfhack
 endif
 
 stage-package: $(MOZ_PKG_MANIFEST) $(MOZ_PKG_REMOVALS_GEN) elfhack
 	@rm -rf $(DIST)/$(MOZ_PKG_DIR) $(DIST)/$(PKG_PATH)$(PKG_BASENAME).tar $(DIST)/$(PKG_PATH)$(PKG_BASENAME).dmg $@ $(EXCLUDE_LIST)
 # NOTE: this must be a tar now that dist links into the tree so that we
 # do not strip the binaries actually in the tree.
 	@echo "Creating package directory..."
 	@mkdir $(DIST)/$(MOZ_PKG_DIR)