--- mozilla.pure/configure 2008-06-16 00:25:31.000000000 +0200 +++ mozilla/configure 2008-11-09 23:59:19.984375000 +0100 @@ -1068,6 +1068,8 @@ GCONF_VERSION=1.2.1 LIBGNOME_VERSION=2.0 +MSMANIFEST_TOOL= + MISSING_X= for ac_prog in gawk mawk nawk awk do @@ -3025,6 +3027,22 @@ 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_TOOL=`mt 2>&1|grep 'Microsoft (R) Manifest Tool'` + if test -n "MSMT_TOOL"; then + MSMANIFEST_TOOL_VERSION=`echo ${MSMANIFEST_TOOL}|grep -Po "(^|\s)[0-9]+\.[0-9]+\.[0-9]+(\.[0-9]+)?(\s|$)"` + 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 "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"` --- mozilla.pure/configure.in 2008-06-16 00:25:32.000000000 +0200 +++ mozilla/configure.in 2008-11-09 23:59:20.000000000 +0100 @@ -126,6 +126,8 @@ GCONF_VERSION=1.2.1 LIBGNOME_VERSION=2.0 +MSMANIFEST_TOOL= + dnl Set various checks dnl ======================================================== MISSING_X= @@ -428,6 +430,22 @@ else AC_MSG_ERROR([This version of the MSVC compiler, $CC_VERSION , is unsupported.]) 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_TOOL=`mt 2>&1|grep 'Microsoft (R) Manifest Tool'` + if test -n "MSMT_TOOL"; then + MSMANIFEST_TOOL_VERSION=`echo ${MSMANIFEST_TOOL}|grep -Po "(^|\s)[0-9]+\.[0-9]+\.[0-9]+(\.[0-9]+)?(\s|$)"` + if test -z "MSMANIFEST_TOOL_VERSION"; then + AC_MSG_WARN([Unknown version of the Microsoft (R) Manifest Tool.]) + fi + MSMANIFEST_TOOL=1 + unset MSMT_TOOL + else + AC_MSG_ERROR([Microsoft (R) Manifest Tool must be in your \$PATH.]) + fi + fi # Check linker version _LD_FULL_VERSION=`"${LD}" -v 2>&1 | sed -ne "$_MSVC_VER_FILTER"` @@ -7319,6 +7339,7 @@ AC_SUBST(USE_N32) AC_SUBST(CC_VERSION) AC_SUBST(CXX_VERSION) +AC_SUBST(MSMANIFEST_TOOL) if test "$USING_HCC"; then CC='${topsrcdir}/build/hcc' --- mozilla.pure/config/rules.mk 2008-01-29 20:30:22.000000000 +0100 +++ mozilla/config/rules.mk 2008-11-09 23:59:19.968750000 +0100 @@ -811,6 +812,12 @@ 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; \ + rm -f $@.manifest; \ + fi +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 +850,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 +879,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 +1038,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) --- mozilla.pure/config/autoconf.mk.in 2006-09-14 20:07:03.000000000 +0200 +++ mozilla/config/autoconf.mk.in 2008-11-09 23:59:19.953125000 +0100 @@ -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@