parameters: - name: checkoutRepo type: string default: 'self' - name: checkoutRef type: string default: '' - name: aptPackages type: object default: - cmake - ninja-build - libgtest-dev - git - python3-pip - name: rocmDependencies type: object default: - rocm-cmake - llvm-project - ROCR-Runtime - clr - rocminfo jobs: - job: rocPRIM variables: - group: common - template: /.azuredevops/variables-global.yml pool: ${{ variables.MEDIUM_BUILD_POOL }} workspace: clean: all steps: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml parameters: aptPackages: ${{ parameters.aptPackages }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml parameters: checkoutRepo: ${{ parameters.checkoutRepo }} # ${{ }} are resolved during compile-time # so this next step is skipped completely until # we define explicit aptPackages needed to install # CI case: download latest default branch build - ${{ if eq(parameters.checkoutRef, '') }}: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml parameters: dependencyList: ${{ parameters.rocmDependencies }} dependencySource: staging # manual build case: triggered by ROCm/ROCm repo - ${{ if ne(parameters.checkoutRef, '') }}: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml parameters: dependencyList: ${{ parameters.rocmDependencies }} dependencySource: tag-builds - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml parameters: extraBuildFlags: >- -DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm -DBUILD_BENCHMARK=ON -DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++ -DAMDGPU_TARGETS=gfx1030;gfx1100 -DBUILD_TEST=ON -GNinja - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml