mirror of
https://github.com/msgpack/msgpack-c.git
synced 2025-06-26 06:25:22 +02:00
Fixed #1025.
Propagate compiler options that are decided by cmake options to the parent project.
This commit is contained in:
parent
25c3947a91
commit
12be5d06e3
@ -4,6 +4,8 @@ CMAKE_POLICY (SET CMP0054 NEW)
|
||||
|
||||
PROJECT (msgpack LANGUAGES CXX)
|
||||
|
||||
ADD_LIBRARY (msgpackc-cxx INTERFACE)
|
||||
|
||||
FILE (READ ${CMAKE_CURRENT_SOURCE_DIR}/include/msgpack/version_master.hpp contents)
|
||||
STRING (REGEX MATCH "#define MSGPACK_VERSION_MAJOR *([0-9a-zA-Z_]*)" NULL_OUT ${contents})
|
||||
SET (VERSION_MAJOR ${CMAKE_MATCH_1})
|
||||
@ -55,11 +57,11 @@ ENDIF ()
|
||||
|
||||
IF (MSGPACK_32BIT)
|
||||
IF ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
|
||||
SET (CMAKE_CXX_FLAGS "-m32 ${CMAKE_CXX_FLAGS}")
|
||||
SET (CMAKE_EXE_LINKER_FLAGS "-m32 ${CMAKE_EXE_LINKER_FLAGS}")
|
||||
TARGET_COMPILE_OPTIONS(msgpackc-cxx INTERFACE -m32)
|
||||
TARGET_LINK_OPTIONS(msgpackc-cxx INTERFACE -m32)
|
||||
ELSEIF ("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang")
|
||||
SET (CMAKE_CXX_FLAGS "-m32 ${CMAKE_CXX_FLAGS}")
|
||||
SET (CMAKE_EXE_LINKER_FLAGS "-m32 ${CMAKE_EXE_LINKER_FLAGS}")
|
||||
TARGET_COMPILE_OPTIONS(msgpackc-cxx INTERFACE -m32)
|
||||
TARGET_LINK_OPTIONS(msgpackc-cxx INTERFACE -m32)
|
||||
ENDIF ()
|
||||
ENDIF ()
|
||||
|
||||
@ -76,18 +78,18 @@ IF (MSGPACK_USE_BOOST)
|
||||
|
||||
FIND_PACKAGE (Boost REQUIRED)
|
||||
ELSE ()
|
||||
SET (CMAKE_CXX_FLAGS "-DMSGPACK_NO_BOOST ${CMAKE_CXX_FLAGS}")
|
||||
TARGET_COMPILE_DEFINITIONS(msgpackc-cxx INTERFACE MSGPACK_NO_BOOST)
|
||||
ENDIF ()
|
||||
|
||||
IF (MSGPACK_CHAR_SIGN)
|
||||
SET (CMAKE_CXX_FLAGS "-f${MSGPACK_CHAR_SIGN}-char ${CMAKE_CXX_FLAGS}")
|
||||
TARGET_COMPILE_OPTIONS(msgpackc-cxx INTERFACE -f${MSGPACK_CHAR_SIGN}-char)
|
||||
ENDIF ()
|
||||
|
||||
IF (MSGPACK_DEFAULT_API_VERSION)
|
||||
SET (CMAKE_CXX_FLAGS "-DMSGPACK_DEFAULT_API_VERSION=${MSGPACK_DEFAULT_API_VERSION} ${CMAKE_CXX_FLAGS}")
|
||||
TARGET_COMPILE_DEFINITIONS(msgpackc-cxx INTERFACE MSGPACK_DEFAULT_API_VERSION=${MSGPACK_DEFAULT_API_VERSION})
|
||||
ELSE ()
|
||||
SET (MSGPACK_DEFAULT_API_VERSION 3)
|
||||
SET (CMAKE_CXX_FLAGS "-DMSGPACK_DEFAULT_API_VERSION=3 ${CMAKE_CXX_FLAGS}")
|
||||
TARGET_COMPILE_DEFINITIONS(msgpackc-cxx INTERFACE MSGPACK_DEFAULT_API_VERSION=3)
|
||||
ENDIF ()
|
||||
|
||||
IF ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
|
||||
@ -110,8 +112,6 @@ ENDIF ()
|
||||
|
||||
INCLUDE (Files.cmake)
|
||||
|
||||
ADD_LIBRARY (msgpackc-cxx INTERFACE)
|
||||
|
||||
TARGET_INCLUDE_DIRECTORIES (msgpackc-cxx
|
||||
INTERFACE
|
||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
|
||||
@ -134,7 +134,6 @@ IF (MSGPACK_GEN_COVERAGE)
|
||||
|
||||
INCLUDE (CodeCoverage)
|
||||
SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${COVERAGE_FLAGS}")
|
||||
|
||||
SETUP_TARGET_FOR_COVERAGE(coverage make coverage test)
|
||||
ENDIF ()
|
||||
|
||||
@ -157,7 +156,7 @@ IF (MSGPACK_FUZZ_REGRESSION)
|
||||
ENDIF ()
|
||||
|
||||
IF ("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "sparc")
|
||||
SET (CMAKE_CXX_FLAGS "-DMSGPACK_ZONE_ALIGN=8 ${CMAKE_CXX_FLAGS}")
|
||||
TARGET_COMPILE_DEFINITIONS(msgpackc-cxx INTERFACE MSGPACK_ZONE_ALIGN=8)
|
||||
ENDIF ()
|
||||
|
||||
IF (MSGPACK_BUILD_EXAMPLES)
|
||||
|
Loading…
x
Reference in New Issue
Block a user