Skip to content

Commit 3998a5d

Browse files
FimagenaFimagena
Fimagena
authored and
Fimagena
committed
Simplify build-files
Simplify cmake files - remove partial windows-support: was incomplete and never tested anyway - be much stricter with option/definition visibility and other clean-ups
1 parent 6b91613 commit 3998a5d

File tree

6 files changed

+138
-254
lines changed

6 files changed

+138
-254
lines changed

CMakeLists.txt

+1-10
Original file line numberDiff line numberDiff line change
@@ -5,16 +5,7 @@ CMAKE_MINIMUM_REQUIRED( VERSION 2.8 )
55
# where to look first for cmake modules, before ${CMAKE_ROOT}/Modules/ is checked
66
SET(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake-modules")
77

8-
IF( MINGW OR UNIX )
9-
ADD_DEFINITIONS(-Wall
10-
-Wcast-align
11-
-Wpointer-arith
12-
-Wformat-security
13-
-Wmissing-format-attribute
14-
-Woverloaded-virtual
15-
-W
16-
)
17-
ENDIF( MINGW OR UNIX )
8+
ADD_COMPILE_OPTIONS( -Wall )
189

1910
ADD_SUBDIRECTORY( libdng )
2011
ADD_SUBDIRECTORY( raw2dng )

libdng/CMakeLists.txt

+5-30
Original file line numberDiff line numberDiff line change
@@ -4,39 +4,14 @@ ADD_SUBDIRECTORY(dng-sdk)
44

55
FIND_PACKAGE(Threads)
66

7-
IF(WIN32)
8-
ADD_DEFINITIONS(
9-
# Set Windows rules.
10-
-DqWinOS=1
11-
-DqMacOS=0
12-
)
13-
ELSE(WIN32)
14-
ADD_DEFINITIONS(
15-
# Set MACOS-X, Linux & co rules.
16-
-DqWinOS=0
17-
-DqMacOS=0
18-
)
19-
ENDIF(WIN32)
20-
217
# =======================================================
228
# libdng source code
239

24-
INCLUDE_DIRECTORIES( ${CMAKE_CURRENT_SOURCE_DIR}
25-
${CMAKE_CURRENT_SOURCE_DIR}/dng-sdk/source
26-
)
27-
28-
# Add standalone C++ header files to this list
29-
SET( LIBDNG_HDR ${CMAKE_CURRENT_SOURCE_DIR}/dnghost.h )
30-
31-
# Add library C++ source files to this list
32-
SET( LIBDNG_SRCS ${CMAKE_CURRENT_SOURCE_DIR}/dnghost.cpp )
10+
ADD_LIBRARY( dng STATIC ${CMAKE_CURRENT_SOURCE_DIR}/dnghost.cpp )
3311

34-
# Library
35-
ADD_LIBRARY( dng STATIC ${LIBDNG_SRCS} )
12+
TARGET_INCLUDE_DIRECTORIES( dng INTERFACE ${CMAKE_CURRENT_SOURCE_DIR} )
13+
TARGET_COMPILE_DEFINITIONS( dng PRIVATE -DkLocalUseThreads=1 )
14+
TARGET_COMPILE_OPTIONS( dng PRIVATE -fexceptions )
3615

3716
TARGET_LINK_LIBRARIES( dng dng-sdk ${CMAKE_THREAD_LIBS_INIT} )
38-
39-
# add the install targets
40-
#INSTALL(TARGETS dng DESTINATION lib)
41-
#INSTALL(FILES ${LIBDNG_HDR} DESTINATION include)
42-
17+

libdng/dng-sdk/CMakeLists.txt

+81-104
Original file line numberDiff line numberDiff line change
@@ -2,123 +2,100 @@ FIND_PACKAGE(Threads)
22

33
FIND_PACKAGE( JPEG )
44
INCLUDE_DIRECTORIES( ${JPEG_INCLUDE_DIR} )
5-
ADD_DEFINITIONS(${JPEG_DEFINITIONS})
5+
ADD_DEFINITIONS( ${JPEG_DEFINITIONS} )
66

77
FIND_PACKAGE( ZLIB )
88
INCLUDE_DIRECTORIES( ${ZLIB_INCLUDE_DIR} )
9-
ADD_DEFINITIONS(${ZLIB_DEFINITIONS})
9+
ADD_DEFINITIONS( ${ZLIB_DEFINITIONS} )
1010

1111
# =======================================================
1212
# DNG SDK source code
1313

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 )
1780

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 )
3282

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)
3993
INCLUDE(TestBigEndian)
4094
TEST_BIG_ENDIAN(IS_BIG_ENDIAN)
4195
IF(NOT IS_BIG_ENDIAN)
4296
ADD_DEFINITIONS(-DqDNGLittleEndian=1)
4397
ENDIF(NOT IS_BIG_ENDIAN)
4498

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 )
123100

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} )

