@@ -31,14 +31,7 @@ SET INSTDIR=%APPVEYOR_BUILD_FOLDER%\..\install\%PROFILE%\%PLATFORM%
3131SET SRCDIR = %APPVEYOR_BUILD_FOLDER%
3232
3333
34- IF " %PROFILE% " == " MSVC2015" (
35- IF " %PLATFORM% " == " x86" (
36- CALL " C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86 || EXIT /B
37- ) ELSE (
38- CALL " C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\SetEnv.cmd" /x64 || EXIT /B
39- CALL " C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86_amd64 || EXIT /B
40- )
41- ) ELSE IF " %PROFILE% " == " MSVC2017" (
34+ IF " %PROFILE% " == " MSVC2017" (
4235 IF " %PLATFORM% " == " x86" (
4336 CALL " C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars32.bat" || EXIT /B
4437 ) ELSE (
@@ -50,6 +43,12 @@ IF "%PROFILE%" == "MSVC2015" (
5043 ) ELSE (
5144 CALL " C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvars64.bat" || EXIT /B
5245 )
46+ ) ELSE IF " %PROFILE% " == " MSVC2022" (
47+ IF " %PLATFORM% " == " x86" (
48+ CALL " C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvars32.bat" || EXIT /B
49+ ) ELSE (
50+ CALL " C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvars64.bat" || EXIT /B
51+ )
5352) ELSE (
5453 ECHO Unsupported PROFILE=%PROFILE% or PLATFORM=%PLATFORM%
5554 EXIT /B 1
@@ -59,16 +58,24 @@ IF "%PROFILE%" == "MSVC2015" (
5958@ ECHO ON
6059
6160:: compiler and generator detection
62- IF /i " %PLATFORM% " == " x64" SET GENARCH = Win64
63- IF " %PROFILE% " == " MSVC2015" (
64- SET GENERATOR = Visual Studio 14 2015!GENARCH!
65- SET COMPILER = vc140
66- ) ELSE IF " %PROFILE% " == " MSVC2017" (
61+ :: VS2017 uses "Generator Win64" syntax, VS2019+ use "-A x64" flag
62+ IF /i " %PLATFORM% " == " x64" (
63+ SET GENARCH = Win64
64+ SET CMAKE_ARCH_FLAG = -A x64
65+ ) ELSE (
66+ SET GENARCH =
67+ SET CMAKE_ARCH_FLAG = -A Win32
68+ )
69+ IF " %PROFILE% " == " MSVC2017" (
6770 SET GENERATOR = Visual Studio 15 2017!GENARCH!
6871 SET COMPILER = vc141
72+ SET CMAKE_ARCH_FLAG =
6973) ELSE IF " %PROFILE% " == " MSVC2019" (
70- SET GENERATOR = Visual Studio 16 2019!GENARCH!
74+ SET GENERATOR = Visual Studio 16 2019
7175 SET COMPILER = vc142
76+ ) ELSE IF " %PROFILE% " == " MSVC2022" (
77+ SET GENERATOR = Visual Studio 17 2022
78+ SET COMPILER = vc143
7279) ELSE (
7380 ECHO [error] unable to determine the CMake generator and compiler to use from MSVC profile %PROFILE%
7481 EXIT /B 1
@@ -96,7 +103,7 @@ IF "%PYTHON_VERSION%" == "" (
96103 IF /i " %PLATFORM% " == " x64" (SET PTEXT=-x64)
97104 SET PYTHON_ROOT = C:\Python%PYTHON_VERSION:. =%!PTEXT!
98105 SET PATH = !PYTHON_ROOT! \scripts;!PYTHON_ROOT! ;!PATH!
99- SET CMAKE_PYTHON_OPTS = -DPython3_FIND_STRATEGY=LOCATION -DPython3_ROOT=!PYTHON_ROOT!
106+ SET CMAKE_PYTHON_OPTS = -DPython3_FIND_STRATEGY=LOCATION -DPython3_ROOT=!PYTHON_ROOT! -DPython3_EXECUTABLE= !PYTHON_ROOT! \python.exe
100107)
101108
102109IF " %CONFIGURATION% " == " Debug" (SET ZLIB_LIB_SUFFIX=d)
@@ -115,15 +122,15 @@ choco feature enable -n allowGlobalConfirmation || EXIT /B
115122
116123:: Things to install when NOT running in appveyor:
117124IF " %APPVEYOR_BUILD_ID% " == " " (
118- cup -y chocolatey || EXIT /B
119- cinst -y curl || EXIT /B
120- cinst -y 7zip || EXIT /B
121- cinst -y python3 || EXIT /B
122- cinst -y openssl.light || EXIT /B
125+ choco upgrade -y chocolatey || EXIT /B
126+ choco install -y curl || EXIT /B
127+ choco install -y 7zip || EXIT /B
128+ choco install -y python3 || EXIT /B
129+ choco install -y openssl.light || EXIT /B
123130)
124131
125- cinst -y jdk8 || EXIT /B
126- cinst -y winflexbison3 || EXIT /B
132+ choco install -y jdk8 || EXIT /B
133+ choco install -y winflexbison3 || EXIT /B
127134
128135:: zlib - not available through chocolatey
129136CD " %APPVEYOR_SCRIPTS% " || EXIT /B
@@ -133,12 +140,17 @@ call build-zlib.bat || EXIT /B
133140CD " %APPVEYOR_SCRIPTS% " || EXIT /B
134141call build-libevent.bat || EXIT /B
135142
136- :: python packages (correct path to pip set above)
137- pip.exe ^
138- install backports.ssl_match_hostname ^
139- ipaddress ^
140- tornado ^
141- twisted || EXIT /B
143+ :: python packages (ensure we use the configured Python)
144+ IF " %WITH_PYTHON% " == " ON" (
145+ " !PYTHON_ROOT! \python.exe" -m ensurepip --upgrade || EXIT /B
146+ " !PYTHON_ROOT! \python.exe" -m pip install --upgrade pip setuptools wheel || EXIT /B
147+ " !PYTHON_ROOT! \python.exe" -m pip ^
148+ install backports.ssl_match_hostname ^
149+ ipaddress ^
150+ tornado> =6.3.0 ^
151+ twisted> =24.3.0 ^
152+ zope.interface> =6.1 || EXIT /B
153+ )
142154
143155:: Adobe Flex SDK 4.6 for ActionScript
144156MKDIR " C:\Adobe\Flex\SDK\4.6" || EXIT /B
@@ -171,7 +183,7 @@ CD "%BUILDDIR%" || EXIT /B
171183:: DIR C:\Libraries\boost_1_60_0\lib*
172184
173185cmake.exe " %SRCDIR% " ^
174- -G" %GENERATOR% " ^
186+ -G" %GENERATOR% " %CMAKE_ARCH_FLAG% ^
175187 -DBISON_EXECUTABLE=" C:\ProgramData\chocolatey\lib\winflexbison3\tools\win_bison.exe" ^
176188 -DBOOST_ROOT=" %BOOST_ROOT% " ^
177189 -DBOOST_LIBRARYDIR=" %BOOST_LIBRARYDIR% " ^
0 commit comments