[Libreoffice-commits] .: oowintool post_download.in
Jan Holesovsky
kendy at kemper.freedesktop.org
Wed Nov 16 12:00:40 PST 2011
oowintool | 16 +++++++++++-----
post_download.in | 12 ++++++------
2 files changed, 17 insertions(+), 11 deletions(-)
New commits:
commit 41e995ec361cd466a3f287d3eb33c0080bdbb50c
Author: Jan Holesovsky <kendy at suse.cz>
Date: Wed Nov 16 20:59:16 2011 +0100
x64 merge modules are not mandatory, only warn when they are missing.
diff --git a/oowintool b/oowintool
index bf5c5d9..6cb98a3 100755
--- a/oowintool
+++ b/oowintool
@@ -46,7 +46,8 @@ sub print_syntax()
print " commands:\n";
print " --msvc-ver - print version of MSVC eg. 6.0\n";
print " --msvc-copy-dlls <dest> - copy msvc[pr]??.dlls into <dest>/msvcp??/\n";
- print " --msvc-copy-msms <dest> - copy mscrt merge modules <dest>/msm90/\n";
+ print " --msvc-copy-msms <dest> - copy mscrt merge modules to <dest>/msm90/\n";
+ print " --msvc-copy-msms-64 <ds>- copy the x64 mscrt merge modules to <ds>/msm90/\n";
print " --msvc-productdir - print productdir\n";
print " --msvs-productdir - print productdir\n";
print " --dotnetsdk-dir - print .NET SDK path\n";
@@ -285,16 +286,17 @@ sub msvc_copy_dlls($)
}
}
-sub msvc_copy_msms($)
+sub msvc_copy_msms($$)
{
- my $dest = shift;
+ # $postfix is empty for x86, and '_x64' for x64
+ my ($dest, $postfix) = @_;
my $common_files_path = $ENV{"CommonProgramFiles(x86)"};
if (!defined $common_files_path) {
$common_files_path = $ENV{CommonProgramFiles};
}
defined $common_files_path || return;
my $msm_path = (cygpath $common_files_path . "\\Merge Modules", 'w', $output_format);
- foreach $fname ('Microsoft_VC90_CRT_x86.msm', 'Microsoft_VC90_CRT_x86_x64.msm', 'policy_9_0_Microsoft_VC90_CRT_x86.msm', 'policy_9_0_Microsoft_VC90_CRT_x86_x64.msm') {
+ 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: $!";
}
@@ -330,7 +332,11 @@ while (@commands) {
} 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, '' );
+ } elsif ($opt eq '--msvc-copy-msms-64') {
+ my $dest = shift @commands;
+ defined $dest || die "copy-msms-64 requires a destination directory";
+ msvc_copy_msms( $dest, '_x64' );
} elsif ($opt eq '--msvs-productdir') {
print_msvs_productdir();
} elsif ($opt eq '--msvc-productdir') {
diff --git a/post_download.in b/post_download.in
index c93cd27..ea6b943 100644
--- a/post_download.in
+++ b/post_download.in
@@ -38,9 +38,7 @@ dnl ===================================================================
dnl Windows builds - use oowintool to copy CRT dlls and manifest
dnl ===================================================================
if test "$COM" = "MSC"; then
- if ./oowintool --msvc-copy-dlls ./external/msvcp ; then
- :
- else
+ if ! ./oowintool --msvc-copy-dlls ./external/msvcp ; then
AC_MSG_ERROR([oowintool failed to copy CRT])
fi
fi
@@ -49,11 +47,13 @@ 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
- :
- else
+ if ! ./oowintool --msvc-copy-msms ./external/msm90 ; then
AC_MSG_ERROR([oowintool failed to copy merge modules])
fi
+ if ! ./oowintool --msvc-copy-msms-64 ./external/msm90 ; then
+ AC_MSG_WARN([oowintool failed to copy x64 merge modules, installation
+will lack the 64-bit Explorer extension])
+ fi
fi
dnl ===================================================================
More information about the Libreoffice-commits
mailing list