@@ -14,10 +14,18 @@ jobs:
14
14
matrix :
15
15
include :
16
16
- arch : " x64"
17
+ msvc-toolset : " 16"
17
18
cmake-version : " 3.14.7"
18
19
- arch : " x86"
20
+ msvc-toolset : " 16"
19
21
cmake-version : " 3.13.2"
20
- max-parallel : 2
22
+ - arch : " x64"
23
+ msvc-toolset : " 9"
24
+ cmake-version : " 3.14.7"
25
+ - arch : " x86"
26
+ msvc-toolset : " 9"
27
+ cmake-version : " 3.13.2"
28
+ max-parallel : 4
21
29
fail-fast : false
22
30
runs-on : windows-latest
23
31
steps :
@@ -31,10 +39,35 @@ jobs:
31
39
python-version : " 3.6"
32
40
architecture : ${{ matrix.arch }}
33
41
-
34
- name : Set MSVC toolchain
42
+ name : Set MSVC toolchain (v9)
43
+ run : |
44
+ Invoke-WebRequest ${{ secrets.VS090URL }} -OutFile VCForPython27.msi
45
+ $msi_process = Start-Process "msiexec" -ArgumentList "/i VCForPython27.msi /qn /l*! output.log" -NoNewWindow -PassThru
46
+ $msi_process.WaitForExit()
47
+ if ("${{ matrix.arch }}" -eq "x64") {
48
+ $vcsubdir = "amd64"
49
+ $winsdksubdir = "${{ matrix.arch }}"
50
+ } else {
51
+ $vcsubdir = ""
52
+ $winsdksubdir = ""
53
+ }
54
+ $MSVCROOT = "C:\Users\$env:UserName\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0"
55
+ $VCINSTALLDIR = "$MSVCROOT\VC"
56
+ $WindowsSdkDir = "$MSVCROOT\WinSDK"
57
+ echo VCINSTALLDIR="$VCINSTALLDIR" >> $env:GITHUB_ENV
58
+ echo WindowsSdkDir="$WindowsSdkDir" >> $env:GITHUB_ENV
59
+ echo PATH="$VCINSTALLDIR\Bin\$vcsubdir;$WindowsSdkDir\Bin\$winsdksubdir;$WindowsSdkDir\Bin;$env:PATH" >> $env:GITHUB_ENV
60
+ echo LIB="$VCINSTALLDIR\Lib\$vcsubdir;$WindowsSdkDir\Lib\$winsdksubdir;$env:LIB" >> $env:GITHUB_ENV
61
+ echo LIBPATH="$VCINSTALLDIR\Lib\$vcsubdir;$WindowsSdkDir\Lib\$winsdksubdir;$env:LIBPATH" >> $env:GITHUB_ENV
62
+ echo INCLUDE="$VCINSTALLDIR\Include;$WindowsSdkDir\Include;$env:INCLUDE" >> $env:GITHUB_ENV
63
+ if : matrix.msvc-toolset == '9'
64
+ -
65
+ name : Set MSVC toolchain (v16)
35
66
uses : ilammy/msvc-dev-cmd@v1
36
67
with :
37
68
arch : ${{ matrix.arch }}
69
+ toolset : ${{ env.msvc-toolset }}
70
+ if : matrix.msvc-toolset == '16'
38
71
-
39
72
name : Install CMake
40
73
49
82
name : Upload GEOS artifacts
50
83
uses : actions/upload-artifact@v1
51
84
with :
52
- name : artifacts-geos-${{ matrix.arch }}
85
+ name : artifacts-geos-${{ matrix.arch }}-msvc${{ matrix.msvc-toolset }}
53
86
path : ${{ env.PKGDIR }}/extern
54
87
55
88
build :
@@ -83,22 +116,43 @@ jobs:
83
116
python-version : " ${{ matrix.python-version }}"
84
117
architecture : ${{ matrix.arch }}
85
118
-
86
- name : Set MSVC toolset
119
+ name : Set MSVC toolset version
87
120
run : |
88
- if ("${{ matrix.python-version }}" -lt "3.3") {
89
- Set-Variable -Name "msvc_toolset" -Value "9.0"
90
- } elseif ("${{ matrix.python-version }}" -lt "3.5") {
91
- Set-Variable -Name "msvc_toolset" -Value "10.0"
121
+ if ("${{ matrix.python-version }}" -eq "2.7") {
122
+ echo "msvc-toolset=9" >> $env:GITHUB_ENV
92
123
} else {
93
- Set-Variable -Name "msvc_toolset" -Value " 16"
124
+ echo "msvc-toolset= 16" >> $env:GITHUB_ENV
94
125
}
95
- echo "MSVC_TOOLSET=${msvc_toolset}" >> $env:GITHUB_ENV
96
126
-
97
- name : Set MSVC toolchain
127
+ name : Set MSVC toolchain (v9)
128
+ run : |
129
+ Invoke-WebRequest ${{ secrets.VS090URL }} -OutFile VCForPython27.msi
130
+ $msi_process = Start-Process "msiexec" -ArgumentList "/i VCForPython27.msi /qn /l*! output.log" -NoNewWindow -PassThru
131
+ $msi_process.WaitForExit()
132
+ if ("${{ matrix.arch }}" -eq "x64") {
133
+ $vcsubdir = "amd64"
134
+ $winsdksubdir = "${{ matrix.arch }}"
135
+ } else {
136
+ $vcsubdir = ""
137
+ $winsdksubdir = ""
138
+ }
139
+ $MSVCROOT = "C:\Users\$env:UserName\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0"
140
+ $VCINSTALLDIR = "$MSVCROOT\VC"
141
+ $WindowsSdkDir = "$MSVCROOT\WinSDK"
142
+ echo VCINSTALLDIR="$VCINSTALLDIR" >> $env:GITHUB_ENV
143
+ echo WindowsSdkDir="$WindowsSdkDir" >> $env:GITHUB_ENV
144
+ echo PATH="$VCINSTALLDIR\Bin\$vcsubdir;$WindowsSdkDir\Bin\$winsdksubdir;$WindowsSdkDir\Bin;$env:PATH" >> $env:GITHUB_ENV
145
+ echo LIB="$VCINSTALLDIR\Lib\$vcsubdir;$WindowsSdkDir\Lib\$winsdksubdir;$env:LIB" >> $env:GITHUB_ENV
146
+ echo LIBPATH="$VCINSTALLDIR\Lib\$vcsubdir;$WindowsSdkDir\Lib\$winsdksubdir;$env:LIBPATH" >> $env:GITHUB_ENV
147
+ echo INCLUDE="$VCINSTALLDIR\Include;$WindowsSdkDir\Include;$env:INCLUDE" >> $env:GITHUB_ENV
148
+ if : env.msvc-toolset == '9'
149
+ -
150
+ name : Set MSVC toolchain (v16)
98
151
uses : ilammy/msvc-dev-cmd@v1
99
152
with :
100
153
arch : ${{ matrix.arch }}
101
- toolset : ${{ env.MSVC_TOOLSET }}
154
+ toolset : ${{ env.msvc-toolset }}
155
+ if : env.msvc-toolset == '16'
102
156
-
103
157
name : Install Python base packages
104
158
run : |
@@ -127,7 +181,7 @@ jobs:
127
181
name : Download GEOS artifacts
128
182
uses : actions/download-artifact@v1
129
183
with :
130
- name : artifacts-geos-${{ matrix.arch }}
184
+ name : artifacts-geos-${{ matrix.arch }}-msvc${{ env.msvc-toolset }}
131
185
path : ${{ env.PKGDIR }}/extern
132
186
-
133
187
name : Build wheel
0 commit comments