summaryrefslogtreecommitdiff
path: root/cmake/toolchain/set_flags.cmake
blob: da381c254fb977ba0bec5214c7cfab1c56f01d83 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
include(CMakePrintHelpers)
foreach(LANG IN ITEMS C CXX ASM)
    # join the toolchain flags into a single string
    list(APPEND TOOLCHAIN_${LANG}_FLAGS ${TOOLCHAIN_COMMON_FLAGS})
    list(JOIN TOOLCHAIN_${LANG}_FLAGS " " TOOLCHAIN_${LANG}_FLAGS)
    set(CMAKE_${LANG}_FLAGS_INIT "${TOOLCHAIN_${LANG}_FLAGS}")

    #cmake_print_variables(CMAKE_${LANG}_FLAGS_INIT)

    # optimization flags
    set(CMAKE_${LANG}_FLAGS_DEBUG_INIT "-Og")
endforeach()

# try_compile is cmake test compiling its own example,
# pass -nostdlib to skip stdlib linking
get_property(IS_IN_TRY_COMPILE GLOBAL PROPERTY IN_TRY_COMPILE)
if(IS_IN_TRY_COMPILE)
    set(CMAKE_C_LINK_FLAGS "${CMAKE_C_LINK_FLAGS} -nostdlib")
    set(CMAKE_CXX_LINK_FLAGS "${CMAKE_CXX_LINK_FLAGS} -nostdlib")
endif()