From: Andy Polyakov <appro@openssl.org>
Date: Sun, 19 Feb 2017 21:11:29 +0000 (+0100)
Subject: appveyor.yml: engage VC-WIN64A-masm.
X-Git-Tag: OpenSSL_1_1_1-pre1~2319
X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=fe9aa7642c85190c1ec21b2965ce7308a667f19e;p=openssl

appveyor.yml: engage VC-WIN64A-masm.

One of the reasons for why masm/ml64 is not [fully] supported is that
it's problematic to support multiple versions. But latest one usually
works and/or it's lesser problem to make it work. So idea here is to
have a "whistle" when it breaks, so that problems can be evaluated as
they emerge. It's kind of "best effort" thing, as opposite to "full
support".

Reviewed-by: Richard Levitte <levitte@openssl.org>
---

diff --git a/Configurations/50-masm.conf b/Configurations/50-masm.conf
index 60a55072f2..84cf2f12e8 100644
--- a/Configurations/50-masm.conf
+++ b/Configurations/50-masm.conf
@@ -9,9 +9,14 @@
 
 %targets = (
     "VC-WIN64A-masm" => {
-        inherit_from    => [ "VC-WIN64A" ],
+        inherit_from    => [ "VC-WIN64-common", asm("x86_64_asm"),
+                             sub { $disabled{shared} ? () : "x86_64_uplink" } ],
         as              => "ml64",
         asflags         => "/c /Cp /Cx /Zi",
         asoutflag       => "/Fo",
+        sys_id          => "WIN64A",
+        bn_asm_src      => sub { return undef unless @_;
+                                 my $r=join(" ",@_); $r=~s|asm/x86_64-gcc|bn_asm|; $r; },
+        perlasm_scheme   => "masm",
     },
 );
diff --git a/appveyor.yml b/appveyor.yml
index af2bfede52..d47c6cd6d7 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -14,10 +14,10 @@ before_build:
     - ps: >-
         If ($env:Platform -Match "x86") {
             $env:VCVARS_PLATFORM="x86"
-            $env:TARGET="VC-WIN32"
+            $env:TARGET="VC-WIN32 no-asm"
         } Else {
             $env:VCVARS_PLATFORM="amd64"
-            $env:TARGET="VC-WIN64A"
+            $env:TARGET="VC-WIN64A-masm"
         }
     - ps: >-
         If ($env:Configuration -Match "shared") {
@@ -29,7 +29,7 @@ before_build:
     - call "%VSCOMNTOOLS%\..\..\VC\vcvarsall.bat" %VCVARS_PLATFORM%
     - mkdir _build
     - cd _build
-    - perl ..\Configure %TARGET% no-asm %SHARED%
+    - perl ..\Configure %TARGET% %SHARED%
     - cd ..
 
 build_script: