summaryrefslogtreecommitdiff
path: root/moz/patches/embed_manifest.patch
diff options
context:
space:
mode:
Diffstat (limited to 'moz/patches/embed_manifest.patch')
-rwxr-xr-xmoz/patches/embed_manifest.patch142
1 files changed, 142 insertions, 0 deletions
diff --git a/moz/patches/embed_manifest.patch b/moz/patches/embed_manifest.patch
new file mode 100755
index 000000000000..3b0e80b3ab81
--- /dev/null
+++ b/moz/patches/embed_manifest.patch
@@ -0,0 +1,142 @@
+--- 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@