[gnome-shell] build: Add soup2 option
- From: Marge Bot <marge-bot src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-shell] build: Add soup2 option
- Date: Wed, 1 Sep 2021 11:00:23 +0000 (UTC)
commit 1d607cf18f1467f1837e4e78f4648050c27739f3
Author: Florian Müllner <fmuellner gnome org>
Date: Sun Aug 29 14:24:42 2021 +0200
build: Add soup2 option
!1940 added support for soup 3, including a fallback to soup 2.4
where the newer version isn't available.
Unfortunately it missed that libgweather has a hidden soup dependency,
and now gnome-shell fails to start if a weather location has been set
up and soup 3 is available.
We don't have a good way to detect that case, so hide the soup 3 support
behind a build option. Distributors are expected to switch it at the
same time as libgweather.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1966>
js/misc/config.js.in | 2 ++
js/misc/meson.build | 1 +
js/ui/environment.js | 2 ++
meson.build | 2 ++
meson_options.txt | 6 ++++++
5 files changed, 13 insertions(+)
---
diff --git a/js/misc/config.js.in b/js/misc/config.js.in
index e54e280441..f9210397a1 100644
--- a/js/misc/config.js.in
+++ b/js/misc/config.js.in
@@ -8,6 +8,8 @@ var PACKAGE_VERSION = '@PACKAGE_VERSION@';
var HAVE_BLUETOOTH = @HAVE_BLUETOOTH@;
/* 1 if networkmanager is available, 0 otherwise */
var HAVE_NETWORKMANAGER = @HAVE_NETWORKMANAGER@;
+/* 1 if soup3 support is enabled, 0 otherwise */
+var HAVE_SOUP2 = @HAVE_SOUP2@;
/* gettext package */
var GETTEXT_PACKAGE = '@GETTEXT_PACKAGE@';
/* locale dir */
diff --git a/js/misc/meson.build b/js/misc/meson.build
index 2702c3dbc9..5825627111 100644
--- a/js/misc/meson.build
+++ b/js/misc/meson.build
@@ -5,6 +5,7 @@ jsconf.set('GETTEXT_PACKAGE', meson.project_name())
jsconf.set('LIBMUTTER_API_VERSION', mutter_api_version)
jsconf.set10('HAVE_BLUETOOTH', bt_dep.found())
jsconf.set10('HAVE_NETWORKMANAGER', have_networkmanager)
+jsconf.set10('HAVE_SOUP2', have_soup2)
jsconf.set('datadir', datadir)
jsconf.set('libexecdir', libexecdir)
diff --git a/js/ui/environment.js b/js/ui/environment.js
index bd372ce26a..89ff701c70 100644
--- a/js/ui/environment.js
+++ b/js/ui/environment.js
@@ -12,6 +12,8 @@ imports.gi.versions.TelepathyGLib = '0.12';
imports.gi.versions.TelepathyLogger = '0.2';
try {
+ if (Config.HAVE_SOUP2)
+ throw new Error('Soup3 support not enabled');
const Soup_ = imports.gi.Soup;
} catch (e) {
imports.gi.versions.Soup = '2.4';
diff --git a/meson.build b/meson.build
index 5e9053558d..5847500513 100644
--- a/meson.build
+++ b/meson.build
@@ -128,6 +128,8 @@ else
have_systemd = false
endif
+have_soup2 = get_option('soup2')
+
if get_option('man')
if fs.exists('man/gnome-shell.1')
install_man('man/gnome-shell.1')
diff --git a/meson_options.txt b/meson_options.txt
index ef76b73c34..be9aa21f36 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -33,3 +33,9 @@ option('systemd',
value: true,
description: 'Enable systemd integration'
)
+
+option('soup2',
+ type: 'boolean',
+ value: true,
+ description: 'Use Soup 2.4 instead of Soup 3. Must be in sync with libgweather'
+)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]