[openssl] master update

Richard Levitte levitte at openssl.org
Sat Aug 17 05:55:19 UTC 2019


The branch master has been updated
       via  bcc0025d0b5d231ee3662cf7f3c522ba43079858 (commit)
      from  653b883b97f72a15d35d21246696881aa65311e2 (commit)


- Log -----------------------------------------------------------------
commit bcc0025d0b5d231ee3662cf7f3c522ba43079858
Author: Richard Levitte <levitte at openssl.org>
Date:   Tue Jul 23 09:21:10 2019 +0200

    Windows UWP builds: determine automatically if asm should be disabled
    
    Earlier Windows SDK versions lack the necessary support for our ASM
    builds, so we check for the SDK version that has the support.
    
    Information on exactly what registry key to check was found here:
    
    https://stackoverflow.com/questions/2665755/how-can-i-determine-the-version-of-the-windows-sdk-installed-on-my-computer
    
    Ref: #9125
    
    Reviewed-by: Bernd Edlinger <bernd.edlinger at hotmail.de>
    (Merged from https://github.com/openssl/openssl/pull/9440)

-----------------------------------------------------------------------

Summary of changes:
 Configurations/50-win-onecore.conf | 32 ++++++++++++++++++++++++++++----
 1 file changed, 28 insertions(+), 4 deletions(-)

diff --git a/Configurations/50-win-onecore.conf b/Configurations/50-win-onecore.conf
index d4e6e64f15..1e5d970b4b 100644
--- a/Configurations/50-win-onecore.conf
+++ b/Configurations/50-win-onecore.conf
@@ -1,3 +1,4 @@
+## -*- mode: perl; -*-
 # Windows OneCore targets.
 #
 # OneCore is new API stability "contract" that transcends Desktop, IoT and
@@ -10,6 +11,25 @@
 # TODO: extend error handling to use ETW based eventing
 # (Or rework whole error messaging)
 
+my $UWP_info = {};
+sub UWP_info {
+    unless (%$UWP_info) {
+        my $SDKver = `powershell -Command  \"& {\$(Get-Item \\\"hklm:\\SOFTWARE\\WOW6432Node\\Microsoft\\Microsoft SDKs\\Windows\\\").GetValue(\\\"CurrentVersion\\\")}\"`;
+        $SDKver =~ s|\R$||;
+        my @SDKver_split = split(/\./, $SDKver);
+        # SDK version older than 10.0.17763 don't support our ASM builds
+        if ($SDKver_split[0] < 10
+            || ($SDKver_split[0] == 10
+                && $SDKver_split[1] == 0
+                && $SDKver_split[2] < 17763)) {
+            $UWP_info->{disable} = [ 'asm' ];
+        } else {
+            $UWP_info->{disable} = [ ];
+        }
+    }
+    return $UWP_info;
+}
+
 my %targets = (
     "VC-WIN32-ONECORE" => {
         inherit_from    => [ "VC-WIN32" ],
@@ -80,7 +100,8 @@ my %targets = (
         defines         => add("WINAPI_FAMILY=WINAPI_FAMILY_APP",
                                "_WIN32_WINNT=0x0A00"),
         dso_scheme      => "",
-        disable         => [ 'ui-console', 'stdio', 'async', 'uplink' ],
+        disable         => sub { [ 'ui-console', 'stdio', 'async', 'uplink',
+                                   @{ UWP_info()->{disable} } ] },
         ex_libs         => "WindowsApp.lib",
     },
      "VC-WIN64A-UWP" => {
@@ -89,7 +110,8 @@ my %targets = (
         defines         => add("WINAPI_FAMILY=WINAPI_FAMILY_APP",
                                "_WIN32_WINNT=0x0A00"),
         dso_scheme      => "",
-        disable         => [ 'ui-console', 'stdio', 'async', 'uplink' ],
+        disable         => sub { [ 'ui-console', 'stdio', 'async', 'uplink',
+                                   @{ UWP_info()->{disable} } ] },
         ex_libs         => "WindowsApp.lib",
     },
     "VC-WIN32-ARM-UWP" => {
@@ -98,7 +120,8 @@ my %targets = (
         defines         => add("WINAPI_FAMILY=WINAPI_FAMILY_APP",
                                "_WIN32_WINNT=0x0A00"),
         dso_scheme      => "",
-        disable         => [ 'ui-console', 'stdio', 'async', 'uplink' ],
+        disable         => sub { [ 'ui-console', 'stdio', 'async', 'uplink',
+                                   @{ UWP_info()->{disable} } ] },
         ex_libs         => "WindowsApp.lib",
     },
      "VC-WIN64-ARM-UWP" => {
@@ -107,7 +130,8 @@ my %targets = (
         defines         => add("WINAPI_FAMILY=WINAPI_FAMILY_APP",
                                "_WIN32_WINNT=0x0A00"),
         dso_scheme      => "",
-        disable         => [ 'ui-console', 'stdio', 'async', 'uplink' ],
+        disable         => sub { [ 'ui-console', 'stdio', 'async', 'uplink',
+                                   @{ UWP_info()->{disable} } ] },
         ex_libs         => "WindowsApp.lib",
     },
 );


More information about the openssl-commits mailing list