CI: update toolchains to use latest GitHub runner images and rewrite set_matrix.py without polly#780
Conversation
b23ca88 to
c3e7d55
Compare
|
from #781
|
|
need to update |
Update from the deprecated ubuntu-20.04 images to the currently latest ubuntu-24.04 image. In the process update the `gcc` version from 7, 8, 9 to 12, 13, 14.
f00adc4 to
edbac40
Compare
|
basic functionality restored, Now need to update custom found the following files: $ find cmake/projects/ -name "*.sh" -o -name "*.json" -o -name "*.cmd"
cmake/projects/filament/ci/build.sh
cmake/projects/filament/ci/matrix.json
cmake/projects/Qt/generate.sh
cmake/projects/pthreads-win32/ci/matrix.json
cmake/projects/occt/ci/build.sh
cmake/projects/freetype-gl/ci/build.sh
cmake/projects/freetype-gl/ci/matrix.json
cmake/projects/Boost/scripts/create-boost-1-66-ios-fatlib.sh
cmake/projects/Boost/scripts/create-boost-ios-fatlib.sh
cmake/projects/Boost/ci/matrix.json
cmake/projects/Boost/generate.shso will have to fix the following projects:
To test I'll locally try to successfully run the following command: python .github/workflows/set_matrix.py Eigen filament pthreads-win32 occt freetype-gl Boost |
3dc0793 to
536cffc
Compare
Noone looks at them and it is a hassle to implement in `set_matrix.py`
- set_matrix: add --projects override for local debugging - set_matrix: add optional --output parameter - set_matrix: default output to stdout without indent - set_matrix: create toolchain files first steps non-complete - set_matrix: handle specific android toolchains - set_matrix: handle CMAKE_C_STANDARD and set undetectable - set_matrix: toolchain creation for vs-xx-xxxx, no generator yet - set_matrix: toolchain creation for mingw and msys - set_matrix: newlines and c11 undetectable - set_matrix: comment about generator fixed and libc++ closing ) fixed - set_matrix: use android-ndk-api - set_matrix: set VCVARSALL and generator - set_matrix: add project_name to error message - set_matrix: update path to vcvarsall.bat for vs-17-2022 - set_matrix: info about deprecation of vs-16-2019 - set_matrix: specified scripts are mandatory, no default build scripts - set_matrix: no script for hunter_tests, but VERBOSE=True - set_matrix: write out project name for CI job name - set_matrix: set default python version for all jobs
- build.py: copy from jenkins.py and black format - build.py: call cmake in script - build.py: sys.exit not just exit - build.py: fix cmake calling - build.py: as posixpath for args - build.py: use full path for TOOLCHAIN - build.py: toolchain filepath as posix path - build.py: all paths as posix - build.py: alsways build with --config Release - build.py: hunter_sha1 is str, not path - build.py: only build Release config to save time - build.py: CMP0069 is on per default since 3.9 - build.py: no chdir, remove all_release flag - build.py: use cdir instead of recreate - build.py: try without archive, maybe fixes Windows Store - build.py: disable zip/archive creation, messes with Windows 10 Store - build.py: fix release type, delete build dir, no archive - build.py: handle optional SCRIPT environment variable - build.py: allow hunter_tests as toolchain, special handling - build.py: on main and master and GITHUB_USER_PASSWORD upload cache - build.py: allow toolchain name and path and find file if needed
b278c94 to
28c5ac7
Compare
|
removed the |
- ci: matrix: remove ndk from toolchain, depends on github runner image - ci: matrix: use android-ndk-api-xxx - ci: matrix: macos: move to macos-15 - ci: matrix: windows: move to vs-17-2022 on windows-2022 image - ci: matrix: use Windows SDK 22000, as it is one of the available - ci: matrix: remove python and script from default matrix, add comments
- ci: upload generated toolchains folder - ci: on windows run VCVARSALL if needed - ci: download artifacts for .github/toolchains folder - ci: windows: download artifacts downloads folder directly, forgets full path - ci: linux: download artifacts downloads folder directly, forgets full path - ci: linux: use build.py script - ci: run build.py for windows build as well - ci: use build.py for hunter_tests as well - ci: use matrix.project - ci: use TOOLCHAIN with just name, remove hunter_tests job - ci: on error show output of set_matrix.py - ci: actually pass matrix.script as SCRIPT env-variable
also update docs such that custom build scripts are called by build.py
28c5ac7 to
93a5d9c
Compare
|
something is not yet working with the |
|
made the |
Update all used GitHub runner images (Linux, Windows and Mac) and update the
set_matrix.pyscript to work without thepollytoolchains.gccversion from 7, 8, 9 to 12, 13, 14.windows-2019image withvs-16-2019toolchain towindows-2022withvs-17-2022toolchainmacos-12image tomacos-15set_matrix.pyto generate theCMAKE_TOOLCHAIN_FILEfrom thetoolchainmatrix nameanalyzeandsanitizejobs, no-one looks at them and they are a hassle to implement, PR welcome, but for now removedbuild.shandbuild.cmddefault build scripts and replace them with abuild.pypython scriptbuild_hunter_tests.shbuild script and usebuild.pythere as welljenkins.pyfilematrix.jsonandbuild.shfor the following projects:filamentpthreads-win32occtfreetype-glBoost