# Check if a dependency exist before trying to init git submodules
function(check_init_submodule path)
    file(
        GLOB
        DIR_CONTENT
        "${path}/*"
        )
    list(
        LENGTH
        DIR_CONTENT
        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()