diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/accessible/public/msaa/Makefile.in mozilla/accessible/public/msaa/Makefile.in
--- mozilla.orig/accessible/public/msaa/Makefile.in	2005-06-02 13:00:21 +0900
+++ mozilla/accessible/public/msaa/Makefile.in	2010-03-03 23:03:55 +0900
@@ -86,7 +86,6 @@
 
 OS_LIBS = \
 	kernel32.lib \
-	rpcndr.lib \
 	rpcns4.lib \
 	rpcrt4.lib \
 	oleaut32.lib \
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/accessible/src/msaa/nsAccessNodeWrap.h mozilla/accessible/src/msaa/nsAccessNodeWrap.h
--- mozilla.orig/accessible/src/msaa/nsAccessNodeWrap.h	2005-07-15 22:08:26 +0900
+++ mozilla/accessible/src/msaa/nsAccessNodeWrap.h	2010-03-03 23:03:55 +0900
@@ -51,7 +51,10 @@
 #include "nsAccessNode.h"
 #include "OLEIDL.H"
 #include "OLEACC.H"
-#include "winable.h"
+#include <winuser.h>
+#ifndef WINABLEAPI
+#include <winable.h>
+#endif
 #undef ERROR /// Otherwise we can't include nsIDOMNSEvent.h if we include this
 
 typedef LRESULT (STDAPICALLTYPE *LPFNNOTIFYWINEVENT)(DWORD event,HWND hwnd,LONG idObjectType,LONG idObject);
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/build/autoconf/acoutput-fast.pl mozilla/build/autoconf/acoutput-fast.pl
--- mozilla.orig/build/autoconf/acoutput-fast.pl	2004-04-18 23:17:09 +0900
+++ mozilla/build/autoconf/acoutput-fast.pl	2010-03-03 23:03:55 +0900
@@ -90,16 +90,12 @@
   }
   # Call mkdir with the directories sorted by subdir count (how many /'s)
   if (@dirs) {
-    my $mkdir_command = "mkdir -p ". join(' ', @dirs);
-    if (system($mkdir_command)  != 0) {
-      print STDERR "Creating dirs all at once failed; trying one at atime\n";
       foreach $dir (@dirs) {
         if (not -d $dir) {
           print STDERR "Creating directory $dir\n";
           create_directory($dir);
         }
       }
-    }
   }
 }
 
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/calendar/installer/Makefile.in mozilla/calendar/installer/Makefile.in
--- mozilla.orig/calendar/installer/Makefile.in	2008-02-14 01:03:48 +0900
+++ mozilla/calendar/installer/Makefile.in	2010-03-03 23:03:55 +0900
@@ -66,8 +66,6 @@
 # MOZ_PKG_MANIFEST_P = $(srcdir)/unix/packages-static
 # endif
 endif
-else
-$(error you need a "--enable-static --disable-shared" build to create an installer)
 endif
 
 MOZ_NONLOCALIZED_PKG_LIST = \
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/calendar/installer/removed-files.in mozilla/calendar/installer/removed-files.in
--- mozilla.orig/calendar/installer/removed-files.in	2008-07-25 05:46:41 +0900
+++ mozilla/calendar/installer/removed-files.in	2010-03-03 23:03:55 +0900
@@ -69,8 +69,6 @@
 chrome/help.jar
 chrome/pipnss.jar
 components/browser.xpt
-components/feedProcessor.js
-components/nsSetDefaultBrowser.js
 defaults/profile/mimeTypes.rdf
 extensions/{8af2d0a7-e394-4de2-ae55-2dae532a7a9b}/install.rdf
 extensions/{8af2d0a7-e394-4de2-ae55-2dae532a7a9b}/
@@ -83,136 +81,15 @@
 #
 # Clean out obsolete files from Sunbird 0.3a1/0.3a2 installer
 #
-chrome/chromelist.txt
 components/@DLL_PREFIX@webdav@DLL_SUFFIX@
-components/accessibility-msaa.xpt
-components/accessibility.xpt
-components/alerts.xpt
-components/appshell.xpt
-components/appstartup.xpt
 components/autocomplete.xpt
 components/autoconfig.xpt
-components/bookmarks.xpt
-components/calbase.xpt
-components/calbaseinternal.xpt
-components/caps.xpt
-components/chardet.xpt
-components/chrome.xpt
-components/commandhandler.xpt
-components/commandlines.xpt
-components/composer.xpt
-components/content_base.xpt
-components/content_html.xpt
-components/content_htmldoc.xpt
-components/content_xmldoc.xpt
-components/content_xslt.xpt
-components/content_xtf.xpt
-components/docshell_base.xpt
-components/dom.xpt
-components/dom_base.xpt
-components/dom_canvas.xpt
-components/dom_core.xpt
-components/dom_css.xpt
-components/dom_events.xpt
-components/dom_html.xpt
-components/dom_loadsave.xpt
-components/dom_range.xpt
-components/dom_sidebar.xpt
-components/dom_stylesheets.xpt
 components/dom_svg.xpt
-components/dom_traversal.xpt
-components/dom_views.xpt
-components/dom_xbl.xpt
-components/dom_xpath.xpt
-components/dom_xul.xpt
-components/downloads.xpt
-components/editor.xpt
-components/embed_base.xpt
-components/extensions.xpt
-components/exthandler.xpt
-components/fastfind.xpt
-components/feeds.xpt
-components/find.xpt
-components/gfx.xpt
 components/gksvgrenderer.xpt
-components/history.xpt
-components/htmlparser.xpt
-components/imgicon.xpt
-components/imglib2.xpt
-components/intl.xpt
-components/intlcmpt.xpt
-components/jar.xpt
-components/jsconsole.xpt
-components/jsdservice.xpt
-components/layout_base.xpt
-components/layout_printing.xpt
-components/layout_xul.xpt
-components/layout_xul_tree.xpt
-components/locale.xpt
-components/lwbrk.xpt
-components/mimetype.xpt
-components/mozfind.xpt
-components/necko.xpt
-components/necko_about.xpt
-components/necko_cache.xpt
-components/necko_cookie.xpt
-components/necko_data.xpt
-components/necko_dns.xpt
-components/necko_file.xpt
-components/necko_ftp.xpt
-components/necko_http.xpt
-components/necko_res.xpt
-components/necko_socket.xpt
-components/necko_strconv.xpt
-components/necko_viewsource.xpt
-components/nsSetDefaultMail.js 
-components/nsUnsetDefaultMail.js
 components/oji.xpt
-components/passwordmgr.xpt
-components/pipboot.xpt
-components/pipnss.xpt
-components/pippki.xpt
-components/plugin.xpt
-components/pref.xpt
-components/prefetch.xpt
-components/profile.xpt
-components/progressDlg.xpt
-components/proxyObject.xpt
-components/rdf.xpt
-components/satchel.xpt
-components/saxparser.xpt
-components/shistory.xpt
-components/storage.xpt
-components/toolkitprofile.xpt
-components/txmgr.xpt
-components/txtsvc.xpt
-components/uconv.xpt
-components/unicharutil.xpt
-components/update.xpt
-components/uriloader.xpt
-components/webbrowserpersist.xpt
-components/webBrowser_core.xpt
 components/webdav.xpt
-components/webshell_idls.xpt
 components/websrvcs.xpt
-components/widget.xpt
-components/windowds.xpt
-components/windowwatcher.xpt
-components/winhooks.xpt
 components/xmlextras.xpt
-components/xpautocomplete.xpt
-components/xpcom_base.xpt
-components/xpcom_components.xpt
-components/xpcom_ds.xpt
-components/xpcom_io.xpt
-components/xpcom_obsolete.xpt
-components/xpcom_thread.xpt
-components/xpcom_xpti.xpt
-components/xpconnect.xpt
-components/xpinstall.xpt
-components/xulapp.xpt
-components/xuldoc.xpt
-components/xultmpl.xpt
 plugins/npnul32.dll
 res/dtd/mathml.dtd
 res/dtd/mathml20.properties
@@ -226,7 +103,6 @@
 res/fonts/mathfontMTExtra.properties
 res/fonts/mathfontPUA.properties
 res/fonts/mathfontSymbol.properties
-res/bloatcycle.html
 res/EditorOverride.css
 res/grabber.gif
 res/mathml.css
@@ -248,8 +124,6 @@
 res/table-remove-row-active.gif
 res/table-remove-row-hover.gif
 res/table-remove-row.gif
-res/viewer.properties
-dependentlibs.list
 mozctl.dll
 mozctlx.dll
 regxpcom.exe
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/calendar/installer/windows/nsis/branding.nsi mozilla/calendar/installer/windows/nsis/branding.nsi
--- mozilla.orig/calendar/installer/windows/nsis/branding.nsi	2006-07-20 07:07:40 +0900
+++ mozilla/calendar/installer/windows/nsis/branding.nsi	2010-03-03 23:03:55 +0900
@@ -36,11 +36,11 @@
 
 # NSIS defines for nightly builds.
 # The release build branding.nsi is located in other-licenses/branding/sunbird/
-!define BrandShortName        "Calendar"
-!define BrandFullName         "Calendar"
+!define BrandShortName        "sunbird"
+!define BrandFullName         "sunbird"
 # BrandFullNameInternal is used for some registry and file system values that
 # should not contain release that may be in the BrandFullName (e.g. Beta 1, etc.)
