1# 2# Docker TriCore cross-compiler target 3# 4# This docker target builds on the Debian Buster base image but 5# doesn't inherit from the common one to avoid bringing in unneeded 6# dependencies. 7# 8# Copyright (c) 2018 Philippe Mathieu-Daudé 9# 10# SPDX-License-Identifier: GPL-2.0-or-later 11# 12FROM docker.io/library/debian:11-slim 13 14MAINTAINER Philippe Mathieu-Daudé <f4bug@amsat.org> 15 16RUN apt update && \ 17 DEBIAN_FRONTEND=noninteractive apt install -yy eatmydata && \ 18 DEBIAN_FRONTEND=noninteractive eatmydata apt install -yy \ 19 bison \ 20 bzip2 \ 21 ca-certificates \ 22 ccache \ 23 curl \ 24 flex \ 25 g++ \ 26 gcc \ 27 git \ 28 libglib2.0-dev \ 29 libpixman-1-dev \ 30 locales \ 31 make \ 32 ninja-build \ 33 pkgconf \ 34 python3-pip \ 35 python3-setuptools \ 36 python3-wheel \ 37 python3-venv 38 39RUN /usr/bin/pip3 install tomli 40 41RUN curl -#SL https://github.com/bkoppelmann/package_940/releases/download/tricore-toolchain-9.40/tricore-toolchain-9.4.0.tar.gz \ 42 | tar -xzC /usr/local/ 43 44# This image can only build a very minimal QEMU as well as the tests 45ENV DEF_TARGET_LIST tricore-softmmu 46ENV QEMU_CONFIGURE_OPTS --disable-user --disable-tools --disable-fdt 47ENV MAKE /usr/bin/make 48# As a final step configure the user (if env is defined) 49ARG USER 50ARG UID 51RUN if [ "${USER}" ]; then \ 52 id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi 53