Message ID | 20240107102723.47876-1-f_l_k@t-online.de |
---|---|
State | New |
Headers | show |
Series | [meta-gnome,PATCHv2] gnome-terminal: fix search_provider build | expand |
Pending is strongly discouraged and disliked. Please submit even if it’s not perfect yet. Alex On Sun 7. Jan 2024 at 11.27, Markus Volk <f_l_k@t-online.de> wrote: > 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 <f_l_k@t-online.de> > --- > ...-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 <f_l_k@t-online.de> > +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 <f_l_k@t-online.de> > +--- > + 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 <https://www.gnu.org/licenses/ > >. > + > ++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} \ > -- > 2.43.0 > > > -=-=-=-=-=-=-=-=-=-=-=- > Links: You receive all messages sent to this group. > View/Reply Online (#108069): > https://lists.openembedded.org/g/openembedded-devel/message/108069 > Mute This Topic: https://lists.openembedded.org/mt/103575871/1686489 > Group Owner: openembedded-devel+owner@lists.openembedded.org > Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [ > alex.kanavin@gmail.com] > -=-=-=-=-=-=-=-=-=-=-=- > >
On Sun, Jan 7 2024 at 11:52:09 AM +01:00:00, Alexander Kanavin
<alex.kanavin@gmail.com> wrote:
> Pending is strongly discouraged and disliked.
And yet it is a legitimate concern. I'll try to hurry up
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 <f_l_k@t-online.de> +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 <f_l_k@t-online.de> +--- + 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 <https://www.gnu.org/licenses/>. + ++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} \
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 <f_l_k@t-online.de> --- ...-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