mirror of
https://github.com/intel/llvm.git
synced 2026-01-12 18:27:07 +08:00
Based on https://github.com/llvm/llvm-project/pull/162007#issuecomment-3373161948, we should avoid having short links in docker images.
31 lines
1000 B
Docker
31 lines
1000 B
Docker
FROM docker.io/library/ubuntu:24.04 AS builder
|
|
|
|
ARG DEBIAN_FRONTEND=noninteractive
|
|
ENV TZ=UTC
|
|
|
|
RUN apt-get update && \
|
|
apt-get install -y --no-install-recommends ca-certificates git \
|
|
build-essential cmake ninja-build python3 libjemalloc-dev \
|
|
python3-psutil && \
|
|
rm -rf /var/lib/apt/lists
|
|
|
|
WORKDIR /home/bolt
|
|
|
|
RUN git clone --depth 1 https://github.com/llvm/llvm-project
|
|
|
|
RUN mkdir build && \
|
|
cd build && \
|
|
cmake -G Ninja ../llvm-project/llvm \
|
|
-DLLVM_ENABLE_PROJECTS="bolt;clang;lld" \
|
|
-DLLVM_TARGETS_TO_BUILD="X86;AArch64" \
|
|
-DCMAKE_BUILD_TYPE=Release \
|
|
-DLLVM_ENABLE_ASSERTIONS=ON \
|
|
-DCMAKE_EXE_LINKER_FLAGS="-Wl,--push-state -Wl,-whole-archive -ljemalloc_pic -Wl,--pop-state -lpthread -lstdc++ -lm -ldl" \
|
|
-DCMAKE_INSTALL_PREFIX=/home/bolt/install && \
|
|
ninja check-bolt && \
|
|
ninja install-llvm-bolt install-merge-fdata install-bolt_rt
|
|
|
|
FROM docker.io/library/ubuntu:24.04
|
|
|
|
COPY --from=builder /home/bolt/install /usr/local
|