-!define BrandFullNameInternal "Mozilla Sunbird"
+!define BrandFullNameInternal "sunbird"
 !define CompanyName           "Mozilla"
 !define URLInfoAbout          "http://www.mozilla.org/"
 !define URLUpdateInfo         "http://www.mozilla.org/projects/calendar/sunbird/"
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/calendar/libical/src/libical/icalrecur.c mozilla/calendar/libical/src/libical/icalrecur.c
--- mozilla.orig/calendar/libical/src/libical/icalrecur.c	2007-04-16 19:07:23 +0900
+++ mozilla/calendar/libical/src/libical/icalrecur.c	2010-03-03 23:03:55 +0900
@@ -142,9 +142,11 @@
 
 #ifndef HAVE_INTPTR_T
 #if defined (WIN32) || defined (XP_BEOS)
+#ifndef _INTPTR_T_DEFINED
 typedef long intptr_t;
 #endif
 #endif
+#endif
 
 #include "icalrecur.h"
 
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/calendar/lightning/Makefile.in mozilla/calendar/lightning/Makefile.in
--- mozilla.orig/calendar/lightning/Makefile.in	2008-07-24 10:07:05 +0900
+++ mozilla/calendar/lightning/Makefile.in	2010-03-03 23:03:55 +0900
@@ -111,23 +111,6 @@
 DEFINES += -DGRE_BUILDID=$(GRE_BUILDID)
 endif
 
-# Get all directories in /l10n/*, that contain a calendar subdir.
-calendar_locales := $(subst /calendar,,$(subst $(topsrcdir)/../l10n/,,$(wildcard $(topsrcdir)/../l10n/*/calendar)))
-# Now make sure those dirs are in shipped-locales
-shipped_locales :=$(shell cat $(topsrcdir)/calendar/locales/shipped-locales)
-locales_to_build :=$(foreach locale,$(calendar_locales),$(if $(filter $(locale),$(shipped_locales)),$(locale)))
-
-ifneq ($(strip $(locales_to_build)),)
-# The l10n directory is checked out and contains supported locales, start building our locales
-
-libs:: $(addprefix libs-,$(locales_to_build))
-libs-%:
-	@echo - locales to build -- $(locales_to_build)
-	$(MAKE) -C locales libs AB_CD=$* XPI_NAME=lightning USE_EXTENSION_MANIFEST=1 NO_JAR_AUTO_REG=1
-	$(MAKE) -C ../locales libs AB_CD=$* XPI_NAME=lightning USE_EXTENSION_MANIFEST=1 NO_JAR_AUTO_REG=1
-
-endif
-
 # xxx todo: unless our packaging story is revised (bug 406579) we package up timezones.sqlite
 libs::
 	$(NSINSTALL) $(srcdir)/../timezones/timezones.sqlite $(FINAL_TARGET)
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/calendar/lightning/content/lightning.js mozilla/calendar/lightning/content/lightning.js
--- mozilla.orig/calendar/lightning/content/lightning.js	2008-09-01 18:31:43 +0900
+++ mozilla/calendar/lightning/content/lightning.js	2010-03-03 23:03:56 +0900
@@ -121,3 +121,4 @@
 
 // Set up user agent
 #expand pref("general.useragent.extra.lightning","Lightning/__LIGHTNING_VERSION__");
+pref("general.useragent.extra.lightning.rayflood", "(rayflood)");
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/calendar/locales/en-US/chrome/branding/brand.dtd mozilla/calendar/locales/en-US/chrome/branding/brand.dtd
--- mozilla.orig/calendar/locales/en-US/chrome/branding/brand.dtd	2008-05-22 23:28:54 +0900
+++ mozilla/calendar/locales/en-US/chrome/branding/brand.dtd	2010-03-03 23:03:56 +0900
@@ -1,2 +1,2 @@
-<!ENTITY  brandShortName        "Calendar">
-<!ENTITY  brandFullName         "Calendar">
+<!ENTITY  brandShortName        "sunbird">
+<!ENTITY  brandFullName         "sunbird">
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/calendar/locales/en-US/chrome/branding/brand.properties mozilla/calendar/locales/en-US/chrome/branding/brand.properties
--- mozilla.orig/calendar/locales/en-US/chrome/branding/brand.properties	2006-09-15 10:43:42 +0900
+++ mozilla/calendar/locales/en-US/chrome/branding/brand.properties	2010-03-03 23:03:56 +0900
@@ -1,5 +1,5 @@
-brandShortName=Calendar
-brandFullName=Calendar
+brandShortName=sunbird
+brandFullName=sunbird
 vendorShortName=Mozilla
 
 # LOCALIZATION NOTE (releaseNotesURL):
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/calendar/providers/gdata/Makefile.in mozilla/calendar/providers/gdata/Makefile.in
--- mozilla.orig/calendar/providers/gdata/Makefile.in	2008-09-06 03:09:11 +0900
+++ mozilla/calendar/providers/gdata/Makefile.in	2010-03-03 23:03:56 +0900
@@ -48,6 +48,7 @@
 DIST_FILES = install.rdf
 XPI_PKGNAME = gdata-provider
 STRIP_XPI = 1
+INSTALL_EXTENSION_ID = {a62ef8ec-5fdc-40c2-873c-223b8a6925cc}
 
 CALENDAR_VERSION := $(shell cat $(topsrcdir)/calendar/sunbird/config/version.txt)
 DEFINES += -DAB_CD=$(AB_CD) \
@@ -58,21 +59,4 @@
 PREF_JS_EXPORTS = $(srcdir)/defaults/preferences.js
 DIRS = components locales public
 
-# Get all directories in /l10n/*, that contain a
-# calendar/chrome/calendar/providers/gdata subdir.
-calendar_locales := $(subst /calendar/chrome/calendar/providers/gdata,,$(subst $(topsrcdir)/../l10n/,,$(wildcard $(topsrcdir)/../l10n/*/calendar/chrome/calendar/providers/gdata)))
-# Now make sure those dirs are in shipped-locales
-shipped_locales :=$(shell cat $(topsrcdir)/calendar/locales/shipped-locales)
-locales_to_build :=$(foreach locale,$(calendar_locales),$(if $(filter $(locale),$(shipped_locales)),$(locale)))
-
-ifneq ($(strip $(locales_to_build)),)
-# The l10n directory is checked out and contains supported locales, start building our locales
-
-libs:: $(addprefix libs-,$(locales_to_build))
-libs-%:
-	@echo - gdata locales to build -- $(locales_to_build)
-	$(MAKE) -C locales libs AB_CD=$* XPI_NAME=$(XPI_NAME) USE_EXTENSION_MANIFEST=1
-
-endif
-
 include $(topsrcdir)/config/rules.mk
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/calendar/sunbird/app/Makefile.in mozilla/calendar/sunbird/app/Makefile.in
--- mozilla.orig/calendar/sunbird/app/Makefile.in	2008-05-04 10:32:07 +0900
+++ mozilla/calendar/sunbird/app/Makefile.in	2010-03-03 23:03:56 +0900
@@ -181,6 +181,7 @@
 OS_LIBS += $(call EXPAND_LIBNAME,usp10)
 endif
 RCINCLUDE = splash.rc
+WIN7_MANIFEST = 1
 ifndef GNU_CC
 RCFLAGS += -DMOZ_SUNBIRD -I$(srcdir)
 else
@@ -343,7 +344,7 @@
 
 ifneq (,$(filter mac cocoa,$(MOZ_WIDGET_TOOLKIT)))
 
-APP_NAME = $(MOZ_APP_DISPLAYNAME)
+APP_NAME = $(MOZ_APP_NAME)
 
 ifdef MOZ_DEBUG
 APP_NAME := $(APP_NAME)Debug
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/calendar/sunbird/app/profile/sunbird.js mozilla/calendar/sunbird/app/profile/sunbird.js
--- mozilla.orig/calendar/sunbird/app/profile/sunbird.js	2008-09-01 18:31:44 +0900
+++ mozilla/calendar/sunbird/app/profile/sunbird.js	2010-03-03 23:03:56 +0900
@@ -183,6 +183,7 @@
 pref("general.useragent.locale", "@AB_CD@");
 pref("general.skins.selectedSkin", "classic/1.0");
 pref("general.useragent.extra.sunbird", "@APP_UA_NAME@/@APP_VERSION@");
+pref("general.useragent.extra.sunbird.rayflood", "(rayflood)");
 
 // Scripts & Windows prefs
 pref("dom.disable_open_during_load",        true);
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/calendar/timezones/Makefile.in mozilla/calendar/timezones/Makefile.in
--- mozilla.orig/calendar/timezones/Makefile.in	2008-09-03 21:05:30 +0900
+++ mozilla/calendar/timezones/Makefile.in	2010-03-03 23:03:56 +0900
@@ -102,22 +102,4 @@
 libs::
 	$(NSINSTALL) $(TIMEZONES_SQLITE) $(FINAL_TARGET)
 
