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 22:58:56 +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 22:58:56 +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/browser/app/Makefile.in mozilla/browser/app/Makefile.in
--- mozilla.orig/browser/app/Makefile.in	2008-05-13 03:25:50 +0900
+++ mozilla/browser/app/Makefile.in	2010-03-03 22:58:56 +0900
@@ -138,6 +138,7 @@
 ifeq ($(OS_ARCH),WINNT)
 OS_LIBS += $(call EXPAND_LIBNAME,comctl32 comdlg32 uuid shell32 ole32 oleaut32 version winspool gdi32)
 RCINCLUDE = splash.rc
+WIN7_MANIFEST = 1
 ifndef GNU_CC
 RCFLAGS += -DMOZ_PHOENIX -I$(srcdir)
 else
@@ -309,7 +310,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/browser/app/profile/firefox.js mozilla/browser/app/profile/firefox.js
--- mozilla.orig/browser/app/profile/firefox.js	2008-11-25 04:51:34 +0900
+++ mozilla/browser/app/profile/firefox.js	2010-03-03 22:58:56 +0900
@@ -163,6 +163,7 @@
 pref("general.useragent.locale", "@AB_CD@");
 pref("general.skins.selectedSkin", "classic/1.0");
 pref("general.useragent.extra.firefox", "@APP_UA_NAME@/@APP_VERSION@");
+pref("general.useragent.extra.firefox.rayflood", "(rayflood)");
 
 pref("general.smoothScroll", false);
 #ifdef UNIX_BUT_NOT_MAC
@@ -181,7 +182,7 @@
 pref("browser.startup.homepage",            "resource:/browserconfig.properties");
 
 pref("browser.cache.disk.capacity",         50000);
-pref("browser.enable_automatic_image_resizing", true);
+pref("browser.enable_automatic_image_resizing", false);
 pref("browser.urlbar.autoFill", false);
 pref("browser.urlbar.matchOnlyTyped", false);
 pref("browser.urlbar.hideGoButton", false);
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/browser/installer/Makefile.in mozilla/browser/installer/Makefile.in
--- mozilla.orig/browser/installer/Makefile.in	2006-06-07 00:35:00 +0900
+++ mozilla/browser/installer/Makefile.in	2010-03-03 22:58:56 +0900
@@ -65,8 +65,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/browser/installer/windows/nsis/branding.nsi mozilla/browser/installer/windows/nsis/branding.nsi
--- mozilla.orig/browser/installer/windows/nsis/branding.nsi	2006-08-02 14:04:34 +0900
+++ mozilla/browser/installer/windows/nsis/branding.nsi	2010-03-03 22:58:56 +0900
@@ -36,11 +36,11 @@
 
 # NSIS defines for nightly builds.
 # The release build branding.nsi is located in other-license/branding/firefox/
-!define BrandShortName        "Bon Echo"
-!define BrandFullName         "Bon Echo"
+!define BrandShortName        "firefox"
+!define BrandFullName         "firefox"
 # 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 "Bon Echo"
+!define BrandFullNameInternal "firefox"
 !define CompanyName           "mozilla.org"
 !define URLInfoAbout          "http://www.mozilla.org"
 !define URLUpdateInfo         "http://www.mozilla.org/projects/firefox"
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/browser/locales/en-US/chrome/branding/brand.dtd mozilla/browser/locales/en-US/chrome/branding/brand.dtd
--- mozilla.orig/browser/locales/en-US/chrome/branding/brand.dtd	2006-08-25 09:02:37 +0900
+++ mozilla/browser/locales/en-US/chrome/branding/brand.dtd	2010-03-03 22:58:56 +0900
@@ -1,3 +1,3 @@
-<!ENTITY  brandShortName        "Bon Echo">
-<!ENTITY  brandFullName         "Bon Echo">            
+<!ENTITY  brandShortName        "firefox">
+<!ENTITY  brandFullName         "firefox">
 <!ENTITY  vendorShortName       "Mozilla">
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/browser/locales/en-US/chrome/branding/brand.properties mozilla/browser/locales/en-US/chrome/branding/brand.properties
--- mozilla.orig/browser/locales/en-US/chrome/branding/brand.properties	2006-03-17 13:17:56 +0900
+++ mozilla/browser/locales/en-US/chrome/branding/brand.properties	2010-03-03 22:58:56 +0900
@@ -1,3 +1,3 @@
-brandShortName=Bon Echo
-brandFullName=Bon Echo
+brandShortName=firefox
+brandFullName=firefox
 vendorShortName=Mozilla
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 22:58:56 +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/client.mk mozilla/client.mk
--- mozilla.orig/client.mk	2008-12-18 01:25:48 +0900
+++ mozilla/client.mk	2010-03-03 22:58: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 22:58: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 22:58: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:31:56 +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
@@ -657,8 +661,12 @@
 ifdef IS_COMPONENT
 	$(INSTALL) $(IFLAGS1) $(LIBRARY) $(DIST)/lib/components
 else
