| # Copyright (c) 2022 Advanced Micro Devices, Inc. | |
| # All rights reserved. | |
| # | |
| # Redistribution and use in source and binary forms, with or without | |
| # modification, are permitted provided that the following conditions are met: | |
| # | |
| # 1. Redistributions of source code must retain the above copyright notice, | |
| # this list of conditions and the following disclaimer. | |
| # | |
| # 2. Redistributions in binary form must reproduce the above copyright notice, | |
| # this list of conditions and the following disclaimer in the documentation | |
| # and/or other materials provided with the distribution. | |
| # | |
| # 3. Neither the name of the copyright holder nor the names of its | |
| # contributors may be used to endorse or promote products derived from this | |
| # software without specific prior written permission. | |
| # | |
| # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" | |
| # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | |
| # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | |
| # ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE | |
| # LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | |
| # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF | |
| # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS | |
| # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN | |
| # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) | |
| # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE | |
| # POSSIBILITY OF SUCH DAMAGE. | |
| FROM ubuntu:20.04 | |
| ENV DEBIAN_FRONTEND=noninteractive | |
| RUN apt -y update && apt -y upgrade && \ | |
| apt -y install build-essential git m4 scons zlib1g zlib1g-dev \ | |
| libprotobuf-dev protobuf-compiler libprotoc-dev libgoogle-perftools-dev \ | |
| python3-dev python-is-python3 doxygen libboost-all-dev \ | |
| libhdf5-serial-dev python3-pydot libpng-dev libelf-dev pkg-config | |
| # Requirements for ROCm | |
| RUN apt -y install cmake mesa-common-dev libgflags-dev libgoogle-glog-dev | |
| # Needed to get ROCm repo, build packages | |
| RUN apt -y install wget gnupg2 rpm | |
| # Get the radeon gpg key for apt repository | |
| RUN wget -q -O - https://repo.radeon.com/rocm/rocm.gpg.key | apt-key add - | |
| # Modify apt sources to pull from ROCm 4.2 repository only | |
| RUN echo 'deb [arch=amd64] https://repo.radeon.com/rocm/apt/4.2/ ubuntu main' | tee /etc/apt/sources.list.d/rocm.list | |
| RUN apt-get update | |
| RUN apt -y install libnuma-dev | |
| # Install the ROCm-dkms source | |
| RUN apt -y install initramfs-tools | |
| RUN apt -y install rocm-dkms |