All gitlab runners are currently amd64 machines. This series attempts to create a docker image which can also support arm64 so that sandbox tests can be run on it.
The TARGET_... environment variables for grub could perhaps be adjusted, using the new variables, but I have not done that for now. Currently this builds OK on amd64 but fails when built on arm64, in grub on arm64-efi: 2022.6 gcc -DHAVE_CONFIG_H -I. -I../../.. -D_FILE_OFFSET_BITS=64 -MT argp-pvh.o -MD -MP -MF $depbase.Tpo -c -o argp-pvh.o argp-pvh.c &&\ 2022.6 mv -f $depbase.Tpo $depbase.Po 2023.0 gcc: internal compiler error: Segmentation fault signal terminated program cc1 2023.0 Please submit a full bug report, 2023.0 with preprocessed source if appropriate. 2023.0 See <file:///usr/share/doc/gcc-11/README.Bugs> for instructions. 2023.0 make[4]: *** [Makefile:1714: argp-pvh.o] Error 4 Perhaps this doesn't matter, though, at least for now. Changes in v3: - Move ARGs to the top - Revise documentation to explain a common error and building on arm64 - Use grub-efi and linux-image-generic for both archs - Add patch to install toolchains on arm64 host - Drop patches which remove grub and tracing for arm64 Changes in v2: - Drop message about EFI_LOADER - Use '\0' instead of 0 - Update docs also - Add comments to the ARG variables - Swap order so that amd64 is the exception Simon Glass (9): sandbox: efi_loader: Correct use of addresses as pointers test: Adjust print_ut test to use unsigned char docker: Support building for multiple architectures docker: Adjust packages for arm64 docker: Drop coreboot for arm64 docker: Fix LegacyKeyValueFormat warning with PYTHONPATH docker: Install toolchains on arm64 host CI: Add platform variable WIP: CI: Update for arm64 .gitlab-ci.yml | 11 ++-- arch/sandbox/cpu/cache.c | 8 ++- doc/build/docker.rst | 25 ++++++++-- drivers/remoteproc/rproc-elf-loader.c | 18 ++++--- lib/efi_loader/efi_image_loader.c | 3 +- test/print_ut.c | 8 +-- tools/docker/Dockerfile | 72 +++++++++++++++++++-------- 7 files changed, 104 insertions(+), 41 deletions(-) -- 2.34.1