thanks Armin, the patch looks good to me. could you also send a patch to fix CMRT_INCLUDE_DIRS? thanks.
thanks yejun -----Original Message----- From: Armin K. [mailto:kre...@email.com] Sent: Saturday, October 08, 2016 4:50 PM To: Guo, Yejun; beignet@lists.freedesktop.org Subject: Re: [Beignet] [PATCH] buildsys: Use CMRT_LIBDIR instead of CMRT_LIBRARY_DIRS On 8.10.2016 4:18, Guo, Yejun wrote: > Hi Armin, > > thanks for your patch. > > We use pkg_check_modules(CMRT libcmrt) in path_of_beignet/CMakeList.txt Line > 173 to detect libcmrt. CMRT_INCLUDE_DIRS and CMRT_LIBRARY_DIRS are the > expected macro to use, see > https://cmake.org/cmake/help/v3.0/module/FindPkgConfig.html or > https://cmake.org/cmake/help/v2.8.12/cmake.html. Could you explain a bit more > of your environment? thanks. > > btw, do you use the feature to "make Beignet as intermedia layer of CMRT"? > Want to know if any real cases from the community. > > thanks > yejun > Hi Yejun, As noted in the patch reply, CMRT_LIBRARY_DIRS is empty here. Per cmake docs: "<XPREFIX>_LIBRARY_DIRS ... the paths of the libraries (w/o the '-L')" There is no "-L..." in Libs: section of the libcmrt.pc file, because the file is installed in /usr/lib/pkgconfig, and autotools/pkgconfig will strip /usr/lib from library paths and /usr/include from include paths (per pkg-config default configuration). CMRT_LIBDIR is however always set, as it reads libdir variable from the .pc file, and that one is expected to be always set. And I don't use cmrt feature at all, I just happened to have libcmrt installed because I have intel-hybrid-driver for Skylake VP9 hybrid decoder. Without this patch, the utest testing the cmrt code will fail. See also: https://bugs.freedesktop.org/show_bug.cgi?id=94636 > -----Original Message----- > From: Beignet [mailto:beignet-boun...@lists.freedesktop.org] On Behalf > Of Armin K > Sent: Wednesday, October 05, 2016 10:33 PM > To: beignet@lists.freedesktop.org > Cc: Armin K > Subject: [Beignet] [PATCH] buildsys: Use CMRT_LIBDIR instead of > CMRT_LIBRARY_DIRS > > CMRT_LIBRARY_DIRS doesn't include any library paths when the library > is installed system-wide, such as /usr. > > Also dlopen versioned library, as distros tend to split non-versioned > sonames into -devel packages. > > Signed-off-by: Armin K <kre...@email.com> > --- > src/CMakeLists.txt | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index > a002865..82be7ff 100644 > --- a/src/CMakeLists.txt > +++ b/src/CMakeLists.txt > @@ -103,7 +103,7 @@ endif (X11_FOUND) > > if (CMRT_FOUND) > set(CMAKE_CXX_FLAGS "-DHAS_CMRT ${CMAKE_CXX_FLAGS}") > - set(CMAKE_CXX_FLAGS "-DCMRT_PATH=${CMRT_LIBRARY_DIRS}/libcmrt.so > ${CMAKE_CXX_FLAGS}") > + set(CMAKE_CXX_FLAGS "-DCMRT_PATH=${CMRT_LIBDIR}/libcmrt.so.1 > + ${CMAKE_CXX_FLAGS}") > set(CMAKE_C_FLAGS "-DHAS_CMRT ${CMAKE_C_FLAGS}") > set(OPENCL_SRC ${OPENCL_SRC} cl_cmrt.cpp) endif (CMRT_FOUND) > _______________________________________________ Beignet mailing list Beignet@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/beignet