libdng/md5/CMakeLists.txt

+3-5
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
# =======================================================
22
# MD5 source code.
33

4-
SET( LIBMD5_SRCS ${CMAKE_CURRENT_SOURCE_DIR}/MD5.cpp)
5-
6-
ADD_LIBRARY( md5 STATIC ${LIBMD5_SRCS} )
7-
8-
TARGET_LINK_LIBRARIES( md5 )
4+
ADD_LIBRARY( md5 STATIC MD5.cpp )
5+
TARGET_COMPILE_OPTIONS( md5 PRIVATE -w )
6+
TARGET_INCLUDE_DIRECTORIES( md5 INTERFACE ${CMAKE_CURRENT_SOURCE_DIR} )

libdng/xmp-sdk/CMakeLists.txt

+33-46
Original file line numberDiff line numberDiff line change
@@ -5,51 +5,38 @@ ADD_DEFINITIONS(${EXPAT_DEFINITIONS})
55
# =======================================================
66
# XMP SDK source code.
77

8-
INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/public/include
9-
${CMAKE_CURRENT_SOURCE_DIR}/../md5
10-
${CMAKE_CURRENT_SOURCE_DIR}
11-
)
8+
ADD_LIBRARY( xmp-sdk STATIC
9+
${CMAKE_CURRENT_SOURCE_DIR}/source/Host_IO-POSIX.cpp
10+
# ${CMAKE_CURRENT_SOURCE_DIR}/source/Host_IO-Win.cpp
11+
${CMAKE_CURRENT_SOURCE_DIR}/source/IOUtils.cpp
12+
${CMAKE_CURRENT_SOURCE_DIR}/source/PerfUtils.cpp
13+
${CMAKE_CURRENT_SOURCE_DIR}/source/SafeStringAPIs.cpp
14+
${CMAKE_CURRENT_SOURCE_DIR}/source/UnicodeConversions.cpp
15+
${CMAKE_CURRENT_SOURCE_DIR}/source/XIO.cpp
16+
${CMAKE_CURRENT_SOURCE_DIR}/source/XML_Node.cpp
17+
${CMAKE_CURRENT_SOURCE_DIR}/source/XMP_LibUtils.cpp
18+
${CMAKE_CURRENT_SOURCE_DIR}/source/XMP_ProgressTracker.cpp
19+
${CMAKE_CURRENT_SOURCE_DIR}/source/XMPFiles_IO.cpp
20+
${CMAKE_CURRENT_SOURCE_DIR}/XMPCore/source/ExpatAdapter.cpp
21+
${CMAKE_CURRENT_SOURCE_DIR}/XMPCore/source/ParseRDF.cpp
22+
${CMAKE_CURRENT_SOURCE_DIR}/XMPCore/source/WXMPIterator.cpp
23+
${CMAKE_CURRENT_SOURCE_DIR}/XMPCore/source/WXMPMeta.cpp
24+
${CMAKE_CURRENT_SOURCE_DIR}/XMPCore/source/WXMPUtils.cpp
25+
${CMAKE_CURRENT_SOURCE_DIR}/XMPCore/source/XMPCore_Impl.cpp
26+
${CMAKE_CURRENT_SOURCE_DIR}/XMPCore/source/XMPIterator.cpp
27+
${CMAKE_CURRENT_SOURCE_DIR}/XMPCore/source/XMPMeta-GetSet.cpp
28+
${CMAKE_CURRENT_SOURCE_DIR}/XMPCore/source/XMPMeta-Parse.cpp
29+
${CMAKE_CURRENT_SOURCE_DIR}/XMPCore/source/XMPMeta-Serialize.cpp
30+
${CMAKE_CURRENT_SOURCE_DIR}/XMPCore/source/XMPMeta.cpp
31+
${CMAKE_CURRENT_SOURCE_DIR}/XMPCore/source/XMPUtils-FileInfo.cpp
32+
${CMAKE_CURRENT_SOURCE_DIR}/XMPCore/source/XMPUtils.cpp )
1233

