瀏覽代碼

docker : add GGML_CPU_ARM_ARCH arg to select ARM architecture to build for (#11419)

Diego Devesa 11 月之前
父節點
當前提交
6e264a905b
共有 1 個文件被更改,包括 7 次插入2 次删除
  1. 7 2
      .devops/cpu.Dockerfile

+ 7 - 2
.devops/cpu.Dockerfile

@@ -4,6 +4,8 @@ FROM ubuntu:$UBUNTU_VERSION AS build
 
 
 ARG TARGETARCH
 ARG TARGETARCH
 
 
+ARG GGML_CPU_ARM_ARCH=armv8-a
+
 RUN apt-get update && \
 RUN apt-get update && \
     apt-get install -y build-essential git cmake libcurl4-openssl-dev
     apt-get install -y build-essential git cmake libcurl4-openssl-dev
 
 
@@ -12,9 +14,12 @@ WORKDIR /app
 COPY . .
 COPY . .
 
 
 RUN if [ "$TARGETARCH" = "amd64" ]; then \
 RUN if [ "$TARGETARCH" = "amd64" ]; then \
-        cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DLLAMA_CURL=ON -DGGML_BACKEND_DL=ON -DGGML_NATIVE=OFF -DGGML_CPU_ALL_VARIANTS=ON; \
+        cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DLLAMA_CURL=ON -DGGML_NATIVE=OFF -DGGML_BACKEND_DL=ON -DGGML_CPU_ALL_VARIANTS=ON; \
+    elif [ "$TARGETARCH" = "arm64" ]; then \
+        cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DLLAMA_CURL=ON -DGGML_NATIVE=OFF -DGGML_CPU_ARM_ARCH=${GGML_CPU_ARM_ARCH}; \
     else \
     else \
-        cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DLLAMA_CURL=ON; \
+        echo "Unsupported architecture"; \
+        exit 1; \
     fi && \
     fi && \
     cmake --build build -j $(nproc)
     cmake --build build -j $(nproc)