summaryrefslogtreecommitdiffhomepage
path: root/cmake/CompileDefinitions.cmake
blob: 0acbe2fa5b96eb30431df1b5f03ff39e9fa876f7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# Adding compile definitions
target_compile_definitions("raylib" PUBLIC "${PLATFORM_CPP}")
target_compile_definitions("raylib" PUBLIC "${GRAPHICS}")

function(define_if target variable)
    if(${${variable}})
        message(STATUS "${variable}=${${variable}}")
        target_compile_definitions(${target} PRIVATE "${variable}")
    endif()
endfunction()

if(${CUSTOMIZE_BUILD})
    target_compile_definitions("raylib" PRIVATE EXTERNAL_CONFIG_FLAGS)
    define_if("raylib" USE_AUDIO)

    foreach(FLAG IN LISTS CONFIG_HEADER_FLAGS)
        string(REGEX MATCH "([^=]+)=(.+)" _ ${FLAG})
        define_if("raylib" ${CMAKE_MATCH_1})
    endforeach()

    foreach(VALUE IN LISTS CONFIG_HEADER_VALUES)
        target_compile_definitions("raylib" PRIVATE ${VALUE})
    endforeach()
endif()