sysprof dependency (via libsoup) does not build on Meson 0.59.2
I am unable to build gstreamer on Meson 0.59.2, because sysprof
(included via libsoup
) reports it cannot locate config.h
. This is because the version of sysprof
in the version of libsoup
used by gstreamer uses a deprecated Meson macro, meson.build_root
.
This was fixed in sysprof a year ago: https://gitlab.gnome.org/GNOME/sysprof/-/commit/d6aabaf1ff9fc24c7754feb1dcbb4f4285d4da8b
And then this commit was included when libsoup updated: https://gitlab.gnome.org/GNOME/libsoup/-/commit/7a98acbda55edd69762bf1c4e18dc66a968e9969
However, gstreamer points at https://gitlab.gnome.org/GNOME/libsoup/-/commit/e190e70298be1186ad1a8a5dd0ac430463f76fee, which references an old commit of sysprof that lacks the fix: https://gitlab.gnome.org/GNOME/sysprof/-/commit/1bb0eb7798f6a88667681229dde415ed663b1053
Please update to a current version of libsoup
, or use a cherry-pick branch that includes this patch:
~/gstreamer/subprojects/sysprof$ git diff
diff --git a/meson.build b/meson.build
index 26f289f..98ea5a2 100644
--- a/meson.build
+++ b/meson.build
@@ -84,7 +84,7 @@ has_clockid = cc.has_member('struct perf_event_attr', 'clockid', prefix: '#inclu
config_h.set('HAVE_PERF_CLOCKID', has_use_clockid and has_clockid)
add_project_arguments([
- '-I' + meson.build_root(), # config.h
+ '-I' + meson.current_build_dir(), # config.h
], language: 'c')
global_c_args = [
Thanks!