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:
42
.github/workflows/ci.yml
vendored
42
.github/workflows/ci.yml
vendored
@@ -64,7 +64,17 @@
|
||||
},
|
||||
win-vs32: {
|
||||
runs-on: windows-2019,
|
||||
env: {
|
||||
VCPKG_BINARY_SOURCES: "clear;x-gha,readwrite"
|
||||
},
|
||||
steps: [
|
||||
{
|
||||
name: Export GitHub Actions cache environment variables,
|
||||
uses: actions/github-script@v7,
|
||||
with: {
|
||||
script: "core.exportVariable('ACTIONS_CACHE_URL', process.env.ACTIONS_CACHE_URL || ''); core.exportVariable('ACTIONS_RUNTIME_TOKEN', process.env.ACTIONS_RUNTIME_TOKEN || '');"
|
||||
}
|
||||
},
|
||||
{
|
||||
name: checkout,
|
||||
uses: actions/checkout@v2,
|
||||
@@ -72,7 +82,8 @@
|
||||
},
|
||||
{
|
||||
name: install dependencies,
|
||||
run: '.\.github\workflows\scripts\win\install-deps.bat x86'
|
||||
run: '${{ github.workspace }}\.github\workflows\scripts\win\install-deps.bat x86',
|
||||
working-directory: proj/vs2017
|
||||
},
|
||||
{
|
||||
name: build,
|
||||
@@ -82,7 +93,17 @@
|
||||
},
|
||||
win-vs64: {
|
||||
runs-on: windows-2019,
|
||||
env: {
|
||||
VCPKG_BINARY_SOURCES: "clear;x-gha,readwrite"
|
||||
},
|
||||
steps: [
|
||||
{
|
||||
name: Export GitHub Actions cache environment variables,
|
||||
uses: actions/github-script@v7,
|
||||
with: {
|
||||
script: "core.exportVariable('ACTIONS_CACHE_URL', process.env.ACTIONS_CACHE_URL || ''); core.exportVariable('ACTIONS_RUNTIME_TOKEN', process.env.ACTIONS_RUNTIME_TOKEN || '');"
|
||||
}
|
||||
},
|
||||
{
|
||||
name: checkout,
|
||||
uses: actions/checkout@v2,
|
||||
@@ -90,7 +111,8 @@
|
||||
},
|
||||
{
|
||||
name: install dependencies,
|
||||
run: '.\.github\workflows\scripts\win\install-deps.bat x64'
|
||||
run: '${{ github.workspace }}\.github\workflows\scripts\win\install-deps.bat x64',
|
||||
working-directory: proj/vs2017
|
||||
},
|
||||
{
|
||||
name: build,
|
||||
@@ -104,7 +126,17 @@
|
||||
},
|
||||
win-scons: {
|
||||
runs-on: windows-2019,
|
||||
env: {
|
||||
VCPKG_BINARY_SOURCES: "clear;x-gha,readwrite"
|
||||
},
|
||||
steps: [
|
||||
{
|
||||
name: Export GitHub Actions cache environment variables,
|
||||
uses: actions/github-script@v7,
|
||||
with: {
|
||||
script: "core.exportVariable('ACTIONS_CACHE_URL', process.env.ACTIONS_CACHE_URL || ''); core.exportVariable('ACTIONS_RUNTIME_TOKEN', process.env.ACTIONS_RUNTIME_TOKEN || '');"
|
||||
}
|
||||
},
|
||||
{
|
||||
name: checkout,
|
||||
uses: actions/checkout@v2,
|
||||
@@ -116,7 +148,8 @@
|
||||
},
|
||||
{
|
||||
name: install dependencies,
|
||||
run: '.\.github\workflows\scripts\win\install-deps.bat x64'
|
||||
run: '${{ github.workspace }}\.github\workflows\scripts\win\install-deps.bat x64',
|
||||
working-directory: proj/vs2017
|
||||
},
|
||||
{
|
||||
name: build and unit test,
|
||||
@@ -138,7 +171,8 @@
|
||||
# },
|
||||
# {
|
||||
# name: install dependencies,
|
||||
# run: '.\.github\workflows\scripts\win\install-deps.bat x64'
|
||||
# run: 'vcpkg install',
|
||||
# working-directory: proj/vs2017
|
||||
# },
|
||||
# {
|
||||
# name: build and unit test,
|
||||
|
@@ -1,2 +1,2 @@
|
||||
|
||||
vcpkg install zlib:%1-windows sfml:%1-windows opengl:%1-windows boost-any:%1-windows boost-dynamic-bitset:%1-windows boost-ptr-container:%1-windows boost-core:%1-windows boost-filesystem:%1-windows boost-system:%1-windows boost-date-time:%1-windows boost-chrono:%1-windows boost-math:%1-windows
|
||||
vcpkg install --feature-flags=manifests,binarycaching --triplet %1-windows
|
||||
|
2
.github/workflows/scripts/win/msvc-build.bat
vendored
2
.github/workflows/scripts/win/msvc-build.bat
vendored
@@ -4,6 +4,6 @@ vcpkg integrate install
|
||||
setlocal enabledelayedexpansion
|
||||
|
||||
for /f "usebackq tokens=*" %%i in (`vswhere -latest -requires Microsoft.Component.MSBuild -find MSBuild\**\Bin\MSBuild.exe`) do (
|
||||
"%%i" -clp:ForceConsoleColor -target:Build -property:Configuration=Release -property:Platform=%1 "proj/vs2017/Blades of Exile.sln"
|
||||
"%%i" -clp:ForceConsoleColor -target:Build -property:Configuration=Release -property:Platform=%1 -property:VcpkgEnableManifest=true "proj/vs2017/Blades of Exile.sln"
|
||||
exit /b !errorlevel!
|
||||
)
|
||||
|
@@ -2,7 +2,7 @@
|
||||
setlocal enabledelayedexpansion
|
||||
|
||||
for /f "usebackq tokens=*" %%i in (`vswhere -latest -products * -requires Microsoft.VisualStudio.Component.VC.Tools.x86.x64 -find **/Auxiliary/Build/vcvarsall.bat`) do (
|
||||
%%i
|
||||
call "%%i" x86_amd64
|
||||
)
|
||||
|
||||
scons
|
||||
|
Reference in New Issue
Block a user