@@ -5,20 +5,21 @@ LABEL org.opencontainers.image.source=https://github.com/halide/docker-images
5
5
6
6
WORKDIR /ws
7
7
8
- # # Install Ninja
9
- ARG NINJA_VERSION=v1.12.1
10
- RUN git clone --depth 1 --branch ${NINJA_VERSION} https://github.com/ninja-build/ninja.git && \
11
- cmake -S ninja -B build -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTING=OFF && \
12
- cmake --build build --target install -j "$(nproc)" && \
13
- rm -rf ninja build
8
+ # # Install Ninja & CMake
9
+ RUN apt-get remove -y cmake && \
10
+ apt-get -y autoremove && \
11
+ python -m pip install ninja==1.11.1.1 cmake==3.28.4
12
+
13
+ # # Set the prefix path to an arch-specific folder
14
+ ENV CMAKE_PREFIX_PATH=/usr/local/$CARGO_BUILD_TARGET
14
15
15
16
# # Install flatbuffers
16
17
ARG FB_VERSION=v23.5.26
17
18
RUN git clone --depth 1 --branch ${FB_VERSION} https://github.com/google/flatbuffers.git && \
18
19
cmake -G Ninja -S flatbuffers -B build \
19
20
-DCMAKE_BUILD_TYPE=Release \
20
- -DCMAKE_C_COMPILER=$TARGET_CC \
21
- -DCMAKE_CXX_COMPILER=$TARGET_CXX \
21
+ -DCMAKE_INSTALL_PREFIX=/usr/local/$CARGO_BUILD_TARGET \
22
+ -DCMAKE_TOOLCHAIN_FILE=$TARGET_CMAKE_TOOLCHAIN_FILE_PATH \
22
23
-DFLATBUFFERS_BUILD_TESTS=OFF \
23
24
&& \
24
25
cmake --build build --target install && \
@@ -30,8 +31,8 @@ RUN git clone --depth 1 --branch ${WABT_VERSION} https://github.com/WebAssembly/
30
31
git -C wabt submodule update --init third_party/picosha2 && \
31
32
cmake -G Ninja -S wabt -B build \
32
33
-DCMAKE_BUILD_TYPE=Release \
33
- -DCMAKE_C_COMPILER=$TARGET_CC \
34
- -DCMAKE_CXX_COMPILER=$TARGET_CXX \
34
+ -DCMAKE_INSTALL_PREFIX=/usr/local/$CARGO_BUILD_TARGET \
35
+ -DCMAKE_TOOLCHAIN_FILE=$TARGET_CMAKE_TOOLCHAIN_FILE_PATH \
35
36
-DWITH_EXCEPTIONS=ON \
36
37
-DBUILD_TESTS=OFF \
37
38
-DBUILD_TOOLS=OFF \
@@ -49,8 +50,8 @@ RUN git clone --depth 1 --branch ${LLVM_TAG} https://github.com/llvm/llvm-projec
49
50
"-DLLVM_ENABLE_RUNTIMES=compiler-rt" \
50
51
"-DLLVM_TARGETS_TO_BUILD=WebAssembly;X86;AArch64;ARM;Hexagon;NVPTX;PowerPC;RISCV" \
51
52
-DCMAKE_BUILD_TYPE=Release \
52
- -DCMAKE_C_COMPILER=$TARGET_CC \
53
- -DCMAKE_CXX_COMPILER=$TARGET_CXX \
53
+ -DCMAKE_INSTALL_PREFIX=/usr/local/$CARGO_BUILD_TARGET \
54
+ -DCMAKE_TOOLCHAIN_FILE=$TARGET_CMAKE_TOOLCHAIN_FILE_PATH \
54
55
-DLLVM_BUILD_32_BITS=OFF \
55
56
-DLLVM_ENABLE_ASSERTIONS=ON \
56
57
-DLLVM_ENABLE_BINDINGS=OFF \
0 commit comments