From 226daa77ea5a35da306f9af2548f3e2c9e79f577 Mon Sep 17 00:00:00 2001 From: Peter Seiderer Date: Fri, 11 Nov 2016 23:35:13 +0100 Subject: [PATCH] thirdparty: lcms2: append flags found by pkg-config if available This change allows to get all required CFLAGS/LDFLAGS in case of static only build. Fixes a buildroot build failure (see [1], [2] and [3]). [1] http://autobuild.buildroot.net/results/5ce/5cee20afd8bef5268832cddcb3a5270746be7a57 [2] http://lists.busybox.net/pipermail/buildroot/2016-November/177187.html [3] http://lists.busybox.net/pipermail/buildroot/2016-November/177188.html Signed-off-by: Peter Seiderer --- thirdparty/CMakeLists.txt | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/thirdparty/CMakeLists.txt b/thirdparty/CMakeLists.txt index cd6a5e1391b0..a3a8494d89b1 100644 --- a/thirdparty/CMakeLists.txt +++ b/thirdparty/CMakeLists.txt @@ -113,12 +113,19 @@ if( BUILD_THIRDPARTY) set(OPJ_HAVE_LIBLCMS2 1 PARENT_SCOPE) else(BUILD_THIRDPARTY) find_package(LCMS2) + # Static only build: + # it is necessary to invoke pkg_check_module on lcms2 since it may have + # several other dependencies not declared by its cmake module, but they are + # in the its pkgconfig module. + if(PKG_CONFIG_FOUND) + pkg_check_modules(PC_LCMS2 QUIET lcms2) + endif(PKG_CONFIG_FOUND) if(LCMS2_FOUND) message(STATUS "Your system seems to have a LCMS2 lib available, we will use it") set(OPJ_HAVE_LCMS2_H 1 PARENT_SCOPE) set(OPJ_HAVE_LIBLCMS2 1 PARENT_SCOPE) - set(LCMS_LIBNAME ${LCMS2_LIBRARIES} PARENT_SCOPE) - set(LCMS_INCLUDE_DIRNAME ${LCMS2_INCLUDE_DIRS} PARENT_SCOPE) + set(LCMS_LIBNAME ${LCMS2_LIBRARIES} ${PC_LCMS2_STATIC_LIBRARIES} PARENT_SCOPE) + set(LCMS_INCLUDE_DIRNAME ${LCMS2_INCLUDE_DIRS} ${PC_LCMS2_STATIC_INCLUDE_DIRS} PARENT_SCOPE) else(LCMS2_FOUND) # not found lcms2 # try to find LCMS find_package(LCMS) -- 2.10.2