aboutsummaryrefslogtreecommitdiff
path: root/cmake/utils.cmake
diff options
context:
space:
mode:
authorJan <sentrycraft123@gmail.com>2023-07-22 02:22:26 +0200
committerGitHub <noreply@github.com>2023-07-22 02:22:26 +0200
commitd3fb76f889101f024f410c194a66f0f4a2f6c4a0 (patch)
tree9739770458ee74e28474949b8e5e310c20f4734a /cmake/utils.cmake
parent9841d698f89e1ec6cc9b0c04df10bad6010a54fe (diff)
downloadNorthstarLauncher-d3fb76f889101f024f410c194a66f0f4a2f6c4a0.tar.gz
NorthstarLauncher-d3fb76f889101f024f410c194a66f0f4a2f6c4a0.zip
Replace vendored libcurl and minhook with submodules (#500)v1.17.1-rc1
* Replace vendored libcurl and minhook with submodules * Add cmake utility for checking submodules and initializing them * Update build instructions to use Git
Diffstat (limited to 'cmake/utils.cmake')
-rw-r--r--cmake/utils.cmake25
1 files changed, 25 insertions, 0 deletions
diff --git a/cmake/utils.cmake b/cmake/utils.cmake
new file mode 100644
index 00000000..e38b9eab
--- /dev/null
+++ b/cmake/utils.cmake
@@ -0,0 +1,25 @@
+
+# Check if a dependency exist before trying to init git submodules
+function(check_init_submodule path)
+ file(GLOB DIR_CONTENT path)
+ list(LENGTH RESULT CONTENT_COUNT)
+ if (CONTENT_COUNT EQUAL 0)
+ if (NOT EXISTS "${PROJECT_SOURCE_DIR}/.git")
+ message(FATAL_ERROR "Failed to find third party dependency in '${path}'")
+ endif()
+
+ find_package(Git QUIET)
+ if (NOT Git_FOUND)
+ message(FATAL_ERROR "Failed to find Git, third party dependency could not be setup at `${path}")
+ endif()
+
+ message(STATUS "Setting up dependencies as git submodules")
+ execute_process(COMMAND ${GIT_EXECUTABLE} submodule update --init --recursive
+ WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
+ RESULT_VARIABLE GIT_SUBMOD_RESULT)
+
+ if(NOT GIT_SUBMOD_RESULT EQUAL "0")
+ message(FATAL_ERROR "Initializing Git submodules failed with ${GIT_SUBMOD_RESULT}")
+ endif()
+ endif()
+endfunction()