1- FROM alpine:latest AS baseimage
1+ FROM ubuntu:24.04 AS baseimage
22
33FROM baseimage AS builder
44
5- RUN apk update; \
6- apk add --no-cache make cmake gcc-aarch64-none-elf \
7- qemu-system-aarch64 \
8- bison flex libc-dev libressl-dev dtc
5+ RUN apt update && \
6+ apt install -y build-essential cmake qemu-system-arm \
7+ bison flex libssl-dev device-tree-compiler wget && \
8+ apt clean && \
9+ rm -rf /var/lib/apt/lists/*
10+
11+ # Download aarch64-none-elf toolchain
12+ RUN wget https://developer.arm.com/-/media/Files/downloads/gnu/12.3.rel1/binrel/arm-gnu-toolchain-12.3.rel1-x86_64-aarch64-none-elf.tar.xz
13+ RUN tar -xvf arm-gnu-toolchain-12.3.rel1-x86_64-aarch64-none-elf.tar.xz
14+ RUN rm arm-gnu-toolchain-12.3.rel1-x86_64-aarch64-none-elf.tar.xz
15+
16+ ENV PATH="$PATH:/arm-gnu-toolchain-12.3.rel1-x86_64-aarch64-none-elf/bin"
917
1018WORKDIR /so3
1119
@@ -29,10 +37,19 @@ RUN cd u-boot;\
2937
3038FROM baseimage AS runner
3139
32- RUN apk update; \
33- apk add --no-cache make cmake gcc-aarch64-none-elf \
34- g++-aarch64-none-elf qemu-system-aarch64 \
35- util-linux dtc u-boot-tools dosfstools python3 py3-pip
40+ RUN apt update && apt install -y --no-install-recommends \
41+ build-essential \
42+ cmake \
43+ qemu-system-arm \
44+ util-linux \
45+ device-tree-compiler \
46+ u-boot-tools \
47+ dosfstools \
48+ python3 \
49+ python3-pip \
50+ bash patch git && \
51+ apt clean && \
52+ rm -rf /var/lib/apt/lists/*
3653
3754RUN pip install --break-system-packages pcpp
3855
@@ -49,10 +66,10 @@ COPY --from=builder /so3/u-boot/u-boot u-boot
4966
5067COPY u-boot/uEnv.d u-boot/uEnv.d
5168
52- COPY toolchains /so3/ toolchains
53- RUN toolchains/build-toolchain.sh && rm -rf toolchains/musl-cross-make
54- ENV PATH=$PATH:/so3/ toolchains/aarch64-linux-musl/bin
55- ENV PATH=$PATH:/so3/ toolchains/arm-linux-musleabihf/bin
69+ COPY toolchains /toolchains
70+ RUN / toolchains/build-toolchain.sh && rm -rf / toolchains/musl-cross-make
71+ ENV PATH=$PATH:/toolchains/aarch64-linux-musl/bin
72+ ENV PATH=$PATH:/toolchains/arm-linux-musleabihf/bin
5673
5774RUN mkdir target
5875RUN mkdir -p usr
@@ -78,4 +95,4 @@ ENV USR_BUILD_TOOLCHAIN_FILE=aarch64_none_toolchain.cmake
7895ENV QEMU_ARCH=aarch64
7996ENV PLATFORM=virt64
8097
81- CMD ./install_dependencies.sh && ./docker/scripts/setup_ramfs.sh && ./docker/scripts/setup_filesystem.sh && ./docker/scripts/run.sh
98+ # CMD ./install_dependencies.sh && ./docker/scripts/setup_ramfs.sh && ./docker/scripts/setup_filesystem.sh && ./docker/scripts/run.sh
0 commit comments