From patchwork Sun Jan 7 10:27:23 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Markus Volk X-Patchwork-Id: 37423 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 32B66C47073 for ; Sun, 7 Jan 2024 10:27:41 +0000 (UTC) Received: from mailout12.t-online.de (mailout12.t-online.de [194.25.134.22]) by mx.groups.io with SMTP id smtpd.web11.12908.1704623256484610655 for ; Sun, 07 Jan 2024 02:27:36 -0800 Authentication-Results: mx.groups.io; dkim=none (message not signed); spf=pass (domain: t-online.de, ip: 194.25.134.22, mailfrom: f_l_k@t-online.de) Received: from fwd76.aul.t-online.de (fwd76.aul.t-online.de [10.223.144.102]) by mailout12.t-online.de (Postfix) with SMTP id A8F8D1DA95 for ; Sun, 7 Jan 2024 11:27:34 +0100 (CET) Received: from intel-corei7-64.fritz.box ([84.163.46.223]) by fwd76.t-online.de with (TLSv1.3:TLS_AES_256_GCM_SHA384 encrypted) esmtp id 1rMQNP-36x6iP0; Sun, 7 Jan 2024 11:27:31 +0100 From: Markus Volk To: openembedded-devel@lists.openembedded.org Subject: [meta-gnome][PATCHv2] gnome-terminal: fix search_provider build Date: Sun, 7 Jan 2024 11:27:23 +0100 Message-ID: <20240107102723.47876-1-f_l_k@t-online.de> X-Mailer: git-send-email 2.43.0 MIME-Version: 1.0 X-TOI-EXPURGATEID: 150726::1704623251-FB7FD94C-7B3B078D/0/0 CLEAN NORMAL X-TOI-MSGID: 9d211f9a-c0cf-443f-95ad-ab67cdb26bd3 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 10:27:41 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-devel/message/108069 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 | 66 +++++++++++++++++++ .../gnome-terminal/gnome-terminal_3.50.1.bb | 10 +-- 2 files changed, 72 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..b9d5fd5ec --- /dev/null +++ b/meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal/0001-meson-add-option-to-set-dbus_interfacedir.patch @@ -0,0 +1,66 @@ +From 5212e85699b59819262165740d3c7a10b6a5c46b 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 + +currently org.gnome.ShellSearchProvider2.xml is read from host machine and +thus gnome-terminal with search_provider enabled can only be built from a host +system that has gnome-shell installed. + +Add an option that allows to set the path manually. This will help to cross-compile +gnome-terminal on host systems that don't have gnome-shell installed. + +Upstream-Status: Pending + +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 b555ab663..8fece058c 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 86e287403..1543572cf 100644 +--- a/src/meson.build ++++ b/src/meson.build +@@ -224,6 +224,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', +@@ -231,7 +236,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} \