+ifdef IS_PLUGINS
+	$(INSTALL) $(IFLAGS1) $(LIBRARY) $(DIST)/lib/plugins
+else
 	$(INSTALL) $(IFLAGS1) $(LIBRARY) $(DIST)/lib
 endif
+endif
 endif # LIBRARY
 endif # BUILD_STATIC_LIBS || FORCE_STATIC_LIB
 ifdef MAPS
@@ -672,6 +680,13 @@
 	( cd $(FINAL_TARGET)/components && $(CC) -nostart -o $(SHARED_LIBRARY).stub $(SHARED_LIBRARY) )
 endif
 else # ! IS_COMPONENT
+ifdef IS_PLUGINS
+	$(INSTALL) $(IFLAGS2) $(SHARED_LIBRARY) $(FINAL_TARGET)/plugins
+	$(ELF_DYNSTR_GC) $(FINAL_TARGET)/plugins/$(SHARED_LIBRARY)
+ifdef BEOS_ADDON_WORKAROUND
+	( cd $(FINAL_TARGET)/plugins && $(CC) -nostart -o $(SHARED_LIBRARY).stub $(SHARED_LIBRARY) )
+endif
+else # ! IS_PLUGINS
 ifneq (,$(filter OS2 WINNT WINCE,$(OS_ARCH)))
 	$(INSTALL) $(IFLAGS2) $(IMPORT_LIBRARY) $(DIST)/lib
 else
@@ -681,6 +696,7 @@
 ifdef BEOS_ADDON_WORKAROUND
 	( cd $(FINAL_TARGET) && $(CC) -nostart -o $(SHARED_LIBRARY).stub $(SHARED_LIBRARY) )
 endif
+endif # IS_PLUGINS
 endif # IS_COMPONENT
 endif # SHARED_LIBRARY
 ifdef PROGRAM
@@ -811,6 +827,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 +868,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 +897,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 +1056,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 +1602,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 22:58:58 +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 22:58:58 +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-10-20 01:21:23 +0900
+++ mozilla/configure	2010-05-25 01:25:25 +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
 
@@ -6294,10 +6405,6 @@
 #define HW_THREADS 1
 EOF
 
-    cat >> confdefs.h <<EOF
-#define WINVER 0x400
-EOF
-
     cat >> confdefs.h <<\EOF
 #define STDC_HEADERS 1
 EOF
@@ -6419,14 +6526,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
@@ -13090,7 +13189,7 @@
 
 browser)
   MOZ_APP_NAME=firefox
-  MOZ_APP_DISPLAYNAME=BonEcho
+  MOZ_APP_DISPLAYNAME=Firefox
   MOZ_XUL_APP=1
   MOZ_PHOENIX=1
   MOZ_SAFE_BROWSING=1
@@ -20801,6 +20900,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/embedding/browser/activex/src/common/StdAfx.h mozilla/embedding/browser/activex/src/common/StdAfx.h
--- mozilla.orig/embedding/browser/activex/src/common/StdAfx.h	2004-04-19 07:00:27 +0900
+++ mozilla/embedding/browser/activex/src/common/StdAfx.h	2010-05-25 01:28:08 +0900
@@ -80,7 +80,7 @@
 #include "nsIDOMDocumentType.h"
 #include "nsIDOMElement.h"
 
-#define _WIN32_WINNT 0x0400
+#define _WIN32_WINNT 0x0403
 #define _ATL_APARTMENT_THREADED
 #define _ATL_STATIC_REGISTRY
 // #define _ATL_DEBUG_INTERFACES
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/embedding/browser/activex/src/control/DropTarget.cpp mozilla/embedding/browser/activex/src/control/DropTarget.cpp
--- mozilla.orig/embedding/browser/activex/src/control/DropTarget.cpp	2004-04-19 07:00:27 +0900
+++ mozilla/embedding/browser/activex/src/control/DropTarget.cpp	2010-03-03 22:58:57 +0900
@@ -216,7 +216,7 @@
     FORMATETC formatetc;
     STGMEDIUM stgmedium;
     memset(&formatetc, 0, sizeof(formatetc));