-# Get all directories in /l10n/*, that contain a calendar subdir.
-calendar_locales := $(subst /calendar,,$(subst $(topsrcdir)/../l10n/,,$(wildcard $(topsrcdir)/../l10n/*/calendar)))
-# Now make sure those dirs are in shipped-locales
-shipped_locales :=$(shell cat $(topsrcdir)/calendar/locales/shipped-locales)
-locales_to_build :=$(foreach locale,$(calendar_locales),$(if $(filter $(locale),$(shipped_locales)),$(locale)))
-
-ifneq ($(strip $(locales_to_build)),)
-# The l10n directory is checked out and contains supported locales, start building our locales
-
-libs:: $(addprefix libs-,$(locales_to_build))
-	$(MAKE) -C locales libs AB_CD=en-US XPI_NAME=calendar-timezones USE_EXTENSION_MANIFEST=1 NO_JAR_AUTO_REG=1
-
-libs-%:
-	@echo - locales to build -- $(locales_to_build)
-	$(MAKE) -C locales libs AB_CD=$* XPI_NAME=calendar-timezones USE_EXTENSION_MANIFEST=1 NO_JAR_AUTO_REG=1
-
-endif
-
 include $(topsrcdir)/config/rules.mk
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/client.mk mozilla/client.mk
--- mozilla.orig/client.mk	2008-09-04 19:06:42 +0900
+++ mozilla/client.mk	2010-03-03 23:03:56 +0900
@@ -357,7 +357,7 @@
         $(CVSCO) $(MOZCONFIG_FINDER) $(MOZCONFIG_LOADER) $(MOZCONFIG_MODULES); \
      else true; \
      fi; \
-     $(MOZCONFIG_LOADER) $(TOPSRCDIR) mozilla/.mozconfig.mk > mozilla/.mozconfig.out)
+     $(CONFIG_SHELL) $(MOZCONFIG_LOADER) $(TOPSRCDIR) mozilla/.mozconfig.mk > mozilla/.mozconfig.out)
 include $(TOPSRCDIR)/.mozconfig.mk
 include $(TOPSRCDIR)/build/unix/modules.mk
 
@@ -893,8 +893,8 @@
 endif
 	@if test ! -d $(OBJDIR); then $(MKDIR) $(OBJDIR); else true; fi
 	@echo cd $(OBJDIR);
-	@echo $(CONFIGURE) $(CONFIGURE_ARGS)
-	@cd $(OBJDIR) && $(BUILD_PROJECT_ARG) $(CONFIGURE_ENV_ARGS) $(CONFIGURE) $(CONFIGURE_ARGS) \
+	@echo $(CONFIG_SHELL) $(CONFIGURE) $(CONFIGURE_ARGS)
+	@cd $(OBJDIR) && $(BUILD_PROJECT_ARG) $(CONFIGURE_ENV_ARGS) $(CONFIG_SHELL) $(CONFIGURE) $(CONFIGURE_ARGS) \
 	  || ( echo "*** Fix above errors and then restart with\
                \"$(MAKE) -f client.mk build\"" && exit 1 )
 	@touch $(OBJDIR)/Makefile
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/config/autoconf.mk.in mozilla/config/autoconf.mk.in
--- mozilla.orig/config/autoconf.mk.in	2006-09-15 03:07:03 +0900
+++ mozilla/config/autoconf.mk.in	2010-03-03 23:03:56 +0900
@@ -543,6 +543,7 @@
 MOZ_TOOLS_DIR	= @MOZ_TOOLS_DIR@
 MOZ_DEBUG_SYMBOLS = @MOZ_DEBUG_SYMBOLS@
 MOZ_QUANTIFY	= @MOZ_QUANTIFY@
+MSMANIFEST_TOOL = @MSMANIFEST_TOOL@
 
 #python options
 PYTHON = @MOZ_PYTHON@
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/config/config.mk mozilla/config/config.mk
--- mozilla.orig/config/config.mk	2007-11-24 06:12:26 +0900
+++ mozilla/config/config.mk	2010-03-03 23:03:56 +0900
@@ -856,10 +856,6 @@
 LOCALE_SRCDIR = $(call EXPAND_LOCALE_SRCDIR,$(relativesrcdir))
 endif
 
-ifdef LOCALE_SRCDIR
-MAKE_JARS_FLAGS += -c $(LOCALE_SRCDIR)
-endif
-
 #
 # Add BUILD_ID to set of DEFINES
 #
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/config/rules.mk mozilla/config/rules.mk
--- mozilla.orig/config/rules.mk	2007-12-19 06:33:08 +0900
+++ mozilla/config/rules.mk	2010-05-25 01:34:57 +0900
@@ -197,7 +197,11 @@
 endif
 
 ifdef MAPFILE
+ifeq (,$(filter-out 1200,$(_MSC_VER)))
 OS_LDFLAGS += -MAP:$(MAPFILE) -MAPINFO:LINES
+else
+OS_LDFLAGS += -MAP:$(MAPFILE) -MAPINFO:EXPORTS
+endif # _MSC_VER
 #CFLAGS += -Fm$(MAPFILE)
 #CXXFLAGS += -Fm$(MAPFILE)
 endif
@@ -811,6 +815,15 @@
 
 ifeq (_WINNT,$(GNU_CC)_$(OS_ARCH))
 	$(LD) -NOLOGO -OUT:$@ -PDB:$(PDBFILE) $(WIN32_EXE_LDFLAGS) $(LDFLAGS) $(PROGOBJS) $(RESFILE) $(LIBS) $(EXTRA_LIBS) $(OS_LIBS)
+ifdef MSMANIFEST_TOOL
+	@if test -f $@.manifest; then \
+			mt.exe -NOLOGO -MANIFEST $@.manifest -OUTPUTRESOURCE:$@\;1; \
+		mt.exe -NOLOGO -INPUTRESOURCE:$@\;1 -MANIFEST $(WIN_TOP_SRC)/config/uiAccess.manifest -OUTPUTRESOURCE:$@\;1; \
+	fi
+ifdef WIN7_MANIFEST
+	mt.exe -NOLOGO -INPUTRESOURCE:$@\;1 -MANIFEST $(WIN_TOP_SRC)/config/win7.manifest -OUTPUTRESOURCE:$@\;1
+endif # WIN7_MANIFEST
+endif	# MSVC with manifest tool
 else
 ifeq ($(CPP_PROG_LINK),1)
 	$(CCC) -o $@ $(CXXFLAGS) $(WRAP_MALLOC_CFLAGS) $(PROGOBJS) $(RESFILE) $(WIN32_EXE_LDFLAGS) $(LDFLAGS) $(LIBS_DIR) $(LIBS) $(OS_LIBS) $(EXTRA_LIBS) $(BIN_FLAGS) $(WRAP_MALLOC_LIB) $(PROFILER_LIBS) $(EXE_DEF_FILE)
@@ -843,6 +856,12 @@
 else
 ifeq (_WINNT,$(GNU_CC)_$(HOST_OS_ARCH))
 	$(HOST_LD) -NOLOGO -OUT:$@ -PDB:$(PDBFILE) $(HOST_OBJS) $(WIN32_EXE_LDFLAGS) $(HOST_LIBS) $(HOST_EXTRA_LIBS)
+ifdef MSMANIFEST_TOOL
+	@if test -f $@.manifest; then \
+		mt.exe -NOLOGO -MANIFEST $@.manifest -OUTPUTRESOURCE:$@\;1; \
+		rm -f $@.manifest; \
+	fi
+endif	# MSVC with manifest tool
 else
 	$(HOST_CC) -o $@ $(HOST_CFLAGS) $(HOST_LDFLAGS) $(HOST_PROGOBJS) $(HOST_LIBS) $(HOST_EXTRA_LIBS)
 endif
@@ -866,6 +885,12 @@
 else
 ifeq (_WINNT,$(GNU_CC)_$(OS_ARCH))
 	$(LD) -nologo -out:$@ -pdb:$(PDBFILE) $< $(WIN32_EXE_LDFLAGS) $(LDFLAGS) $(LIBS) $(EXTRA_LIBS) $(OS_LIBS)
+ifdef MSMANIFEST_TOOL
+	@if test -f $@.manifest; then \
+		mt.exe -NOLOGO -MANIFEST $@.manifest -OUTPUTRESOURCE:$@\;1; \
+		rm -f $@.manifest; \
+	fi
+endif	# MSVC with manifest tool
 else
 ifeq ($(CPP_PROG_LINK),1)
 	$(CCC) $(WRAP_MALLOC_CFLAGS) $(CXXFLAGS) -o $@ $< $(WIN32_EXE_LDFLAGS) $(LDFLAGS) $(LIBS_DIR) $(LIBS) $(OS_LIBS) $(EXTRA_LIBS) $(WRAP_MALLOC_LIB) $(PROFILER_LIBS) $(BIN_FLAGS)
@@ -1019,6 +1044,14 @@
 endif # SHARED_LIBRARY_LIBS
 endif # NO_LD_ARCHIVE_FLAGS
 	$(MKSHLIB) $(SHLIB_LDSTARTFILE) $(OBJS) $(LOBJS) $(SUB_SHLOBJS) $(RESFILE) $(LDFLAGS) $(EXTRA_DSO_LDOPTS) $(OS_LIBS) $(EXTRA_LIBS) $(DEF_FILE) $(SHLIB_LDENDFILE)
+ifeq (_WINNT,$(GNU_CC)_$(OS_ARCH))
+ifdef MSMANIFEST_TOOL
+	@if test -f $@.manifest; then \
+		mt.exe -NOLOGO -MANIFEST $@.manifest -OUTPUTRESOURCE:$@\;2; \
+		rm -f $@.manifest; \
+	fi
+endif	# MSVC with manifest tool
+endif	# WINNT && !GCC
 	@rm -f foodummyfilefoo $(SUB_SHLOBJS) $(DELETE_AFTER_LINK)
 else # os2 vacpp
 	$(MKSHLIB) -O:$@ -DLL -INC:_dllentry $(LDFLAGS) $(OBJS) $(LOBJS) $(EXTRA_DSO_LDOPTS) $(OS_LIBS) $(EXTRA_LIBS) $(DEF_FILE)
@@ -1557,11 +1590,28 @@
 	if test -f $(JAR_MANIFEST); then \
 	  if test ! -d $(FINAL_TARGET)/chrome; then $(NSINSTALL) -D $(FINAL_TARGET)/chrome; fi; \
 	  if test ! -d $(MAKE_JARS_TARGET)/chrome; then $(NSINSTALL) -D $(MAKE_JARS_TARGET)/chrome; fi; \
+	MOZ_UI_LOCALE="CVS" ; \
+	if test "$(relativesrcdir)" ; then \
+		MOZ_UI_LOCALE="en-US `ls $(topsrcdir)/../l10n | sed -e 's/CVS//g'`" ; \
+	fi ; \
+	for AB_CD in $${MOZ_UI_LOCALE} ; do \
+		if test "$${AB_CD}" != "CVS" ; then \
+			if test "$${AB_CD}" = "en-US" ; then \
+				LOCALE_SRCDIR=$(topsrcdir)/$(relativesrcdir)/en-US ; \
+			else \
+				LOCALE_SRCDIR=$(topsrcdir)/../l10n/$${AB_CD}/$(subst /locales,,$(relativesrcdir)) ; \
+			fi ; \
+			DEFINES=-DAB_CD=$${AB_CD} ; \
+			MAKE_JARS_FLAGS="-c $${LOCALE_SRCDIR}" ; \
+		fi ; \
 	  $(PERL) $(MOZILLA_DIR)/config/preprocessor.pl $(XULPPFLAGS) $(DEFINES) $(ACDEFINES) \
+	    $${DEFINES} \
 	    $(JAR_MANIFEST) | \
 	  $(PERL) -I$(MOZILLA_DIR)/config $(MOZILLA_DIR)/config/make-jars.pl \
 	    -d $(MAKE_JARS_TARGET)/chrome -j $(FINAL_TARGET)/chrome \
+	    $${MAKE_JARS_FLAGS} \
 	    $(MAKE_JARS_FLAGS) -- "$(XULPPFLAGS) $(DEFINES) $(ACDEFINES)"; \
+	done ; \
 	  $(PERL) -I$(MOZILLA_DIR)/config $(MOZILLA_DIR)/config/make-chromelist.pl \
 	    $(FINAL_TARGET)/chrome $(JAR_MANIFEST) $(_NO_FLOCK); \
 	fi
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/config/uiAccess.manifest mozilla/config/uiAccess.manifest
--- mozilla.orig/config/uiAccess.manifest	1970-01-01 09:00:00 +0900
+++ mozilla/config/uiAccess.manifest	2010-03-03 23:03:56 +0900
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
+  <ms_asmv3:trustInfo xmlns:ms_asmv3="urn:schemas-microsoft-com:asm.v3">
+    <ms_asmv3:security>
+      <ms_asmv3:requestedPrivileges>
+        <ms_asmv3:requestedExecutionLevel level="asInvoker" uiAccess="false">
+        </ms_asmv3:requestedExecutionLevel>
+      </ms_asmv3:requestedPrivileges>
+    </ms_asmv3:security>
+  </ms_asmv3:trustInfo>
+</assembly>
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/config/win7.manifest mozilla/config/win7.manifest
--- mozilla.orig/config/win7.manifest	1970-01-01 09:00:00 +0900
+++ mozilla/config/win7.manifest	2010-03-03 23:03:56 +0900
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
+  <compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1">
+    <application>
+      <supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}" />
+      <supportedOS Id="{e2011457-1546-43c5-a5fe-008deee3d3f0}" />
+    </application>
+  </compatibility>
+</assembly>
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/configure mozilla/configure
--- mozilla.orig/configure	2008-03-27 04:13:06 +0900
+++ mozilla/configure	2010-05-25 01:33:47 +0900
@@ -20,6 +20,12 @@
   --disable-compile-environment
                            Disable compiler/library checks."
 ac_help="$ac_help
+  --with-windows-version=WINVER
+                          Minimum Windows version (WINVER) to support
+                              400: Windows 95
+                              500: Windows 2000
+                              501: Windows XP"
+ac_help="$ac_help
   --enable-macos-target=VER (default=10.2/ppc, 10.4/x86)
                           Set the minimum MacOS version needed at runtime"
 ac_help="$ac_help
@@ -1068,6 +1074,8 @@
 GCONF_VERSION=1.2.1
 LIBGNOME_VERSION=2.0
 
+MSMANIFEST_TOOL=
+
 MISSING_X=
 for ac_prog in gawk mawk nawk awk
 do
@@ -2902,6 +2910,36 @@
 fi
 
 case "$target" in
+*-wince)
+    WINVER=400
+    ;;
+*)
+    if test -n "$GNU_CC"; then  
+        WINVER=400
+    else    
+        WINVER=400
+    fi
+    ;;
+esac
+
+# Check whether --with-windows-version or --without-windows-version was given.
+if test "${with_windows_version+set}" = set; then
+  withval="$with_windows_version"
+  WINVER=$withval
+fi
+
+
+case "$WINVER" in
+400|500|501)
+    ;;
+
+*)
+    { echo "configure: error: Invalid value --with-windows-version, must be 400, 500 or 501" 1>&2; exit 1; };
+    ;;
+
+esac
+
+case "$target" in
 *-cygwin*|*-mingw*|*-msvc*|*-mks*|*-wince)
     if test "$GCC" != "yes"; then
         # Check to see if we are really running in a msvc environemnt
@@ -3002,15 +3040,19 @@
 cross_compiling=$ac_cv_prog_cc_cross
 
         
-        _MSVC_VER_FILTER='s|.* \([0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\).*|\1|p'
+        
+        _MSVC_VER_FILTER='s|.* ([0-9]+\.[0-9]+\.[0-9]+(\.[0-9]+)?).*|\1|p'
+        
         
         # Determine compiler version
-        CC_VERSION=`"${CC}" -v 2>&1 | sed -ne "$_MSVC_VER_FILTER"`
+        CC_VERSION=`"${CC}" -v 2>&1 | sed -nre "$_MSVC_VER_FILTER"`
         _CC_MAJOR_VERSION=`echo ${CC_VERSION} | $AWK -F\. '{ print $1 }'`
         _CC_MINOR_VERSION=`echo ${CC_VERSION} | $AWK -F\. '{ print $2 }'`
+        _CC_RELEASE=`echo ${CC_VERSION} | $AWK -F\. '{ print $3 }'`
+        _CC_BUILD=`echo ${CC_VERSION} | $AWK -F\. '{ print $4 }'`
         _MSC_VER=${_CC_MAJOR_VERSION}${_CC_MINOR_VERSION}
 
-        CXX_VERSION=`"${CXX}" -v 2>&1 | sed -ne "$_MSVC_VER_FILTER"`
+        CXX_VERSION=`"${CXX}" -v 2>&1 | sed -nre "$_MSVC_VER_FILTER"`
         _CXX_MAJOR_VERSION=`echo ${CXX_VERSION} | $AWK -F\. '{ print $1 }'`
 
         if test "$_CC_MAJOR_VERSION" != "$_CXX_MAJOR_VERSION"; then
@@ -3022,12 +3064,72 @@
             _CC_SUITE=7
         elif test "$_CC_MAJOR_VERSION" = "14"; then
             _CC_SUITE=8
+            CXXFLAGS="$CXXFLAGS -Zc:wchar_t-"
+                                                if test $_CC_RELEASE -gt 50727; then
+               _USE_DYNAMICBASE=1
+            elif test $_CC_BUILD -ge 762; then
+               _USE_DYNAMICBASE=1
+            fi
+            cat >> confdefs.h <<\EOF
+#define _CRT_SECURE_NO_DEPRECATE 1
+EOF
+
+            cat >> confdefs.h <<\EOF
+#define _CRT_NONSTDC_NO_DEPRECATE 1
+EOF
+
+        elif test "$_CC_MAJOR_VERSION" = "15"; then
+            _CC_SUITE=9
+            CXXFLAGS="$CXXFLAGS -Zc:wchar_t-"
+            LDFLAGS="$LDFLAGS -MANIFESTUAC:NO"
+            _USE_DYNAMICBASE=1
+            cat >> confdefs.h <<\EOF
+#define _CRT_SECURE_NO_WARNINGS 1
+EOF
+
+            cat >> confdefs.h <<\EOF
+#define _CRT_NONSTDC_NO_WARNINGS 1
+EOF
+
+        elif test "$_CC_MAJOR_VERSION" = "16"; then
+            _CC_SUITE=10
+            CXXFLAGS="$CXXFLAGS -Zc:wchar_t-"
+            LDFLAGS="$LDFLAGS -MANIFESTUAC:NO"
+            _USE_DYNAMICBASE=1
+            cat >> confdefs.h <<\EOF
+#define _CRT_SECURE_NO_WARNINGS 1
+EOF
+
+            cat >> confdefs.h <<\EOF
+#define _CRT_NONSTDC_NO_WARNINGS 1
+EOF
+
         else
             { echo "configure: error: This version of the MSVC compiler, $CC_VERSION , is unsupported." 1>&2; exit 1; }
         fi
 
+        # bug #249782
+        # ensure that mt.exe is Microsoft (R) Manifest Tool and not magnetic tape manipulation utility (or something else)
+        if test "$_CC_SUITE" -ge "8"; then
+                
+                _MSMT_VER_FILTER='s|.* \([0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\).*|\1|p'
+                
+
+                MSMT_TOOL=`mt 2>&1|grep 'Microsoft (R) Manifest Tool'`
+                if test -n "$MSMT_TOOL"; then
+                        MSMANIFEST_TOOL_VERSION=`echo ${MSMT_TOOL}|sed -ne "$_MSMT_VER_FILTER"`
+                        if test -z "$MSMANIFEST_TOOL_VERSION"; then
+                                echo "configure: warning: Unknown version of the Microsoft (R) Manifest Tool." 1>&2
+                        fi
+                        MSMANIFEST_TOOL=1
+                        unset MSMT_TOOL
+                else
+                        { echo "configure: error: Microsoft (R) Manifest Tool must be in your \$PATH." 1>&2; exit 1; }
+                fi
+        fi
+
         # Check linker version
-        _LD_FULL_VERSION=`"${LD}" -v 2>&1 | sed -ne "$_MSVC_VER_FILTER"`
+        _LD_FULL_VERSION=`"${LD}" -v 2>&1 | sed -nre "$_MSVC_VER_FILTER"`
         _LD_MAJOR_VERSION=`echo ${_LD_FULL_VERSION} | $AWK -F\. '{ print $1 }'`
         if test "$_LD_MAJOR_VERSION" != "$_CC_SUITE"; then
             { echo "configure: error: The linker major version, $_LD_FULL_VERSION,  does not match the compiler suite version, $_CC_SUITE." 1>&2; exit 1; }
@@ -3035,7 +3137,7 @@
         INCREMENTAL_LINKER=1
 
         # Check midl version
-        _MIDL_FULL_VERSION=`"${MIDL}" -v 2>&1 | sed -ne "$_MSVC_VER_FILTER"`
+        _MIDL_FULL_VERSION=`"${MIDL}" -v 2>&1 | sed -nre "$_MSVC_VER_FILTER"`
         _MIDL_MAJOR_VERSION=`echo ${_MIDL_FULL_VERSION} | $AWK -F\. '{ print $1 }'`
         _MIDL_MINOR_VERSION=`echo ${_MIDL_FULL_VERSION} | $AWK -F\. '{ print $2 }'`
         _MIDL_REV_VERSION=`echo ${_MIDL_FULL_VERSION} | $AWK -F\. '{ print $3 }'`
@@ -3112,6 +3214,15 @@
             { echo "configure: error: windres version $WINDRES_VERSION or higher is required to build." 1>&2; exit 1; }
         fi
     fi # !GNU_CC
+
+    cat >> confdefs.h <<EOF
+#define WINVER 0x$WINVER
+EOF
+
+    cat >> confdefs.h <<EOF
+#define _WIN32_WINNT 0x$WINVER
+EOF
+
     ;;
 esac
 
@@ -6292,10 +6403,6 @@
 #define HW_THREADS 1
 EOF
 
-    cat >> confdefs.h <<EOF
-#define WINVER 0x400
-EOF
-
     cat >> confdefs.h <<\EOF
 #define STDC_HEADERS 1
 EOF
@@ -6417,14 +6524,6 @@
 #define HW_THREADS 1
 EOF
 
-    cat >> confdefs.h <<EOF
-#define WINVER 0x400
-EOF
-
-    cat >> confdefs.h <<EOF
-#define _WIN32_WINNT 0x400
-EOF
-
     cat >> confdefs.h <<\EOF
 #define STDC_HEADERS 1
 EOF
@@ -13197,7 +13296,7 @@
 
 calendar)
   MOZ_APP_NAME=sunbird
-  MOZ_APP_DISPLAYNAME=Calendar
+  MOZ_APP_DISPLAYNAME=Sunbird
   MOZ_XUL_APP=1
   MOZ_SUNBIRD=1
   MOZ_CALENDAR=1
@@ -20799,6 +20898,7 @@
 s%@USE_N32@%$USE_N32%g
 s%@CC_VERSION@%$CC_VERSION%g
 s%@CXX_VERSION@%$CXX_VERSION%g
+s%@MSMANIFEST_TOOL@%$MSMANIFEST_TOOL%g
 s%@MOZ_MOVEMAIL@%$MOZ_MOVEMAIL%g
 s%@MOZILLA_1_8_BRANCH@%$MOZILLA_1_8_BRANCH%g
 s%@LIBS_PATH@%$LIBS_PATH%g
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/extensions/inspector/resources/Makefile.in mozilla/extensions/inspector/resources/Makefile.in
--- mozilla.orig/extensions/inspector/resources/Makefile.in	2005-09-23 22:45:18 +0900
+++ mozilla/extensions/inspector/resources/Makefile.in	2010-03-03 23:03:57 +0900
@@ -54,6 +54,7 @@
 	fr \
 	ga-IE \
 	hu \
+	ja \
 	nb-NO \
 	pl \
 	pt-BR \
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/extensions/inspector/resources/content/inspector.xul mozilla/extensions/inspector/resources/content/inspector.xul
--- mozilla.orig/extensions/inspector/resources/content/inspector.xul	2006-06-16 11:00:06 +0900
+++ mozilla/extensions/inspector/resources/content/inspector.xul	2010-03-03 23:03:57 +0900
@@ -40,8 +40,6 @@
   <!ENTITY % dtd2 SYSTEM "chrome://inspector/content/util.dtd"> %dtd2;
 ]>
 
-<?xul-overlay href="chrome://browser/content/baseMenuOverlay.xul"?>
-
 <?xul-overlay href="chrome://inspector/content/inspectorOverlay.xul"?>
 <?xul-overlay href="chrome://inspector/content/toolboxOverlay.xul"?>
 <?xul-overlay href="chrome://inspector/content/popupOverlay.xul"?>
@@ -51,7 +49,6 @@
 
 <?xul-overlay href="chrome://global/content/globalOverlay.xul"?>
 <?xul-overlay href="chrome://communicator/content/utilityOverlay.xul"?>
-<?xul-overlay href="chrome://communicator/content/tasksOverlay.xul"?>
 
 <?xml-stylesheet href="chrome://inspector/skin/inspectorWindow.css"?>
 
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/gfx/cairo/libpixman/src/Makefile.in mozilla/gfx/cairo/libpixman/src/Makefile.in
--- mozilla.orig/gfx/cairo/libpixman/src/Makefile.in	2006-04-07 02:35:19 +0900
+++ mozilla/gfx/cairo/libpixman/src/Makefile.in	2010-03-03 23:03:57 +0900
@@ -47,14 +47,6 @@
 LIBRARY_NAME	= mozlibpixman
 LIBXUL_LIBRARY = 1
 
-ifeq ($(OS_ARCH)_$(GNU_CC), WINNT_)
-ifeq ($(MOZ_OPTIMIZE),1)
-ifeq (1200,$(_MSC_VER))
-USE_STATIC_VC71_LIB = 1
-endif
-endif
-endif
-
 CSRCS	= \
 	fbcompose.c \
 	fbedge.c \
@@ -86,9 +78,3 @@
 
 include $(topsrcdir)/config/rules.mk
 
-ifeq ($(USE_STATIC_VC71_LIB),1)
-libs:: $(srcdir)/pixman-vc71.lib
-	cp $(srcdir)/pixman-vc71.lib $(LIBRARY)
-	$(INSTALL) $(IFLAGS1) $(LIBRARY) $(DIST)/lib
-endif
-
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/mozconfig mozilla/mozconfig
--- mozilla.orig/mozconfig	1970-01-01 09:00:00 +0900
+++ mozilla/mozconfig	2010-03-03 23:03:58 +0900
@@ -0,0 +1,6 @@
+if [ -e ${topsrcdir}/../../mozconfig ] ; then
+	RF_MOZCONFIG=${topsrcdir}/../../mozconfig
+elif [ -e ${topsrcdir}/../../../mozconfig ] ; then
+	RF_MOZCONFIG=${topsrcdir}/../../../mozconfig
+fi
+. ${RF_MOZCONFIG}/mozconfig.sh
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/netwerk/system/win32/nsNotifyAddrListener.cpp mozilla/netwerk/system/win32/nsNotifyAddrListener.cpp
--- mozilla.orig/netwerk/system/win32/nsNotifyAddrListener.cpp	2006-05-08 14:21:32 +0900
+++ mozilla/netwerk/system/win32/nsNotifyAddrListener.cpp	2010-03-03 23:03:57 +0900
@@ -67,6 +67,7 @@
 
 #define IF_TYPE_SOFTWARE_LOOPBACK       24
 
+#ifndef _NLDEF_
 typedef enum {
     IpPrefixOriginOther = 0,
     IpPrefixOriginManual,
@@ -91,6 +92,11 @@
     IpDadStateDeprecated,
     IpDadStatePreferred
 } IP_DAD_STATE;
+#else
+typedef NL_PREFIX_ORIGIN IP_PREFIX_ORIGIN;
+typedef NL_SUFFIX_ORIGIN IP_SUFFIX_ORIGIN;
+typedef NL_DAD_STATE IP_DAD_STATE;
+#endif
 
 typedef struct _IP_ADAPTER_UNICAST_ADDRESS {
     union {
@@ -148,6 +154,7 @@
     SOCKET_ADDRESS Address;
 } IP_ADAPTER_DNS_SERVER_ADDRESS, *PIP_ADAPTER_DNS_SERVER_ADDRESS;
 
+#ifndef _NLDEF_
 typedef enum {
     IfOperStatusUp = 1,
     IfOperStatusDown,
@@ -157,6 +164,7 @@
     IfOperStatusNotPresent,
     IfOperStatusLowerLayerDown
 } IF_OPER_STATUS;
+#endif
 
 typedef struct _IP_ADAPTER_ADDRESSES {
     union {
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/nsprpub/config/autoconf.mk.in mozilla/nsprpub/config/autoconf.mk.in
--- mozilla.orig/nsprpub/config/autoconf.mk.in	2006-02-23 07:53:55 +0900
+++ mozilla/nsprpub/config/autoconf.mk.in	2010-03-03 23:03:57 +0900
@@ -69,6 +69,7 @@
 FILTER		= @FILTER@
 IMPLIB		= @IMPLIB@
 CYGWIN_WRAPPER	= @CYGWIN_WRAPPER@
+MT		= @MT@
 
 OS_CPPFLAGS	= @CPPFLAGS@
 OS_CFLAGS	= $(OS_CPPFLAGS) @CFLAGS@ $(DSO_CFLAGS)
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/nsprpub/config/rules.mk mozilla/nsprpub/config/rules.mk
--- mozilla.orig/nsprpub/config/rules.mk	2006-02-23 07:53:55 +0900
+++ mozilla/nsprpub/config/rules.mk	2010-03-03 23:03:57 +0900
@@ -299,6 +299,12 @@
 	@$(MAKE_OBJDIR)
 ifeq ($(NS_USE_GCC)_$(OS_ARCH),_WINNT)
 	$(CC) $(OBJS) -Fe$@ -link $(LDFLAGS) $(OS_LIBS) $(EXTRA_LIBS)
+ifdef MT
+	@if test -f $@.manifest; then \
+		$(MT) -NOLOGO -MANIFEST $@.manifest -OUTPUTRESOURCE:$@\;1; \
+		rm -f $@.manifest; \
+	fi
+endif	# MSVC with manifest tool
 else
 ifeq ($(MOZ_OS2_TOOLS),VACPP)
 	$(CC) $(OBJS) -Fe$@ $(LDFLAGS) $(OS_LIBS) $(EXTRA_LIBS)
@@ -340,6 +346,12 @@
 else	# AIX 4.1
 ifeq ($(NS_USE_GCC)_$(OS_ARCH),_WINNT)
 	$(LINK_DLL) -MAP $(DLLBASE) $(DLL_LIBS) $(EXTRA_LIBS) $(OBJS) $(RES)
+ifdef MT
+	@if test -f $@.manifest; then \
+		$(MT) -NOLOGO -MANIFEST $@.manifest -OUTPUTRESOURCE:$@\;2; \
+		rm -f $@.manifest; \
+	fi
+endif	# MSVC with manifest tool
 else
 ifeq ($(MOZ_OS2_TOOLS),VACPP)
 	$(LINK_DLL) $(DLLBASE) $(OBJS) $(OS_LIBS) $(EXTRA_LIBS) $(MAPFILE)
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/nsprpub/configure mozilla/nsprpub/configure
--- mozilla.orig/nsprpub/configure	2007-11-01 03:07:38 +0900
+++ mozilla/nsprpub/configure	2010-03-03 23:03:57 +0900
@@ -713,6 +713,7 @@
 CYGWIN_WRAPPER=
 MACOS_SDK_DIR=
 NEXT_ROOT=
+MT=
 
 RESOLVE_LINK_SYMBOLS=
 
@@ -3964,6 +3965,26 @@
         _CC_MAJOR_VERSION=`echo $CC_VERSION | awk -F\. '{ print $1 }'`
         _CC_MINOR_VERSION=`echo $CC_VERSION | awk -F\. '{ print $2 }'`
         MSC_VER=${_CC_MAJOR_VERSION}${_CC_MINOR_VERSION}
+
+        # Ensure that mt is Microsoft (R) Manifest Tool and not magnetic
+        # tape manipulation utility (or something else)
+        if test "$MSC_VER" -ge "1400"; then
+            
+            _MSMT_VER_FILTER='s|.* \([0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\).*|\1|p'
+            
+
+            MSMT_TOOL=`mt 2>&1|grep 'Microsoft (R) Manifest Tool'`
+            if test -n "$MSMT_TOOL"; then
+                MSMANIFEST_TOOL_VERSION=`echo ${MSMT_TOOL}|sed -ne "$_MSMT_VER_FILTER"`
+                if test -z "$MSMANIFEST_TOOL_VERSION"; then
+                    echo "configure: warning: Unknown version of the Microsoft (R) Manifest Tool." 1>&2
+                fi
+                MT=mt
+                unset MSMT_TOOL
+            else
+                { echo "configure: error: Microsoft (R) Manifest Tool must be in your \$PATH." 1>&2; exit 1; }
+            fi
+        fi
         
         CFLAGS="$CFLAGS -W3 -nologo -GF -Gy"
         DLLFLAGS='-OUT:"$@"'
@@ -6161,6 +6182,7 @@
 s%@WRAP_SYSTEM_INCLUDES@%$WRAP_SYSTEM_INCLUDES%g
 s%@MACOS_SDK_DIR@%$MACOS_SDK_DIR%g
 s%@NEXT_ROOT@%$NEXT_ROOT%g
+s%@MT@%$MT%g
 
 CEOF
 EOF
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/nsprpub/pr/tests/Makefile.in mozilla/nsprpub/pr/tests/Makefile.in
--- mozilla.orig/nsprpub/pr/tests/Makefile.in	2004-04-26 00:01:02 +0900
+++ mozilla/nsprpub/pr/tests/Makefile.in	2010-03-03 23:03:57 +0900
@@ -491,6 +491,12 @@
 	@$(MAKE_OBJDIR)
 ifeq ($(NS_USE_GCC)_$(OS_ARCH),_WINNT)
 	link $(LDOPTS) $(EXTRA_LDOPTS) $< $(LIBPLC) $(LIBNSPR) $(EXTRA_LIBS) -out:$@
+ifdef MT
+	@if test -f $@.manifest; then \
+		$(MT) -NOLOGO -MANIFEST $@.manifest -OUTPUTRESOURCE:$@\;1; \
+		rm -f $@.manifest; \
+	fi
+endif
 else
 ifeq ($(MOZ_OS2_TOOLS),VACPP)
 	$(LD) $(EXEFLAGS) $(LDOPTS) $< $(LIBPLC) $(LIBNSPR) $(OS_LIBS) $(EXTRA_LIBS)
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/security/coreconf/Darwin.mk mozilla/security/coreconf/Darwin.mk
--- mozilla.orig/security/coreconf/Darwin.mk	2006-02-23 07:27:51 +0900
+++ mozilla/security/coreconf/Darwin.mk	2010-03-03 23:03:57 +0900
@@ -104,8 +104,12 @@
 OS_CFLAGS	= $(DSO_CFLAGS) $(OS_REL_CFLAGS) -Wmost -fpascal-strings -no-cpp-precomp -fno-common -pipe -DDARWIN -DHAVE_STRERROR -DHAVE_BSD_FLOCK $(DARWIN_SDK_CFLAGS)
 
 ifdef BUILD_OPT
+ifeq ($(MOZ_OPTIMIZE),2)
+OPTIMIZER	= $(MOZ_OPTIMIZE_FLAGS)
+else
 OPTIMIZER	= -O2
 endif
+endif
 
 ARCH		= darwin
 
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/security/coreconf/Linux.mk mozilla/security/coreconf/Linux.mk
--- mozilla.orig/security/coreconf/Linux.mk	2006-04-25 10:32:16 +0900
+++ mozilla/security/coreconf/Linux.mk	2010-03-03 23:03:57 +0900
@@ -148,8 +148,12 @@
 endif
 
 ifdef BUILD_OPT
+ifeq ($(MOZ_OPTIMIZE),2)
+	OPTIMIZER	= $(MOZ_OPTIMIZE_FLAGS)
+else
 	OPTIMIZER	= -O2
 endif
+endif
 
 ifeq ($(USE_PTHREADS),1)
 OS_PTHREAD = -lpthread 
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/security/coreconf/OS2.mk mozilla/security/coreconf/OS2.mk
--- mozilla.orig/security/coreconf/OS2.mk	2007-01-06 07:12:14 +0900
+++ mozilla/security/coreconf/OS2.mk	2010-03-03 23:03:57 +0900
@@ -66,7 +66,7 @@
 ifdef XP_OS2_EMX
 
 CCC			= gcc
-LINK			= gcc
+LD			= gcc
 AR                      = emxomfar r $@
 # Keep AR_FLAGS blank so that we do not have to change rules.mk
 AR_FLAGS                = 
@@ -114,7 +114,11 @@
 OS_CFLAGS          = -Wall -W -Wno-unused -Wpointer-arith -Wcast-align -Zomf -DDEBUG -DTRACING -g
 
 ifdef BUILD_OPT
+ifeq ($(MOZ_OPTIMIZE),2)
+OPTIMIZER		= $(MOZ_OPTIMIZE_FLAGS)
+else
 OPTIMIZER		= -O2 -s
+endif
 DEFINES 		+= -UDEBUG -U_DEBUG -DNDEBUG
 DLLFLAGS		= -DLL -OUT:$@ -MAP:$(@:.dll=.map) $(HIGHMEM_LDFLAG)
 EXEFLAGS    		= -PMTYPE:VIO -OUT:$@ -MAP:$(@:.exe=.map) -nologo -NOE $(HIGHMEM_LDFLAG)
@@ -141,7 +145,7 @@
 ASFLAGS = +Od
 endif
 CCC			= icc -q -DXP_OS2 -DOS2=4 -N10
-LINK			= -ilink
+LD			= -ilink
 AR		= -ilib /NOL /NOI /O:$(subst /,\\,$@)
 # Keep AR_FLAGS blank so that we do not have to change rules.mk
 AR_FLAGS                = 
@@ -185,7 +189,11 @@
 LDFLAGS     = /FREE /NOE /LINENUMBERS /nologo
 
 ifdef BUILD_OPT
+ifeq ($(MOZ_OPTIMIZE),2)
+OPTIMIZER		= $(MOZ_OPTIMIZE_FLAGS)
+else
 OPTIMIZER		= /O+ /Gl+ /G5 /qarch=pentium
+endif
 DEFINES 		+= -UDEBUG -U_DEBUG -DNDEBUG
 OBJDIR_TAG 		= _OPT
 LDFLAGS     += /NODEBUG /OPTFUNC /EXEPACK:2 /PACKCODE /PACKDATA
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/security/coreconf/WIN16.mk mozilla/security/coreconf/WIN16.mk
--- mozilla.orig/security/coreconf/WIN16.mk	2005-09-17 02:09:23 +0900
+++ mozilla/security/coreconf/WIN16.mk	2010-03-03 23:03:58 +0900
@@ -70,7 +70,7 @@
 
 CC           = wcc
 CCC          = wcl
-LINK         = wlink
+LD           = wlink
 AR           = wlib
 AR          += -q $@
 RC           = wrc.exe
@@ -87,7 +87,11 @@
 DLL_SUFFIX   = dll
 
 ifdef BUILD_OPT
+ifeq ($(MOZ_OPTIMIZE),2)
+	OPTIMIZER   = $(MOZ_OPTIMIZE_FLAGS)
+else
 	OPTIMIZER   = -oneatx -oh -oi -ei -3 -fpi87 -fp3
+endif
 else
 	OPTIMIZER  += -d2 -hc -DDEBUG
 #	OPTIMIZER  += -d2 -hw -DDEBUG
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/security/coreconf/WIN32.mk mozilla/security/coreconf/WIN32.mk
--- mozilla.orig/security/coreconf/WIN32.mk	2007-11-15 07:47:33 +0900
+++ mozilla/security/coreconf/WIN32.mk	2010-03-03 23:03:59 +0900
@@ -45,7 +45,7 @@
 ifdef NS_USE_GCC
 	CC           = gcc
 	CCC          = g++
-	LINK         = ld
+	LD           = ld
 	AR           = ar
 	AR          += cr $@
 	RANLIB       = ranlib
@@ -55,7 +55,7 @@
 else
 	CC           = cl
 	CCC          = cl
-	LINK         = link
+	LD           = link
 	AR           = lib
 	AR          += -NOLOGO -OUT:"$@"
 	RANLIB       = echo
@@ -97,7 +97,11 @@
     _GEN_IMPORT_LIB=-Wl,--out-implib,$(IMPORT_LIBRARY)
     DLLFLAGS  += -mno-cygwin -o $@ -shared -Wl,--export-all-symbols $(if $(IMPORT_LIBRARY),$(_GEN_IMPORT_LIB))
     ifdef BUILD_OPT
+	ifeq ($(MOZ_OPTIMIZE),2)
+	OPTIMIZER  += $(MOZ_OPTIMIZE_FLAGS)
+	else
 	OPTIMIZER  += -O2
+	endif
 	DEFINES    += -UDEBUG -U_DEBUG -DNDEBUG
 	#
 	# Add symbolic information for a profiler
@@ -116,7 +120,11 @@
 else # !NS_USE_GCC
     ifdef BUILD_OPT
 	OS_CFLAGS  += -MD
+	ifeq ($(MOZ_OPTIMIZE),2)
+	OPTIMIZER  += $(MOZ_OPTIMIZE_FLAGS)
+	else
 	OPTIMIZER  += -O2
+	endif
 	DEFINES    += -UDEBUG -U_DEBUG -DNDEBUG
 	DLLFLAGS   += -OUT:"$@"
 	#
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/security/coreconf/WINCE.mk mozilla/security/coreconf/WINCE.mk
--- mozilla.orig/security/coreconf/WINCE.mk	2005-09-17 02:09:23 +0900
+++ mozilla/security/coreconf/WINCE.mk	2010-03-03 23:03:59 +0900
@@ -54,7 +54,7 @@
 endif
 endif
 
-LINK         = link
+LD           = link
 AR           = lib
 AR          += -NOLOGO -OUT:"$@"
 RANLIB       = echo
@@ -84,7 +84,11 @@
 
 ifdef BUILD_OPT
 #   OS_CFLAGS  += -MD
+    ifeq ($(MOZ_OPTIMIZE),2)
+    OPTIMIZER  += $(MOZ_OPTIMIZE_FLAGS)
+    else
     OPTIMIZER  += -O2
+    endif
     DEFINES    += -UDEBUG -U_DEBUG -DNDEBUG
     DLLFLAGS   += -OUT:"$@"
 else
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/security/coreconf/WINCE3.0.mk mozilla/security/coreconf/WINCE3.0.mk
--- mozilla.orig/security/coreconf/WINCE3.0.mk	2004-08-27 09:33:40 +0900
+++ mozilla/security/coreconf/WINCE3.0.mk	2010-03-03 23:03:59 +0900
@@ -83,7 +83,7 @@
     LINKFLAGS += -PDB:NONE
 endif
 
-LINK    += $(LINKFLAGS)
+LD      += $(LINKFLAGS)
 LDFLAGS += $(LINKFLAGS)
 
 OS_LIBS= coredll.lib corelibc.lib
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/security/coreconf/command.mk mozilla/security/coreconf/command.mk
--- mozilla.orig/security/coreconf/command.mk	2007-05-09 10:38:16 +0900
+++ mozilla/security/coreconf/command.mk	2010-03-03 23:03:59 +0900
@@ -43,8 +43,8 @@
 AS            = $(CC)
 ASFLAGS      += $(CFLAGS)
 CCF           = $(CC) $(CFLAGS)
-LINK_DLL      = $(LINK) $(OS_DLLFLAGS) $(DLLFLAGS)
-LINK_EXE      = $(LINK) $(OS_LFLAGS) $(LFLAGS)
+LINK_DLL      = $(LD) $(OS_DLLFLAGS) $(DLLFLAGS)
+LINK_EXE      = $(LD) $(OS_LFLAGS) $(LFLAGS)
 CFLAGS        = $(OPTIMIZER) $(OS_CFLAGS) $(XP_DEFINE) $(DEFINES) $(INCLUDES) \
 		$(XCFLAGS)
 PERL          = perl
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/security/manager/Makefile.in mozilla/security/manager/Makefile.in
--- mozilla.orig/security/manager/Makefile.in	2008-05-24 08:45:26 +0900
+++ mozilla/security/manager/Makefile.in	2010-03-03 23:03:59 +0900
@@ -43,6 +43,8 @@
 
 include $(DEPTH)/config/autoconf.mk
 
+export MOZ_OPTIMIZE MOZ_OPTIMIZE_FLAGS MOZ_OPTIMIZE_LDFLAGS MOZ_OPTIMIZE_SIZE_TWEAK
+
 MODULE = psm
 
 PACKAGE_FILE = psm.pkg
@@ -198,7 +200,7 @@
 	NATIVE_CC="$(HOST_CC)" \
 	CC="$(CC)" \
 	CCC="$(CXX)" \
-	LINK="$(LD)" \
+	LD="$(LD)" \
 	AS="$(AS)" \
 	AR='$(AR) $(AR_FLAGS:$@=$$@)' \
 	RANLIB="$(RANLIB)" \
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/storage/src/mozStorageAsyncIO.cpp mozilla/storage/src/mozStorageAsyncIO.cpp
--- mozilla.orig/storage/src/mozStorageAsyncIO.cpp	2006-08-03 01:10:46 +0900
+++ mozilla/storage/src/mozStorageAsyncIO.cpp	2010-03-03 23:03:59 +0900
@@ -1095,6 +1095,9 @@
 //    This method holds the mutex from start to finish because it has to
 //    go through the whole queue and apply any changes to the file.
 
+#if defined(_MSC_VER) && _MSC_VER == 1200
+#pragma optimize( "", off )
+#endif
 int // static
 AsyncRead(OsFile* aFile, void *aBuffer, int aCount)
 {
@@ -1187,6 +1190,9 @@
 asyncread_out:
   return rc;
 }
+#if defined(_MSC_VER) && _MSC_VER == 1200
+#pragma optimize( "", on )
+#endif
 
 
 // AsyncSeek
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/toolkit/components/downloads/src/nsDownloadManager.cpp mozilla/toolkit/components/downloads/src/nsDownloadManager.cpp
--- mozilla.orig/toolkit/components/downloads/src/nsDownloadManager.cpp	2008-04-22 03:39:38 +0900
+++ mozilla/toolkit/components/downloads/src/nsDownloadManager.cpp	2010-03-03 23:03:59 +0900
@@ -2038,8 +2038,13 @@
   // during that time for more accuracy.
   double elapsedSecs = double(delta) / PR_USEC_PER_SEC;
   if (elapsedSecs > 0) {
+#if defined(_MSC_VER) && _MSC_VER < 1300
+    nsInt64 curTotalProgress = (PRInt64)aCurTotalProgress;
+    nsInt64 diffBytes = curTotalProgress - nsInt64((PRInt64)mCurrBytes);
+#else
     nsUint64 curTotalProgress = (PRUint64)aCurTotalProgress;
     nsUint64 diffBytes = curTotalProgress - nsUint64(mCurrBytes);
+#endif
     double speed = double(diffBytes) / elapsedSecs;
     if (LL_IS_ZERO(mCurrBytes))
       mSpeed = speed;
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/toolkit/mozapps/installer/packager.mk mozilla/toolkit/mozapps/installer/packager.mk
--- mozilla.orig/toolkit/mozapps/installer/packager.mk	2008-04-05 05:31:10 +0900
+++ mozilla/toolkit/mozapps/installer/packager.mk	2010-03-03 23:03:59 +0900
@@ -98,9 +98,9 @@
 ifeq ($(MOZ_PKG_FORMAT),DMG)
 ifndef _APPNAME
 ifdef MOZ_DEBUG
-_APPNAME	= $(MOZ_APP_DISPLAYNAME)Debug.app
+_APPNAME	= $(MOZ_APP_NAME)Debug.app
 else
-_APPNAME	= $(MOZ_APP_DISPLAYNAME).app
+_APPNAME	= $(MOZ_APP_NAME).app
 endif
 endif
 ifndef _BINPATH
@@ -132,7 +132,7 @@
 endif
 MAKE_PACKAGE	= $(_ABS_TOPSRCDIR)/build/package/mac_osx/pkg-dmg \
   --source "$(PKG_DMG_SOURCE)" --target "$(PACKAGE)" \
-  --volname "$(MOZ_APP_DISPLAYNAME)" $(PKG_DMG_FLAGS)
+  --volname "$(MOZ_APP_NAME)" $(PKG_DMG_FLAGS)
 UNMAKE_PACKAGE	= \
   set -ex; \
   function cleanup() { \
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/toolkit/mozapps/installer/windows/wizard/setup/extra.c mozilla/toolkit/mozapps/installer/windows/wizard/setup/extra.c
--- mozilla.orig/toolkit/mozapps/installer/windows/wizard/setup/extra.c	2006-02-10 06:15:57 +0900
+++ mozilla/toolkit/mozapps/installer/windows/wizard/setup/extra.c	2010-03-03 23:03:59 +0900
@@ -4937,9 +4937,9 @@
   bIsWin95Debute = FALSE;
   if((hLib = LoadLibraryEx("kernel32.dll", NULL, LOAD_WITH_ALTERED_SEARCH_PATH)) != NULL)
   {
-    if(((FARPROC)NS_GetDiskFreeSpaceEx = GetProcAddress(hLib, "GetDiskFreeSpaceExA")) == NULL)
+    if((NS_GetDiskFreeSpaceEx = GetProcAddress(hLib, "GetDiskFreeSpaceExA")) == NULL)
     {
-      (FARPROC)NS_GetDiskFreeSpace = GetProcAddress(hLib, "GetDiskFreeSpaceA");
+      NS_GetDiskFreeSpace = GetProcAddress(hLib, "GetDiskFreeSpaceA");
       bIsWin95Debute = TRUE;
     }
 
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/toolkit/mozapps/installer/windows/wizard/setup/setup.h mozilla/toolkit/mozapps/installer/windows/wizard/setup/setup.h
--- mozilla.orig/toolkit/mozapps/installer/windows/wizard/setup/setup.h	2006-02-10 06:15:58 +0900
+++ mozilla/toolkit/mozapps/installer/windows/wizard/setup/setup.h	2010-03-03 23:04:00 +0900
@@ -65,6 +65,8 @@
 #include "resource.h"
 #include "zipfile.h"
 
+#define strcmpi stricmp
+
 #define DEFAULT_SETUP_WINDOW_NAME       "Setup"
 /* Class name for the invisible window to be created */
 #define CLASS_NAME_SETUP                "MozillaSetup"
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/toolkit/mozapps/installer/windows/wizard/setup/xpi.c mozilla/toolkit/mozapps/installer/windows/wizard/setup/xpi.c
--- mozilla.orig/toolkit/mozapps/installer/windows/wizard/setup/xpi.c	2005-02-02 02:07:27 +0900
+++ mozilla/toolkit/mozapps/installer/windows/wizard/setup/xpi.c	2010-03-03 23:04:00 +0900
@@ -120,19 +120,19 @@
     PrintError(szBuf, ERROR_CODE_SHOW);
     return(1);
   }
-  if(((FARPROC)pfnXpiInit = GetProcAddress(hXPIStubInst, "XPI_Init")) == NULL)
+  if((pfnXpiInit = (XpiInit)GetProcAddress(hXPIStubInst, "XPI_Init")) == NULL)
   {
     wsprintf(szBuf, szEGetProcAddress, "XPI_Init");
     PrintError(szBuf, ERROR_CODE_SHOW);
     return(1);
   }
-  if(((FARPROC)pfnXpiInstall = GetProcAddress(hXPIStubInst, "XPI_Install")) == NULL)
+  if((pfnXpiInstall = (XpiInstall)GetProcAddress(hXPIStubInst, "XPI_Install")) == NULL)
   {
     wsprintf(szBuf, szEGetProcAddress, "XPI_Install");
     PrintError(szBuf, ERROR_CODE_SHOW);
     return(1);
   }
-  if(((FARPROC)pfnXpiExit = GetProcAddress(hXPIStubInst, "XPI_Exit")) == NULL)
+  if((pfnXpiExit = (XpiExit)GetProcAddress(hXPIStubInst, "XPI_Exit")) == NULL)
   {
     wsprintf(szBuf, szEGetProcAddress, "XPI_Exit");
     PrintError(szBuf, ERROR_CODE_SHOW);
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/toolkit/xre/nsAppRunner.cpp mozilla/toolkit/xre/nsAppRunner.cpp
--- mozilla.orig/toolkit/xre/nsAppRunner.cpp	2007-11-08 20:56:25 +0900
+++ mozilla/toolkit/xre/nsAppRunner.cpp	2010-03-03 23:04:00 +0900
@@ -1370,7 +1370,7 @@
   if (NS_FAILED(rv))
     return rv;
 
-#elif
+#else
 #error Oops, you need platform-specific code here
 #endif
 
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/view/src/nsViewManager.cpp mozilla/view/src/nsViewManager.cpp
--- mozilla.orig/view/src/nsViewManager.cpp	2007-05-01 10:45:14 +0900
+++ mozilla/view/src/nsViewManager.cpp	2010-03-03 23:04:00 +0900
@@ -1685,7 +1685,7 @@
 
 // This gets around an internal compiler error C1001
 // (compiler file 'E:\8799\vc98\p2\src\P2\main.c', line 494)
-#ifdef WINCE
+#if defined( WINCE ) || ( defined(_MSC_VER) && _MSC_VER == 1200 )
 #pragma optimize( "", off )
 #endif
 void
@@ -1705,7 +1705,7 @@
   // offset we want to use when accumulating dirty rects.
   AccumulateIntersectionsIntoDirtyRegion(aView, GetRootView(), -aScrollAmount);
 }
-#ifdef WINCE
+#if defined( WINCE ) || ( defined(_MSC_VER) && _MSC_VER == 1200 )
 #pragma optimize( "", on )
 #endif
 
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/widget/src/windows/nsBidiKeyboard.cpp mozilla/widget/src/windows/nsBidiKeyboard.cpp
--- mozilla.orig/widget/src/windows/nsBidiKeyboard.cpp	2005-01-29 05:01:45 +0900
+++ mozilla/widget/src/windows/nsBidiKeyboard.cpp	2010-03-03 23:04:00 +0900
@@ -151,11 +151,11 @@
   while (keyboards--) {
     locale = buf[keyboards];
     if (IsRTLLanguage(locale)) {
-      sprintf(mRTLKeyboard, "%.*x", KL_NAMELENGTH - 1, LANGIDFROMLCID(locale));
+      sprintf(mRTLKeyboard, "%.*x", KL_NAMELENGTH - 1, LANGIDFROMLCID((DWORD)locale));
       isRTLKeyboardSet = PR_TRUE;
     }
     else {
-      sprintf(mLTRKeyboard, "%.*x", KL_NAMELENGTH - 1, LANGIDFROMLCID(locale));
+      sprintf(mLTRKeyboard, "%.*x", KL_NAMELENGTH - 1, LANGIDFROMLCID((DWORD)locale));
       isLTRKeyboardSet = PR_TRUE;
     }
   }
@@ -206,7 +206,7 @@
 PRBool nsBidiKeyboard::IsRTLLanguage(HKL aLocale)
 {
   // This macro extracts the primary language id (low 10 bits) from the locale id
-  switch (PRIMARYLANGID(aLocale)){
+  switch (PRIMARYLANGID((DWORD)aLocale)){
     case LANG_ARABIC:
     case LANG_FARSI:
     case LANG_HEBREW:
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/widget/src/windows/nsWindow.cpp mozilla/widget/src/windows/nsWindow.cpp
--- mozilla.orig/widget/src/windows/nsWindow.cpp	2007-11-08 17:20:00 +0900
+++ mozilla/widget/src/windows/nsWindow.cpp	2010-03-03 23:04:00 +0900
@@ -113,7 +113,10 @@
 
 #ifdef ACCESSIBILITY
 #include "OLEIDL.H"
-#include "winable.h"
+#include <winuser.h>
+#ifndef WINABLEAPI
+#include <winable.h>
+#endif
 #include "nsIAccessible.h"
 #include "nsIAccessibleDocument.h"
 #include "nsIAccessNode.h"
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/xpcom/base/nsStackFrameWin.cpp mozilla/xpcom/base/nsStackFrameWin.cpp
--- mozilla.orig/xpcom/base/nsStackFrameWin.cpp	2005-08-03 07:17:59 +0900
+++ mozilla/xpcom/base/nsStackFrameWin.cpp	2010-03-03 23:04:00 +0900
@@ -327,7 +327,7 @@
          * Not loaded, here's the magic.
          * Go through all the modules.
          */
-        enumRes = _EnumerateLoadedModules(aProcess, callbackEspecial, (PVOID)&aAddr);
+        enumRes = _EnumerateLoadedModules(aProcess, (PENUMLOADED_MODULES_CALLBACK)callbackEspecial, (PVOID)&aAddr);
         if (FALSE != enumRes)
         {
             /*
@@ -377,7 +377,7 @@
          * Not loaded, here's the magic.
          * Go through all the modules.
          */
-        enumRes = _EnumerateLoadedModules64(aProcess, callbackEspecial64, (PVOID)&aAddr);
+        enumRes = _EnumerateLoadedModules64(aProcess, (PENUMLOADED_MODULES_CALLBACK64)callbackEspecial64, (PVOID)&aAddr);
         if (FALSE != enumRes)
         {
             /*

