1c72d9df1SPhilippe Mathieu-Daudé#
2c72d9df1SPhilippe Mathieu-Daudé# Docker cross-compiler target
3c72d9df1SPhilippe Mathieu-Daudé#
4c72d9df1SPhilippe Mathieu-Daudé# This docker target builds on the debian stretch base image,
5c72d9df1SPhilippe Mathieu-Daudé# using a prebuilt toolchains for Xtensa cores from:
6c72d9df1SPhilippe Mathieu-Daudé# https://github.com/foss-xtensa/toolchain/releases
7c72d9df1SPhilippe Mathieu-Daudé#
83217b84fSAlex BennéeFROM docker.io/library/debian:11-slim
9c72d9df1SPhilippe Mathieu-Daudé
10c72d9df1SPhilippe Mathieu-DaudéRUN apt-get update && \
1198808c3dSPhilippe Mathieu-Daudé    DEBIAN_FRONTEND=noninteractive apt install -yy eatmydata && \
1298808c3dSPhilippe Mathieu-Daudé    DEBIAN_FRONTEND=noninteractive eatmydata \
13c72d9df1SPhilippe Mathieu-Daudé    apt-get install -y --no-install-recommends \
14c72d9df1SPhilippe Mathieu-Daudé        build-essential \
15c72d9df1SPhilippe Mathieu-Daudé        ca-certificates \
16c72d9df1SPhilippe Mathieu-Daudé        curl \
17c72d9df1SPhilippe Mathieu-Daudé        gettext \
18c72d9df1SPhilippe Mathieu-Daudé        git \
19bcbf2794SJohn Snow        python3-minimal
20c72d9df1SPhilippe Mathieu-Daudé
21bf7801dfSMax FilippovENV CPU_LIST dc232b dc233c de233_fpu dsp3400
22bf7801dfSMax FilippovENV TOOLCHAIN_RELEASE 2020.07
23c72d9df1SPhilippe Mathieu-Daudé
24c72d9df1SPhilippe Mathieu-DaudéRUN for cpu in $CPU_LIST; do \
25c72d9df1SPhilippe Mathieu-Daudé        curl -#SL http://github.com/foss-xtensa/toolchain/releases/download/$TOOLCHAIN_RELEASE/x86_64-$TOOLCHAIN_RELEASE-xtensa-$cpu-elf.tar.gz \
26c72d9df1SPhilippe Mathieu-Daudé        | tar -xzC /opt; \
27c72d9df1SPhilippe Mathieu-Daudé    done
28c72d9df1SPhilippe Mathieu-Daudé
29bf7801dfSMax FilippovENV PATH $PATH:/opt/$TOOLCHAIN_RELEASE/xtensa-dc232b-elf/bin:/opt/$TOOLCHAIN_RELEASE/xtensa-dc233c-elf/bin:/opt/$TOOLCHAIN_RELEASE/xtensa-de233_fpu-elf/bin:/opt/$TOOLCHAIN_RELEASE/xtensa-dsp3400-elf/bin
30*bad7a275SDaniel P. BerrangéENV MAKE /usr/bin/make
3193bd2954SAlex Bennée# As a final step configure the user (if env is defined)
3293bd2954SAlex BennéeARG USER
3393bd2954SAlex BennéeARG UID
3493bd2954SAlex BennéeRUN if [ "${USER}" ]; then \
3593bd2954SAlex Bennée  id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi
36