Hi,
I have submitted a patch for review:
https://gerrit.libreoffice.org/1573
To pull it, you can do:
git pull ssh://gerrit.libreoffice.org:29418/core refs/changes/73/1573/1
Make sure that *in this branch* we don't use too new tools
This is the branch for 4.0.x and we want to use the VS 2010 compiler
here.
I think that we also don't want to use anyhing newer than Windows SDK
7.1, and .NET Framework 3.5, just to be sure.
Change-Id: I1b94af040829182c0f74edb94843b308251ad8a4
---
M oowintool
1 file changed, 21 insertions(+), 84 deletions(-)
diff --git a/oowintool b/oowintool
index 26221f0..6eed9cb 100755
--- a/oowintool
+++ b/oowintool
@@ -87,25 +87,11 @@
sub print_windows_sdk_home()
{
- my ($value, $key);
+ my ($value);
- # This is for the Windows SDK 8 distributed with MSVS 2012
- $value = reg_get_value ('HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows Kits/Installed
Roots/KitsRoot');
-
- if (!defined $value) {
- $value = reg_get_value ('HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Microsoft
SDKs/Windows/CurrentInstallFolder');
- }
- if (!defined $value) {
- $value = reg_get_value
('HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/MicrosoftSDK/Directories/Install Dir');
- }
-
- if (!defined $value) {
- # Unclear whether we ever get here, don't the above match any
- # recent Windows SDK?
- foreach $key
(File::Glob::bsd_glob('/proc/registry/HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/MicrosoftSDK/InstalledSDKs/*/Install
Dir')) {
- $value = reg_get_value ($key);
- last if defined $value;
- }
+ foreach $ver (qw(7.1A 7.1 7.0A 7.0 6.0A)) {
+ $value = reg_get_value ("HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Microsoft
SDKs/Windows/v$ver/InstallationFolder");
+ last if defined $value;
}
defined $value || die "Windows SDK not found";
@@ -121,52 +107,19 @@
my ($value, $key);
- foreach $key
(File::Glob::bsd_glob('/proc/registry/HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Microsoft
SDKs/Windows/*/WinSDK-NetFx40Tools/InstallationFolder')) {
- $key =~ s!^/proc/registry/!!;
- $value = reg_get_value ($key);
+ $value = reg_get_value('HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Microsoft
SDKs/Windows/v7.0A/WinSDK-NetFx35Tools/InstallationFolder');
- # Sigh, the same test that configure does for al.exe
- # being either directly in it, or in a "bin" subdir... But on
- # the other hand we don't want to be mislead by a registry key
- # that matches the above but points to a directory that does
- # in fact not contain an al.exe. For me,
- # HKLM/SOFTWARE/Microsoft/Microsoft
SDKs/Windows/v7.0A/WinSDK-NetFx40Tools/InstallationFolder
- # contains
- # c:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\bin\NETFX 4.0 Tools\
- # but that then does not contain any al.exe.
+ if (!defined $value) {
+ $value = reg_get_value('HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Microsoft
SDKs/Windows/v6.0A/WinSDKNetFxTools/InstallationFolder');
+ }
- if (-f "$value/bin/al.exe" || -f "$value/al.exe") {
- print cygpath ($value, 'w', $output_format);
- return;
- }
+ if (-f "$value/bin/al.exe" || -f "$value/al.exe") {
+ print cygpath ($value, 'w', $output_format);
+ return;
}
die "Can't find al.exe";
}
-my %msvs_2008 = (
- 'ver' => '9.0',
- 'key' => 'Microsoft/VisualStudio/9.0/Setup/VS/ProductDir',
- 'dll_path' => 'VC/redist/x86/Microsoft.VC90.CRT',
- 'dll_suffix' => '90'
-);
-my %msvc_2008 = (
- 'ver' => '9.0',
- 'key' => 'Microsoft/VisualStudio/9.0/Setup/VC/ProductDir',
- 'dll_path' => 'redist/x86/Microsoft.VC90.CRT',
- 'dll_suffix' => '90'
-);
-my %msvs_express_2008 = (
- 'ver' => '9.0',
- 'key' => 'Microsoft/VCExpress/9.0/Setup/VS/ProductDir',
- 'dll_path' => 'VC/redist/x86/Microsoft.VC90.CRT',
- 'dll_suffix' => '90'
-);
-my %msvc_express_2008 = (
- 'ver' => '9.0',
- 'key' => 'Microsoft/VCExpress/9.0/Setup/VC/ProductDir',
- 'dll_path' => 'redist/x86/Microsoft.VC90.CRT',
- 'dll_suffix' => '90'
-);
my %msvs_2010 = (
'ver' => '10.0',
'key' => 'Microsoft/VisualStudio/10.0/Setup/VS/ProductDir',
@@ -179,22 +132,10 @@
'dll_path' => 'redist/x86/Microsoft.VC100.CRT',
'dll_suffix' => '100'
);
-my %msvs_2012 = (
- 'ver' => '11.0',
- 'key' => 'Microsoft/VisualStudio/11.0/Setup/VS/ProductDir',
- 'dll_path' => 'VC/redist/x86/Microsoft.VC110.CRT',
- 'dll_suffix' => '110'
-);
-my %msvc_2012 = (
- 'ver' => '11.0',
- 'key' => 'Microsoft/VisualStudio/11.0/Setup/VC/ProductDir',
- 'dll_path' => 'redist/x86/Microsoft.VC110.CRT',
- 'dll_suffix' => '110'
-);
sub find_msvs()
{
- my @ms_versions = ( \%msvs_2010, \%msvs_2012, \%msvs_2008, \%msvs_express_2008 );
+ my @ms_versions = ( \%msvs_2010 );
for $ver (@ms_versions) {
my $install = reg_get_value ("HKEY_LOCAL_MACHINE/SOFTWARE/" . $ver->{'key'});
@@ -208,7 +149,7 @@
sub find_msvc()
{
- my @ms_versions = ( \%msvc_2010, \%msvc_2012, \%msvc_2008, \%msvc_express_2008 );
+ my @ms_versions = ( \%msvc_2010 );
for $ver (@ms_versions) {
my $install = reg_get_value ("HKEY_LOCAL_MACHINE/SOFTWARE/" . $ver->{'key'});
@@ -242,18 +183,14 @@
{
my $csc_exe;
my $ver = find_msvc();
- if ($ver->{'ver'} == "9.0") {
- # We need to compile C# with the 3.5 or 2.0 compiler in order
- # for the assemblies to be loadable by managed C++ code
- # compiled with MSVC 2008.
- $csc_exe =
- reg_get_value ("HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/NET Framework
Setup/NDP/v3.5/InstallPath") ||
- reg_get_value ("HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/.NETFramework/InstallRoot") .
"v2.0.50727";
- } else {
- # Is it enough to look for the 4.0 compiler?
- $csc_exe =
- reg_get_value ("HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/NET Framework
Setup/NDP/v4/Client/InstallPath");
- }
+
+ # We need to compile C# with the 3.5 or 2.0 compiler in order for
+ # the assemblies to be usable on at least vanilla XP SP3 with no
+ # .NET Framework 4 or later.
+
+ $csc_exe =
+ reg_get_value ("HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/NET Framework
Setup/NDP/v3.5/InstallPath") ||
+ reg_get_value ("HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/.NETFramework/InstallRoot") .
"v2.0.50727";
print cygpath ($csc_exe, 'w', $output_format);
}
--
To view, visit https://gerrit.libreoffice.org/1573
To unsubscribe, visit https://gerrit.libreoffice.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I1b94af040829182c0f74edb94843b308251ad8a4
Gerrit-PatchSet: 1
Gerrit-Project: core
Gerrit-Branch: libreoffice-4-0
Gerrit-Owner: Tor Lillqvist <tml@iki.fi>
Context
- [PATCH] Change in core[libreoffice-4-0]: Make sure that *in this branch* we don't use too new tools · Tor Lillqvist (via Code Review)
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.