summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt26
1 files changed, 10 insertions, 16 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index d91fb6c..352095c 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -9,22 +9,16 @@ set(GRAS_VERSION "0.0.0")
set(GRAS_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR})
set(GRAS_BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR})
-function(GRAS_CHECK_SUBMODULE directory)
- if(NOT EXISTS ${GRAS_SOURCE_DIR}/${directory}/CMakeLists.txt)
- message(FATAL_ERROR "
-submodule ${directory} does not exist!!
-Did you remember to run the following commands?
- git submodule init
- git submodule update
-")
- endif()
-endfunction(GRAS_CHECK_SUBMODULE)
-
-GRAS_CHECK_SUBMODULE(Theron)
-GRAS_CHECK_SUBMODULE(Apology)
-GRAS_CHECK_SUBMODULE(PMC)
-GRAS_CHECK_SUBMODULE(gnuradio)
-GRAS_CHECK_SUBMODULE(grextras)
+if(NOT EXISTS ${GRAS_SOURCE_DIR}/Theron/CMakeLists.txt)
+ find_program(GIT_EXECUTABLE names git eg)
+ message(STATUS "Cloning Git submodules.
+ ")
+ execute_process(
+ COMMAND ${GIT_EXECUTABLE} submodule init
+ COMMAND ${GIT_EXECUTABLE} submodule update
+ WORKING_DIRECTORY ${GRAS_SOURCE_DIR}
+ )
+endif(NOT EXISTS ${GRAS_SOURCE_DIR}/Theron/CMakeLists.txt)
list(APPEND CMAKE_MODULE_PATH ${GRAS_SOURCE_DIR}/PMC/cmake/Modules)
include(CMakeDefsHelper)