Skip to content

Commit

Permalink
Split each build configuration into a separate CI job. (#546)
Browse files Browse the repository at this point in the history
Expose the main CMake config knobs as environment variables to tailor build configurations & jobs.

Replace macOS Universal Binary builds with Apple Silicon builds while retaining x86_64 builds.

Add new configs/jobs for testing OpenCL and SSE combos.

Cleanup CI files.
  • Loading branch information
MarkCallow authored Mar 8, 2022
1 parent 8c6b357 commit 9d1204c
Show file tree
Hide file tree
Showing 15 changed files with 564 additions and 331 deletions.
27 changes: 24 additions & 3 deletions .appveyor.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,67 +12,89 @@ platform:
environment:
CMAKE_GEN: Visual Studio 15 2017
GIT_TRACE: 0
GIT_LFS_SKIP_SMUDGE: 1
BUILD_DIR: build
OPENCL_SDK_HOME: https://github.com/intel/llvm/releases/download/2021-09
OPENCL_SDK_NAME: win-oclcpuexp-2021.12.9.0.24_rel
OPENGL_ES_EMULATOR: C:/Imagination/Windows_x86_64
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

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
PACKAGE: NO
- FEATURE_DOC: OFF
FEATURE_JNI: OFF
FEATURE_LOADTESTS: ON
FEATURE_TOOLS: ON
PACKAGE: YES
SUPPORT_SSE: ON
SUPPORT_OPENCL: OFF
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
CMAKE_GEN: Visual Studio 14 2015
CONFIGURATION: 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 2017
CMAKE_GEN: Visual Studio 15 2017
CONFIGURATION: Debug
- FEATURE_DOC: OFF
FEATURE_JNI: OFF
FEATURE_LOADTESTS: ON
FEATURE_TOOLS: ON
PACKAGE: YES
SUPPORT_SSE: ON
SUPPORT_OPENCL: OFF
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
CMAKE_GEN: Visual Studio 15 2017
CONFIGURATION: Release
- FEATURE_DOC: OFF
FEATURE_JNI: ON
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
# 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 2019
CMAKE_GEN: Visual Studio 16 2019
CONFIGURATION: Release
- FEATURE_DOC: OFF
FEATURE_JNI: OFF
FEATURE_LOADTESTS: OFF
FEATURE_TOOLS: OFF
SUPPORT_SSE: ON
SUPPORT_OPENCL: ON
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
CMAKE_GEN: Visual Studio 16 2019
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 2019
Expand Down Expand Up @@ -154,8 +176,6 @@ install:
ci_scripts/install_win.bat
@echo "Pick up environment changes made to registry by the install script."
refreshenv
@echo "Pull Windows binaries from LFS."
git lfs pull --include=other_lib/win
# # 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 Down Expand Up @@ -204,7 +224,7 @@ test_script:
artifacts:
# Save in cloud storage so we can deploy it. Will be kept unnecessarily for
# 6 months. Would be nice to avoid saving artifacts from every build in the
# 1 month. Would be nice to avoid saving artifacts from every build in the
# matrix. No info in Appveyor docs.
- path: '$(BUILD_DIR)/KTX-Software-*.exe'
name: WindowsInstaller
Expand Down Expand Up @@ -232,3 +252,4 @@ deploy:
APPVEYOR_REPO_TAG: true # deploy on tag push only
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
CONFIGURATION: Release
PACKAGE: YES
Loading

0 comments on commit 9d1204c

Please sign in to comment.