aboutsummaryrefslogtreecommitdiff
path: root/app/src/main/jni/AppLibrary.cmake
blob: 042dfcfadda13c9e2c21fd9650e030086fa6c814 (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
25
26
include_guard()

function(add_app_library name)
    cmake_parse_arguments(PARSE_ARGV 1 arg "NO_VERSION_SCRIPT" "" "")
    add_library(${name} ${arg_UNPARSED_ARGUMENTS})

    target_compile_options(${name}
        PRIVATE
        -Wall
        -Wextra
        -Werror
    )

    if(NOT arg_NO_VERSION_SCRIPT)
        target_link_options(${name}
            PRIVATE
            -Wl,--no-undefined-version
            -Wl,--version-script,${CMAKE_SOURCE_DIR}/lib${name}.map.txt
        )

        set_target_properties(${name}
            PROPERTIES
            LINK_DEPENDS ${CMAKE_SOURCE_DIR}/lib${name}.map.txt
        )
    endif()
endfunction()