Message ID | 20220315205918.2211690-1-fontaine.fabrice@gmail.com |
---|---|
State | Accepted |
Headers | show |
Series | [1/1] package/rygel: fix g_ir_compiler calls | expand |
On 15/03/2022 21:59, Fabrice Fontaine wrote: > Fix the following build failure raised since bump to version 0.40.2 in > commit 6acdbb81c8d6cdd3ecb476ae24e72fd4547011c3: > > [108/298] Generating src/librygel-core/RygelCore-2.6.typelib with a custom command > FAILED: src/librygel-core/RygelCore-2.6.typelib > /home/giuliobenetti/autobuild/run/instance-3/output-1/host/nios2-buildroot-linux-gnu/sysroot/usr/bin/g-ir-compiler --output src/librygel-core/RygelCore-2.6.typelib /home/giuliobenetti/autobuild/run/instance-3/output-1/build/rygel-0.40.2/build/src/librygel-core/RygelCore-2.6.gir > Could not find GIR file 'GUPnP-1.2.gir'; check XDG_DATA_DIRS or use --includedir > error parsing file /home/giuliobenetti/autobuild/run/instance-3/output-1/build/rygel-0.40.2/build/src/librygel-core/RygelCore-2.6.gir: Failed to parse included gir GUPnP-1.2 > > Fixes: > - http://autobuild.buildroot.org/results/2b8956818f03f66a53480f7ed5fc0abb4f05288d > > Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> > --- > ...-meson.build-fix-g_ir_compiler-calls.patch | 84 +++++++++++++++++++ > 1 file changed, 84 insertions(+) > create mode 100644 package/rygel/0002-meson.build-fix-g_ir_compiler-calls.patch > > diff --git a/package/rygel/0002-meson.build-fix-g_ir_compiler-calls.patch b/package/rygel/0002-meson.build-fix-g_ir_compiler-calls.patch > new file mode 100644 > index 0000000000..3961ad0564 > --- /dev/null > +++ b/package/rygel/0002-meson.build-fix-g_ir_compiler-calls.patch > @@ -0,0 +1,84 @@ > +From bed9e2effae60f7d736731e93d9e699cb173f04e Mon Sep 17 00:00:00 2001 > +From: Fabrice Fontaine <fontaine.fabrice@gmail.com> > +Date: Tue, 15 Mar 2022 19:20:33 +0100 > +Subject: [PATCH] meson.build: fix g_ir_compiler calls > + > +Fix the following build failure when cross-compiling which is raised > +because rygel is using a custom_target target instead of the standard > +gnome.generate_gir: > + > +[108/298] Generating src/librygel-core/RygelCore-2.6.typelib with a custom command > +FAILED: src/librygel-core/RygelCore-2.6.typelib > +/home/giuliobenetti/autobuild/run/instance-3/output-1/host/nios2-buildroot-linux-gnu/sysroot/usr/bin/g-ir-compiler --output src/librygel-core/RygelCore-2.6.typelib /home/giuliobenetti/autobuild/run/instance-3/output-1/build/rygel-0.40.2/build/src/librygel-core/RygelCore-2.6.gir > +Could not find GIR file 'GUPnP-1.2.gir'; check XDG_DATA_DIRS or use --includedir > +error parsing file /home/giuliobenetti/autobuild/run/instance-3/output-1/build/rygel-0.40.2/build/src/librygel-core/RygelCore-2.6.gir: Failed to parse included gir GUPnP-1.2 > + > +Indeed, the custom_target command is unable to retrieve the correct > +--includedir from glib-2.0.pc so add an ugly hack to custom_target calls > + > +Fixes: > + - http://autobuild.buildroot.org/results/2b8956818f03f66a53480f7ed5fc0abb4f05288d > + > +Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> > +[Upstream status: probably not upstreamable] > +--- > + src/librygel-core/meson.build | 4 +++- > + src/librygel-renderer-gst/meson.build | 1 + > + src/librygel-renderer/meson.build | 1 + > + src/librygel-server/meson.build | 1 + > + 4 files changed, 6 insertions(+), 1 deletion(-) > + > +diff --git a/src/librygel-core/meson.build b/src/librygel-core/meson.build > +index fd43bebe..e6be2b5e 100644 > +--- a/src/librygel-core/meson.build > ++++ b/src/librygel-core/meson.build > +@@ -70,7 +70,9 @@ core_gir = custom_target('RygelCore-2.6.gir', > + # so we depend on the custom_target from that step and pass the input through > + # commandline. > + custom_target('RygelCore-2.6.typelib', > +- command: [g_ir_compiler, '--output', '@OUTPUT@', join_paths(meson.current_build_dir(), 'RygelCore-2.6.gir')], > ++ command: [g_ir_compiler, '--output', '@OUTPUT@', > ++ '--includedir', meson.get_external_property('sys_root') + get_option('prefix') + '/' + gir_dir, I don't understand why this isn't needed for any other g-ir-compiler calls. It can't be that rygel is the only package that has any GIR dependencies? If more packages need something like this, then we should probably create a wrapper around g-ir-compiler that adds the --includedir automatically. [Adam in Cc as the GOI specialist - poor guy.] Anyway, for now, applied to master, thanks. Regards, Arnout > ++ join_paths(meson.current_build_dir(), 'RygelCore-2.6.gir')], > + output: 'RygelCore-2.6.typelib', > + depends: [ core_lib, core_gir ], > + install: true, > +diff --git a/src/librygel-renderer-gst/meson.build b/src/librygel-renderer-gst/meson.build > +index ad98a3a7..e8baefe1 100644 > +--- a/src/librygel-renderer-gst/meson.build > ++++ b/src/librygel-renderer-gst/meson.build > +@@ -36,6 +36,7 @@ custom_target('RygelRendererGst-2.6.typelib', > + '--output', '@OUTPUT@', > + '--includedir', core_girdir, > + '--includedir', renderer_girdir, > ++ '--includedir', meson.get_external_property('sys_root') + get_option('prefix') + '/' + gir_dir, > + join_paths(meson.current_build_dir(), 'RygelRendererGst-2.6.gir')], > + output: 'RygelRendererGst-2.6.typelib', > + depends: [renderer_gst_lib, renderer_lib, renderer_gst_gir, renderer_gir], > +diff --git a/src/librygel-renderer/meson.build b/src/librygel-renderer/meson.build > +index 5f401527..821273ff 100644 > +--- a/src/librygel-renderer/meson.build > ++++ b/src/librygel-renderer/meson.build > +@@ -43,6 +43,7 @@ custom_target('RygelRenderer-2.6.typelib', > + command: [g_ir_compiler, > + '--output', '@OUTPUT@', > + '--includedir', core_girdir, > ++ '--includedir', meson.get_external_property('sys_root') + get_option('prefix') + '/' + gir_dir, > + join_paths(meson.current_build_dir(), 'RygelRenderer-2.6.gir')], > + output: 'RygelRenderer-2.6.typelib', > + depends: [ renderer_lib, renderer_gir, core_gir ], > +diff --git a/src/librygel-server/meson.build b/src/librygel-server/meson.build > +index a3bd77d9..6b084eb6 100644 > +--- a/src/librygel-server/meson.build > ++++ b/src/librygel-server/meson.build > +@@ -122,6 +122,7 @@ custom_target('RygelServer-2.6.typelib', > + command: [g_ir_compiler, > + '--output', '@OUTPUT@', > + '--includedir', core_girdir, > ++ '--includedir', meson.get_external_property('sys_root') + get_option('prefix') + '/' + gir_dir, > + join_paths(meson.current_build_dir(), 'RygelServer-2.6.gir')], > + output: 'RygelServer-2.6.typelib', > + depends: [ server_lib, server_gir, core_gir ], > +-- > +2.35.1 > +
Le jeu. 24 mars 2022 à 22:11, Arnout Vandecappelle <arnout@mind.be> a écrit : > > > > On 15/03/2022 21:59, Fabrice Fontaine wrote: > > Fix the following build failure raised since bump to version 0.40.2 in > > commit 6acdbb81c8d6cdd3ecb476ae24e72fd4547011c3: > > > > [108/298] Generating src/librygel-core/RygelCore-2.6.typelib with a custom command > > FAILED: src/librygel-core/RygelCore-2.6.typelib > > /home/giuliobenetti/autobuild/run/instance-3/output-1/host/nios2-buildroot-linux-gnu/sysroot/usr/bin/g-ir-compiler --output src/librygel-core/RygelCore-2.6.typelib /home/giuliobenetti/autobuild/run/instance-3/output-1/build/rygel-0.40.2/build/src/librygel-core/RygelCore-2.6.gir > > Could not find GIR file 'GUPnP-1.2.gir'; check XDG_DATA_DIRS or use --includedir > > error parsing file /home/giuliobenetti/autobuild/run/instance-3/output-1/build/rygel-0.40.2/build/src/librygel-core/RygelCore-2.6.gir: Failed to parse included gir GUPnP-1.2 > > > > Fixes: > > - http://autobuild.buildroot.org/results/2b8956818f03f66a53480f7ed5fc0abb4f05288d > > > > Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> > > --- > > ...-meson.build-fix-g_ir_compiler-calls.patch | 84 +++++++++++++++++++ > > 1 file changed, 84 insertions(+) > > create mode 100644 package/rygel/0002-meson.build-fix-g_ir_compiler-calls.patch > > > > diff --git a/package/rygel/0002-meson.build-fix-g_ir_compiler-calls.patch b/package/rygel/0002-meson.build-fix-g_ir_compiler-calls.patch > > new file mode 100644 > > index 0000000000..3961ad0564 > > --- /dev/null > > +++ b/package/rygel/0002-meson.build-fix-g_ir_compiler-calls.patch > > @@ -0,0 +1,84 @@ > > +From bed9e2effae60f7d736731e93d9e699cb173f04e Mon Sep 17 00:00:00 2001 > > +From: Fabrice Fontaine <fontaine.fabrice@gmail.com> > > +Date: Tue, 15 Mar 2022 19:20:33 +0100 > > +Subject: [PATCH] meson.build: fix g_ir_compiler calls > > + > > +Fix the following build failure when cross-compiling which is raised > > +because rygel is using a custom_target target instead of the standard > > +gnome.generate_gir: > > + > > +[108/298] Generating src/librygel-core/RygelCore-2.6.typelib with a custom command > > +FAILED: src/librygel-core/RygelCore-2.6.typelib > > +/home/giuliobenetti/autobuild/run/instance-3/output-1/host/nios2-buildroot-linux-gnu/sysroot/usr/bin/g-ir-compiler --output src/librygel-core/RygelCore-2.6.typelib /home/giuliobenetti/autobuild/run/instance-3/output-1/build/rygel-0.40.2/build/src/librygel-core/RygelCore-2.6.gir > > +Could not find GIR file 'GUPnP-1.2.gir'; check XDG_DATA_DIRS or use --includedir > > +error parsing file /home/giuliobenetti/autobuild/run/instance-3/output-1/build/rygel-0.40.2/build/src/librygel-core/RygelCore-2.6.gir: Failed to parse included gir GUPnP-1.2 > > + > > +Indeed, the custom_target command is unable to retrieve the correct > > +--includedir from glib-2.0.pc so add an ugly hack to custom_target calls > > + > > +Fixes: > > + - http://autobuild.buildroot.org/results/2b8956818f03f66a53480f7ed5fc0abb4f05288d > > + > > +Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> > > +[Upstream status: probably not upstreamable] > > +--- > > + src/librygel-core/meson.build | 4 +++- > > + src/librygel-renderer-gst/meson.build | 1 + > > + src/librygel-renderer/meson.build | 1 + > > + src/librygel-server/meson.build | 1 + > > + 4 files changed, 6 insertions(+), 1 deletion(-) > > + > > +diff --git a/src/librygel-core/meson.build b/src/librygel-core/meson.build > > +index fd43bebe..e6be2b5e 100644 > > +--- a/src/librygel-core/meson.build > > ++++ b/src/librygel-core/meson.build > > +@@ -70,7 +70,9 @@ core_gir = custom_target('RygelCore-2.6.gir', > > + # so we depend on the custom_target from that step and pass the input through > > + # commandline. > > + custom_target('RygelCore-2.6.typelib', > > +- command: [g_ir_compiler, '--output', '@OUTPUT@', join_paths(meson.current_build_dir(), 'RygelCore-2.6.gir')], > > ++ command: [g_ir_compiler, '--output', '@OUTPUT@', > > ++ '--includedir', meson.get_external_property('sys_root') + get_option('prefix') + '/' + gir_dir, > > I don't understand why this isn't needed for any other g-ir-compiler calls. It > can't be that rygel is the only package that has any GIR dependencies? To my knowledge, rygel is the only package that makes g-ir-compiler calls through the meson custom_target command. The other meson packages use the standard meson gnome.generate_gir which has been "fixed" by commit b094f88a4d501101bfba9b65491209e6a0fe0397. The autotools packages use Makefile.introspection which has been fixed by commit 8dda79970661090f202e1f20e5982ba53fdaeb95. > > If more packages need something like this, then we should probably create a > wrapper around g-ir-compiler that adds the --includedir automatically. > > [Adam in Cc as the GOI specialist - poor guy.] > > Anyway, for now, applied to master, thanks. > > Regards, > Arnout > > > > ++ join_paths(meson.current_build_dir(), 'RygelCore-2.6.gir')], > > + output: 'RygelCore-2.6.typelib', > > + depends: [ core_lib, core_gir ], > > + install: true, > > +diff --git a/src/librygel-renderer-gst/meson.build b/src/librygel-renderer-gst/meson.build > > +index ad98a3a7..e8baefe1 100644 > > +--- a/src/librygel-renderer-gst/meson.build > > ++++ b/src/librygel-renderer-gst/meson.build > > +@@ -36,6 +36,7 @@ custom_target('RygelRendererGst-2.6.typelib', > > + '--output', '@OUTPUT@', > > + '--includedir', core_girdir, > > + '--includedir', renderer_girdir, > > ++ '--includedir', meson.get_external_property('sys_root') + get_option('prefix') + '/' + gir_dir, > > + join_paths(meson.current_build_dir(), 'RygelRendererGst-2.6.gir')], > > + output: 'RygelRendererGst-2.6.typelib', > > + depends: [renderer_gst_lib, renderer_lib, renderer_gst_gir, renderer_gir], > > +diff --git a/src/librygel-renderer/meson.build b/src/librygel-renderer/meson.build > > +index 5f401527..821273ff 100644 > > +--- a/src/librygel-renderer/meson.build > > ++++ b/src/librygel-renderer/meson.build > > +@@ -43,6 +43,7 @@ custom_target('RygelRenderer-2.6.typelib', > > + command: [g_ir_compiler, > > + '--output', '@OUTPUT@', > > + '--includedir', core_girdir, > > ++ '--includedir', meson.get_external_property('sys_root') + get_option('prefix') + '/' + gir_dir, > > + join_paths(meson.current_build_dir(), 'RygelRenderer-2.6.gir')], > > + output: 'RygelRenderer-2.6.typelib', > > + depends: [ renderer_lib, renderer_gir, core_gir ], > > +diff --git a/src/librygel-server/meson.build b/src/librygel-server/meson.build > > +index a3bd77d9..6b084eb6 100644 > > +--- a/src/librygel-server/meson.build > > ++++ b/src/librygel-server/meson.build > > +@@ -122,6 +122,7 @@ custom_target('RygelServer-2.6.typelib', > > + command: [g_ir_compiler, > > + '--output', '@OUTPUT@', > > + '--includedir', core_girdir, > > ++ '--includedir', meson.get_external_property('sys_root') + get_option('prefix') + '/' + gir_dir, > > + join_paths(meson.current_build_dir(), 'RygelServer-2.6.gir')], > > + output: 'RygelServer-2.6.typelib', > > + depends: [ server_lib, server_gir, core_gir ], > > +-- > > +2.35.1 > > + Best Regards, Fabrice
>>>>> "Fabrice" == Fabrice Fontaine <fontaine.fabrice@gmail.com> writes: > Fix the following build failure raised since bump to version 0.40.2 in > commit 6acdbb81c8d6cdd3ecb476ae24e72fd4547011c3: > [108/298] Generating src/librygel-core/RygelCore-2.6.typelib with a custom command > FAILED: src/librygel-core/RygelCore-2.6.typelib > /home/giuliobenetti/autobuild/run/instance-3/output-1/host/nios2-buildroot-linux-gnu/sysroot/usr/bin/g-ir-compiler > --output src/librygel-core/RygelCore-2.6.typelib > /home/giuliobenetti/autobuild/run/instance-3/output-1/build/rygel-0.40.2/build/src/librygel-core/RygelCore-2.6.gir > Could not find GIR file 'GUPnP-1.2.gir'; check XDG_DATA_DIRS or use --includedir > error parsing file > /home/giuliobenetti/autobuild/run/instance-3/output-1/build/rygel-0.40.2/build/src/librygel-core/RygelCore-2.6.gir: > Failed to parse included gir GUPnP-1.2 > Fixes: > - http://autobuild.buildroot.org/results/2b8956818f03f66a53480f7ed5fc0abb4f05288d > Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> Committed to 2022.02.x, thanks.
diff --git a/package/rygel/0002-meson.build-fix-g_ir_compiler-calls.patch b/package/rygel/0002-meson.build-fix-g_ir_compiler-calls.patch new file mode 100644 index 0000000000..3961ad0564 --- /dev/null +++ b/package/rygel/0002-meson.build-fix-g_ir_compiler-calls.patch @@ -0,0 +1,84 @@ +From bed9e2effae60f7d736731e93d9e699cb173f04e Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine <fontaine.fabrice@gmail.com> +Date: Tue, 15 Mar 2022 19:20:33 +0100 +Subject: [PATCH] meson.build: fix g_ir_compiler calls + +Fix the following build failure when cross-compiling which is raised +because rygel is using a custom_target target instead of the standard +gnome.generate_gir: + +[108/298] Generating src/librygel-core/RygelCore-2.6.typelib with a custom command +FAILED: src/librygel-core/RygelCore-2.6.typelib +/home/giuliobenetti/autobuild/run/instance-3/output-1/host/nios2-buildroot-linux-gnu/sysroot/usr/bin/g-ir-compiler --output src/librygel-core/RygelCore-2.6.typelib /home/giuliobenetti/autobuild/run/instance-3/output-1/build/rygel-0.40.2/build/src/librygel-core/RygelCore-2.6.gir +Could not find GIR file 'GUPnP-1.2.gir'; check XDG_DATA_DIRS or use --includedir +error parsing file /home/giuliobenetti/autobuild/run/instance-3/output-1/build/rygel-0.40.2/build/src/librygel-core/RygelCore-2.6.gir: Failed to parse included gir GUPnP-1.2 + +Indeed, the custom_target command is unable to retrieve the correct +--includedir from glib-2.0.pc so add an ugly hack to custom_target calls + +Fixes: + - http://autobuild.buildroot.org/results/2b8956818f03f66a53480f7ed5fc0abb4f05288d + +Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> +[Upstream status: probably not upstreamable] +--- + src/librygel-core/meson.build | 4 +++- + src/librygel-renderer-gst/meson.build | 1 + + src/librygel-renderer/meson.build | 1 + + src/librygel-server/meson.build | 1 + + 4 files changed, 6 insertions(+), 1 deletion(-) + +diff --git a/src/librygel-core/meson.build b/src/librygel-core/meson.build +index fd43bebe..e6be2b5e 100644 +--- a/src/librygel-core/meson.build ++++ b/src/librygel-core/meson.build +@@ -70,7 +70,9 @@ core_gir = custom_target('RygelCore-2.6.gir', + # so we depend on the custom_target from that step and pass the input through + # commandline. + custom_target('RygelCore-2.6.typelib', +- command: [g_ir_compiler, '--output', '@OUTPUT@', join_paths(meson.current_build_dir(), 'RygelCore-2.6.gir')], ++ command: [g_ir_compiler, '--output', '@OUTPUT@', ++ '--includedir', meson.get_external_property('sys_root') + get_option('prefix') + '/' + gir_dir, ++ join_paths(meson.current_build_dir(), 'RygelCore-2.6.gir')], + output: 'RygelCore-2.6.typelib', + depends: [ core_lib, core_gir ], + install: true, +diff --git a/src/librygel-renderer-gst/meson.build b/src/librygel-renderer-gst/meson.build +index ad98a3a7..e8baefe1 100644 +--- a/src/librygel-renderer-gst/meson.build ++++ b/src/librygel-renderer-gst/meson.build +@@ -36,6 +36,7 @@ custom_target('RygelRendererGst-2.6.typelib', + '--output', '@OUTPUT@', + '--includedir', core_girdir, + '--includedir', renderer_girdir, ++ '--includedir', meson.get_external_property('sys_root') + get_option('prefix') + '/' + gir_dir, + join_paths(meson.current_build_dir(), 'RygelRendererGst-2.6.gir')], + output: 'RygelRendererGst-2.6.typelib', + depends: [renderer_gst_lib, renderer_lib, renderer_gst_gir, renderer_gir], +diff --git a/src/librygel-renderer/meson.build b/src/librygel-renderer/meson.build +index 5f401527..821273ff 100644 +--- a/src/librygel-renderer/meson.build ++++ b/src/librygel-renderer/meson.build +@@ -43,6 +43,7 @@ custom_target('RygelRenderer-2.6.typelib', + command: [g_ir_compiler, + '--output', '@OUTPUT@', + '--includedir', core_girdir, ++ '--includedir', meson.get_external_property('sys_root') + get_option('prefix') + '/' + gir_dir, + join_paths(meson.current_build_dir(), 'RygelRenderer-2.6.gir')], + output: 'RygelRenderer-2.6.typelib', + depends: [ renderer_lib, renderer_gir, core_gir ], +diff --git a/src/librygel-server/meson.build b/src/librygel-server/meson.build +index a3bd77d9..6b084eb6 100644 +--- a/src/librygel-server/meson.build ++++ b/src/librygel-server/meson.build +@@ -122,6 +122,7 @@ custom_target('RygelServer-2.6.typelib', + command: [g_ir_compiler, + '--output', '@OUTPUT@', + '--includedir', core_girdir, ++ '--includedir', meson.get_external_property('sys_root') + get_option('prefix') + '/' + gir_dir, + join_paths(meson.current_build_dir(), 'RygelServer-2.6.gir')], + output: 'RygelServer-2.6.typelib', + depends: [ server_lib, server_gir, core_gir ], +-- +2.35.1 +
Fix the following build failure raised since bump to version 0.40.2 in commit 6acdbb81c8d6cdd3ecb476ae24e72fd4547011c3: [108/298] Generating src/librygel-core/RygelCore-2.6.typelib with a custom command FAILED: src/librygel-core/RygelCore-2.6.typelib /home/giuliobenetti/autobuild/run/instance-3/output-1/host/nios2-buildroot-linux-gnu/sysroot/usr/bin/g-ir-compiler --output src/librygel-core/RygelCore-2.6.typelib /home/giuliobenetti/autobuild/run/instance-3/output-1/build/rygel-0.40.2/build/src/librygel-core/RygelCore-2.6.gir Could not find GIR file 'GUPnP-1.2.gir'; check XDG_DATA_DIRS or use --includedir error parsing file /home/giuliobenetti/autobuild/run/instance-3/output-1/build/rygel-0.40.2/build/src/librygel-core/RygelCore-2.6.gir: Failed to parse included gir GUPnP-1.2 Fixes: - http://autobuild.buildroot.org/results/2b8956818f03f66a53480f7ed5fc0abb4f05288d Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> --- ...-meson.build-fix-g_ir_compiler-calls.patch | 84 +++++++++++++++++++ 1 file changed, 84 insertions(+) create mode 100644 package/rygel/0002-meson.build-fix-g_ir_compiler-calls.patch