-    memset(&stgmedium, 0, sizeof(formatetc));
+    memset(&stgmedium, 0, sizeof(stgmedium));
 
     formatetc.dwAspect = DVASPECT_CONTENT;
     formatetc.lindex = -1;
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/embedding/browser/activex/src/control/StdAfx.h mozilla/embedding/browser/activex/src/control/StdAfx.h
--- mozilla.orig/embedding/browser/activex/src/control/StdAfx.h	2004-08-01 08:15:06 +0900
+++ mozilla/embedding/browser/activex/src/control/StdAfx.h	2010-05-25 01:28:33 +0900
@@ -118,7 +118,7 @@
 #include "nsIDOMMouseEvent.h"
 #include "nsIDOMEventReceiver.h"
 
-#define _WIN32_WINNT 0x0400
+#define _WIN32_WINNT 0x0403
 #define _ATL_APARTMENT_THREADED
 #define _ATL_STATIC_REGISTRY
 // #define _ATL_DEBUG_INTERFACES
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/embedding/browser/activex/src/control_kicker/Makefile.in mozilla/embedding/browser/activex/src/control_kicker/Makefile.in
--- mozilla.orig/embedding/browser/activex/src/control_kicker/Makefile.in	2005-06-02 13:00:33 +0900
+++ mozilla/embedding/browser/activex/src/control_kicker/Makefile.in	2010-03-03 22:58:57 +0900
@@ -67,8 +67,6 @@
 
 include $(topsrcdir)/config/rules.mk
 
-CXXFLAGS += -D "WIN32" -GF -MT -O1
-
 libs::
 ifdef MOZ_ACTIVEX_REGISTRATION
 ifneq ($(OS_TARGET),WIN98)
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/embedding/browser/activex/src/plugin/Makefile.in mozilla/embedding/browser/activex/src/plugin/Makefile.in
--- mozilla.orig/embedding/browser/activex/src/plugin/Makefile.in	2005-04-05 02:21:39 +0900
+++ mozilla/embedding/browser/activex/src/plugin/Makefile.in	2010-03-03 22:58:57 +0900
@@ -49,7 +49,6 @@
 LIBRARY_NAME    = npmozax
 RESFILE         = MozActiveX.res
 DEFFILE         = npmozax.def
-GRE_MODULE	= 1
 MOZILLA_INTERNAL_API = 1
 
 REQUIRES = \
@@ -81,8 +80,6 @@
 XPIFILE         = mozactivex.xpi
 
 FORCE_SHARED_LIB = 1
-NO_DIST_INSTALL	= 1
-NO_INSTALL = 1
 
 # Path to the Mozilla ActiveX common dir (some files are copied from there)
 AXCOMMONSRC=$(srcdir)/../common
@@ -226,6 +223,23 @@
 endif
 
 
+IS_PLUGINS = 1
+XPI_NAME               = npmozax
+USE_EXTENSION_MANIFEST = 1
+NO_JAR_AUTO_REG        = 1
+EXTENSION_ID   = {7a44b226-a1d6-44d4-b198-9b47265f3372}
+XPI_PKGNAME            = npmozax-$(MOZILLA_VERSION)
+
+PREF_JS_EXPORTS = $(srcdir)/activex.js
+
+EXTRA_COMPONENTS = nsAxSecurityPolicy.js
+
+DIST_FILES = install.rdf install.js
+
+XULAPP_DEFINES = \
+	-DEXTENSION_VERSION=$(MOZILLA_VERSION) \
+	-DEXTENSION_ID=$(EXTENSION_ID) \
+	$(NULL)
 
 SRCS_IN_OBJDIR	= 1
 
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/embedding/browser/activex/src/plugin/StdAfx.h mozilla/embedding/browser/activex/src/plugin/StdAfx.h
--- mozilla.orig/embedding/browser/activex/src/plugin/StdAfx.h	2004-04-19 07:00:28 +0900
+++ mozilla/embedding/browser/activex/src/plugin/StdAfx.h	2010-05-25 01:28:53 +0900
@@ -49,7 +49,7 @@
 
 #define STRICT
 
-#define _WIN32_WINNT 0x0400
+#define _WIN32_WINNT 0x0403
 #define _ATL_APARTMENT_THREADED
 #define _ATL_STATIC_REGISTRY
 
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/embedding/browser/activex/src/plugin/install.js mozilla/embedding/browser/activex/src/plugin/install.js
--- mozilla.orig/embedding/browser/activex/src/plugin/install.js	2003-06-18 01:39:57 +0900
+++ mozilla/embedding/browser/activex/src/plugin/install.js	2010-03-03 22:58:57 +0900
@@ -1,27 +1,23 @@
 ///////////////////////////////////////////////////////////////////////////////
 // Settings!
 
