From 188916bd060e09fbbc1b3911516cd1f49b0291fd Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Wed, 13 May 2020 11:54:04 -0700 Subject: [PATCH] ci: Move cross file generation to a shared script. We're going to do this in another container soon, and it would also be nice to consolidate cmake cross setup. Reviewed-by: Christian Gmeiner Reviewed-by: Tomeu Vizoso Part-of: --- .gitlab-ci.yml | 4 ++-- .gitlab-ci/container/arm_build.sh | 7 +------ .gitlab-ci/container/x86_build.sh | 12 +----------- .gitlab-ci/create-cross-file.sh | 13 +++++++++++++ 4 files changed, 17 insertions(+), 19 deletions(-) create mode 100755 .gitlab-ci/create-cross-file.sh diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 62dccc6f34a..863d0ec9864 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -136,7 +136,7 @@ x86_build: - .fdo.container-build@debian - .container variables: - FDO_DISTRIBUTION_TAG: &x86_build "2020-05-18" + FDO_DISTRIBUTION_TAG: &x86_build "2020-05-18-baremetal" .use-x86_build: variables: @@ -177,7 +177,7 @@ arm_build: - .fdo.container-build@debian@arm64v8 - .container variables: - FDO_DISTRIBUTION_TAG: &arm_build "2020-05-01-netcat" + FDO_DISTRIBUTION_TAG: &arm_build "2020-05-14-baremetal" .use-arm_build: variables: diff --git a/.gitlab-ci/container/arm_build.sh b/.gitlab-ci/container/arm_build.sh index 74ecd2b1296..0d09497ceef 100644 --- a/.gitlab-ci/container/arm_build.sh +++ b/.gitlab-ci/container/arm_build.sh @@ -64,12 +64,7 @@ rm -rf $LIBDRM_VERSION ############### Generate cross build file for Meson -cross_file="/cross_file-armhf.txt" -/usr/share/meson/debcrossgen --arch armhf -o "$cross_file" -# Explicitly set ccache path for cross compilers -sed -i "s|/usr/bin/\([^-]*\)-linux-gnu\([^-]*\)-g|/usr/lib/ccache/\\1-linux-gnu\\2-g|g" "$cross_file" -# Don't need wrapper for armhf executables -sed -i -e '/\[properties\]/a\' -e "needs_exe_wrapper = False" "$cross_file" +. .gitlab-ci/create-cross-file.sh armhf ############### Generate kernel, ramdisk, test suites, etc for LAVA jobs diff --git a/.gitlab-ci/container/x86_build.sh b/.gitlab-ci/container/x86_build.sh index d9c88abf220..64e1e488aea 100644 --- a/.gitlab-ci/container/x86_build.sh +++ b/.gitlab-ci/container/x86_build.sh @@ -154,17 +154,7 @@ chmod +x /usr/local/bin/x86_64-w64-mingw32-pkg-config # Generate cross build files for Meson for arch in $CROSS_ARCHITECTURES; do - cross_file="/cross_file-$arch.txt" - /usr/share/meson/debcrossgen --arch "$arch" -o "$cross_file" - # Explicitly set ccache path for cross compilers - sed -i "s|/usr/bin/\([^-]*\)-linux-gnu\([^-]*\)-g|/usr/lib/ccache/\\1-linux-gnu\\2-g|g" "$cross_file" - if [ "$arch" = "i386" ]; then - # Work around a bug in debcrossgen that should be fixed in the next release - sed -i "s|cpu_family = 'i686'|cpu_family = 'x86'|g" "$cross_file" - fi - - # Rely on qemu-user being configured in binfmt_misc on the host - sed -i -e '/\[properties\]/a\' -e "needs_exe_wrapper = False" "$cross_file" + . .gitlab-ci/create-cross-file.sh $arch done diff --git a/.gitlab-ci/create-cross-file.sh b/.gitlab-ci/create-cross-file.sh new file mode 100755 index 00000000000..de2fba5f4dd --- /dev/null +++ b/.gitlab-ci/create-cross-file.sh @@ -0,0 +1,13 @@ +#!/bin/bash + +arch=$1 +cross_file="/cross_file-$arch.txt" +/usr/share/meson/debcrossgen --arch $arch -o "$cross_file" +# Explicitly set ccache path for cross compilers +sed -i "s|/usr/bin/\([^-]*\)-linux-gnu\([^-]*\)-g|/usr/lib/ccache/\\1-linux-gnu\\2-g|g" "$cross_file" +if [ "$arch" = "i386" ]; then + # Work around a bug in debcrossgen that should be fixed in the next release + sed -i "s|cpu_family = 'i686'|cpu_family = 'x86'|g" "$cross_file" +fi +# Rely on qemu-user being configured in binfmt_misc on the host +sed -i -e '/\[properties\]/a\' -e "needs_exe_wrapper = False" "$cross_file" -- 2.30.2