forked from mirror/qemu
You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
51 lines
1.6 KiB
Docker
51 lines
1.6 KiB
Docker
#
|
|
# Docker Hexagon cross-compiler target
|
|
#
|
|
# This docker target is used for building hexagon tests. As it also
|
|
# needs to be able to build QEMU itself in CI we include its
|
|
# build-deps.
|
|
#
|
|
FROM docker.io/library/debian:11-slim
|
|
|
|
# Install common build utilities
|
|
RUN apt update && \
|
|
DEBIAN_FRONTEND=noninteractive apt install -yy eatmydata && \
|
|
DEBIAN_FRONTEND=noninteractive eatmydata \
|
|
apt install -y --no-install-recommends \
|
|
bison \
|
|
ca-certificates \
|
|
clang \
|
|
cmake \
|
|
flex \
|
|
gcc \
|
|
lld \
|
|
make \
|
|
ninja-build \
|
|
python3 \
|
|
rsync \
|
|
wget \
|
|
xz-utils
|
|
|
|
ENV TOOLCHAIN_INSTALL /usr/local
|
|
ENV ROOTFS /usr/local
|
|
|
|
ENV LLVM_URL https://github.com/llvm/llvm-project/archive/bfcd21876adc3498065e4da92799f613e730d475.tar.gz
|
|
ENV MUSL_URL https://github.com/quic/musl/archive/aff74b395fbf59cd7e93b3691905aa1af6c0778c.tar.gz
|
|
ENV LINUX_URL https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.6.18.tar.xz
|
|
|
|
ADD build-toolchain.sh /root/hexagon-toolchain/build-toolchain.sh
|
|
|
|
RUN cd /root/hexagon-toolchain && ./build-toolchain.sh
|
|
|
|
FROM docker.io/library/debian:11-slim
|
|
# Duplicate deb line as deb-src
|
|
RUN cat /etc/apt/sources.list | sed "s/^deb\ /deb-src /" >> /etc/apt/sources.list
|
|
# Install QEMU build deps for use in CI
|
|
RUN apt update && \
|
|
DEBIAN_FRONTEND=noninteractive apt install -yy eatmydata && \
|
|
DEBIAN_FRONTEND=noninteractive eatmydata apt install -yy bison flex git ninja-build && \
|
|
DEBIAN_FRONTEND=noninteractive eatmydata \
|
|
apt build-dep -yy --arch-only qemu
|
|
COPY --from=0 /usr/local /usr/local
|
|
ENV PATH $PATH:/usr/local/bin/
|