summaryrefslogtreecommitdiffhomepage
path: root/cmake/opentrack-load-user-settings.cmake
blob: 35085b651e3f7a274927ed4a2567a590426e4f11 (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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
include_guard(GLOBAL)
if(WIN32)
    set(__sdk_username "$ENV{USERNAME}")
else()
    set(__sdk_username "$ENV{USER}")
endif()

if(".${__sdk_username}" STREQUAL ".")
    set(__sdk_username "(I-have-no-name)")
endif()

if(WIN32)
    set(__sdk_os "windows")
else()
    string(REGEX MATCH "^Linux (.+)-Microsoft\$" __sdk_os_match "${CMAKE_SYSTEM_NAME} ${CMAKE_SYSTEM_VERSION}")
    if(__sdk_os_match)
        set(__sdk_os "Windows-WSL")
    else()
        set(__sdk_os "${CMAKE_SYSTEM_NAME}")
    endif()
endif()

include(CMakeDetermineCCompiler)
include(CMakeDetermineCXXCompiler)

if(NOT CMAKE_SYSTEM_NAME STREQUAL CMAKE_HOST_SYSTEM_NAME)
    set(__sdk_os_maybe_target "${CMAKE_HOST_SYSTEM_NAME}-")
else()
    set(__sdk_os_maybe_target "")
endif()

set(__sdk_paths_basename "sdk-paths-${__sdk_username}@${CMAKE_CXX_COMPILER_ID}-${__sdk_os_maybe_target}${__sdk_os}.cmake")

set(__sdk_paths_filename "${CMAKE_SOURCE_DIR}/${__sdk_paths_basename}")

if(EXISTS "${__sdk_paths_filename}")
    message(STATUS "Loading user settings '${__sdk_paths_basename}'")
    include("${__sdk_paths_filename}")
else()
    message(STATUS "User settings file '${__sdk_paths_basename}' doesn't exist")
endif()