summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--config_host.mk.in1
-rw-r--r--configure.in10
-rwxr-xr-xexternal/msm100/README_msm100.txt6
-rwxr-xr-xexternal/msm110/README_msm110.txt6
-rw-r--r--external/prj/d.lst2
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/_Validat.idt1
-rwxr-xr-xoowintool32
-rw-r--r--post_download.in4
-rw-r--r--scp2/source/ooo/vc_redist.scp45
9 files changed, 90 insertions, 17 deletions
diff --git a/config_host.mk.in b/config_host.mk.in
index 97f6ec6ca4fb..251847ee4ee3 100644
--- a/config_host.mk.in
+++ b/config_host.mk.in
@@ -622,6 +622,7 @@ export USE_XINERAMA=@USE_XINERAMA@
export UUIDGEN=@UUIDGEN@
export VALGRIND_CFLAGS=@VALGRIND_CFLAGS@
export VALIDATOR_EXTENSION_PACK=@VALIDATOR_EXTENSION_PACK@
+export VCVER=@VCVER@
export VERBOSE=@VERBOSE@
export VIGRA_TARBALL=@VIGRA_TARBALL@
export VISIO_CFLAGS=@VISIO_CFLAGS@
diff --git a/configure.in b/configure.in
index 2d3115f04313..63103aefab87 100644
--- a/configure.in
+++ b/configure.in
@@ -3185,12 +3185,15 @@ if test "$_os" = "WINNT"; then
if test "$CCNUMVER" -ge "001700000000"; then
COMEX=14
MSVSVER=2012
+ VCVER=110
elif test "$CCNUMVER" -ge "001600000000"; then
COMEX=13
MSVSVER=2010
+ VCVER=100
elif test "$CCNUMVER" -ge "001500000000"; then
COMEX=12
MSVSVER=2008
+ VCVER=90
else
AC_MSG_ERROR([Compiler too old. Use Microsoft Visual Studio 2008 or 2010.])
fi
@@ -3270,6 +3273,7 @@ if test "$_os" = "WINNT"; then
fi
fi
AC_SUBST(COMEX)
+AC_SUBST(VCVER)
PathFormat "$MSPDB_PATH"
MSPDB_PATH="$formatted_path"
AC_SUBST(SHOWINCLUDES_PREFIX)
@@ -5675,10 +5679,10 @@ fi
AC_SUBST([JITC_PROCESSOR_TYPE])
if test $_os = "WINNT"; then
- AC_MSG_CHECKING([for Microsoft_VC100_CRT_x86.msm])
- if ./oowintool --msvc-find-msms-vc100; then
+ AC_MSG_CHECKING([for Microsoft_VC"$VCVER"_CRT_x86.msm])
+ if ./oowintool --msvc-find-msms; then
AC_MSG_RESULT([yes])
- SCPDEFS="$SCPDEFS -DWITH_VC100_REDIST"
+ SCPDEFS="$SCPDEFS -DWITH_VC"$VCVER"_REDIST"
else
AC_MSG_RESULT([no])
fi
diff --git a/external/msm100/README_msm100.txt b/external/msm100/README_msm100.txt
new file mode 100755
index 000000000000..a40bbdbc8321
--- /dev/null
+++ b/external/msm100/README_msm100.txt
@@ -0,0 +1,6 @@
+Put
+Microsoft_VC100_CRT_x86.msm
+into this directory for Windows builds using a VS 2010 / VC 10.0 compiler.
+For builds with --enable-dbgutil also put
+Microsoft_VC100_DebugCRT_x86.msm
+here.
diff --git a/external/msm110/README_msm110.txt b/external/msm110/README_msm110.txt
new file mode 100755
index 000000000000..b9af5778c21e
--- /dev/null
+++ b/external/msm110/README_msm110.txt
@@ -0,0 +1,6 @@
+Put
+Microsoft_VC110_CRT_x86.msm
+into this directory for Windows builds using a VS 2012 / VC 11.0 compiler.
+For builds with --enable-dbgutil also put
+Microsoft_VC110_DebugCRT_x86.msm
+here.
diff --git a/external/prj/d.lst b/external/prj/d.lst
index 6d15049aa3a3..0577f7faeb57 100644
--- a/external/prj/d.lst
+++ b/external/prj/d.lst
@@ -44,6 +44,8 @@ mkdir: %_DEST%\inc\external\wine
..\msvcp90\Microsoft.VC90.CRT.manifest %_DEST%\bin\Microsoft.VC90.CRT.manifest
..\msvcp90\Microsoft.VC90.DebugCRT.manifest %_DEST%\bin\Microsoft.VC90.DebugCRT.manifest
..\msm90\*.msm %_DEST%\bin
+..\msm100\*.msm %_DEST%\bin
+..\msm110\*.msm %_DEST%\bin
..\unowinreg\unowinreg.dll %_DEST%\bin\unowinreg.dll
diff --git a/instsetoo_native/inc_openoffice/windows/msi_templates/_Validat.idt b/instsetoo_native/inc_openoffice/windows/msi_templates/_Validat.idt
index 0759d336f290..e716732c5d7a 100644
--- a/instsetoo_native/inc_openoffice/windows/msi_templates/_Validat.idt
+++ b/instsetoo_native/inc_openoffice/windows/msi_templates/_Validat.idt
@@ -1,7 +1,6 @@
Table Column Nullable MinValue MaxValue KeyTable KeyColumn Category Set Description
s32 s32 s4 I4 I4 S255 I2 S32 S255 S255
_Validation Table Column
-_Validation Category Y Text;Formatted;Template;Condition;Guid;Path;Version;Language;Identifier;Binary;UpperCase;LowerCase;Filename;Paths;AnyPath;WildCardFilename;RegPath;KeyFormatted;CustomSource;Property;Cabinet;Shortcut;URL String category
_Validation Column N Identifier Name of column
_Validation Description Y Text Description of column
_Validation KeyColumn Y 1 32 Column to which foreign key connects
diff --git a/oowintool b/oowintool
index 5f7d60321dbe..e8f0b3b17e7a 100755
--- a/oowintool
+++ b/oowintool
@@ -310,11 +310,12 @@ sub msvc_copy_dlls($)
}
}
-sub msvc_find_msms_vc100()
+sub msvc_find_msms()
{
- my $msm_path = (cygpath reg_get_value ("HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/VisualStudio/9.0/Setup/VS/MSMDir"), 'w', $output_format);
+ my $ver = find_msvc();
+ my $msm_path = (cygpath reg_get_value ("HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/VisualStudio/$ver->{'ver'}/Setup/VS/MSMDir"), 'w', $output_format);
defined $msm_path || die "MSMDir not found";
- return -e "$msm_path/Microsoft_VC100_CRT_x86.msm" ? 0 : 1;
+ return -e "$msm_path/Microsoft_VC".$ver->{'dll_suffix'}."_CRT_x86.msm" ? 0 : 1;
}
sub msvc_copy_msms($$)
@@ -323,18 +324,31 @@ sub msvc_copy_msms($$)
my ($dest, $postfix) = @_;
my $ver = find_msvc();
- (defined $ver && ($ver->{'ver'} eq '9.0')) || return;
+ defined $ver || return;
- my $msm_path = (cygpath reg_get_value ("HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/VisualStudio/9.0/Setup/VS/MSMDir"), 'w', $output_format);
+ my $msm_path = (cygpath reg_get_value ("HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/VisualStudio/$ver->{'ver'}/Setup/VS/MSMDir"), 'w', $output_format);
defined $msm_path || die "MSMDir not found";
+ if ($ver->{'dll_suffix'} == 90) {
+ if ( $postfix eq "_x86" ) {
+ $postfix = ""
+ }
foreach $fname ("Microsoft_VC90_CRT_x86$postfix.msm", "policy_9_0_Microsoft_VC90_CRT_x86$postfix.msm") {
print STDERR "Copying $msm_path/$fname to $dest\n";
copy ("$msm_path/$fname", $dest) || die "copy failed: $!";
}
- foreach $fname ("Microsoft_VC100_CRT_x86$postfix.msm") {
+ }
+ elsif ($ver->{'dll_suffix'} == 100) {
+ foreach $fname ("Microsoft_VC100_CRT$postfix.msm") {
+ print STDERR "Copying $msm_path/$fname to $dest\n";
+ copy ("$msm_path/$fname", $dest) || print "copy failed: $!\n";
+ }
+ }
+ else {
+ foreach $fname ("Microsoft_VC110_CRT$postfix.msm") {
print STDERR "Copying $msm_path/$fname to $dest\n";
copy ("$msm_path/$fname", $dest) || print "copy failed: $!\n";
}
+ }
}
if (!@ARGV) {
@@ -364,12 +378,12 @@ while (@commands) {
my $dest = shift @commands;
defined $dest || die "copy-dlls requires a destination directory";
msvc_copy_dlls( $dest );
- } elsif ($opt eq '--msvc-find-msms-vc100') {
- exit msvc_find_msms_vc100();
+ } elsif ($opt eq '--msvc-find-msms') {
+ exit msvc_find_msms();
} elsif ($opt eq '--msvc-copy-msms') {
my $dest = shift @commands;
defined $dest || die "copy-msms requires a destination directory";
- msvc_copy_msms( $dest, '' );
+ msvc_copy_msms( $dest, '_x86' );
} elsif ($opt eq '--msvc-copy-msms-64') {
my $dest = shift @commands;
defined $dest || die "copy-msms-64 requires a destination directory";
diff --git a/post_download.in b/post_download.in
index 0161233dd40c..7685f56e1466 100644
--- a/post_download.in
+++ b/post_download.in
@@ -47,10 +47,10 @@ dnl ===================================================================
dnl Windows builds - use oowintool to copy VC redist merge modules
dnl ===================================================================
if test "$COM" = "MSC"; then
- if ! ./oowintool --msvc-copy-msms ./external/msm90 ; then
+ if ! ./oowintool --msvc-copy-msms ./external/msm"$VCVER" ; then
AC_MSG_ERROR([oowintool failed to copy merge modules])
fi
- if ! ./oowintool --msvc-copy-msms-64 ./external/msm90 ; then
+ if ! ./oowintool --msvc-copy-msms-64 ./external/msm"$VCVER" ; then
AC_MSG_WARN([oowintool failed to copy x64 merge modules, installation
will lack the 64-bit Explorer extension])
fi
diff --git a/scp2/source/ooo/vc_redist.scp b/scp2/source/ooo/vc_redist.scp
index c0e53020d1f9..fa7d1c268737 100644
--- a/scp2/source/ooo/vc_redist.scp
+++ b/scp2/source/ooo/vc_redist.scp
@@ -27,6 +27,8 @@
#include "macros.inc"
+#if defined(WITH_VC90_REDIST)
+
MergeModule gid_MergeModule_Microsoft_VC90_CRT_x86
Feature = gm_Root;
Name = "Microsoft_VC90_CRT_x86.msm";
@@ -34,6 +36,15 @@ MergeModule gid_MergeModule_Microsoft_VC90_CRT_x86
ComponentCondition = "VC_REDIST=1";
End
+MergeModule gid_MergeModule_policy_9_0_Microsoft_VC90_CRT_x86
+ Feature = gm_Root;
+ Name = "policy_9_0_Microsoft_VC90_CRT_x86.msm";
+ RootDir = "TARGETDIR";
+ ComponentCondition = "VC_REDIST=1";
+End
+
+#endif
+
#if defined(WITH_VC100_REDIST)
MergeModule gid_MergeModule_Microsoft_VC100_CRT_x86
@@ -45,15 +56,21 @@ End
#endif
-MergeModule gid_MergeModule_policy_9_0_Microsoft_VC90_CRT_x86
+#if defined(WITH_VC110_REDIST)
+
+MergeModule gid_MergeModule_Microsoft_VC110_CRT_x86
Feature = gm_Root;
- Name = "policy_9_0_Microsoft_VC90_CRT_x86.msm";
+ Name = "Microsoft_VC110_CRT_x86.msm";
RootDir = "TARGETDIR";
ComponentCondition = "VC_REDIST=1";
End
+#endif
+
#if defined(BUILD_X64)
+#if defined(WITH_VC90_REDIST)
+
MergeModule gid_MergeModule_Microsoft_VC90_CRT_x86_x64
Feature = gm_Root;
Name = "Microsoft_VC90_CRT_x86_x64.msm";
@@ -69,3 +86,27 @@ MergeModule gid_MergeModule_policy_9_0_Microsoft_VC90_CRT_x86_x64
End
#endif
+
+#if defined(WITH_VC100_REDIST)
+
+MergeModule gid_MergeModule_Microsoft_VC100_CRT_x64
+ Feature = gm_Root;
+ Name = "Microsoft_VC100_CRT_x64.msm";
+ RootDir = "TARGETDIR";
+ ComponentCondition = "VC_REDIST=1";
+End
+
+#endif
+
+#if defined(WITH_VC110_REDIST)
+
+MergeModule gid_MergeModule_Microsoft_VC110_CRT_x64
+ Feature = gm_Root;
+ Name = "Microsoft_VC110_CRT_x64.msm";
+ RootDir = "TARGETDIR";
+ ComponentCondition = "VC_REDIST=1";
+End
+
+#endif
+
+#endif