~aleteoryx/muditaos

ref: f3480da43ee4176bc2c91f51ed52d29e6ef36599 muditaos/cmake/modules/thirdparty.cmake -rw-r--r-- 1.1 KiB
f3480da4 — Marek Niepieklo [EGD-7269] Phone stuck on log dump operation 4 years ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
option (THIRD_PARTY_DEBUG_OPTIMIZE "Optimize third party in debug" ON)

# optimize third party sources in debug by setting source file properties
macro (third_party_source_optimization)
    if (${THIRD_PARTY_DEBUG_OPTIMIZE} AND (${CMAKE_BUILD_TYPE} STREQUAL "Debug") AND NOT (${PROJECT_TARGET} STREQUAL "TARGET_Linux"))
        set_property(SOURCE ${ARGV} APPEND_STRING PROPERTY COMPILE_FLAGS " -Os")
    endif ()
endmacro ()

# setup flags for a third party target
macro (third_party_target_setup TARGET_NAME)
    target_compile_definitions(${TARGET_NAME} PUBLIC ${PROJECT_CONFIG_DEFINITIONS})
    target_compile_definitions(${TARGET_NAME} PUBLIC ${PROJECT_TARGET})
    target_compile_definitions(${TARGET_NAME} PUBLIC ${TARGET_COMPILE_DEFINITIONS})
    target_include_directories(${TARGET_NAME} PUBLIC ${BOARD_DIR_INCLUDES} )
    target_include_directories(${TARGET_NAME} PUBLIC ${PROJECT_INCLUDES})
    target_compile_features(${TARGET_NAME} PUBLIC ${TARGET_COMPILE_FEATURES})
    target_compile_options(${TARGET_NAME} PUBLIC ${TARGET_COMPILE_OPTIONS})
    target_link_options(${TARGET_NAME} PUBLIC ${TARGET_LINK_OPTIONS})
endmacro ()