mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2024-11-08 18:36:17 +01:00
Merge branch 'update-ci' into 'main'
ci: Update CI images to latest stable Debian and Fedora, bump Meson dependency to 0.52 See merge request GNOME/glib!2287
This commit is contained in:
commit
6163c2c3fe
@ -10,11 +10,11 @@ cache:
|
||||
- _ccache/
|
||||
|
||||
variables:
|
||||
FEDORA_IMAGE: "registry.gitlab.gnome.org/gnome/glib/fedora:v11"
|
||||
COVERITY_IMAGE: "registry.gitlab.gnome.org/gnome/glib/coverity:v1"
|
||||
DEBIAN_IMAGE: "registry.gitlab.gnome.org/gnome/glib/debian-stable:v8"
|
||||
ANDROID_IMAGE: "registry.gitlab.gnome.org/gnome/glib/android-ndk:v4"
|
||||
MINGW_IMAGE: "registry.gitlab.gnome.org/gnome/glib/mingw:v3"
|
||||
FEDORA_IMAGE: "registry.gitlab.gnome.org/gnome/glib/fedora:v12"
|
||||
COVERITY_IMAGE: "registry.gitlab.gnome.org/gnome/glib/coverity:v2"
|
||||
DEBIAN_IMAGE: "registry.gitlab.gnome.org/gnome/glib/debian-stable:v9"
|
||||
ANDROID_IMAGE: "registry.gitlab.gnome.org/gnome/glib/android-ndk:v5"
|
||||
MINGW_IMAGE: "registry.gitlab.gnome.org/gnome/glib/mingw:v4"
|
||||
MESON_TEST_TIMEOUT_MULTIPLIER: 2
|
||||
G_MESSAGES_DEBUG: all
|
||||
MESON_COMMON_OPTIONS_NO_WARNING: "--buildtype debug --wrap-mode=nodownload"
|
||||
@ -68,7 +68,7 @@ fedora-x86_64:
|
||||
CFLAGS: "-coverage -ftest-coverage -fprofile-arcs"
|
||||
script:
|
||||
# FIXME: Cannot use MESON_COMMON_OPTIONS here because meson warns about gtkdoc
|
||||
# feature introduced in 0.52 but we only depends on 0.49. So we cannot build
|
||||
# feature fully functional in 0.54, but we only depend on 0.52. So we cannot build
|
||||
# with --fatal-meson-warnings.
|
||||
- meson ${MESON_COMMON_OPTIONS_NO_WARNING}
|
||||
--werror
|
||||
@ -270,10 +270,7 @@ cross-android_api21_arm64:
|
||||
# FIXME: add --werror
|
||||
# We use -Diconv=auto to test that we successfully detect that iconv is not
|
||||
# provided by android api 21, and detect the external iconv instead.
|
||||
# FIXME: Work around a bug in Meson 0.49 where --wrap-mode=nodownload also
|
||||
# disables fallback subprojects, by passing --wrap-mode=default. Fixed in
|
||||
# Meson commit 47b9c1a564756ac48a55da9a7c4d91787399c645
|
||||
- meson ${MESON_COMMON_OPTIONS} --cross-file=/opt/cross_file_android_arm64_21.txt -Diconv=auto --wrap-mode=default _build
|
||||
- meson ${MESON_COMMON_OPTIONS} --cross-file=/opt/cross_file_android_arm64_21.txt -Diconv=auto _build
|
||||
- ninja -C _build
|
||||
|
||||
cross-android_api28_arm64:
|
||||
@ -281,10 +278,7 @@ cross-android_api28_arm64:
|
||||
image: $ANDROID_IMAGE
|
||||
script:
|
||||
# FIXME: add --werror
|
||||
# FIXME: Work around a bug in Meson 0.49 where --wrap-mode=nodownload also
|
||||
# disables fallback subprojects, by passing --wrap-mode=default. Fixed in
|
||||
# Meson commit 47b9c1a564756ac48a55da9a7c4d91787399c645
|
||||
- meson ${MESON_COMMON_OPTIONS} --cross-file=/opt/cross_file_android_arm64_28.txt --wrap-mode=default _build
|
||||
- meson ${MESON_COMMON_OPTIONS} --cross-file=/opt/cross_file_android_arm64_28.txt _build
|
||||
- ninja -C _build
|
||||
|
||||
cross-mingw64:
|
||||
@ -292,10 +286,7 @@ cross-mingw64:
|
||||
image: $MINGW_IMAGE
|
||||
script:
|
||||
# FIXME: Add --werror
|
||||
# FIXME: Work around a bug in Meson 0.49 where --wrap-mode=nodownload also
|
||||
# disables fallback subprojects, by passing --wrap-mode=default. Fixed in
|
||||
# Meson commit 47b9c1a564756ac48a55da9a7c4d91787399c645
|
||||
- meson ${MESON_COMMON_OPTIONS} --cross-file=/opt/cross_file_mingw64.txt --wrap-mode=default _build
|
||||
- meson ${MESON_COMMON_OPTIONS} --cross-file=/opt/cross_file_mingw64.txt _build
|
||||
- ninja -C _build
|
||||
artifacts:
|
||||
reports:
|
||||
@ -441,7 +432,7 @@ macos:
|
||||
needs: []
|
||||
before_script:
|
||||
- bash .gitlab-ci/show-execution-environment.sh
|
||||
- pip3 install --user meson==0.49.2
|
||||
- pip3 install --user meson==0.52.0
|
||||
- pip3 install --user ninja
|
||||
- export PATH=/Users/gitlabrunner/Library/Python/3.7/bin:$PATH
|
||||
script:
|
||||
@ -556,8 +547,9 @@ dist-job:
|
||||
only:
|
||||
- tags
|
||||
script:
|
||||
# FIXME: Cannot use --fatal-meson-warnings here because meson warns about gtkdoc
|
||||
# feature introduced in 0.52 but we only depends on 0.49.
|
||||
# FIXME: Cannot use MESON_COMMON_OPTIONS here because meson warns about gtkdoc
|
||||
# feature fully functional in 0.54, but we only depend on 0.52. So we cannot build
|
||||
# with --fatal-meson-warnings.
|
||||
- meson ${MESON_COMMON_OPTIONS_NO_WARNING} --buildtype release -Dgtk_doc=true -Dman=true _build
|
||||
- cd _build
|
||||
- ninja dist
|
||||
|
@ -1,4 +1,4 @@
|
||||
FROM fedora:31
|
||||
FROM fedora:33
|
||||
|
||||
RUN dnf -y install \
|
||||
autoconf \
|
||||
@ -64,7 +64,7 @@ RUN ./android-setup-env.sh arm64 21
|
||||
RUN ./android-setup-env.sh arm64 28
|
||||
RUN rm -rf $ANDROID_NDK_PATH
|
||||
|
||||
RUN pip3 install meson==0.49.2
|
||||
RUN pip3 install meson==0.52.0
|
||||
|
||||
ARG HOST_USER_ID=5555
|
||||
ENV HOST_USER_ID ${HOST_USER_ID}
|
||||
|
@ -1,9 +1,9 @@
|
||||
FROM registry.gitlab.gnome.org/gnome/glib/fedora:v9
|
||||
FROM registry.gitlab.gnome.org/gnome/glib/fedora:v12
|
||||
|
||||
ARG COVERITY_SCAN_PROJECT_NAME
|
||||
ARG COVERITY_SCAN_TOKEN
|
||||
|
||||
RUN curl https://scan.coverity.com/download/linux64 \
|
||||
RUN curl https://scan.coverity.com/download/cxx/linux64 \
|
||||
-o /tmp/cov-analysis-linux64.tgz \
|
||||
--form project="${COVERITY_SCAN_PROJECT_NAME}" \
|
||||
--form token="${COVERITY_SCAN_TOKEN}" \
|
||||
|
@ -4,9 +4,12 @@ cpu_family = 'x86_64'
|
||||
cpu = 'x86_64'
|
||||
endian = 'little'
|
||||
|
||||
# Fedora builds GCC with --enable-default-ssp by default, but mingw64 puts its
|
||||
# stack-protected functions in a separate library which needs to be linked
|
||||
# explicitly, hence this flag.
|
||||
[properties]
|
||||
c_args = []
|
||||
c_link_args = []
|
||||
c_link_args = ['-fstack-protector']
|
||||
|
||||
[binaries]
|
||||
c = 'x86_64-w64-mingw32-gcc'
|
||||
|
@ -1,11 +1,11 @@
|
||||
FROM debian:buster
|
||||
FROM debian:bullseye
|
||||
|
||||
RUN apt-get update -qq && apt-get install --no-install-recommends -qq -y \
|
||||
bindfs \
|
||||
black \
|
||||
clang \
|
||||
clang-tools-7 \
|
||||
clang-format-7 \
|
||||
clang-tools \
|
||||
clang-format \
|
||||
dbus \
|
||||
desktop-file-utils \
|
||||
elfutils \
|
||||
@ -26,7 +26,7 @@ RUN apt-get update -qq && apt-get install --no-install-recommends -qq -y \
|
||||
libffi-dev \
|
||||
libgamin-dev \
|
||||
libmount-dev \
|
||||
libpcre2-dev \
|
||||
libpcre3-dev \
|
||||
libselinux1-dev \
|
||||
libxml2-utils \
|
||||
libxslt1-dev \
|
||||
@ -66,7 +66,7 @@ RUN locale-gen de_DE.UTF-8 \
|
||||
|
||||
ENV LANG=C.UTF-8 LANGUAGE=C.UTF-8 LC_ALL=C.UTF-8
|
||||
|
||||
RUN pip3 install meson==0.49.2
|
||||
RUN pip3 install meson==0.52.0
|
||||
|
||||
ARG HOST_USER_ID=5555
|
||||
ENV HOST_USER_ID ${HOST_USER_ID}
|
||||
|
@ -1,7 +1,4 @@
|
||||
FROM fedora:31
|
||||
|
||||
# Set /etc/machine-id as it’s needed for some D-Bus tests
|
||||
RUN systemd-machine-id-setup
|
||||
FROM fedora:33
|
||||
|
||||
RUN dnf -y update \
|
||||
&& dnf -y install \
|
||||
@ -79,6 +76,9 @@ RUN dnf -y update \
|
||||
|
||||
RUN pip3 install meson==0.52.1
|
||||
|
||||
# Set /etc/machine-id as it’s needed for some D-Bus tests
|
||||
RUN systemd-machine-id-setup
|
||||
|
||||
# Enable sudo for wheel users
|
||||
RUN sed -i -e 's/# %wheel/%wheel/' -e '0,/%wheel/{s/%wheel/# %wheel/}' /etc/sudoers
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
FROM fedora:31
|
||||
FROM fedora:33
|
||||
|
||||
RUN dnf -y install \
|
||||
bindfs \
|
||||
@ -58,7 +58,7 @@ RUN dnf -y install \
|
||||
WORKDIR /opt
|
||||
COPY cross_file_mingw64.txt /opt
|
||||
|
||||
RUN pip3 install meson==0.49.2
|
||||
RUN pip3 install meson==0.52.0
|
||||
|
||||
ARG HOST_USER_ID=5555
|
||||
ENV HOST_USER_ID ${HOST_USER_ID}
|
||||
|
@ -5,7 +5,7 @@ call "C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Auxiliar
|
||||
@echo on
|
||||
|
||||
:: FIXME: make warnings fatal
|
||||
pip3 install --upgrade --user meson==0.49.2 || goto :error
|
||||
pip3 install --upgrade --user meson==0.52.0 || goto :error
|
||||
meson _build || goto :error
|
||||
ninja -C _build || goto :error
|
||||
|
||||
|
@ -31,7 +31,7 @@ CCACHE_BASEDIR="$(pwd)"
|
||||
CCACHE_DIR="${CCACHE_BASEDIR}/_ccache"
|
||||
export CCACHE_BASEDIR CCACHE_DIR
|
||||
|
||||
pip3 install --upgrade --user meson==0.49.2
|
||||
pip3 install --upgrade --user meson==0.52.0
|
||||
|
||||
PATH="$(cygpath "$USERPROFILE")/.local/bin:$HOME/.local/bin:$PATH"
|
||||
CFLAGS="-coverage -ftest-coverage -fprofile-arcs"
|
||||
|
@ -448,19 +448,23 @@ gdb_conf = configuration_data()
|
||||
gdb_conf.set('datadir', glib_datadir)
|
||||
# This is also used in gobject/meson.build
|
||||
if host_system != 'windows'
|
||||
# XXX: We add a leading './' because glib_libdir is an absolute path and we
|
||||
# need it to be a relative path so that join_paths appends it to the end.
|
||||
gdb_install_dir = join_paths(glib_datadir, 'gdb', 'auto-load', './' + glib_libdir)
|
||||
gdb_install = true
|
||||
else
|
||||
# FIXME: Cannot install on Windows because the path will contain a drive
|
||||
# letter and colons are not allowed in paths.
|
||||
gdb_install_dir = false
|
||||
gdb_install = false
|
||||
endif
|
||||
|
||||
# XXX: We add a leading './' because glib_libdir is an absolute path and we
|
||||
# need it to be a relative path so that join_paths appends it to the end.
|
||||
gdb_install_dir = join_paths(glib_datadir, 'gdb', 'auto-load', './' + glib_libdir)
|
||||
|
||||
configure_file(
|
||||
input: 'libglib-gdb.py.in',
|
||||
output: 'libglib-2.0.so.@0@-gdb.py'.format(library_version),
|
||||
configuration: gdb_conf,
|
||||
install_dir: gdb_install_dir,
|
||||
install: gdb_install,
|
||||
)
|
||||
|
||||
if enable_systemtap
|
||||
|
@ -159,6 +159,7 @@ configure_file(
|
||||
output: 'libgobject-2.0.so.@0@-gdb.py'.format(library_version),
|
||||
configuration: gdb_conf,
|
||||
install_dir: gdb_install_dir,
|
||||
install: gdb_install,
|
||||
)
|
||||
|
||||
if enable_systemtap
|
||||
|
@ -1,7 +1,7 @@
|
||||
project('glib', 'c', 'cpp',
|
||||
version : '2.71.0',
|
||||
# NOTE: We keep this pinned at 0.49 because that's what Debian 10 ships
|
||||
meson_version : '>= 0.49.2',
|
||||
# NOTE: We keep this pinned at 0.52 because that's what Debian Stable ships
|
||||
meson_version : '>= 0.52.0',
|
||||
default_options : [
|
||||
'buildtype=debugoptimized',
|
||||
'warning_level=1',
|
||||
|
Loading…
Reference in New Issue
Block a user