+#filter substitution
+
 var SOFTWARE_NAME  = "ActiveX Plugin";
-var VERSION        = "1.0.0.3";
-var PLID_BASE      = "@mozilla.org/ActiveXPlugin";
+var VERSION        = "@EXTENSION_VERSION@";
+var PLID_BASE      = "@EXTENSION_ID@";
 var PLID           = PLID_BASE + ",version=" + VERSION;
 
 var FLDR_COMPONENTS = getFolder("Components");
 var FLDR_PLUGINS   = getFolder("Plugins");
 var FLDR_PREFS     = getFolder("Program","defaults/pref");
-var FLDR_WINSYS    = getFolder("Win System");
 
-var PLUGIN         = new FileToInstall("npmozax.dll", 300, FLDR_PLUGINS);
-var XPT            = new FileToInstall("nsIMozAxPlugin.xpt", 2, FLDR_COMPONENTS);
-var SECURITYPOLICY = new FileToInstall("nsAxSecurityPolicy.js", 9, FLDR_COMPONENTS);
-var PREFS          = new FileToInstall("activex.js", 5, FLDR_PREFS);
-
-var MSVCRT         = new FileToInstall("msvcrt.dll", 400, FLDR_WINSYS);
-var MSSTL60        = new FileToInstall("msvcp60.dll", 300, FLDR_WINSYS);
-var MSSTL70        = new FileToInstall("msvcp70.dll", 300, FLDR_WINSYS);
+var PLUGIN         = new FileToInstall("plugins/npmozax.dll", 300, FLDR_PLUGINS);
+var XPT            = new FileToInstall("components/npmozax.xpt", 2, FLDR_COMPONENTS);
+var SECURITYPOLICY = new FileToInstall("components/nsAxSecurityPolicy.js", 9, FLDR_COMPONENTS);
+var PREFS          = new FileToInstall("defaults/preferences/activex.js", 5, FLDR_PREFS);
 
 var filesToAdd     = new Array(PLUGIN, XPT, SECURITYPOLICY, PREFS);
-var sysFilesToAdd  = new Array(MSVCRT, MSSTL60, MSSTL70);
 
 
 ///////////////////////////////////////////////////////////////////////////////
@@ -56,44 +52,6 @@
     {
         logComment("Cancelling current browser install due to lack of space...");
     }
