summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoger Leigh <rleigh@codelibre.net>2021-02-07 23:29:19 +0000
committerRoger Leigh <rleigh@codelibre.net>2021-02-13 12:24:53 +0000
commit0f29278758af18eb70aaa58aeb15935e782eaa1c (patch)
treebaa61c54c4c88ff59da423a2727aaaaf0162547a
parent5d7bf92ec2661621accb67d4dd417c0b93ba9fdb (diff)
downloadlibtiff-git-0f29278758af18eb70aaa58aeb15935e782eaa1c.tar.gz
cmake: Move JPEG12 checks to JPEGCodec.cmake
-rw-r--r--CMakeLists.txt26
-rw-r--r--cmake/JPEGCodec.cmake16
-rwxr-xr-xlibtiff/CMakeLists.txt4
3 files changed, 20 insertions, 26 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 79de064a..c5fe0a00 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -111,22 +111,6 @@ include(LZMACodec)
include(ZSTDCodec)
include(WebPCodec)
-# 8/12-bit jpeg mode
-set(JPEG12_INCLUDE_DIR JPEG12_INCLUDE_DIR-NOTFOUND CACHE PATH "Include directory for 12-bit libjpeg")
-set(JPEG12_LIBRARY JPEG12_LIBRARY-NOTFOUND CACHE FILEPATH "12-bit libjpeg library")
-set(JPEG_DUAL_MODE_8_12 FALSE)
-if (JPEG12_INCLUDE_DIR AND JPEG12_LIBRARY)
- set(JPEG12_LIBRARIES ${JPEG12_LIBRARY})
- set(JPEG12_FOUND TRUE)
-else()
- set(JPEG12_FOUND FALSE)
-endif()
-option(jpeg12 "enable libjpeg 8/12-bit dual mode (requires separate 12-bit libjpeg build)" ${JPEG12_FOUND})
-if (jpeg12 AND JPEG12_FOUND)
- set(JPEG_DUAL_MODE_8_12 TRUE)
- set(LIBJPEG_12_PATH "${JPEG12_INCLUDE_DIR}/jpeglib.h")
-endif()
-
# C++ support
option(cxx "Enable C++ stream API building (requires C++ compiler)" ON)
set(CXX_SUPPORT FALSE)
@@ -187,21 +171,11 @@ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/libtiff-4.pc.in
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/libtiff-4.pc
DESTINATION "${CMAKE_INSTALL_FULL_LIBDIR}/pkgconfig")
-# Includes used by libtiff (and tests)
-if(JPEG12_INCLUDE_DIR)
- list(APPEND TIFF_INCLUDES ${JPEG12_INCLUDE_DIR})
-endif()
-
# Libraries required by libtiff
set(TIFF_LIBRARY_DEPS)
if(NOT MINGW AND M_LIBRARY)
list(APPEND TIFF_LIBRARY_DEPS "m")
endif()
-if(JPEG12_LIBRARIES)
- list(APPEND TIFF_LIBRARY_DEPS ${JPEG12_LIBRARIES})
-endif()
-
-report_values(TIFF_INCLUDES TIFF_LIBRARY_DEPS)
# Process subdirectories
add_subdirectory(port)
diff --git a/cmake/JPEGCodec.cmake b/cmake/JPEGCodec.cmake
index 29c55e6f..5b295851 100644
--- a/cmake/JPEGCodec.cmake
+++ b/cmake/JPEGCodec.cmake
@@ -38,3 +38,19 @@ option(old-jpeg "support for Old JPEG compression (read-only)" ${JPEG_SUPPORT})
if (old-jpeg AND JPEG_SUPPORT)
set(OJPEG_SUPPORT TRUE)
endif()
+
+# 8/12-bit jpeg mode
+set(JPEG12_INCLUDE_DIR JPEG12_INCLUDE_DIR-NOTFOUND CACHE PATH "Include directory for 12-bit libjpeg")
+set(JPEG12_LIBRARY JPEG12_LIBRARY-NOTFOUND CACHE FILEPATH "12-bit libjpeg library")
+set(JPEG_DUAL_MODE_8_12 FALSE)
+if (JPEG12_INCLUDE_DIR AND JPEG12_LIBRARY)
+ set(JPEG12_LIBRARIES ${JPEG12_LIBRARY})
+ set(JPEG12_FOUND TRUE)
+else()
+ set(JPEG12_FOUND FALSE)
+endif()
+option(jpeg12 "enable libjpeg 8/12-bit dual mode (requires separate 12-bit libjpeg build)" ${JPEG12_FOUND})
+if (jpeg12 AND JPEG12_FOUND)
+ set(JPEG_DUAL_MODE_8_12 TRUE)
+ set(LIBJPEG_12_PATH "${JPEG12_INCLUDE_DIR}/jpeglib.h")
+endif()
diff --git a/libtiff/CMakeLists.txt b/libtiff/CMakeLists.txt
index 4a644050..a8a3ab9e 100755
--- a/libtiff/CMakeLists.txt
+++ b/libtiff/CMakeLists.txt
@@ -113,6 +113,10 @@ if(ZIP_SUPPORT AND LIBDEFLATE_SUPPORT)
endif()
if(JPEG_SUPPORT)
target_link_libraries(tiff PRIVATE JPEG::JPEG)
+ if(JPEG_DUAL_MODE_8_12)
+ target_include_directories(tiff PRIVATE ${JPEG12_INCLUDE_DIR})
+ target_link_libraries(tiff PRIVATE ${JPEG12_LIBRARIES})
+ endif()
endif()
if(JBIG_SUPPORT)
target_link_libraries(tiff PRIVATE JBIG::JBIG)