On Tue, Mar 24, 2026 at 5:05 PM Dmitry Baryshkov via lists.openembedded.org
<[email protected]> wrote:

> On Fri, Mar 20, 2026 at 12:27:29PM +0000, Ross Burton wrote:
> > The last meaningful change to freedesktop.org pkgconfig was in 2019, but
> > pkgconf is actively maintained.
> >
> > Major distributions such as Fedora (and derivates), Debian (ditto), Arch
> > Linux, Buildroot, and Alpine have all moved to pkgconf already.
> >
> > There's a subtle behaviour change between pkgconfig and pkgconf, whereas
> > pkgconfig appends the sysroot to PKG_CONFIG_SYSTEM_INCLUDE_PATH pkgconf
> > does not, so we need to sysroot-prefix those variables.
> >
> > Signed-off-by: Ross Burton <[email protected]>
> > ---
> >  meta/classes-recipe/pkgconfig.bbclass          | 6 +++---
> >  meta/conf/distro/include/default-providers.inc | 6 +++---
> >  2 files changed, 6 insertions(+), 6 deletions(-)
>
> FWIW pkgconfig -> pkgconf change also break gst-plugins-imsdk build in
> meta-qcom. Reverting this series makes the build succeed.
>
> | FAILED: [code=1]
> gst-plugin-mlaconverter/CMakeFiles/gstqtimlaconverter.dir/audio-converter-engine.cc.o
> | ccache
> /home/lumag/Projects/RPB/build-rpb/tmp-qcom-distro/work/armv8-2a-qcom-linux/gst-plugins-imsdk/0.1.0/recipe-sysroot-native/usr/bin/aarch64-qcom-linux/aarch64-qcom-linux-g++
> --sysroot=/home/lumag/Projects/RPB/build-rpb/tmp-qcom-distro/work/armv8-2a-qcom-linux/gst-plugins-imsdk/0.1.0/recipe-sysroot
> -DHAVE_CONFIG_H -DHAVE_LINUX_DMA_BUF_H -Dgstqtimlaconverter_EXPORTS
> -I/home/lumag/Projects/RPB/build-rpb/tmp-qcom-distro/work/armv8-2a-qcom-linux/gst-plugins-imsdk/0.1.0/build/gst-plugin-mlaconverter
> -I/home/lumag/Projects/RPB/build-rpb/tmp-qcom-distro/work/armv8-2a-qcom-linux/gst-plugins-imsdk/0.1.0/sources/gst-plugins-imsdk-0.1.0/gst-plugin-mlaconverter
> -I/home/lumag/Projects/RPB/build-rpb/tmp-qcom-distro/work/armv8-2a-qcom-linux/gst-plugins-imsdk/0.1.0/recipe-sysroot/usr/include/gstreamer-1.0
> -I/home/lumag/Projects/RPB/build-rpb/tmp-qcom-distro/work/armv8-2a-qcom-linux/gst-plugins-imsdk/0.1.0/recipe-sysroot/usr/include/glib-2.0
> -I/home/lumag/Projects/RPB/build-rpb/tmp-qcom-distro/work/armv8-2a-qcom-linux/gst-plugins-imsdk/0.1.0/recipe-sysroot/usr/lib/glib-2.0/include
> -I/usr/include/gstreamer-1.0
> -I/home/lumag/Projects/RPB/build-rpb/tmp-qcom-distro/work/armv8-2a-qcom-linux/gst-plugins-imsdk/0.1.0/sources/gst-plugins-imsdk-0.1.0/gst-plugin-base
> -I/home/lumag/Projects/RPB/build-rpb/tmp-qcom-distro/work/armv8-2a-qcom-linux/gst-plugins-imsdk/0.1.0/recipe-sysroot/usr/include/json-glib-1.0
> -I/home/lumag/Projects/RPB/build-rpb/tmp-qcom-distro/work/armv8-2a-qcom-linux/gst-plugins-imsdk/0.1.0/recipe-sysroot/usr/include/libmount
> -I/home/lumag/Projects/RPB/build-rpb/tmp-qcom-distro/work/armv8-2a-qcom-linux/gst-plugins-imsdk/0.1.0/recipe-sysroot/usr/include/blkid
> -march=armv8.2-a+crypto -mbranch-protection=standard
> -fstack-protector-strong  -O2 -D_FORTIFY_SOURCE=2 -Wformat
> -Wformat-security -Werror=format-security
> --sysroot=/home/lumag/Projects/RPB/build-rpb/tmp-qcom-distro/work/armv8-2a-qcom-linux/gst-plugins-imsdk/0.1.0/recipe-sysroot
> -O2 -g -fcanon-prefix-map
> -ffile-prefix-map=/home/lumag/Projects/RPB/build-rpb/tmp-qcom-distro/work/armv8-2a-qcom-linux/gst-plugins-imsdk/0.1.0/sources/gst-plugins-imsdk-0.1.0=/usr/src/debug/gst-plugins-imsdk/0.1.0
> -ffile-prefix-map=/home/lumag/Projects/RPB/build-rpb/tmp-qcom-distro/work/armv8-2a-qcom-linux/gst-plugins-imsdk/0.1.0/build=/usr/src/debug/gst-plugins-imsdk/0.1.0
> -ffile-prefix-map=/home/lumag/Projects/RPB/build-rpb/tmp-qcom-distro/work/armv8-2a-qcom-linux/gst-plugins-imsdk/0.1.0/recipe-sysroot=
> -ffile-prefix-map=/home/lumag/Projects/RPB/build-rpb/tmp-qcom-distro/work/armv8-2a-qcom-linux/gst-plugins-imsdk/0.1.0/recipe-sysroot-native=
> -pipe -fvisibility-inlines-hidden -Wall -Wextra -Werror
> -Wno-unused-parameter -std=gnu++17 -fPIC -MD -MT
> gst-plugin-mlaconverter/CMakeFiles/gstqtimlaconverter.dir/audio-converter-engine.cc.o
> -MF
> gst-plugin-mlaconverter/CMakeFiles/gstqtimlaconverter.dir/audio-converter-engine.cc.o.d
> -o
> gst-plugin-mlaconverter/CMakeFiles/gstqtimlaconverter.dir/audio-converter-engine.cc.o
> -c
> /home/lumag/Projects/RPB/build-rpb/tmp-qcom-distro/work/armv8-2a-qcom-linux/gst-plugins-imsdk/0.1.0/sources/gst-plugins-imsdk-0.1.0/gst-plugin-mlaconverter/audio-converter-engine.cc
> | cc1plus: error: include location "/usr/include/gstreamer-1.0" is unsafe
> for cross-compilation [-Werror=poison-system-directories]
> | cc1plus: all warnings being treated as errors
> | ninja: build stopped: subcommand failed.
> |
> | WARNING: exit code 1 from a shell command.
> ERROR: Task
> (/home/lumag/Projects/RPB/build-rpb/conf/../../layers/meta-qcom/recipes-multimedia/imsdk/gst-plugins-imsdk_0.1.0.bb:do_compile)
> failed with exit code '1'
>
>
I wonder if CMake is using unwrapper'ed version of pkgconf and not
filterning non sysrooted target paths. Try changing the CMakefiles.txt for
the concerned plugin to use
IMPORTED_TARGET and see if it helps

change
pkg_check_modules(GST
  REQUIRED gstreamer-1.0>=${GST_VERSION_REQUIRED})

to
pkg_check_modules(GST
  REQUIRED IMPORTED_TARGET gstreamer-1.0>=${GST_VERSION_REQUIRED})

in

https://github.com/qualcomm/gst-plugins-imsdk/blob/main/gst-plugin-mlaconverter/CMakeLists.txt

It might help.

-- 
> With best wishes
> Dmitry
>
> 
>
>
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#233837): 
https://lists.openembedded.org/g/openembedded-core/message/233837
Mute This Topic: https://lists.openembedded.org/mt/118416246/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to