Update and fix Windows CI builds

- boost-spirit dependency needed to be installed
- Visual Studio wanted boost/filesystem.hpp included in more places
- a deprecated enum was removed from new versions of boost, so we use
  its replacement enum now
- vcpkg repository is now pinned to a commit where boost 1.84 libraries
  work smoothly, there should be no more surprises
- vcpkg dependencies now cache, so successive CI runs are dramatically
  faster
- for win-scons, we need to use 'call' in our batch script to source
  vcvarsall.bat
- I updated the includepath and libpath we pass to win-scons to match
  reality, but it still can't find any vcpkg libraries. This will need
  further sleuthing
This commit is contained in:
2024-05-27 15:59:07 -06:00
committed by Celtic Minstrel
parent c691b908a6
commit 1bb0927ecb
12 changed files with 88 additions and 12 deletions

View File

@@ -158,10 +158,12 @@ if platform == "darwin":
break
elif platform == "win32":
if 'msvc' in env['TOOLS']:
vcpkg_prefix = (os.environ['HOME'] if 'HOME' in os.environ else 'C:') + f'/vcpkg/installed/x{env["bits"]}-windows'
env.Append(
LINKFLAGS=['/SUBSYSTEM:WINDOWS','/ENTRY:mainCRTStartup','/MACHINE:X86'],
CXXFLAGS=['/EHsc','/MD','/FIglobal.hpp'],
LIBPATH=("C:\Program Files (x86)\Microsoft Visual Studio " + env['MSVC_VERSION'] + "\VC\lib"),
INCLUDEPATH=vcpkg_prefix + '/include',
LIBPATH=vcpkg_prefix + '/lib',
LIBS=Split("""
kernel32
user32