codon/scripts/Dockerfile.llvm-build

25 lines
1.1 KiB
Docker

FROM nvidia/cuda:12.6.0-cudnn-devel-rockylinux8
RUN yum -y install epel-release && \
yum -y install --enablerepo=devel --enablerepo=powertools \
ninja-build libuuid-devel openssl openssl-devel python3 bzip2 \
libsodium-devel zlib-devel git patch perl-Data-Dumper wget cmake libgfortran \
bzip2-devel xz-devel gcc-gfortran gcc-c++ libstdc++-static
RUN git clone --depth 1 -b codon https://github.com/exaloop/llvm-project /github/llvm-src && \
cmake -S /github/llvm-src/llvm -G Ninja \
-B /github/llvm-src/llvm/build \
-DCMAKE_BUILD_TYPE=Release \
-DLLVM_INCLUDE_TESTS=OFF \
-DLLVM_ENABLE_RTTI=ON \
-DLLVM_ENABLE_ZLIB=OFF \
-DLLVM_ENABLE_TERMINFO=OFF \
-DLLVM_TARGETS_TO_BUILD="host;NVPTX" \
-DLLVM_BUILD_TOOLS=OFF \
-DLLVM_ENABLE_PROJECTS=clang \
-DCMAKE_INSTALL_PREFIX=/opt/llvm-codon
RUN cmake --build /github/llvm-src/llvm/build
RUN cmake --install /github/llvm-src/llvm/build && \
cd /github/llvm-src && tar cjvf /opt/llvm-$(git rev-parse --abbrev-ref HEAD)-$(git rev-parse --short HEAD).tar.bz2 -C /opt /opt/llvm-codon/