mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-12-28 17:07:49 +08:00
103 lines
3.3 KiB
Diff
103 lines
3.3 KiB
Diff
|
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||
|
index e7d5a66..484e76b 100644
|
||
|
--- a/CMakeLists.txt
|
||
|
+++ b/CMakeLists.txt
|
||
|
@@ -121,8 +121,14 @@ include(MacroOptionalFindPackage)
|
||
|
|
||
|
# Math library check
|
||
|
|
||
|
+set(PC_LIBS_PRIVATE "")
|
||
|
+set(PC_REQUIRES_PRIVATE "")
|
||
|
if(NOT WIN32)
|
||
|
FIND_LIBRARY(MATH_LIBRARY m)
|
||
|
+ if(MATH_LIBRARY)
|
||
|
+ set(MATH_LIBRARY m)
|
||
|
+ string(APPEND PC_LIBS_PRIVATE " -lm")
|
||
|
+ endif()
|
||
|
endif()
|
||
|
|
||
|
# LCMS version 1 and 2 library check
|
||
|
@@ -133,7 +139,11 @@ set(LCMS_FOUND false)
|
||
|
|
||
|
if(ENABLE_LCMS)
|
||
|
message(STATUS "Check for LCMS2 availability...")
|
||
|
- find_package(LCMS2)
|
||
|
+ find_package(lcms2 CONFIG REQUIRED)
|
||
|
+ set(LCMS2_FOUND 1)
|
||
|
+ set(LCMS2_VERSION 2.14)
|
||
|
+ set(LCMS2_INCLUDE_DIR "")
|
||
|
+ set(LCMS2_LIBRARIES lcms2::lcms2)
|
||
|
if(LCMS2_FOUND AND (LCMS2_VERSION VERSION_EQUAL 2.1 OR LCMS2_VERSION VERSION_GREATER 2.1))
|
||
|
message(STATUS "Found LCMS2 : ${LCMS2_LIBRARIES} ${LCMS2_INCLUDE_DIR}")
|
||
|
include_directories(${LCMS2_INCLUDE_DIR})
|
||
|
@@ -141,6 +151,7 @@ if(ENABLE_LCMS)
|
||
|
# Flag to compile Little CMS version 2 with LibRaw
|
||
|
add_definitions(-DUSE_LCMS2)
|
||
|
set(LCMS_SUPPORT_CAN_BE_COMPILED true)
|
||
|
+ string(APPEND PC_REQUIRES_PRIVATE " lcms2")
|
||
|
else()
|
||
|
message(STATUS "Check for LCMS availability instead LCMS2...")
|
||
|
find_package(LCMS)
|
||
|
@@ -168,6 +179,7 @@ find_package(JPEG)
|
||
|
# Flag to use zlib with LibRaw DNG deflate codec
|
||
|
if(ZLIB_FOUND)
|
||
|
add_definitions(-DUSE_ZLIB)
|
||
|
+ string(APPEND PC_REQUIRES_PRIVATE " zlib")
|
||
|
endif()
|
||
|
|
||
|
# For registration to libraw_config.h
|
||
|
@@ -176,10 +188,11 @@ MACRO_BOOL_TO_01(ZLIB_FOUND LIBRAW_USE_DNGDEFLATECODEC)
|
||
|
# JPEG library check
|
||
|
find_package(JPEG)
|
||
|
if(JPEG_FOUND)
|
||
|
- if (${JPEG_VERSION} LESS 80)
|
||
|
+ if (${JPEG_VERSION} LESS 80 OR NOT CMAKE_REQUIRE_FIND_PACKAGE_JPEG)
|
||
|
set(JPEG8_FOUND FALSE)
|
||
|
else()
|
||
|
set(JPEG8_FOUND TRUE)
|
||
|
+ string(APPEND PC_REQUIRES_PRIVATE " libjpeg")
|
||
|
endif()
|
||
|
endif()
|
||
|
|
||
|
@@ -216,6 +229,7 @@ if(ENABLE_JASPER)
|
||
|
add_definitions(-DUSE_JASPER)
|
||
|
include_directories(${JASPER_INCLUDE_DIR})
|
||
|
set(JASPER_SUPPORT_CAN_BE_COMPILED true)
|
||
|
+ string(APPEND PC_REQUIRES_PRIVATE " jasper")
|
||
|
endif()
|
||
|
endif()
|
||
|
|
||
|
diff --git a/cmake/data/libraw.pc.cmake b/cmake/data/libraw.pc.cmake
|
||
|
index aa6ab21..90e0aae 100644
|
||
|
--- a/cmake/data/libraw.pc.cmake
|
||
|
+++ b/cmake/data/libraw.pc.cmake
|
||
|
@@ -10,3 +10,5 @@ Requires:
|
||
|
Version: @RAW_LIB_VERSION_STRING@
|
||
|
Libs: -L${libdir} -lraw
|
||
|
Cflags: -I${includedir} -I${includedir}/libraw
|
||
|
+Libs.private: @PC_LIBS_PRIVATE@
|
||
|
+Requires.private: @PC_REQUIRES_PRIVATE@
|
||
|
diff --git a/cmake/data/libraw_r.pc.cmake b/cmake/data/libraw_r.pc.cmake
|
||
|
index 4fadc36..4215e86 100644
|
||
|
--- a/cmake/data/libraw_r.pc.cmake
|
||
|
+++ b/cmake/data/libraw_r.pc.cmake
|
||
|
@@ -10,3 +10,5 @@ Requires:
|
||
|
Version: @RAW_LIB_VERSION_STRING@
|
||
|
Libs: -L${libdir} -lraw_r
|
||
|
Cflags: -I${includedir} -I${includedir}/libraw
|
||
|
+Libs.private: @PC_LIBS_PRIVATE@
|
||
|
+Requires.private: @PC_REQUIRES_PRIVATE@
|
||
|
diff --git a/cmake/librawConfig.cmake.in b/cmake/librawConfig.cmake.in
|
||
|
index b1b58d8..9b7baac 100644
|
||
|
--- a/cmake/librawConfig.cmake.in
|
||
|
+++ b/cmake/librawConfig.cmake.in
|
||
|
@@ -13,7 +13,7 @@ endif()
|
||
|
|
||
|
if(@LCMS_SUPPORT_CAN_BE_COMPILED@)
|
||
|
if(@LCMS2_FOUND@)
|
||
|
- find_dependency(LCMS2)
|
||
|
+ find_dependency(lcms2 CONFIG)
|
||
|
elseif(@LCMS_FOUND@)
|
||
|
find_dependency(LCMS)
|
||
|
endif()
|