summaryrefslogtreecommitdiffstats
path: root/.github/workflows/ci.yml
Commit message (Collapse)AuthorAge
...
* Map `SV_InstanceID` to `gl_InstanceIndex-gl_BaseInstance` (#6468)Yong He2025-02-27
| | | | | * Map `SV_InstanceID` to `gl_InstanceIndex-gl_BaseInstance` * Fix ci.
* Make capability diagnostic message more friendly. (#6474)Yong He2025-02-27
| | | | | | | | | | | | | | | * Make capability diagnostic message more friendly. * Fix. * Fix. * Fix. * Fix test. * Update expected fail setting for aarch64/linux * Fix.
* set depth 2 for CI submodules (#6436)Mukund Keshava2025-02-24
|
* Do not perform deep checkout of submodules (#6410)Mukund Keshava2025-02-24
| | | | | | | | | | | * Do not perform deep checkout of submodules Fixes #5465 * Remove shallow clone for release as suggested by csyonghe --------- Co-authored-by: Ellie Hermaszewska <ellieh@nvidia.com>
* Add test for visibility in translation unit with multiple source files (#6306)Anders Leino2025-02-07
| | | This closes #6221.
* Upgrade actions/upload-artifact from v3 to v4 (#6051)Jay Kwak2025-01-09
| | | | | | | | | | | | | | The version 3 of actions/upload-artifact will be deprecated soon. https://github.blog/changelog/2024-04-16-deprecation-notice-v3-of-the-artifact-actions/ This commit upgrades to v4. There is a document describing how to migrate/upgrade: https://github.com/actions/upload-artifact/blob/main/docs/MIGRATION.md The breaking change on v4 is that the uploaded files are immutable and we can no longer append files with the same name. We don't seem to be doing it so it should be fine for us. Closes #6050
* CI: Build the full slang-wasm.[js|wasm] targets instead of just the slang ↵Anders Leino2025-01-05
| | | | | | | | | | | | library. (#5998) A recent build breakage for slang-wasm.[js|wasm] was not noticed by CI since it built the slang library target instead of the slang-wasm.js "executable" target. (We added a that used objcopy to split debug info from executables. objcopy does not report errors when it finds object files with unexpected format inside static libraries, but it *does* report errors when it's run on an exceutable of unexpected format, such as in the case of slang-wasm.js.) This closes #5959.
* Enable more examples in CI (#5915)Anders Leino2024-12-19
| | | | | | | | | | | | * CI: examples: Add support for filtering on platform * Add platform field to example run IDs - Remove the reflection-api entry for Windows. - Add 'aarch64' as platform for all 'macos' entries. - Add 'x86_64' as platform for all other entries. - This will implicitly enable all aarch64 tests for Linux. This helps to address issue #5520.
* Add slang example tests to CI (#5879)Anders Leino2024-12-18
| | | | | | | | | | | | * Examples: Don't proceed if 'initializeBase' fails * Examples: Only access gWindow if it's been initialized * Examples: Free memory from CommandLineToArgvW * Add example run step to CI Lots of examples are still unexpectedly failing, but is one small step towards addressing issue #5520.
* use Release over RelWithDebInfo for ci (#5846)Ellie Hermaszewska2024-12-12
| | | | | This will necessetate changing the "required tests" setting on the GitHub repo Co-authored-by: Yong He <yonghe@outlook.com>
* Relocate the step of 'Add bash to PATH' (#5759)kaizhangNV2024-12-04
| | | | | | | | | | * Relocate the step of 'Add bash to PATH' Relocate the step of 'Add bash to PATH' at beginning of the CI to avoid the issue of "bash command not found". * formatting * Do not remove 'Add bash to PATH' from common-setup
* Run a do-nothing CI job for documentation changes (#5747)Ellie Hermaszewska2024-12-04
| | | Closes https://github.com/shader-slang/slang/issues/5689
* Update workflow YML files for renamed files (#5688)Jay Kwak2024-11-27
| | | | | | | | Recently we renamed a few files and directories and they should be reflected on the workflow YAML files. - LICENCE is a typo of LICENSE. - We recently created a new "LICENSES/" - CONTRIBUTION.md was renamed to CONTRIBUTING.md Closes #5686
* ci: Update `actions/checkout` to always use v4 (#5634)Bruce Mitchener2024-11-21
| | | | | | CI was using a mix of version 3 and 4. Version 3 results in a warning within the GitHub Actions UI as it was using a version of NodeJS that is deprecated within the GitHub Actions infrastructure.
* Update slang-rhi and fix error handling (#5485)cheneym22024-11-05
| | | | | | | | | | | | | | Update slang-rhi to pick up a fix in webgpu compilation error handling. In doRenderComparisonTestRun(), only return TestResult::Pass if the shader is ran actually compiled. A similar check is in place elsewhere in slang-test-main, but was missed in doRenderComparisonTestRun(). Add two tests to the github CI skiplist, and use the skiplist in one additional CI config that was running without it. Closes 5291
* format yaml and json (#5428)Ellie Hermaszewska2024-10-30
| | | | | * format yaml and json * format shell scripts
* Put debug symbols in releases (#5370)Ellie Hermaszewska2024-10-29
|
* Disable the building of slang-llvm when targeting wasm platform (#5196)Jay Kwak2024-09-30
| | | Co-authored-by: Yong He <yonghe@outlook.com>
* Add CI step to build WebAssembly version of Slang (#5164)Jay Kwak2024-09-27
| | | | | | | | Closes #5117 This adds a build step of WebAssembly version of Slang. Currently it is enabled only for Linux/Release to reduce the time cost of CI, but the builds were all successful on all platforms and configurations when tested.
* Draft: integrate slang-rhi (#4970)Simon Kallweit2024-08-30
| | | | | | | | | | | | | | | | | | | | | * add slang-rhi submodule * refactor render-test to use slang-rhi and remove OpenGL support * remove -vk -glsl tests * remove gl test * disable failing test * allow recursive submodules in github actions * update slang-rhi * update slang-rhi --------- Co-authored-by: Yong He <yonghe@outlook.com>
* Feature/record unit test (#4910)kaizhangNV2024-08-26
| | | | | | | | | | | | | | | | | | | | | | | | * Fix the slang-test bug Since we reorganize the build directory, now the libraries are located at different directory with executables in non-Windows platform, we have to change the code on how to find the dll directory. * Integrate the record/replay test into slang-unit-test We create a unit-test-record-replay.cpp to run the converted slang examples in child process as our tests for the record-replay layer. * Disable the test on Apple Due to the limitation of current examples, we temporarily disable them on apples. Change the ci to make this test only be run on the gpu-equipped runners, for other runners we add a white-list file "expected-failure-record-replay-tests.txt". * Remove 'hello-world' example from unit test "hello-world" doesn't use gfx abstract library, instead it uses vk directly, it's not a preferable way. So we will drop this test, instead, we will use cpu-hello-world example.
* Don't trigger CI on doc changes. (#4736)Yong He2024-07-25
|
* Separating slang-test in CI for emit-spirv-via-glsl (#4665)Jay Kwak2024-07-18
| | | | | | | | | | | | * Separating slang-test in CI for emit-spirv-via-glsl When CI test fails, we expect to see the error messages at the end of each section of CI testing result. But currently when "emit-spirv-via-glsl" fails, the error messages appear in the middle, which lead us to believe that there is no errors when you look only at the end of the result. This commit separates out the "emit-spirv-via-glsl" case to make the error message more visiable.
* Enable warnings-as-error for CI (#4659)Jay Kwak2024-07-18
| | | | | | | | | Enable warnings-as-error for CI Closes #4664. Uses glslang commit that fixed a compiler warning Fixes a recent warning from external/CMakelist.txt A new macro, `SLANG_MAYBE_UNUSED` is added for a future need.
* Make ci scripts more robust (#4608)Ellie Hermaszewska2024-07-10
| | | | | | | | | * Remove syntax error in release script * Make ci scripts more robust * Remove lib copying * Add bin directory to RPATH
* A couple of small fixes to cmake releases (#4596)Ellie Hermaszewska2024-07-11
| | | | | | | * Correct windows file uploading * Include slang-llvm.so in releases * Neaten job names
* WIP Drop Premake (#3703)Ellie Hermaszewska2024-07-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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
* Include examples in default build (#4482)venkataram-nv2024-06-27
| | | | | * Include examples in default build * Omit building examples on unnecessary CI workflows
* Fix build warnings and treat warnings as error on CI (#4276)Jay Kwak2024-06-06
| | | * Fix build warnings and treat warnings as error
* CI: cancel onging jobs on commit. (#3557)Yong He2024-02-06
| | | | | | | * CI: cancel onging jobs on commit. * test change * Fix.
* WIP: CMake (#3326)Ellie Hermaszewska2023-12-08
* More robust input and output selection in generator tools * Add cmake build system * Get slang-test running with cmake * Bump lz4 and miniz dependencies * Make cmake build more declarative * Correct preprocessor logic in slang.h * Add cuda test to compute/simple * Remove empty cmake files * output placement for cmake, and commenting * Correct include paths in spirv-embed-generator * Format cmake with gersemi * Make cmake build clerer * Neaten header generation Also work around https://gitlab.kitware.com/cmake/cmake/-/issues/18399 by introducing correct_generated_properties to set the GENERATED flag in the correct scope * remove unused files * use 3.20 to set GENERATOR property properly * spelling * more flexible linker arg setting * replace slang-static with obj collection * Set rpath and linker path correctly * neaten generated file generation * tests working with cmake build * fix premake5 build * comment and neaten cmake * remove unnecessary dependency * Build aftermath example only when aftermath is enabled * Add slang-llvm and other dependencies * Put modules alongside binaries * Find slang-glslang correctly * Better option handling * comments * add llvm build test * Better option handling * cmake wobble * use UNICODE and _UNICODE * remove other workflows * use ccache * neaten * limit parallel for llvm build * use ninja for build * Windows and Darwin slang-llvm builds * cache key * verbose llvm build * cl on windows * sccache and cl.exe * use cl.exe * Correct package detection * less verbosity * Simplify miniz inclusion * fix build with sccache * Neaten llvm building * neaten * Neaten slang-llvm fetching * more surgical workarounds * Add ci action * Get version from git * better variable naming * add missing include * clean up after premake in cmake * more docs on cmake build * ci wobble * add imgui target * more selective source * do not download swiftshader * Some missing dependencies * only build llvm on dispatch * Disable /Zi in CI where sccache is present * simplify * set PIC for miniz * set policies before project * reengage workaround * more runs on ci * Add cmake presets * Add cpack * move iterator debug level to preset * Correct lib flag * simplify action * Neaten cmake init * Add todo * Add simple test wrapper * Add tests to workflow presets * rename packing preset * Correctly set definitions * docs * correct preset names * Make slang-test depend on test-server/test-process * neaten * use workflow in actions * install docs * Correct module install dir * debug dist workflow * Install headers * neaten header globbing * Neaten dependency handling * make lib and bin variables * Do not set compiler for vs builds, unnecessary * docs * allow setting explicit source for target * maintain archive subdir * cmake docs * install headers * place targets into folders * cmake docs * nest external projects in folder * remove name clash * Neater external packages * meta targets in folder structure * cleaner slang-glslang dll * Add missing static directive to slang-no-embedded-stdlib * more robust module copying * make slang-test the startup project * folder tweak * Make FETCH_BINARY the default on all platforms * Set DEBUG_DIR * add natvis files to source * skip spirv tests * remove test step from debug dist * Add build to .gitignore * redo warnings to be more like premake * Update imgui * clean more premake files * Disable PCH for glslang, gcc throws a warning * Add /MP for msvc builds * warning wobble * Add script to build llvm * Add slang-llvm and generators components * Build slang-llvm in ci * comments * fetch llvm with git * better abi approximation for cache * better sccache key * formatting * Correct logic around disabling problematic debug info for ccache * exclude gcc and clang from windows ci * Make dist workflows use system llvm * naming * restore normal dist builds * formatting * run tests in ci * Correct slang-llvm url setting * Rely on the system to find the test tool library * actions matrix wiggle * cope with OSX ancient bash * Correct compilers on windows * more ci debugging * Correct rpath handling on OSX * neaten * correct path to slang-llvm * Correct rpath separator on osx * Find slang-llvm correctly * smoke tests only on osx * ci wobble * Give MacOS module a dylib suffix * get swiftshader correctly * cope with bsd cp * remove debug output * full tests on osx * ci wobble * Add some vk tests to expected failures * simplify ci * ci wobble * exclude dx12 tests from github ci * remove cmake code for building llvm * warnings * warnings as errors for cl * spirv-tools in path * add aarch64 ci build * Add SLANG_GENERATORS_PATH option for prebuilt generators * neaten * Correct generator target name * remove yaml anchors because github actions does not support them * Demote CMake in docs Also add info on cross compiling * Restore premake CI * use minimal ci for cmake * Write miniz_export for premake build and .gitignore it * Mention build config tool options in docs * Remove redefined macro for miniz * regenerate vs project