Build Windows Packages #20
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build Windows Packages | |
on: | |
workflow_dispatch: | |
inputs: | |
package_version: | |
type: string | |
default: ADHOCBUILD | |
workflow_call: | |
inputs: | |
package_version: | |
type: string | |
default: ADHOCBUILD | |
jobs: | |
build_windows_packages: | |
name: Build Windows Packages | |
runs-on: azure-windows-scale-nod-ai | |
defaults: | |
run: | |
shell: bash | |
strategy: | |
fail-fast: true | |
steps: | |
- name: Enabling git symlinks | |
run: git config --global core.symlinks true | |
- name: "Checking out repository" | |
uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 | |
- uses: actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5.3.0 | |
with: | |
python-version: "3.12" | |
- name: Install ninja | |
run: choco install ninja --yes | |
- name: Install Certs | |
run: python -m pip install certifi | |
- name: Fetch sources | |
run: | | |
# Sets an env variable to ensure urllib uses the certifi CA bundle in fetch_sources.py. | |
export SSL_CERT_FILE=$(python3 -m certifi) | |
git config --global user.email "nobody@amd.com" | |
git config --global user.name "Nobody" | |
python ./build_tools/fetch_sources.py --depth 1 | |
# TODO(scotttodd): Get symlinks working on CI runners instead of this | |
- name: Replace symlinks with copies | |
run: ./build_tools/patch_symlinks_for_windows_ci.sh | |
- name: Configure MSVC | |
uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1.13.0 | |
# TODO: We shouldn't be using a cache on actual release branches, but it | |
# really helps for iteration time. | |
- name: Setup ccache | |
uses: hendrikmuhs/ccache-action@53911442209d5c18de8a31615e0923161e435875 # v1.2.16 | |
with: | |
key: windows-build-packages-v1 | |
- name: Configure Projects | |
run: | | |
# Generate a new build id. | |
package_version="${{ inputs.package_version }}" | |
echo "Building package ${package_version}" | |
# Build. | |
cmake -B build -GNinja . \ | |
-DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache \ | |
-DTHEROCK_AMDGPU_FAMILIES=gfx110X-dgpu \ | |
-DTHEROCK_PACKAGE_VERSION="${package_version}" \ | |
-DTHEROCK_ENABLE_COMPILER=ON \ | |
-DTHEROCK_ENABLE_CORE=OFF \ | |
-DTHEROCK_ENABLE_CORE_RUNTIME=OFF \ | |
-DTHEROCK_ENABLE_COMM_LIBS=OFF \ | |
-DTHEROCK_ENABLE_MATH_LIBS=OFF \ | |
-DTHEROCK_ENABLE_ML_LIBS=OFF \ | |
-DTHEROCK_ENABLE_HIPIFY=OFF \ | |
-DTHEROCK_ENABLE_HIP_RUNTIME=OFF \ | |
-DTHEROCK_ENABLE_PROFILER_SDK=OFF | |
- name: Build Projects | |
run: cmake --build build | |
- name: Report | |
if: ${{ !cancelled() }} | |
run: | | |
ls -lh build |