Skip to content

Commit cef8a6f

Browse files
authored
Merge pull request #1028 from redboltz/fix_1025
Fixed #1025.
2 parents cd5ba50 + 12be5d0 commit cef8a6f

File tree

1 file changed

+11
-12
lines changed

1 file changed

+11
-12
lines changed

CMakeLists.txt

Lines changed: 11 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@ CMAKE_POLICY (SET CMP0054 NEW)
44

55
PROJECT (msgpack LANGUAGES CXX)
66

7+
ADD_LIBRARY (msgpackc-cxx INTERFACE)
8+
79
FILE (READ ${CMAKE_CURRENT_SOURCE_DIR}/include/msgpack/version_master.hpp contents)
810
STRING (REGEX MATCH "#define MSGPACK_VERSION_MAJOR *([0-9a-zA-Z_]*)" NULL_OUT ${contents})
911
SET (VERSION_MAJOR ${CMAKE_MATCH_1})
@@ -55,11 +57,11 @@ ENDIF ()
5557

5658
IF (MSGPACK_32BIT)
5759
IF ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
58-
SET (CMAKE_CXX_FLAGS "-m32 ${CMAKE_CXX_FLAGS}")
59-
SET (CMAKE_EXE_LINKER_FLAGS "-m32 ${CMAKE_EXE_LINKER_FLAGS}")
60+
TARGET_COMPILE_OPTIONS(msgpackc-cxx INTERFACE -m32)
61+
TARGET_LINK_OPTIONS(msgpackc-cxx INTERFACE -m32)
6062
ELSEIF ("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang")
61-
SET (CMAKE_CXX_FLAGS "-m32 ${CMAKE_CXX_FLAGS}")
62-
SET (CMAKE_EXE_LINKER_FLAGS "-m32 ${CMAKE_EXE_LINKER_FLAGS}")
63+
TARGET_COMPILE_OPTIONS(msgpackc-cxx INTERFACE -m32)
64+
TARGET_LINK_OPTIONS(msgpackc-cxx INTERFACE -m32)
6365
ENDIF ()
6466
ENDIF ()
6567

@@ -76,18 +78,18 @@ IF (MSGPACK_USE_BOOST)
7678

7779
FIND_PACKAGE (Boost REQUIRED)
7880
ELSE ()
79-
SET (CMAKE_CXX_FLAGS "-DMSGPACK_NO_BOOST ${CMAKE_CXX_FLAGS}")
81+
TARGET_COMPILE_DEFINITIONS(msgpackc-cxx INTERFACE MSGPACK_NO_BOOST)
8082
ENDIF ()
8183

8284
IF (MSGPACK_CHAR_SIGN)
83-
SET (CMAKE_CXX_FLAGS "-f${MSGPACK_CHAR_SIGN}-char ${CMAKE_CXX_FLAGS}")
85+
TARGET_COMPILE_OPTIONS(msgpackc-cxx INTERFACE -f${MSGPACK_CHAR_SIGN}-char)
8486
ENDIF ()
8587

8688
IF (MSGPACK_DEFAULT_API_VERSION)
87-
SET (CMAKE_CXX_FLAGS "-DMSGPACK_DEFAULT_API_VERSION=${MSGPACK_DEFAULT_API_VERSION} ${CMAKE_CXX_FLAGS}")
89+
TARGET_COMPILE_DEFINITIONS(msgpackc-cxx INTERFACE MSGPACK_DEFAULT_API_VERSION=${MSGPACK_DEFAULT_API_VERSION})
8890
ELSE ()
8991
SET (MSGPACK_DEFAULT_API_VERSION 3)
90-
SET (CMAKE_CXX_FLAGS "-DMSGPACK_DEFAULT_API_VERSION=3 ${CMAKE_CXX_FLAGS}")
92+
TARGET_COMPILE_DEFINITIONS(msgpackc-cxx INTERFACE MSGPACK_DEFAULT_API_VERSION=3)
9193
ENDIF ()
9294

9395
IF ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
@@ -110,8 +112,6 @@ ENDIF ()
110112

111113
INCLUDE (Files.cmake)
112114

113-
ADD_LIBRARY (msgpackc-cxx INTERFACE)
114-
115115
TARGET_INCLUDE_DIRECTORIES (msgpackc-cxx
116116
INTERFACE
117117
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
@@ -134,7 +134,6 @@ IF (MSGPACK_GEN_COVERAGE)
134134

135135
INCLUDE (CodeCoverage)
136136
SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${COVERAGE_FLAGS}")
137-
138137
SETUP_TARGET_FOR_COVERAGE(coverage make coverage test)
139138
ENDIF ()
140139

@@ -157,7 +156,7 @@ IF (MSGPACK_FUZZ_REGRESSION)
157156
ENDIF ()
158157

159158
IF ("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "sparc")
160-
SET (CMAKE_CXX_FLAGS "-DMSGPACK_ZONE_ALIGN=8 ${CMAKE_CXX_FLAGS}")
159+
TARGET_COMPILE_DEFINITIONS(msgpackc-cxx INTERFACE MSGPACK_ZONE_ALIGN=8)
161160
ENDIF ()
162161

163162
IF (MSGPACK_BUILD_EXAMPLES)

0 commit comments

Comments
 (0)