1*4882a593SmuzhiyunFrom 3bc5d48257032b6bbee532aad15062fbbcc43bfe Mon Sep 17 00:00:00 2001
2*4882a593SmuzhiyunFrom: Andrey Zhizhikin <andrey.z@gmail.com>
3*4882a593SmuzhiyunDate: Mon, 27 Jan 2020 10:22:35 +0000
4*4882a593SmuzhiyunSubject: [PATCH] opencv: resolve missing opencv data dir in yocto build
5*4882a593Smuzhiyun
6*4882a593SmuzhiyunWhen Yocto build is performed, opencv searches for data dir using simple
7*4882a593Smuzhiyun'test' command, this fails because pkg-config provides an absolute
8*4882a593Smuzhiyunpath on the target which needs to be prepended by PKG_CONFIG_SYSROOT_DIR
9*4882a593Smuzhiyunin order for the 'test' utility to pick up the absolute path.
10*4882a593Smuzhiyun
11*4882a593SmuzhiyunUpstream-Status: Inappropriate [OE-specific]
12*4882a593Smuzhiyun
13*4882a593SmuzhiyunSigned-off-by: Andrey Zhizhikin <andrey.z@gmail.com>
14*4882a593SmuzhiyunSigned-off-by: Jose Quaresma <quaresma.jose@gmail.com>
15*4882a593Smuzhiyun
16*4882a593Smuzhiyun---
17*4882a593Smuzhiyun ext/opencv/meson.build | 3 +++
18*4882a593Smuzhiyun 1 file changed, 3 insertions(+)
19*4882a593Smuzhiyun
20*4882a593Smuzhiyundiff --git a/ext/opencv/meson.build b/ext/opencv/meson.build
21*4882a593Smuzhiyunindex 1d86b90..b5c8b95 100644
22*4882a593Smuzhiyun--- a/ext/opencv/meson.build
23*4882a593Smuzhiyun+++ b/ext/opencv/meson.build
24*4882a593Smuzhiyun@@ -87,6 +87,9 @@ if opencv_found
25*4882a593Smuzhiyun   opencv_prefix = opencv_dep.get_variable('prefix')
26*4882a593Smuzhiyun   gstopencv_cargs += ['-DOPENCV_PREFIX="' + opencv_prefix + '"']
27*4882a593Smuzhiyun
28*4882a593Smuzhiyun+  pkgconf_sysroot = run_command(python3, '-c', 'import os; print(os.environ.get("PKG_CONFIG_SYSROOT_DIR"))').stdout().strip()
29*4882a593Smuzhiyun+  opencv_prefix = pkgconf_sysroot + opencv_prefix
30*4882a593Smuzhiyun+
31*4882a593Smuzhiyun   # Check the data dir used by opencv for its xml data files
32*4882a593Smuzhiyun   # Use prefix from pkg-config to be compatible with cross-compilation
33*4882a593Smuzhiyun   r = run_command('test', '-d', opencv_prefix + '/share/opencv', check: false)
34