From 0e56999a573fada2cce6e94c21ef856cc88dc933 Mon Sep 17 00:00:00 2001 From: Ellie Hermaszewska Date: Wed, 10 Jul 2024 22:37:21 +0800 Subject: WIP Drop Premake (#3703) * Remove premake lua * Remove premake generated vs project * remove deps file * Remove premake driving bat files * Full test matrix under CMake * Remove premake based ci workflows * Wiggle CI * remove cmake from ci name * find frameworks correctly on osx * remove cmake from ci name * Cope with sccache not being available * cmake based falcor tests * ci wobble * only install ninja if necessary * more appropriate cache name * Remove premake from build instructions * Add some docs on ci setup * remove premake from regression tests * remove premake from perf test * Set SLANGC_PATH * ci wobble * bump slang-binaries * ci wobble * Bump spirv tools * dont use timestamp in cache * remote debug code * cache key wobble * Install sccache after building llvm * Do not build llvm tools * ci wobble * ci wobble * ci wobble * ci wobble * ci wobble * Tests spirv via glsl in ci * Define SLANG_ENABLE_XLIB=1 * osx builds on aarch64 * ci wobble * ci wobble * ci wobble * ci wobble * ci wobble * ci wobble * package documentation and metadata with cmake * ci wobble * Split hlsl double intrinsic tests * ci wobble * Correct type for double log10 Fixes https://github.com/shader-slang/slang/issues/4549 * remove working test from expected failures * add broken test to expected failures * smaller build for falcor tests * ci wobble * A few exclusions in ci * wip, release script * Enable examples in ci * neaten release script * Correct building docs * Only use xlib vulkan when slang_enable_xlib is true * bump slang-llvm version * Remove toolchain file use * Bump slang-llvm preset version * slash direction * Improve build directions * Add msvc cross build documentation * Disable old release files * Smaller set of releases for test * Allow not building llvm * simplify release matrix * Cross releases * formatting * formatting * ci wiggle * ci wiggle * cleaner * neaten * ci wobble * formatting * Install cross tools on linux * do not clean build dir * neaten ci * neaten ci * neaten ci * remove unused release workflow files * Build llvm on some platforms * neaten ci * notarize on osx * s/x64/x86_64 * ci wobble * Embed stdlib for release build * wobble ci * wobble ci * s/x64/x86_64 * ci wobble * ci wobble * ci wobble * vk-gl-cts on cmake * neaten ci * neaten ci * bump cache action version * Cope with windows being weird about case * old glibc version * old glibc version * Correct action file * Keep cache hot on main branch * separate small script for old glibc releases * ci wobble * ci wobble * Run cmake outside of docker * only sign on releases * Revert "Run cmake outside of docker" This reverts commit a58aaba939a4aa35fe70962fd60d9512b143592f. * python3 on build image * less parallel * ci wobble * ci wobble * ci wobble * newer git * ci wobble * ci wobble * Use newer docker image * Use newer docker image * sccache wobble * permissions issue * neaten * build llvm in ci * build llvm in ci * Remove linux clang build in ci * Only install crossbuild tools on non-aarch64 systems * neaten ci.yml * Correct github matrix * Simplify github matrix * ci wobble * Disable broken test See https://github.com/shader-slang/slang/issues/4589 * ci wobble * Neater slang-llvm archive filename * Neater path for uploading artifacts * Neater ci names * Use Windows SDK 10.0.19041.0 in cmake builds --- .github/workflows/falcor-test.yml | 56 +++++++++++++++++++++++++-------------- 1 file changed, 36 insertions(+), 20 deletions(-) (limited to '.github/workflows/falcor-test.yml') diff --git a/.github/workflows/falcor-test.yml b/.github/workflows/falcor-test.yml index 60506f062..9dccb6af2 100644 --- a/.github/workflows/falcor-test.yml +++ b/.github/workflows/falcor-test.yml @@ -1,5 +1,3 @@ -# This is a basic workflow to help you get started with Actions - name: Falcor Tests on: @@ -12,27 +10,40 @@ concurrency: cancel-in-progress: true jobs: build: - runs-on: [Windows, self-hosted, falcor] timeout-minutes: 100 continue-on-error: true strategy: fail-fast: false matrix: - configuration: ['Release'] - platform: ['x64'] + os: [windows] + config: [release] + compiler: [cl] + platform: [x86_64] include: - - platform: x64 - testPlatform: x64 - - platform: x64 - testCategory: full + # Self-hosted falcor tests + - warnings-as-errors: false + test-category: full + full-gpu-tests: false + runs-on: [Windows, self-hosted, falcor] + runs-on: ${{ matrix.runs-on }} + defaults: + run: + shell: bash steps: - uses: actions/checkout@v3 with: submodules: 'true' fetch-depth: '0' - - name: setup-msbuild - uses: microsoft/setup-msbuild@v1 + - name: Setup + uses: ./.github/actions/common-setup + with: + os: ${{matrix.os}} + compiler: ${{matrix.compiler}} + platform: ${{matrix.platform}} + config: ${{matrix.config}} + build-llvm: true - name: setup-falcor + shell: pwsh run: | mkdir FalcorBin cd FalcorBin @@ -43,25 +54,30 @@ jobs: Copy-Item -Path 'C:\Falcor\media_internal' -Destination '.\' -Recurse Copy-Item -Path 'C:\Falcor\scripts' -Destination '.\' -Recurse cd ..\ - - name: build + - name: Build Slang run: | - .\premake.bat vs2019 --arch=${{matrix.platform}} --deps=true --no-progress=true --enable-cuda=true --enable-examples=false - - .\make-slang-tag-version.bat - - MSBuild.exe slang.sln -v:m -m -property:Configuration=${{matrix.configuration}} -property:Platform=${{matrix.platform}} -property:WindowsTargetPlatformVersion=10.0.19041.0 -maxcpucount:12 - - Copy-Item -Path '.\bin\windows-${{matrix.platform}}\${{matrix.configuration}}\*' -Destination '.\FalcorBin\build\windows-vs2022\bin\Release\' -Recurse -Exclude ("*.pdb", "gfx.dll") + cmake --preset default --fresh \ + -DSLANG_SLANG_LLVM_FLAVOR=USE_SYSTEM_LLVM \ + -DCMAKE_COMPILE_WARNING_AS_ERROR=${{matrix.warnings-as-errors}} \ + -DSLANG_ENABLE_CUDA=1 \ + -DSLANG_ENABLE_EXAMPLES=0 \ + -DSLANG_ENABLE_GFX=0 \ + -DSLANG_ENABLE_TESTS=0 + cmake --workflow --preset "${{matrix.config}}" + - name: Copy Slang to Falcor + run: | + cp --verbose --recursive --target-directory ./FalcorBin/build/windows-vs2022/bin/Release build/Release/bin/* - name: falcor-unit-test + shell: pwsh run: | $ErrorActionPreference = "SilentlyContinue" cd .\FalcorBin\tests python ./testing/run_unit_tests.py --config windows-vs2022-Release -t "-slow" cd ../../ - name: falcor-image-test + shell: pwsh run: | $ErrorActionPreference = "SilentlyContinue" cd .\FalcorBin\tests python ./testing/run_image_tests.py --config windows-vs2022-Release --run-only cd ../../ - -- cgit v1.2.3