Merge branch 'mnowak/support-cross-compilation-on-buster-v9_16' into 'v9_16'

[v9_16] Add 32-bit cross-compiled CI jobs on Debian Buster

See merge request isc-projects/bind9!5291
This commit is contained in:
Michal Nowak
2021-07-21 10:02:08 +00:00

View File

@@ -63,11 +63,6 @@ stages:
- linux
- amd64
.linux-i386: &linux_i386
tags:
- linux
- i386
.linux-stress-amd64: &linux_stress_amd64
tags:
- amd64
@@ -122,14 +117,14 @@ stages:
image: "$CI_REGISTRY_IMAGE:debian-buster-amd64"
<<: *linux_amd64
.debian-buster-amd64cross32: &debian_buster_amd64cross32_image
image: "$CI_REGISTRY_IMAGE:debian-buster-amd64cross32"
<<: *linux_amd64
.debian-sid-amd64: &debian_sid_amd64_image
image: "$CI_REGISTRY_IMAGE:debian-sid-amd64"
<<: *linux_amd64
.debian-sid-i386: &debian_sid_i386_image
image: "$CI_REGISTRY_IMAGE:debian-sid-i386"
<<: *linux_i386
# openSUSE Tumbleweed
.tumbleweed-latest-amd64: &tumbleweed_latest_amd64_image
@@ -254,6 +249,9 @@ stages:
- test -z "${RUN_MAKE_INSTALL}" || make DESTDIR="${INSTALL_PATH}" install
- test -z "${RUN_MAKE_INSTALL}" || DESTDIR="${INSTALL_PATH}" sh util/check-make-install
- if [[ "${CFLAGS}" == *"-fsanitize=address"* ]]; then ( ! grep -F AddressSanitizer config.log ); fi
- test -z "${CROSS_COMPILATION}" || grep -F -A 1 "checking whether we are cross compiling" config.log | grep -q "result.*yes"
- test -z "${CROSS_COMPILATION}" || file lib/dns/gen | grep -F -q "ELF 64-bit LSB"
- test -z "${CROSS_COMPILATION}" || ( ! git ls-files -z --others --exclude lib/dns/gen | xargs -0 file | grep "ELF 64-bit LSB" )
needs:
- job: autoreconf
artifacts: true
@@ -688,6 +686,33 @@ unit:gcc:buster:amd64:
- job: gcc:buster:amd64
artifacts: true
# Jobs for cross-compiled GCC builds on Debian 10 "buster" (amd64) with
# 32-bit libraries
gcc:buster:amd64cross32:
variables:
BUILD_CC: gcc
BUILD_CFLAGS: "${CFLAGS_COMMON}"
CFLAGS: "${CFLAGS_COMMON}"
CROSS_COMPILATION: 1
EXTRA_CONFIGURE: "--build=x86_64-linux-gnu --host=i686-linux-gnu --with-libidn2"
<<: *debian_buster_amd64cross32_image
<<: *build_job
system:gcc:buster:amd64cross32:
<<: *debian_buster_amd64cross32_image
<<: *system_test_job
needs:
- job: gcc:buster:amd64cross32
artifacts: true
unit:gcc:buster:amd64cross32:
<<: *debian_buster_amd64cross32_image
<<: *unit_test_job
needs:
- job: gcc:buster:amd64cross32
artifacts: true
# Jobs for scan-build builds on Debian 10 "buster" (amd64)
.scan_build: &scan_build
@@ -801,30 +826,6 @@ unit:gcc:tarball:
- job: gcc:tarball
artifacts: true
# Jobs for regular GCC builds on Debian "sid" (i386)
gcc:sid:i386:
variables:
CC: gcc
CFLAGS: "${CFLAGS_COMMON}"
EXTRA_CONFIGURE: "--with-libidn2 --without-python"
<<: *debian_sid_i386_image
<<: *build_job
system:gcc:sid:i386:
<<: *debian_sid_i386_image
<<: *system_test_job
needs:
- job: gcc:sid:i386
artifacts: true
unit:gcc:sid:i386:
<<: *debian_sid_i386_image
<<: *unit_test_job
needs:
- job: gcc:sid:i386
artifacts: true
# Jobs for debug GCC builds on openSUSE Tumbleweed (amd64)
gcc:tumbleweed:amd64:
@@ -1165,7 +1166,6 @@ unit:clang:freebsd12:amd64:
clang:freebsd13:amd64:
variables:
CFLAGS: "${CFLAGS_COMMON}"
EXTRA_CONFIGURE: "${WITH_READLINE_LIBEDIT}"
USER: gitlab-runner
<<: *freebsd_13_amd64_image
<<: *build_job