Add Ubuntu 26 builder image and CI jobs

GCC 15 default on Ubuntu 26.04

Ubuntu 26.04 ships gcc 15 by default, but the maximum gcc version we currently support is 14. The builder image uses update-alternatives to switch to gcc 14 so that all components compile with a supported toolchain. The libtensorflow_lite patches (standard-ints, abseil, flatbuffers) are also applied for Ubuntu 26.04, matching the existing pattern for Debian 13 and AlmaLinux 10.

glibc 2.42+ const-correct strchr() family

Ubuntu 26.04 ships glibc 2.42+, which makes the strchr() family of functions const-correct under _GNU_SOURCE (i.e. they return const char * when given a const char * argument). This causes build failures in krb5 1.22.1 where char *cp = strchr(...) assignments now produce -Werror=discarded-qualifiers errors. A patch (config/patches/krb5/krb5-1.22.1-glibc-const-string.patch) adds explicit (char *) casts to the three affected call sites in ccbase.c, expand_path.c, and locate_kdc.c.

Verification

A build passed in omnibus-gitlab!9405 (merged) with

BUILDER_IMAGE_REGISTRY        = registry.gitlab.com/gitlab-org/gitlab-omnibus-builder/staging
PUBLIC_BUILDER_IMAGE_REGISTRY = registry.gitlab.com/gitlab-org/gitlab-omnibus-builder/staging
BUILDER_IMAGE_REVISION        = lucas-ubuntu-26-builder

I've run a smoke test on a Ubuntu 26 machine without any issues.

Related: omnibus-gitlab#9819 (closed)

Edited by Lucas Li

Merge request reports

Loading
Loading