From aa695e6baef96797101d7b7090379e36b1279efd Mon Sep 17 00:00:00 2001 From: Toni Uhlig Date: Sun, 28 Jun 2020 18:12:08 +0200 Subject: using CMake function to clonse submodules required for cnc(master|proxy) Signed-off-by: Toni Uhlig --- cmake/CMakeMillerFuncs.cmake | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'cmake/CMakeMillerFuncs.cmake') diff --git a/cmake/CMakeMillerFuncs.cmake b/cmake/CMakeMillerFuncs.cmake index a919904..223819b 100644 --- a/cmake/CMakeMillerFuncs.cmake +++ b/cmake/CMakeMillerFuncs.cmake @@ -83,3 +83,17 @@ function(CompileCSource source result cflags defs incl libs quiet) CHECK_C_SOURCE_COMPILES("${source}" ${result}) endfunction() +function(CloneGitSubmodule path) + find_package(Git QUIET) + option(GIT_SUBMODULE "Clone git submodules during build" ON) + if(GIT_SUBMODULE) + message(STATUS "Git Submodule update: ${GIT_EXECUTABLE} submodule update --init --recursive -- ${path}") + execute_process(COMMAND ${GIT_EXECUTABLE} submodule update --init --recursive -- "${path}" + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + RESULT_VARIABLE GIT_SUBMOD_RESULT + ERROR_QUIET OUTPUT_QUIET) + if(NOT GIT_SUBMOD_RESULT EQUAL "0") + message(FATAL_ERROR "Git Submodule update failed with ${GIT_SUBMOD_RESULT}.") + endif() + endif() +endfunction() -- cgit v1.2.3