CodeQL / Analyze (actions) (push) Canceled after 0s
CodeQL / Analyze (python) (push) Canceled after 0s
pre-commit / pre-commit (push) Canceled after 0s
Multi-Arch CI / setup (push) Canceled after 0s
Publish build_manylinux_x86_64 images / publish_build_manylinux_x86_64 (push) Canceled after 0s
Setup (Multi-Arch) / setup (push) Canceled after 0s
Multi-Arch CI / Linux::${{ fromJSON(needs.setup.outputs.linux_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubi10 image / publish_no_rocm_image_ubi10 (push) Canceled after 0s
Multi-Arch CI / Windows::${{ fromJSON(needs.setup.outputs.windows_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Multi-Arch CI / Manifest Diff (push) Canceled after 0s
TheRock Manifest Diff Report / Generate Manifest Diff Report (push) Canceled after 0s
Multi-Arch CI / CI Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_ocl_rt images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_rocgdb images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Unit Tests / Unit Tests :: ubuntu-24.04 (push) Canceled after 0s
Unit Tests / Unit Tests :: windows-2022 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_media (push) Canceled after 0s
Unit Tests / Unit Tests Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_openmpi (push) Canceled after 0s
51 lines
1.8 KiB
YAML
51 lines
1.8 KiB
YAML
# This workflow builds SPIRV-Tools from main once per day and caches the
|
|
# install tree. The build- and test-workflows only restore from this cache
|
|
# (via restore-keys prefix match), so this workflow owns the freshness of
|
|
# the tools.
|
|
#
|
|
# workflow_dispatch is provided for manual refresh when a SPIRV-Tools fix
|
|
# needs to be picked up before the next scheduled run, or to bootstrap the
|
|
# cache on first deployment.
|
|
name: Prebuild SPIRV-Tools
|
|
|
|
on:
|
|
schedule:
|
|
- cron: 0 23 * * *
|
|
workflow_dispatch:
|
|
|
|
env:
|
|
SPIRV_TOOLS_INSTALL: ${{ github.workspace }}/spirv-tools-install
|
|
|
|
jobs:
|
|
prebuild:
|
|
name: Build and cache SPIRV-Tools main
|
|
runs-on: ubuntu-24.04
|
|
steps:
|
|
- name: Get current date for SPIRV-Tools cache key
|
|
id: date
|
|
run: echo "date=$(date -u +%Y-%m-%d)" >> $GITHUB_OUTPUT
|
|
- name: Check for existing cache entry
|
|
id: spirv-tools-cache
|
|
uses: actions/cache/restore@v5
|
|
with:
|
|
path: ${{ env.SPIRV_TOOLS_INSTALL }}
|
|
key: spirv-tools-main-${{ steps.date.outputs.date }}
|
|
lookup-only: true
|
|
- name: Build and install SPIRV-Tools
|
|
if: steps.spirv-tools-cache.outputs.cache-hit != 'true'
|
|
run: |
|
|
git clone --depth=1 https://github.com/KhronosGroup/SPIRV-Tools SPIRV-Tools
|
|
python3 SPIRV-Tools/utils/git-sync-deps
|
|
cmake -S SPIRV-Tools -B SPIRV-Tools/build \
|
|
-DCMAKE_BUILD_TYPE=Release \
|
|
-DCMAKE_INSTALL_PREFIX=${{ env.SPIRV_TOOLS_INSTALL }} \
|
|
-DSPIRV_SKIP_TESTS=ON \
|
|
-G "Unix Makefiles"
|
|
make -C SPIRV-Tools/build install -j$(nproc)
|
|
- name: Save SPIRV-Tools cache
|
|
if: steps.spirv-tools-cache.outputs.cache-hit != 'true'
|
|
uses: actions/cache/save@v5
|
|
with:
|
|
path: ${{ env.SPIRV_TOOLS_INSTALL }}
|
|
key: spirv-tools-main-${{ steps.date.outputs.date }}
|