From patchwork Sun Jan 7 13:25:25 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Markus Volk X-Patchwork-Id: 37426 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 39427C47074 for ; Sun, 7 Jan 2024 13:25:42 +0000 (UTC) Received: from mailout05.t-online.de (mailout05.t-online.de [194.25.134.82]) by mx.groups.io with SMTP id smtpd.web10.14866.1704633937278988479 for ; Sun, 07 Jan 2024 05:25:37 -0800 Authentication-Results: mx.groups.io; dkim=none (message not signed); spf=pass (domain: t-online.de, ip: 194.25.134.82, mailfrom: f_l_k@t-online.de) Received: from fwd71.aul.t-online.de (fwd71.aul.t-online.de [10.223.144.97]) by mailout05.t-online.de (Postfix) with SMTP id 6C62EA9CE for ; Sun, 7 Jan 2024 14:25:35 +0100 (CET) Received: from intel-corei7-64.fritz.box ([84.163.46.223]) by fwd71.t-online.de with (TLSv1.3:TLS_AES_256_GCM_SHA384 encrypted) esmtp id 1rMT9i-2dNWbJ0; Sun, 7 Jan 2024 14:25:34 +0100 From: Markus Volk To: openembedded-devel@lists.openembedded.org Subject: [meta-gnome][PATCHv3] gnome-terminal: fix search_provider build Date: Sun, 7 Jan 2024 14:25:25 +0100 Message-ID: <20240107132525.66160-1-f_l_k@t-online.de> X-Mailer: git-send-email 2.43.0 MIME-Version: 1.0 X-TOI-EXPURGATEID: 150726::1704633934-E626F957-89E2A9AB/0/0 CLEAN NORMAL X-TOI-MSGID: fa974939-0272-4cda-b22b-4672a6b6de64 List-Id: X-Webhook-Received: from li982-79.members.linode.com [45.33.32.79] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Sun, 07 Jan 2024 13:25:42 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-devel/message/108073 currently org.gnome.ShellSearchProvider2.xml is read from host machine and thus gnome-terminal with search_provider enabled can only be build from a host system that has gnome-shell installed. Add an option and set it to STAGING_DATADIR to avoid: | DEBUG: Executing shell function do_compile | ninja: error: '/usr/share/dbus-1/interfaces/org.gnome.ShellSearchProvider2.xml', needed by 'src/terminal-search-provider-gdbus-generated.c', missing and no known rule to make it Signed-off-by: Markus Volk --- ...-add-option-to-set-dbus_interfacedir.patch | 63 +++++++++++++++++++ .../gnome-terminal/gnome-terminal_3.50.1.bb | 10 +-- 2 files changed, 69 insertions(+), 4 deletions(-) create mode 100644 meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal/0001-meson-add-option-to-set-dbus_interfacedir.patch diff --git a/meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal/0001-meson-add-option-to-set-dbus_interfacedir.patch b/meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal/0001-meson-add-option-to-set-dbus_interfacedir.patch new file mode 100644 index 000000000..9f8475bdd --- /dev/null +++ b/meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal/0001-meson-add-option-to-set-dbus_interfacedir.patch @@ -0,0 +1,63 @@ +From 61668e1eb86a316d4ad9a6b9cacf8c8cc74a0c33 Mon Sep 17 00:00:00 2001 +From: Markus Volk +Date: Sun, 7 Jan 2024 10:40:31 +0100 +Subject: [PATCH] meson: add an option to set dbus_interface_dir + +Add an option that allows to set the dbus_interface_dir path manually. +This will help to cross-compile gnome-terminal on host systems that +don't have gnome-shell installed. + +Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/gnome-terminal/-/issues/8046] + +Signed-off-by: Markus Volk +--- + meson_options.txt | 7 +++++++ + src/meson.build | 7 ++++++- + 2 files changed, 13 insertions(+), 1 deletion(-) + +diff --git a/meson_options.txt b/meson_options.txt +index b555ab66..8fece058 100644 +--- a/meson_options.txt ++++ b/meson_options.txt +@@ -13,6 +13,13 @@ + # You should have received a copy of the GNU General Public License + # along with this programme. If not, see . + ++option( ++ 'dbus_interface_dir', ++ type: 'string', ++ value: '', ++ description: 'directory for D-Bus session interface files [$datadir/dbus-1/interfaces]', ++) ++ + option( + 'dbg', + type: 'boolean', +diff --git a/src/meson.build b/src/meson.build +index 27ecd893..420ad45c 100644 +--- a/src/meson.build ++++ b/src/meson.build +@@ -185,6 +185,11 @@ server_sources = app_sources + client_util_sources + debug_sources + dbus_source + + if get_option('search_provider') + ++ dbus_interface_dir = get_option('dbus_interface_dir') ++ if dbus_interface_dir == '' ++ dbus_interface_dir = gt_prefix / gt_dbusinterfacedir ++ endif ++ + server_sources += files( + 'terminal-search-provider.cc', + 'terminal-search-provider.hh', +@@ -192,7 +197,7 @@ if get_option('search_provider') + + server_sources += gnome.gdbus_codegen( + 'terminal-search-provider-gdbus-generated', +- gt_prefix / gt_dbusinterfacedir / 'org.gnome.ShellSearchProvider2.xml', ++ dbus_interface_dir / 'org.gnome.ShellSearchProvider2.xml', + autocleanup: 'none', + install_header: false, + interface_prefix: 'org.gnome.Shell', +-- +2.43.0 + diff --git a/meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal_3.50.1.bb b/meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal_3.50.1.bb index 8616f2c9b..53f11e95f 100644 --- a/meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal_3.50.1.bb +++ b/meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal_3.50.1.bb @@ -19,15 +19,17 @@ DEPENDS = " \ libpcre2 \ " -SRC_URI = "git://gitlab.gnome.org/GNOME/gnome-terminal.git;protocol=https;nobranch=1 \ - file://0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch \ - " +SRC_URI = " \ + git://gitlab.gnome.org/GNOME/gnome-terminal.git;protocol=https;nobranch=1 \ + file://0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch \ + file://0001-meson-add-option-to-set-dbus_interfacedir.patch \ +" SRCREV = "5ac3b8e4bd6fa02651b3c23cedb0a7e1cd769655" S = "${WORKDIR}/git" PACKAGECONFIG ?= "" PACKAGECONFIG[nautilus] = "-Dnautilus_extension=true,-Dnautilus_extension=false,nautilus,nautilus" -PACKAGECONFIG[search_provider] = "-Dsearch_provider=true,-Dsearch_provider=false,,gnome-shell" +PACKAGECONFIG[search_provider] = "-Dsearch_provider=true -Ddbus_interface_dir=${STAGING_DATADIR}/dbus-1/interfaces,-Dsearch_provider=false,gnome-shell" FILES:${PN} += " \ ${datadir} \