@@ -2,123 +2,100 @@ FIND_PACKAGE(Threads)
2
2
3
3
FIND_PACKAGE ( JPEG )
4
4
INCLUDE_DIRECTORIES ( ${JPEG_INCLUDE_DIR} )
5
- ADD_DEFINITIONS (${JPEG_DEFINITIONS} )
5
+ ADD_DEFINITIONS ( ${JPEG_DEFINITIONS} )
6
6
7
7
FIND_PACKAGE ( ZLIB )
8
8
INCLUDE_DIRECTORIES ( ${ZLIB_INCLUDE_DIR} )
9
- ADD_DEFINITIONS (${ZLIB_DEFINITIONS} )
9
+ ADD_DEFINITIONS ( ${ZLIB_DEFINITIONS} )
10
10
11
11
# =======================================================
12
12
# DNG SDK source code
13
13
14
- INCLUDE_DIRECTORIES ( ${CMAKE_CURRENT_SOURCE_DIR} /source
15
- ${CMAKE_CURRENT_SOURCE_DIR} /../xmp-sdk/public /include
16
- )
14
+ ADD_LIBRARY ( dng-sdk STATIC
15
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_1d_function.cpp
16
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_1d_table.cpp
17
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_abort_sniffer.cpp
18
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_area_task.cpp
19
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_bad_pixels.cpp
20
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_bottlenecks.cpp
21
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_camera_profile.cpp
22
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_color_space.cpp
23
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_color_spec.cpp
24
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_date_time.cpp
25
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_exceptions.cpp
26
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_exif.cpp
27
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_file_stream.cpp
28
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_filter_task.cpp
29
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_fingerprint.cpp
30
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_gain_map.cpp
31
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_globals.cpp
32
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_host.cpp
33
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_hue_sat_map.cpp
34
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_ifd.cpp
35
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_image.cpp
36
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_image_writer.cpp
37
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_info.cpp
38
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_iptc.cpp
39
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_jpeg_image.cpp
40
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_lens_correction.cpp
41
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_linearization_info.cpp
42
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_lossless_jpeg.cpp
43
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_matrix.cpp
44
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_memory.cpp
45
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_memory_stream.cpp
46
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_misc_opcodes.cpp
47
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_mosaic_info.cpp
48
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_mutex.cpp
49
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_negative.cpp
50
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_opcode_list.cpp
51
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_opcodes.cpp
52
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_orientation.cpp
53
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_parse_utils.cpp
54
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_pixel_buffer.cpp
55
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_point.cpp
56
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_preview.cpp
57
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_pthread.cpp
58
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_rational.cpp
59
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_read_image.cpp
60
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_rect.cpp
61
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_ref_counted_block.cpp
62
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_reference.cpp
63
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_render.cpp
64
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_resample.cpp
65
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_shared.cpp
66
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_simple_image.cpp
67
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_spline.cpp
68
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_stream.cpp
69
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_string.cpp
70
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_string_list.cpp
71
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_tag_types.cpp
72
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_temperature.cpp
73
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_tile_iterator.cpp
74
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_tone_curve.cpp
75
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_utils.cpp
76
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_validate.cpp
77
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_xmp.cpp
78
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_xmp_sdk.cpp
79
+ ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_xy_coord.cpp )
17
80
18
- # Set platforms env.
19
- IF (WIN32 )
20
- ADD_DEFINITIONS (
21
- # Set Windows rules.
22
- -DqWinOS=1
23
- -DqMacOS=0
24
- )
25
- ELSE (WIN32 )
26
- ADD_DEFINITIONS (
27
- # Set MACOS-X, Linux & co rules.
28
- -DqWinOS=0
29
- -DqMacOS=0
30
- -DqLinux=1
31
- -DUNIX_ENV=1
81
+ TARGET_INCLUDE_DIRECTORIES ( dng-sdk INTERFACE ${CMAKE_CURRENT_SOURCE_DIR} /source )
32
82
33
- # Must be set to 1, else do not compile under Linux.
34
- -DqDNGUseStdInt=1
35
- )
36
- ENDIF (WIN32 )
37
-
38
- # Check processor endianness
83
+ TARGET_COMPILE_DEFINITIONS ( dng-sdk PUBLIC
84
+ -DqWinOS=0 -DqMacOS=0 -DqLinux=1 # platform for dng-sdk
85
+ -DqDNGThreadSafe=1 # we're thread-safe - will use pthreads
86
+ # -DqDNG64Bit=1 # set manually to support 64bit platforms (todo: add test)
87
+ -DqDNGDebug=0 # do not compile debug code
88
+ -DqDNGValidateTarget=0 # do not build dng_validate-binary
89
+ -DqDNGUseLibJPEG=1 # use libjpeg
90
+ -DqDNGXMPFiles=0 -DqDNGXMPDocOps=0 # build minimal XMP-set
91
+ -DqDNGUseStdInt=1 ) # Must be set to 1, else do not compile under Linux.
92
+ # Check processor endianness (todo: not sure bigEndian platforms are set correctly)
39
93
INCLUDE (TestBigEndian)
40
94
TEST_BIG_ENDIAN(IS_BIG_ENDIAN)
41
95
IF (NOT IS_BIG_ENDIAN)
42
96
ADD_DEFINITIONS (-DqDNGLittleEndian=1)
43
97
ENDIF (NOT IS_BIG_ENDIAN)
44
98
45
- # Thread safe support under Mac and Linux using pthread library
46
- IF (NOT WIN32 )
47
- ADD_DEFINITIONS (-DqDNGThreadSafe=1)
48
- ENDIF (NOT WIN32 )
49
-
50
- # Level of debug info in the console.
51
- ADD_DEFINITIONS (-DqDNGDebug=0)
52
- ADD_DEFINITIONS (-DqDNGValidateTarget=0)
53
-
54
- SET ( LIBDNGSDK_SRCS
55
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_1d_function.cpp
56
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_1d_table.cpp
57
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_abort_sniffer.cpp
58
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_area_task.cpp
59
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_bad_pixels.cpp
60
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_bottlenecks.cpp
61
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_camera_profile.cpp
62
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_color_space.cpp
63
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_color_spec.cpp
64
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_date_time.cpp
65
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_exceptions.cpp
66
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_exif.cpp
67
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_file_stream.cpp
68
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_filter_task.cpp
69
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_fingerprint.cpp
70
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_gain_map.cpp
71
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_globals.cpp
72
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_host.cpp
73
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_hue_sat_map.cpp
74
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_ifd.cpp
75
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_image.cpp
76
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_image_writer.cpp
77
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_info.cpp
78
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_iptc.cpp
79
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_jpeg_image.cpp
80
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_lens_correction.cpp
81
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_linearization_info.cpp
82
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_lossless_jpeg.cpp
83
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_matrix.cpp
84
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_memory.cpp
85
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_memory_stream.cpp
86
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_misc_opcodes.cpp
87
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_mosaic_info.cpp
88
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_mutex.cpp
89
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_negative.cpp
90
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_opcode_list.cpp
91
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_opcodes.cpp
92
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_orientation.cpp
93
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_parse_utils.cpp
94
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_pixel_buffer.cpp
95
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_point.cpp
96
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_preview.cpp
97
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_pthread.cpp
98
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_rational.cpp
99
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_read_image.cpp
100
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_rect.cpp
101
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_ref_counted_block.cpp
102
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_reference.cpp
103
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_render.cpp
104
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_resample.cpp
105
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_shared.cpp
106
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_simple_image.cpp
107
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_spline.cpp
108
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_stream.cpp
109
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_string.cpp
110
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_string_list.cpp
111
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_tag_types.cpp
112
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_temperature.cpp
113
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_tile_iterator.cpp
114
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_tone_curve.cpp
115
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_utils.cpp
116
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_validate.cpp
117
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_xmp.cpp
118
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_xmp_sdk.cpp
119
- ${CMAKE_CURRENT_SOURCE_DIR} /source /dng_xy_coord.cpp
120
- )
121
-
122
- ADD_LIBRARY ( dng-sdk STATIC ${LIBDNGSDK_SRCS} )
99
+ TARGET_COMPILE_OPTIONS ( dng-sdk PRIVATE -fexceptions )
123
100
124
- TARGET_LINK_LIBRARIES ( dng-sdk xmp-sdk ${JPEG_LIBRARIES} ${ZLIB_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} )
101
+ TARGET_LINK_LIBRARIES ( dng-sdk PRIVATE xmp-sdk ${JPEG_LIBRARIES} ${ZLIB_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} )
0 commit comments