summaryrefslogtreecommitdiffhomepage
path: root/cmake/opentrack-load-user-settings.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'cmake/opentrack-load-user-settings.cmake')
-rw-r--r--cmake/opentrack-load-user-settings.cmake36
1 files changed, 36 insertions, 0 deletions
diff --git a/cmake/opentrack-load-user-settings.cmake b/cmake/opentrack-load-user-settings.cmake
new file mode 100644
index 00000000..fdb63936
--- /dev/null
+++ b/cmake/opentrack-load-user-settings.cmake
@@ -0,0 +1,36 @@
+include_guard(GLOBAL)
+if(CMAKE_HOST_SYSTEM_NAME STREQUAL "Windows")
+ 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_target_os "windows")
+else()
+ string(REGEX MATCH "^Linux (.+)-Microsoft\$" __sdk_target_os_match "${CMAKE_SYSTEM_NAME} ${CMAKE_SYSTEM_VERSION}")
+ if(__sdk_target_os_match)
+ set(__sdk_target_os "Windows-WSL")
+ else()
+ set(__sdk_target_os "${CMAKE_SYSTEM_NAME}")
+ endif()
+endif()
+
+if(NOT CMAKE_SYSTEM_NAME STREQUAL CMAKE_HOST_SYSTEM_NAME)
+ set(__sdk_host_os "${CMAKE_HOST_SYSTEM_NAME}-cross-")
+else()
+ set(__sdk_host_os "")
+endif()
+
+set(__sdk_paths_filename "${CMAKE_CURRENT_SOURCE_DIR}/sdk-paths-${__sdk_username}@${CMAKE_CXX_COMPILER_ID}-${__sdk_host_os}${__sdk_target_os}.cmake")
+
+if(EXISTS "${__sdk_paths_filename}")
+ message(STATUS "Loading user settings '${__sdk_paths_filename}'")
+ include("${__sdk_paths_filename}")
+else()
+ message(STATUS "User settings file '${__sdk_paths_filename}' doesn't exist")
+endif()