Skip to content

Commit

Permalink
CI and Build Improvements (#687)
Browse files Browse the repository at this point in the history
    Remove VS2015 build from CI.
    Move Windows builds (except VS2017) to GitHub Actions.
    Run Windows builds and tests with both MSVC and CLangCL on VS2022.
    Build one configuration with VS2019 to ensure it still works.
    Build Windows release packages with VS2022 and CLangCL.
    Turn on warnings as errors. Fix bug that prevented /W4 for CLangCL. Fix all warnings.
    Update the included zstd.c and regen golden images for affected tests.
    Stop using deprecated code in GitHub Actions.
    Update Linux CI runner to Ubuntu Jammy
    Update Vulkan SDK used in Linux and Windows CI to 1.3.243.
    Fix issue with Doxygen builds that caused intermittent failures.
  • Loading branch information
MarkCallow authored Apr 15, 2023
1 parent d8be8ff commit 38f4858
Show file tree
Hide file tree
Showing 36 changed files with 29,774 additions and 10,907 deletions.
90 changes: 14 additions & 76 deletions .appveyor.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,18 +21,9 @@ environment:
OPENGL_ES_EMULATOR_WIN: C:\Imagination\Windows_x86_64
PACKAGE: NO
PVR_SDK_HOME: https://github.com/powervr-graphics/Native_SDK/raw/master/lib/Windows_x86_64/
VULKAN_SDK_VER: 1.2.176.1
VULKAN_SDK_VER: 1.3.243.0

matrix:
- FEATURE_DOC: OFF
FEATURE_JNI: OFF
FEATURE_LOADTESTS: ON
FEATURE_TOOLS: ON
SUPPORT_SSE: ON
SUPPORT_OPENCL: OFF
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
CMAKE_GEN: Visual Studio 14 2015
CONFIGURATION: Debug,Release
- FEATURE_DOC: OFF
FEATURE_JNI: OFF
FEATURE_LOADTESTS: ON
Expand All @@ -42,53 +33,6 @@ environment:
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
CMAKE_GEN: Visual Studio 15 2017
CONFIGURATION: Debug,Release
- FEATURE_DOC: OFF
FEATURE_JNI: OFF
FEATURE_LOADTESTS: ON
FEATURE_TOOLS: ON
SUPPORT_SSE: ON
SUPPORT_OPENCL: OFF
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
CMAKE_GEN: Visual Studio 16 2019
CONFIGURATION: Debug,Release
# This is the configuration used for the release.
- FEATURE_DOC: ON
FEATURE_JNI: ON
FEATURE_LOADTESTS: ON
FEATURE_TOOLS: ON
PACKAGE: YES
SUPPORT_SSE: ON
SUPPORT_OPENCL: OFF
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2022
CMAKE_GEN: Visual Studio 17 2022
CONFIGURATION: Debug,Release
JAVA_HOME: C:\Program Files\Java\jdk17
- FEATURE_DOC: OFF
FEATURE_JNI: OFF
FEATURE_LOADTESTS: OFF
FEATURE_TOOLS: OFF
SUPPORT_SSE: ON
SUPPORT_OPENCL: ON
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2022
CMAKE_GEN: Visual Studio 17 2022
CONFIGURATION: Release
- FEATURE_DOC: OFF
FEATURE_JNI: OFF
FEATURE_LOADTESTS: OFF
FEATURE_TOOLS: OFF
SUPPORT_SSE: OFF
SUPPORT_OPENCL: ON
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2022
CMAKE_GEN: Visual Studio 17 2022
CONFIGURATION: Release
- FEATURE_DOC: OFF
FEATURE_JNI: OFF
FEATURE_LOADTESTS: OFF
SUPPORT_SSE: OFF
SUPPORT_OPENCL: OFF
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2022
CMAKE_GEN: Visual Studio 17 2022
CONFIGURATION: Release

#matrix:

Expand Down Expand Up @@ -155,24 +99,9 @@ install:
#run mkversion
#Update-AppveyorBuild -Version "$($env:ospsuite_version).$($env:appveyor_build_version)"

# Not using PS for install because "curl" is an alias for
# Invoke-WebRequest a completely different command that is difficult to
# use for downloads. When I wrote the .bat script, so I could use the
# real curl, I did not know PS's curl was just an alias and I could get
# the real curl with "curl.exe". Doh! Now it is a case of if it ain't
# broke don't fix it.
#
# To avoid going down a rathole note very well that in at least some of
# the CI environments, cmd.exe does not support pushd and popd. Sigh!
# Also keep quotes in following echos & rems to avoid issues with
# cmd special characters, e.g. &.
- cmd: |
ci_scripts/install_win.bat
rem JAVA_HOME is in registry so refreshenv overrides job setting.
set JOB_JAVA_HOME=%JAVA_HOME%
echo "Pick up environment changes made to registry by the install script."
refreshenv
set JAVA_HOME=%JOB_JAVA_HOME%
- ps: ci_scripts/install_win.ps1


# # One-line install/build zlib (for loadtests) into C:\Program Files\zlib
# - ps: |
# Invoke-WebRequest -Uri https://raw.githubusercontent.com/horta/zlib.install/master/install.bat -OutFile install.bat
Expand All @@ -181,7 +110,6 @@ install:
dotnet tool install --global AzureSignTool
}


#cache:
# - other_lib
before_build:
Expand All @@ -204,6 +132,16 @@ before_build:
build_script:
- ps: |
echo "Pick up environment changes made to registry by the install script."
# We do this here so we're not dependent on Appveyor always using
# the same PS instance to run the install phase and this. If they
# gave us a truly fresh PS lauched from the system then this would
# become superfluous.
# JAVA_HOME is in registry so refreshenv overrides job setting.
$JOB_JAVA_HOME=$env:JAVA_HOME
Import-Module "$env:ChocolateyInstall/helpers/chocolateyInstaller.psm1"
refreshenv
$env:JAVA_HOME=$JOB_JAVA_HOME
#$ErrorActionPreference = 'Stop'
ci_scripts/build_win.ps1
Expand Down
Loading

0 comments on commit 38f4858

Please sign in to comment.