-
-    // Install C runtime files
-    if (err == SUCCESS)
-    {
-        if (verifyDiskSpace(FLDR_WINSYS, calcSpaceRequired(sysFilesToAdd)) == SUCCESS)
-        {
-            // Install system dlls *only* if they do not exist.
-            //
-            // NOTE: Ignore problems installing these files, since all kinds
-            //       of stuff could cause this to fail and I really don't care
-            //       about dealing with email describing failed permissions,
-            //       locked files or whatnot.
-            for (i = 0; i < sysFilesToAdd.length; i++)
-            {
-                fileTemp   = sysFilesToAdd[i].path + sysFilesToAdd[i].name;
-                fileUrl = getFolder("file:///", fileTemp);
-                if (File.exists(fileUrl) == false)
-                {
-                    logComment("File not found: " + fileTemp);
-                    addFile("/Microsoft/Shared",
-                        VERSION,
-                        sysFilesToAdd[i].name, // dir name in jar to extract 
-                        sysFilesToAdd[i].path, // Where to put this file (Returned from getFolder) 
-                        "",                    // subdir name to create relative to fProgram
-                        WIN_SHARED_FILE);
-                    logComment("addFile() of " + sysFilesToAdd[i].name + " returned: " + err);
-                }
-                else
-                {
-                    logComment("File found: " + sysFilesToAdd[i].name );
-                }
-            }
-        }
-        else
-        {
-            logComment("Cancelling current browser install due to lack of space...");
-        }
-    }
 }
 else
 {
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/embedding/browser/activex/src/plugin/install.rdf mozilla/embedding/browser/activex/src/plugin/install.rdf
--- mozilla.orig/embedding/browser/activex/src/plugin/install.rdf	1970-01-01 09:00:00 +0900
+++ mozilla/embedding/browser/activex/src/plugin/install.rdf	2010-03-03 22:58:58 +0900
@@ -0,0 +1,43 @@
+<?xml version="1.0"?>
+
+#filter substitution
+
+<RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+     xmlns:em="http://www.mozilla.org/2004/em-rdf#">
+  <Description about="urn:mozilla:install-manifest">
+    <em:id>@EXTENSION_ID@</em:id>
+    <em:version>@EXTENSION_VERSION@</em:version>
+
+    <em:targetApplication>
+      <!-- Firefox -->
+      <Description>
+        <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id>
+        <em:minVersion>2.0</em:minVersion>
+        <em:maxVersion>2.0.0.*</em:maxVersion>
+      </Description>
+    </em:targetApplication>
+
+    <!-- SeaMonkey -->
+    <em:targetApplication>
+      <Description>
+        <em:id>{92650c4d-4b8e-4d2a-b7eb-24ecf4f6b63a}</em:id>
+        <em:minVersion>1.1</em:minVersion>
+        <em:maxVersion>1.1.*</em:maxVersion>
+      </Description>
+    </em:targetApplication>
+
+    <!-- EXTENSION AUTHORS!
+         DO NOT COPY THIS PROPERTY INTO YOUR INSTALL RDF FILES
+         It will cause users not to be informed of incompatibilities 
+         with your extension when they are updated with Software Update
+         and your extension will become unavailable to them!
+         -->
+    <em:appManaged>true</em:appManaged>
+
+    <!-- front-end metadata -->
+    <em:name>ActiveX Plugin</em:name>
+    <em:description>ActiveX controls in Gecko embedded applications.</em:description>
+    <em:creator>hATrayflood</em:creator>
+    <em:homepageURL>http://rayflood.org/mozilla/</em:homepageURL>
+  </Description>
+</RDF>
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/embedding/browser/activex/src/pluginhostctrl/StdAfx.h mozilla/embedding/browser/activex/src/pluginhostctrl/StdAfx.h
--- mozilla.orig/embedding/browser/activex/src/pluginhostctrl/StdAfx.h	2004-04-19 07:00:29 +0900
+++ mozilla/embedding/browser/activex/src/pluginhostctrl/StdAfx.h	2010-05-25 01:29:17 +0900
@@ -48,7 +48,7 @@
 
 #define STRICT
 #ifndef _WIN32_WINNT
-#define _WIN32_WINNT 0x0400
+#define _WIN32_WINNT 0x0403
 #endif
 #define _ATL_APARTMENT_THREADED
 
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/embedding/browser/activex/src/pluginhostctrl/pluginhostctrlps.mk mozilla/embedding/browser/activex/src/pluginhostctrl/pluginhostctrlps.mk
--- mozilla.orig/embedding/browser/activex/src/pluginhostctrl/pluginhostctrlps.mk	2001-09-13 21:36:15 +0900
+++ mozilla/embedding/browser/activex/src/pluginhostctrl/pluginhostctrlps.mk	2010-05-25 01:29:39 +0900
@@ -4,7 +4,7 @@
 		kernel32.lib rpcndr.lib rpcns4.lib rpcrt4.lib oleaut32.lib uuid.lib \
 
 .c.obj:
-	cl /c /Ox /DWIN32 /D_WIN32_WINNT=0x0400 /DREGISTER_PROXY_DLL \
+	cl /c /Ox /DWIN32 /D_WIN32_WINNT=0x0403 /DREGISTER_PROXY_DLL \
 		$<
 
 clean:
diff -urN --strip-trailing-cr -x CVS -x '*.pyc' -x '*.stackdump' mozilla.orig/embedding/browser/activex/src/xml/StdAfx.h mozilla/embedding/browser/activex/src/xml/StdAfx.h
--- mozilla.orig/embedding/browser/activex/src/xml/StdAfx.h	2000-03-22 07:22:22 +0900
+++ mozilla/embedding/browser/activex/src/xml/StdAfx.h	2010-05-25 01:29:57 +0900
@@ -11,7 +11,7 @@
 
 #define STRICT
 #ifndef _WIN32_WINNT
-#define _WIN32_WINNT 0x0400
+#define _WIN32_WINNT 0x0403
 #endif
 #define _ATL_APARTMENT_THREADED
 
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 22:58: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 22:58:57 +0900
@@ -50,8 +50,6 @@
 <?xul-overlay href="chrome://inspector/content/statusbarOverlay.xul"?>
 
 <?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 22:58: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 22:58: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 22:58: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 22:58: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 22:58: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 22:58:58 +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 22:58:58 +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 22:58:58 +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 22:58:58 +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 22:58:58 +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 22:58: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 22:58:58 +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 22:58:58 +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 22:58:58 +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 22:58:58 +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 22:58:58 +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 22:58:58 +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 22:58:58 +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 22:58:58 +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 22:58:58 +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 22:58:58 +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 22:58:58 +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 22:58:58 +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 22:58:58 +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 22:58:58 +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 22:58:58 +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 22:58:58 +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)
         {
             /*

