feat(tools): Add QEMU 8.0.0_20230522 to tools.json

Process wildcards in the install and download lists of idf_tools
    Fix the install and download handlers to get common behaviour
This commit is contained in:
Anton Maklakov
2023-09-14 12:55:24 +07:00
parent 2585e53d54
commit 02802ea20a
7 changed files with 279 additions and 99 deletions

View File

@@ -7,6 +7,7 @@ RUN : \
&& apt-get install -y \
apt-utils \
bison \
bzip2 \
ca-certificates \
ccache \
check \
@@ -18,7 +19,10 @@ RUN : \
lcov \
libbsd-dev \
libffi-dev \
libglib2.0-0 \
libncurses-dev \
libpixman-1-0 \
libslirp0 \
libusb-1.0-0-dev \
make \
ninja-build \
@@ -77,6 +81,7 @@ RUN echo IDF_CHECKOUT_REF=$IDF_CHECKOUT_REF IDF_CLONE_BRANCH_OR_TAG=$IDF_CLONE_B
RUN : \
&& update-ca-certificates --fresh \
&& $IDF_PATH/tools/idf_tools.py --non-interactive install required --targets=${IDF_INSTALL_TARGETS} \
&& $IDF_PATH/tools/idf_tools.py --non-interactive install qemu* --targets=${IDF_INSTALL_TARGETS} \
&& $IDF_PATH/tools/idf_tools.py --non-interactive install cmake \
&& $IDF_PATH/tools/idf_tools.py --non-interactive install-python-env \
&& rm -rf $IDF_TOOLS_PATH/dist \
@@ -89,35 +94,6 @@ ENV IDF_PYTHON_CHECK_CONSTRAINTS=no
# Ccache is installed, enable it by default
ENV IDF_CCACHE_ENABLE=1
# Install QEMU runtime dependencies
RUN : \
&& apt-get update && apt-get install -y -q \
bzip2 \
libglib2.0-0 \
libpixman-1-0 \
libslirp0 \
&& rm -rf /var/lib/apt/lists/* \
&& :
# Install QEMU
ARG QEMU_VER=develop_8.0.0_20230522
ARG QEMU_RISCV32_DIST=esp-qemu-riscv32-softmmu-${QEMU_VER}-x86_64-linux-gnu.tar.bz2
ARG QEMU_RISCV32_SHA256=bc7607720ff3d7e3d39f3e1810b8795f376f4b9cf3783c8f2ed3f7f14ba74717
ARG QEMU_XTENSA_DIST=esp-qemu-xtensa-softmmu-${QEMU_VER}-x86_64-linux-gnu.tar.bz2
ARG QEMU_XTENSA_SHA256=a7e5e779fd593cb15f6d197034dc2fb427ed9165a4743e2febc6f6a47dfcc618
RUN bash -c ': \
&& wget --no-verbose https://github.com/espressif/qemu/releases/download/esp-${QEMU_VER//_/-}/${QEMU_RISCV32_DIST} \
&& echo "${QEMU_RISCV32_SHA256} *${QEMU_RISCV32_DIST}" | sha256sum --check --strict - \
&& tar -xf ${QEMU_RISCV32_DIST} -C /opt \
&& rm ${QEMU_RISCV32_DIST} \
&& wget --no-verbose https://github.com/espressif/qemu/releases/download/esp-${QEMU_VER//_/-}/${QEMU_XTENSA_DIST} \
&& echo "${QEMU_XTENSA_SHA256} *${QEMU_XTENSA_DIST}" | sha256sum --check --strict - \
&& tar -xf ${QEMU_XTENSA_DIST} -C /opt \
&& rm ${QEMU_XTENSA_DIST} \
'
ENV PATH=/opt/qemu/bin:${PATH}
COPY entrypoint.sh /opt/esp/entrypoint.sh
ENTRYPOINT [ "/opt/esp/entrypoint.sh" ]
CMD [ "/bin/bash" ]