20 Install-Module VSSetup -Scope CurrentUser
22 Get-VSSetupInstance -All
24 If ($env:Platform -Match "x86") {
25 $env:VCVARS_PLATFORM="x86"
26 $env:TARGET="VC-WIN32 no-asm --strict-warnings"
28 $env:VCVARS_PLATFORM="amd64"
29 $env:TARGET="VC-WIN64A-masm"
32 If ($env:Configuration -Match "shared") {
34 } ElseIf ($env:Configuration -Match "minimal") {
35 $env:CONFIG_OPTS="no-bulk no-asm -DOPENSSL_SMALL_FOOTPRINT"
37 $env:CONFIG_OPTS="no-shared"
39 - call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat" %VCVARS_PLATFORM%
42 - perl ..\Configure %TARGET% no-makedepend %CONFIG_OPTS%
43 - perl configdata.pm --dump
46 If (-not $env:APPVEYOR_PULL_REQUEST_NUMBER`
47 -or (&git log -1 $env:APPVEYOR_PULL_REQUEST_HEAD_COMMIT |
48 Select-String "\[extended tests\]") ) {
49 $env:EXTENDED_TESTS="yes"
52 If ($env:BUILDONLY -or $env:MAKEVERBOSE) {
58 gci env:* | sort-object name
63 If ($env:Configuration -Match "shared" -or $env:EXTENDED_TESTS) {
64 cmd /c "%NMAKE% build_all_generated 2>&1"
65 # Unfortunately, CL=/MP would not have parallelizing effect
66 cmd /c "%NMAKE% PERL=no-perl 2>&1"
73 If ($env:Configuration -Match "shared" -or $env:EXTENDED_TESTS) {
74 # Unfortunately, HARNESS_JOBS=4 would not have parallelizing effect
75 if ($env:EXTENDED_TESTS) {
76 cmd /c "%NMAKE% test HARNESS_VERBOSE_FAILURE=yes 2>&1"
78 cmd /c "%NMAKE% test HARNESS_VERBOSE_FAILURE=yes TESTS=-test_fuzz 2>&1"
82 if ($env:EXTENDED_TESTS) {
84 cmd /c "%NMAKE% install DESTDIR=..\_install 2>&1"