7ac17cb8b2
When flex is not available, binutils sources default to the 'missing' script, but the current script available is not in the format expected by the 'configure' script: $ ./configure ... /usr/src/binutils/missing: Unknown `--run' option Try `/usr/src/binutils/missing --help' for more information configure: WARNING: `missing' script is too old or missing ... checking for bison... bison -y checking for flex... no checking for lex... no checking for flex... /usr/src/binutils/missing flex $ make ... updating ldgram.h gcc -DHAVE_CONFIG_H -I. -I. -I. -D_GNU_SOURCE -I. -I. -I../bfd -I./../bfd -I./../include -I./../intl -I../intl -w -DLOCALEDIR="\"/usr/local/share/locale\"" -W -Wall -Wstrict-prototypes -Wmissing-prototypes -w -c `test -f 'ldgram.c' || echo './'`ldgram.c `test -f ldlex.l || echo './'`ldlex.l /bin/sh: 1: ldlex.l: not found make[3]: *** [Makefile:662: ldlex.c] Error 127 make[3]: Leaving directory '/usr/src/binutils/ld' make[2]: *** [Makefile:799: all-recursive] Error 1 By pass the 'missing' script use by directly installing 'flex' in the container. Reported-by: Peter Maydell <peter.maydell@linaro.org> Suggested-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> Message-Id: <20230112155643.7408-1-philmd@linaro.org> Reviewed-by: Bastian-Koppelmann <kbastian@mail.uni-paderborn.de> Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Message-Id: <20230124180127.1881110-14-alex.bennee@linaro.org>
48 lines
1.3 KiB
Docker
48 lines
1.3 KiB
Docker
#
|
|
# Docker TriCore cross-compiler target
|
|
#
|
|
# This docker target builds on the Debian Buster base image but
|
|
# doesn't inherit from the common one to avoid bringing in unneeded
|
|
# dependencies.
|
|
#
|
|
# Copyright (c) 2018 Philippe Mathieu-Daudé
|
|
#
|
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
|
#
|
|
FROM docker.io/library/debian:buster-slim
|
|
|
|
MAINTAINER Philippe Mathieu-Daudé <f4bug@amsat.org>
|
|
|
|
RUN apt update && \
|
|
DEBIAN_FRONTEND=noninteractive apt install -yy eatmydata && \
|
|
DEBIAN_FRONTEND=noninteractive eatmydata apt install -yy \
|
|
bison \
|
|
bzip2 \
|
|
ca-certificates \
|
|
ccache \
|
|
flex \
|
|
g++ \
|
|
gcc \
|
|
git \
|
|
libglib2.0-dev \
|
|
libpixman-1-dev \
|
|
locales \
|
|
make \
|
|
ninja-build \
|
|
pkgconf \
|
|
python3-pip \
|
|
python3-setuptools \
|
|
python3-wheel
|
|
|
|
RUN git clone --single-branch \
|
|
https://github.com/bkoppelmann/tricore-binutils.git \
|
|
/usr/src/binutils && \
|
|
cd /usr/src/binutils && chmod +x missing && \
|
|
CFLAGS=-w ./configure --prefix=/usr/local --disable-nls --target=tricore && \
|
|
make && make install && \
|
|
rm -rf /usr/src/binutils
|
|
|
|
# This image can only build a very minimal QEMU as well as the tests
|
|
ENV DEF_TARGET_LIST tricore-softmmu
|
|
ENV QEMU_CONFIGURE_OPTS --disable-user --disable-tools --disable-fdt
|