-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCMakeLists.txt
More file actions
29 lines (20 loc) · 1.01 KB
/
Copy pathCMakeLists.txt
File metadata and controls
29 lines (20 loc) · 1.01 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
cmake_minimum_required(VERSION 3.24)
project (exrkdu)
set(EXECUTABLE_OUTPUT_PATH "${CMAKE_BINARY_DIR}/bin")
# find KDU
# Path to the Kakadu SDK include directory, e.g., managed/all_includes
find_path(KDU_INCLUDE_DIR kdu_args.h PATH_SUFFIXES kakadu kdu)
# Path to the Kakadu SDK library, e.g., libkdu_v86R.so
find_library(KDU_LIBRARY NAMES kdu_v86R PATH_SUFFIXES kakadu kdu)
# Path to the Kakadu SDK auxiliary library, e.g., libkdu_a86R.so
find_library(KDU_AUX_LIBRARY NAMES kdu_a86R PATH_SUFFIXES kakadu kdu)
# add OpenEXR
add_subdirectory(ext/openexr)
# build application
add_executable(exrkdu src/main/cpp/main.cpp src/main/cpp/kdu.cpp ext/openexr/src/lib/OpenEXRCore/internal_ht_common.cpp)
target_include_directories(exrkdu PRIVATE ${KDU_INCLUDE_DIR})
target_include_directories(exrkdu PRIVATE ext/cxxopts)
target_link_libraries(exrkdu OpenEXRCore ${KDU_LIBRARY} ${KDU_AUX_LIBRARY})
if(WIN32 AND (BUILD_SHARED_LIBS OR OPENEXR_BUILD_BOTH_STATIC_SHARED))
target_compile_definitions(exrkdu PRIVATE OPENEXR_DLL)
endif()