aboutsummaryrefslogtreecommitdiff
path: root/tools/docker/Dockerfile
AgeCommit message (Collapse)AuthorFilesLines
2023-07-20buildman: Switch ARC toolchain to the upstream versionAlexey Brodkin1-2/+1
Back in the day we relied a lot on Synopsys own build of the GNU tools for ARC processors, but since then we worked hard on getting all our changes upstream and for a couple of years now we have ARCompact (AKA ARCv1) and ARCv2 processors supported very well in upstream GCC, Binutils, GDB etc. And so there's no need to use Synopsys forks any longer, thus we remove all the references to that form and use upstream components as majority of other architectures in U-Boot. Thanks to Tom for pointing to that left-over! Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com> Cc: Simon Glass <sjg@chromium.org> Cc: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2023-07-20CI: Update to QEMU 8.0.3Tom Rini1-3/+2
Move up to the latest tagged release of QEMU Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2023-07-20tools/docker: Dockerfile: Don't specify dtc submoduleTom Rini1-1/+0
When building qemu, all required submodules (of which we need more than just dtc) are handled automatically. Currently trying to init the submodule the way we do results in a git failure. Reported-by: Alexey Brodkin <Alexey.Brodkin@synopsys.com> Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2023-04-04Dockerfile: add mkbootimg toolWIP/2023-04-04-android-image-v3-v4-supportSafae Ouajih1-0/+4
mkbootimg tool is part of the Android project and it is used to pack Android boot images such as boot image and vendor_boot image. Use the following command to run mkbootimg: $ python3 -m mkbootimg Add mkbootimg to the docker file Signed-off-by: Safae Ouajih <souajih@baylibre.com> Tested-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
2023-04-04CI: Move to clang-16WIP/2023-04-04-update-to-clang-16Tom Rini1-2/+2
As this is now the stable release, move to using that now for our tests. Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2023-04-04Dockerfile: Populate a pip cacheTom Rini1-0/+11
Given the number of jobs in CI we have which use python and pip install packages, we should do this once in the Dockerfile, in order to populate the cache. We let each job continue to create and use the virtual environments they need to facilitate making updates to these environments easier. Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2023-03-21Dockerfile: Update to latest "Jammy" tagTom Rini1-1/+1
Update to using the latest "Jammy" tag as our base. Signed-off-by: Tom Rini <trini@konsulko.com>
2023-03-21Dockerfile: Add m68k-softmmu to qemuTom Rini1-1/+1
Given efforts to add an m68k target to CI, build qemu for it. Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2023-02-27Dockerfile: Add missing "chmod" of u-boot-gen-combinedTom Rini1-0/+1
I had added this line locally, rebuild the image, but didn't ensure that I had committed the correct version of the patch as well. Fixes: 75b031ee4a96 ("Dockerfile: download binaries for Nokia RX-51") Signed-off-by: Tom Rini <trini@konsulko.com>
2023-02-24Dockerfile: build qemu for Nokia n900Heinrich Schuchardt1-0/+21
Using a pre-built QEMU saves a lot of time when testing. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2023-02-24Dockerfile: download binaries for Nokia RX-51Heinrich Schuchardt1-0/+9
Downloading files for a test may fail if the server is offline. It is preferable to provide the files in our Docker image. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2023-02-11CI, Docker: Update to Jammy 2023016 tagTom Rini1-1/+1
Move to the latest tag for "Jammy" and rebuild the containers. Signed-off-by: Tom Rini <trini@konsulko.com>
2023-02-11Docker: Support trace-cmdSimon Glass1-0/+16
Build trace-cmd as part of the docker image, so that trace tests can be used. Unfortunately the version provided by distributions is a little old and has bugs. It also does not support specifying the time base for the trace, which is required to convert microseconds to nanaseconds. Signed-off-by: Simon Glass <sjg@chromium.org>
2023-02-11Dockerfile: Update QEMU git locationTom Rini1-1/+1
Per https://www.qemu.org/contribute/ the official location of the QEMU sources are https://gitlab.com/qemu-project/qemu.git Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Rini <trini@konsulko.com>
2023-01-11CI/Docker: Update to jammy-20221130 tagTom Rini1-1/+2
Update to the latest "jammy" tag. This requires us to list libc6-i386 as a required package to install (for nokia_rx51 tests) that was previously implicit. Signed-off-by: Tom Rini <trini@konsulko.com>
2023-01-11Dockerfile: add package texinfoHeinrich Schuchardt1-0/+1
In preparation of adding the infodocs target to our CI install the prerequisite texinfo software package. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2022-12-06CI: Update to gcc-12.2Tom Rini1-31/+34
- Update to gcc-12.2, and cherry-pick a fix in grub for risc-v Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2022-10-17docker: Install pyelftools for buildsSimon Glass1-0/+1
Binman needs this module to build sandbox_vpl and it is needed elsewhere in CI. Add it to the docker file. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Heinrich Schuchardt <xpyron.glpk@gmx.de>
2022-10-07docker: install riscv32 toolchainHeinrich Schuchardt1-2/+2
For building riscv32 targets we should use the riscv32 toolchain. Add it to the Docker image. Drop the riscv toolchain-alias as we do not need it in future. While in here, update to the latest "jammy" tag. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Rick Chen <rick@andestech.com> [trini: Update to latest jammy tag] Signed-off-by: Tom Rini <trini@konsulko.com>
2022-08-22CI: Move to Ubuntu 2022.04 "Jammy" for CI baseTom Rini1-12/+2
- We now have a new enough sbsigntools in the distro, stop building. - Use the 20220801 tag for Jammy. - Move to pygit2 1.9.2 (current version) as the old one doesn't build on "Jammy". - Add the working directory to the list of safe directories for git. - Move to pytest 6.2.5 to address other issues. - This move exposed a number of minor issues in the existing scripts we used within CI to perform the jobs themselves. The most notable changes here involve using 'set +e / set -e' to enforce when we should or should not make non-zero buildman status be a fatal error. Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2022-04-25nds32: Remove the architectureWIP/25Apr2022Tom Rini1-2/+0
As removal of nds32 has been ack'd for the Linux kernel, remove support here as well. Cc: Rick Chen <rick@andestech.com> Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Rick Chen <rick@andestech.com>
2022-03-15test/py: Add tests for the erofsWIP/2022-03-15-add-erofs-supportHuang Jianan1-0/+1
Add Python scripts to test 'ls' and 'load' commands, as well as test related filesystem functions. Signed-off-by: Huang Jianan <jnhuang95@gmail.com>
2022-03-15CI, Docker: Update to latest focal tagTom Rini1-1/+1
Signed-off-by: Tom Rini <trini@konsulko.com>
2022-02-03Dockfile, CI: Update to latest focal tag and buildTom Rini1-1/+1
- Latest focal tag - Add libgnutls to image Signed-off-by: Tom Rini <trini@konsulko.com>
2022-02-03Dockerfile: Add libgnutls package for building mkeficapsule commandAKASHI Takahiro1-0/+2
For adding signing feature for capsule authentication to the host tool, mkeficapsule, we will link gnutls library for crypto operation. Since we need this command to complete the capsule authentication test on sandbox in CI loop, necessary packages must be installed on the host. See my patch, "tools: mkeficapsule: add firmware image signing." Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
2022-01-12CI, Dockerfile: Update to latest "focal" tagTom Rini1-1/+1
Bring us to the focal-20220105 tag and rebuild our images on top of this. Signed-off-by: Tom Rini <trini@konsulko.com>
2021-11-14Dockerfile, CI: Update to latest "focal" tagWIP/14Nov2021Tom Rini1-1/+1
Signed-off-by: Tom Rini <trini@konsulko.com>
2021-11-14Dockerfile: build swtpmHeinrich Schuchardt1-0/+28
For testing the TPM drivers and the EFI_TCG2_PROTOCOL we need the tool swtpm. Once we move to Ubuntu Impish we can take libtpms from package libtpms-dev. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2021-10-14CI: Update to LLVM-13Tom Rini1-3/+3
- Switch sources and CI scripts to install and use LLVM-13 - Update to latest "focal" tag. Signed-off-by: Tom Rini <trini@konsulko.com>
2021-09-11tools: docker: Build and install genimageBin Meng1-0/+9
genimage [1] is a tool to create flash/disk images. This is required by some targets, e.g.: sifive_unleashed, to generate sdcard or spi-nor images for real hardware, as well as U-Boot CI testing. [1] https://github.com/pengutronix/genimage Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Tom Rini <trini@konsulko.com>
2021-09-11tools: docker: Bump up QEMU version to 6.1.0Bin Meng1-1/+7
At present U-Boot CI testing is still using QEMU 4.2.0 which is pretty old. Let's bump up to QEMU 6.1.0. ninja-build is added as the prerequisite required by QEMU 6.1.0. Note there is a bug in QEMU 6.1.0 Xilinx Zynq UART emulation codes. A quick fix [1] was posted on QEMU mailing list but it it too late for 6.1.0 release. Let's manually apply the bug fix on top of the v6.1.0 release tag at the time being. [1] http://patchwork.ozlabs.org/project/qemu-devel/patch/20210823020813.25192-2-bmeng.cn@gmail.com/ Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Tom Rini <trini@konsulko.com>
2021-09-11Dockerfile: Update to latest "focal" tagTom Rini1-1/+1
Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Signed-off-by: Tom Rini <trini@konsulko.com>
2021-08-04CI: Update to LLVM-12WIP/04Aug2021Tom Rini1-3/+3
The current stable release of LLVM is 12, update to that. While at it, fix that we had not correctly upgraded to LLVM 11 previously. Signed-off-by: Tom Rini <trini@konsulko.com>
2021-07-07Azure/GitLab: Move to gcc-11.1.0 and LLVM-11WIP/2021-07-06-update-to-gcc11-clang11Tom Rini1-51/+34
- Move to gcc-11.1.0 builds from kernel.org for supported platforms and LLVM-11 for those tests. - As Heinrich has noted, the RISC-V platform specification has a profile OS-A for running rich operating systems like Linux and BSD. This profile requires 64bit and UEFI conforming to the EBBR. Only the 'embedded' profile may use 32bit. Given this, drop grub for 32bit RISC-V as it no longer compiles with gcc-11.1 and upstream is unlikely to fix it: https://www.mail-archive.com/grub-devel@gnu.org/msg30736.html - Update to grub-2.06 release to address other issues of building with gcc-11.1. - Update to newer Xtensa (gcc-9.2.0) and ARC (gcc-10.2) toolchains Cc: Heinrich Schuchardt <xypron.glpk@gmx.de> Cc: Bin Meng <bmeng.cn@gmail.com> Cc: Simon Glass <sjg@chromium.org> Cc: Rick Chen <rick@andestech.com> Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2021-07-05Docker/CI: Update to "focal" and latest buildTom Rini1-11/+9
Move us up to being based on Ubuntu 20.04 "focal" and the latest tag from Ubuntu for this release. For this, we make sure that "python" is now python3 but still include python2.7 for the rx51 qemu build as that is very old and does not support python3. Signed-off-by: Tom Rini <trini@konsulko.com>
2021-07-05tools: docker: Install a readable kernel for libguestfs-toolsAlper Nebi Yasak1-0/+4
The filesystem and EFI (capsule and secure boot) test setups try to use guestmount and virt-make-fs respectively to prepare disk images to run tests on. However, these libguestfs tools need a kernel image and fail with the following message (revealed in debug/trace mode) if it can't find one: supermin: failed to find a suitable kernel (host_cpu=x86_64). I looked for kernels in /boot and modules in /lib/modules. If this is a Xen guest, and you only have Xen domU kernels installed, try installing a fullvirt kernel (only for supermin use, you shouldn't boot the Xen guest with it). This failure then causes these tests to be skipped in CIs. Install a kernel package in the Docker containers so the CIs can run these tests with libguestfs tools again (assuming the container is run with necessary host devices and privileges). As this kernel would be only used for virtualization, we can use the kernel package specialized for that. On Ubuntu systems kernel images are not readable by non-root users, so explicitly add read permissions with chmod as well. Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com> Acked-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2021-04-07tools: Integrate the Dockerfile used for CITom Rini1-0/+203
Integrate the Dockerfile from https://source.denx.de/u-boot/gitlab-ci-runner.git as of commit bc6130d572f1 ("Dockerfile: Remove high UID/GID") and introduce a short rST on how to build the container. Cc: Heinrich Schuchardt <xypron.glpk@gmx.de> Signed-off-by: Tom Rini <trini@konsulko.com>