13-
# Set platforms env.
14-
IF(WIN32)
15-
ADD_DEFINITIONS(
16-
# Set Windows rules.
17-
-DWIN_ENV=1
18-
)
19-
ELSE(WIN32)
20-
ADD_DEFINITIONS(
21-
# Set MACOS-X, Linux & co rules.
22-
-DUNIX_ENV=1
23-
)
24-
ENDIF(WIN32)
34+
TARGET_INCLUDE_DIRECTORIES( xmp-sdk PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/public/include
35+
PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} )
36+
TARGET_COMPILE_DEFINITIONS( xmp-sdk PUBLIC
37+
-DUNIX_ENV=1 # Windows is -DWIN_ENV=1
38+
# -XMP_64=1 # manually set 64-bit
39+
)
40+
TARGET_COMPILE_OPTIONS( xmp-sdk PRIVATE -w )
2541

26-
SET( LIBXMP-SDK_SRCS
27-
${CMAKE_CURRENT_SOURCE_DIR}/source/Host_IO-POSIX.cpp
28-
# ${CMAKE_CURRENT_SOURCE_DIR}/source/Host_IO-Win.cpp
29-
${CMAKE_CURRENT_SOURCE_DIR}/source/IOUtils.cpp
30-
${CMAKE_CURRENT_SOURCE_DIR}/source/PerfUtils.cpp
31-
${CMAKE_CURRENT_SOURCE_DIR}/source/SafeStringAPIs.cpp
32-
${CMAKE_CURRENT_SOURCE_DIR}/source/UnicodeConversions.cpp
33-
${CMAKE_CURRENT_SOURCE_DIR}/source/XIO.cpp
34-
${CMAKE_CURRENT_SOURCE_DIR}/source/XML_Node.cpp
35-
${CMAKE_CURRENT_SOURCE_DIR}/source/XMP_LibUtils.cpp
36-
${CMAKE_CURRENT_SOURCE_DIR}/source/XMP_ProgressTracker.cpp
37-
${CMAKE_CURRENT_SOURCE_DIR}/source/XMPFiles_IO.cpp
38-
${CMAKE_CURRENT_SOURCE_DIR}/XMPCore/source/ExpatAdapter.cpp
39-
${CMAKE_CURRENT_SOURCE_DIR}/XMPCore/source/ParseRDF.cpp
40-
${CMAKE_CURRENT_SOURCE_DIR}/XMPCore/source/WXMPIterator.cpp
41-
${CMAKE_CURRENT_SOURCE_DIR}/XMPCore/source/WXMPMeta.cpp
42-
${CMAKE_CURRENT_SOURCE_DIR}/XMPCore/source/WXMPUtils.cpp
43-
${CMAKE_CURRENT_SOURCE_DIR}/XMPCore/source/XMPCore_Impl.cpp
44-
${CMAKE_CURRENT_SOURCE_DIR}/XMPCore/source/XMPIterator.cpp
45-
${CMAKE_CURRENT_SOURCE_DIR}/XMPCore/source/XMPMeta-GetSet.cpp
46-
${CMAKE_CURRENT_SOURCE_DIR}/XMPCore/source/XMPMeta-Parse.cpp
47-
${CMAKE_CURRENT_SOURCE_DIR}/XMPCore/source/XMPMeta-Serialize.cpp
48-
${CMAKE_CURRENT_SOURCE_DIR}/XMPCore/source/XMPMeta.cpp
49-
${CMAKE_CURRENT_SOURCE_DIR}/XMPCore/source/XMPUtils-FileInfo.cpp
50-
${CMAKE_CURRENT_SOURCE_DIR}/XMPCore/source/XMPUtils.cpp
51-
)
52-
53-
ADD_LIBRARY( xmp-sdk STATIC ${LIBXMP-SDK_SRCS} )
54-
55-
TARGET_LINK_LIBRARIES( xmp-sdk md5 ${EXPAT_LIBRARIES} )
42+
TARGET_LINK_LIBRARIES( xmp-sdk PRIVATE md5 ${EXPAT_LIBRARIES} )

0 commit comments

Comments
 (0)