Jelajahi Sumber

Use clang+llvm released binaries instead of "apt install" in Dockerfile (#952)

liang.he 4 tahun lalu
induk
melakukan
36b8f8fca2
2 mengubah file dengan 12 tambahan dan 6 penghapusan
  1. 12 5
      ci/Dockerfile
  2. 0 1
      ci/build_wamr.sh

+ 12 - 5
ci/Dockerfile

@@ -1,6 +1,8 @@
 # Copyright (C) 2019 Intel Corporation.  All rights reserved.
 # SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 
+# tie the ${VARIANT} and a llvm binary release together
+# please find a matched version on https://github.com/llvm/llvm-project/releases
 ARG VARIANT=focal
 FROM ubuntu:${VARIANT}
 
@@ -35,9 +37,14 @@ RUN cd /opt/emsdk \
   && echo "source /opt/emsdk/emsdk_env.sh" >> /root/.bashrc
 
 #
-# install clang and llvm
-RUN cd /tmp && wget https://apt.llvm.org/llvm.sh && chmod a+x llvm.sh
-RUN cd /tmp && ./llvm.sh 12
+# install clang and llvm release
+ARG CLANG_VER=13.0.0
+RUN wget https://github.com/llvm/llvm-project/releases/download/llvmorg-${CLANG_VER}/clang+llvm-${CLANG_VER}-x86_64-linux-gnu-ubuntu-20.04.tar.xz -P /opt
+RUN cd /opt \
+  && tar xf clang+llvm-${CLANG_VER}-x86_64-linux-gnu-ubuntu-20.04.tar.xz \
+  && ln -sf clang+llvm-${CLANG_VER}-x86_64-linux-gnu-ubuntu-20.04 clang-llvm
+RUN rm /opt/clang+llvm-${CLANG_VER}-x86_64-linux-gnu-ubuntu-20.04.tar.xz
+
 
 #
 # install wasi-sdk
@@ -68,8 +75,8 @@ RUN chmod a+x /opt/bazelisk/bazelisk-linux-amd64 \
 RUN apt update && apt install -y clang-format
 
 # set path
-ENV PATH "$PATH:/opt/wasi-sdk/bin:/opt/wabt/bin:/opt/binaryen/bin:/opt/bazelisk"
-RUN echo "export PATH=/opt/wasi-sdk/bin:/opt/wabt/bin:/opt/binaryen/bin:/opt/bazelisk:${PATH}" >> /root/.bashrc
+ENV PATH "$PATH:/opt/wasi-sdk/bin:/opt/wabt/bin:/opt/binaryen/bin:/opt/bazelisk:/opt/clang-llvm/bin"
+RUN echo "export PATH=/opt/wasi-sdk/bin:/opt/wabt/bin:/opt/binaryen/bin:/opt/bazelisk:/opt/clang-llvm/bin:${PATH}" >> /root/.bashrc
 
 #
 # PS

+ 0 - 1
ci/build_wamr.sh

@@ -8,7 +8,6 @@ readonly ROOT=$(realpath "${CURRENT_PATH}/..")
 readonly VARIANT=$(lsb_release -c | awk '{print $2}')
 
 docker build \
-    --build-arg VARIANT=${VARIANT} \
     --memory=4G --cpu-quota=50000 \
     -t wamr_dev_${VARIANT}:0.1 -f "${CURRENT_PATH}"/Dockerfile "${CURRENT_PATH}" \
   && docker run --rm -it \