Provide an armv7 docker environment to build and test the sandbox.

Signed-off-by: Heinrich Schuchardt <heinrich.schucha...@canonical.com>
---
I have been discussing with Simon, if we can test sandbox_defconfig
build on arm in a docker container. This RFC is just a small step on
the path to it.
---
 tools/docker.arm/Dockerfile | 104 ++++++++++++++++++++++++++++++++++++
 1 file changed, 104 insertions(+)
 create mode 100644 tools/docker.arm/Dockerfile

diff --git a/tools/docker.arm/Dockerfile b/tools/docker.arm/Dockerfile
new file mode 100644
index 0000000000..9d754da353
--- /dev/null
+++ b/tools/docker.arm/Dockerfile
@@ -0,0 +1,104 @@
+# SPDX-License-Identifier: GPL-2.0+
+# This Dockerfile is used to build an image for runing the U-Boot sandbox on
+# the armv7 architecture.
+
+FROM 
ubuntu:jammy-20221003@sha256:60c321f2700325103a0c185adeadfd5a93dbb3cd67dfbdd5b79a8aafa38325c2
+
+ENV DEBIAN_FRONTEND=noninteractive
+
+# Update and install things from apt now
+RUN apt-get update && apt-get install -y \
+       automake \
+       autopoint \
+       bc \
+       binutils-dev \
+       bison \
+       build-essential \
+       clang-13 \
+       coreutils \
+       cpio \
+       cppcheck \
+       curl \
+       device-tree-compiler \
+       dosfstools \
+       e2fsprogs \
+       efitools \
+       erofs-utils \
+       expect \
+       fakeroot \
+       flex \
+       gawk \
+       gdisk \
+       git \
+       gnu-efi \
+       gnutls-dev \
+       graphviz \
+       grub-efi-arm-bin \
+       help2man \
+       iasl \
+       imagemagick \
+       iputils-ping \
+       libconfuse-dev \
+       libgit2-dev \
+       libjson-glib-dev \
+       libguestfs-tools \
+       libgnutls28-dev \
+       libgnutls30 \
+       liblz4-tool \
+       libpixman-1-dev \
+       libpython3-dev \
+       libsdl1.2-dev \
+       libsdl2-dev \
+       libseccomp-dev \
+       libssl-dev \
+       libtool \
+       libudev-dev \
+       libusb-1.0-0-dev \
+       linux-image-generic \
+       lzma-alone \
+       lzop \
+       mount \
+       mtd-utils \
+       mtools \
+       net-tools \
+       ninja-build \
+       openssl \
+       picocom \
+       parted \
+       pkg-config \
+       python-is-python3 \
+       python2.7 \
+       python3 \
+       python3-dev \
+       python3-pip \
+       python3-sphinx \
+       python3-virtualenv \
+       rpm2cpio \
+       sbsigntool \
+       sloccount \
+       socat \
+       softhsm2 \
+       sparse \
+       srecord \
+       sudo \
+       swig \
+       util-linux \
+       uuid-dev \
+       virtualenv \
+       xxd \
+       zip \
+       && rm -rf /var/lib/apt/lists/*
+
+# Make kernels readable for libguestfs tools to work correctly
+RUN chmod +r /boot/vmlinu*
+
+# Create our user/group
+RUN echo uboot ALL=NOPASSWD: ALL > /etc/sudoers.d/uboot
+RUN useradd -m -U uboot
+USER uboot:uboot
+
+# Create the buildman config file
+RUN /bin/echo -e "[toolchain]\nroot = /usr" > ~/.buildman
+RUN /bin/echo -e "\n[toolchain-prefix]" >> ~/.buildman
+RUN /bin/echo -e "\n[toolchain-alias]" >> ~/.buildman
+RUN /bin/echo -e "\nsandbox = arm" >> ~/.buildman
-- 
2.37.2

Reply via email to