mirror of
https://github.com/ROCm/ROCm.git
synced 2026-04-05 03:01:17 -04:00
Instead of using docker and apt install of ROCm component dependencies, use tarballs from Azure Pipeline builds to enable updates of ROCm interdependencies without waiting for releases..
100 lines
2.4 KiB
YAML
100 lines
2.4 KiB
YAML
parameters:
|
|
- name: checkoutRepo
|
|
type: string
|
|
default: 'self'
|
|
- name: checkoutRef
|
|
type: string
|
|
default: ''
|
|
- name: aptPackages
|
|
type: object
|
|
default:
|
|
- cmake
|
|
- ninja-build
|
|
- git
|
|
- wget
|
|
- unzip
|
|
- pkg-config
|
|
- protobuf-compiler
|
|
- libprotoc-dev
|
|
- ffmpeg
|
|
- libavcodec-dev
|
|
- libavformat-dev
|
|
- libavutil-dev
|
|
- libswscale-dev
|
|
- build-essential
|
|
- libgtk2.0-dev
|
|
- libavcodec-dev
|
|
- libavformat-dev
|
|
- libswscale-dev
|
|
- libtbb2
|
|
- libtbb-dev
|
|
- libjpeg-dev
|
|
- libpng-dev
|
|
- libtiff-dev
|
|
- libdc1394-dev
|
|
- libgmp-dev
|
|
- libopencv-dev
|
|
- name: pipModules
|
|
type: object
|
|
default:
|
|
- future==0.18.2
|
|
- pytz==2022.1
|
|
- numpy==1.21
|
|
- google==3.0.0
|
|
- protobuf==3.12.4
|
|
- onnx==1.12.0
|
|
- name: rocmDependencies
|
|
type: object
|
|
default:
|
|
- rocm-cmake
|
|
- llvm-project
|
|
- ROCR-Runtime
|
|
- clr
|
|
- rocminfo
|
|
- rocprofiler-register
|
|
- half
|
|
- rocBLAS
|
|
- MIOpen
|
|
- AMDMIGraphX
|
|
- rpp
|
|
- rocDecode
|
|
|
|
jobs:
|
|
- job: MIVisionX
|
|
variables:
|
|
- group: common
|
|
- template: /.azuredevops/variables-global.yml
|
|
pool:
|
|
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
|
workspace:
|
|
clean: all
|
|
steps:
|
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
|
parameters:
|
|
aptPackages: ${{ parameters.aptPackages }}
|
|
pipModules: ${{ parameters.pipModules }}
|
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
|
parameters:
|
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
|
# 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_BUILD_TYPE=Release
|
|
-DROCM_PATH=$(Agent.BuildDirectory)/rocm
|
|
-DROCM_DEP_ROCMCORE=ON
|
|
-GNinja
|
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|