690be80412
We need a native compiler to build the hexagon codegen tools. In our current images we already have a gcc as a side effect of a broken dependency between gcovr and lcov but this will be fixed when we move to bookworm. See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=987818 for details. Update the packages while we are at it. Acked-by: Richard Henderson <richard.henderson@linaro.org> Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Message-Id: <20230630180423.558337-14-alex.bennee@linaro.org>
111 lines
3.3 KiB
Docker
111 lines
3.3 KiB
Docker
# THIS FILE WAS AUTO-GENERATED
|
|
#
|
|
# $ lcitool dockerfile --layers all --cross mingw64 fedora-38 qemu
|
|
#
|
|
# https://gitlab.com/libvirt/libvirt-ci
|
|
|
|
FROM registry.fedoraproject.org/fedora:38
|
|
|
|
RUN dnf install -y nosync && \
|
|
printf '#!/bin/sh\n\
|
|
if test -d /usr/lib64\n\
|
|
then\n\
|
|
export LD_PRELOAD=/usr/lib64/nosync/nosync.so\n\
|
|
else\n\
|
|
export LD_PRELOAD=/usr/lib/nosync/nosync.so\n\
|
|
fi\n\
|
|
exec "$@"\n' > /usr/bin/nosync && \
|
|
chmod +x /usr/bin/nosync && \
|
|
nosync dnf update -y && \
|
|
nosync dnf install -y \
|
|
bash \
|
|
bc \
|
|
bison \
|
|
bzip2 \
|
|
ca-certificates \
|
|
ccache \
|
|
ctags \
|
|
dbus-daemon \
|
|
diffutils \
|
|
findutils \
|
|
flex \
|
|
gcc \
|
|
gcovr \
|
|
git \
|
|
glib2-devel \
|
|
glibc-langpack-en \
|
|
hostname \
|
|
llvm \
|
|
make \
|
|
meson \
|
|
mtools \
|
|
ninja-build \
|
|
nmap-ncat \
|
|
openssh-clients \
|
|
pcre-static \
|
|
python3 \
|
|
python3-PyYAML \
|
|
python3-numpy \
|
|
python3-opencv \
|
|
python3-pillow \
|
|
python3-pip \
|
|
python3-sphinx \
|
|
python3-sphinx_rtd_theme \
|
|
sed \
|
|
socat \
|
|
sparse \
|
|
spice-protocol \
|
|
tar \
|
|
tesseract \
|
|
tesseract-langpack-eng \
|
|
util-linux \
|
|
which \
|
|
xorriso \
|
|
zstd && \
|
|
nosync dnf autoremove -y && \
|
|
nosync dnf clean all -y
|
|
|
|
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
|
|
ENV LANG "en_US.UTF-8"
|
|
ENV MAKE "/usr/bin/make"
|
|
ENV NINJA "/usr/bin/ninja"
|
|
ENV PYTHON "/usr/bin/python3"
|
|
|
|
RUN nosync dnf install -y \
|
|
mingw32-nsis \
|
|
mingw64-SDL2 \
|
|
mingw64-SDL2_image \
|
|
mingw64-bzip2 \
|
|
mingw64-curl \
|
|
mingw64-gcc \
|
|
mingw64-gcc-c++ \
|
|
mingw64-gettext \
|
|
mingw64-glib2 \
|
|
mingw64-gnutls \
|
|
mingw64-gtk3 \
|
|
mingw64-libepoxy \
|
|
mingw64-libgcrypt \
|
|
mingw64-libjpeg-turbo \
|
|
mingw64-libpng \
|
|
mingw64-libtasn1 \
|
|
mingw64-nettle \
|
|
mingw64-pixman \
|
|
mingw64-pkg-config && \
|
|
nosync dnf clean all -y && \
|
|
rpm -qa | sort > /packages.txt && \
|
|
mkdir -p /usr/libexec/ccache-wrappers && \
|
|
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/x86_64-w64-mingw32-c++ && \
|
|
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/x86_64-w64-mingw32-cc && \
|
|
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/x86_64-w64-mingw32-g++ && \
|
|
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/x86_64-w64-mingw32-gcc
|
|
|
|
ENV ABI "x86_64-w64-mingw32"
|
|
ENV MESON_OPTS "--cross-file=/usr/share/mingw/toolchain-mingw64.meson"
|
|
ENV QEMU_CONFIGURE_OPTS --cross-prefix=x86_64-w64-mingw32-
|
|
ENV DEF_TARGET_LIST x86_64-softmmu
|
|
# As a final step configure the user (if env is defined)
|
|
ARG USER
|
|
ARG UID
|
|
RUN if [ "${USER}" ]; then \
|
|
id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi
|