From 45bb4dc80c456618ff57caba24e7cf882b699347 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Sat, 2 Jan 2021 22:34:52 -0500 Subject: [PATCH] ci: Add a macos build Most of this is cribbed from glib. We don't use COMMON_MESON_FLAGS here, since disabling -Werror one subproject at a time is too painful for all the promoted sub-sub-projects. This needs a better solution in meson. Since this is a full rebuild of the entire stack, limit this to master and merge requests. --- .gitlab-ci.yml | 20 ++++++++++++++++++++ .gitlab-ci/show-execution-environment.sh | 8 ++++++++ meson.build | 10 ++++++++-- 3 files changed, 36 insertions(+), 2 deletions(-) create mode 100755 .gitlab-ci/show-execution-environment.sh diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 18565b2913..ed714f4668 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -144,6 +144,26 @@ msys2-mingw64: MSYSTEM: "MINGW64" CHERE_INVOKING: "yes" +macos: + stage: build + tags: + - macos + needs: [] + before_script: + - bash .gitlab-ci/show-execution-environment.sh + - pip3 install --user meson==0.56 + - pip3 install --user ninja + - export PATH=/Users/gitlabrunner/Library/Python/3.7/bin:$PATH + script: + - meson -Dx11-backend=false + -Dintrospection=disabled + _build + - ninja -C _build + artifacts: + when: always + paths: + - "${CI_PROJECT_DIR}/_build/meson-logs" + .flatpak-defaults: image: $FLATPAK_IMAGE stage: flatpak diff --git a/.gitlab-ci/show-execution-environment.sh b/.gitlab-ci/show-execution-environment.sh new file mode 100755 index 0000000000..cc1bfdb87d --- /dev/null +++ b/.gitlab-ci/show-execution-environment.sh @@ -0,0 +1,8 @@ +#!/bin/bash + +set -eux -o pipefail + +xcodebuild -version || : +xcodebuild -showsdks || : + +system_profiler SPSoftwareDataType || : diff --git a/meson.build b/meson.build index 60e7729a8e..e8d6841116 100644 --- a/meson.build +++ b/meson.build @@ -381,8 +381,14 @@ epoxy_dep = dependency('epoxy', version: epoxy_req, harfbuzz_dep = dependency('harfbuzz', version: '>= 0.9', required: false, fallback: ['harfbuzz', 'libharfbuzz_dep']) xkbdep = dependency('xkbcommon', version: xkbcommon_req, required: wayland_enabled) -graphene_dep = dependency('graphene-gobject-1.0', version: graphene_req, - fallback: ['graphene', 'graphene_dep']) +if os_darwin + graphene_dep = dependency('graphene-gobject-1.0', version: graphene_req, + fallback: ['graphene', 'graphene_dep'], + default_options: ['introspection=false']) +else + graphene_dep = dependency('graphene-gobject-1.0', version: graphene_req, + fallback: ['graphene', 'graphene_dep']) +endif iso_codes_dep = dependency('iso-codes', required: false) gtk_doc_dep = dependency('gtk-doc', version: '>=1.33',