diff options
Diffstat (limited to 'project/cmake/addons/depends/CMakeLists.txt')
| -rw-r--r-- | project/cmake/addons/depends/CMakeLists.txt | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/project/cmake/addons/depends/CMakeLists.txt b/project/cmake/addons/depends/CMakeLists.txt new file mode 100644 index 0000000..760acf4 --- /dev/null +++ b/project/cmake/addons/depends/CMakeLists.txt | |||
| @@ -0,0 +1,42 @@ | |||
| 1 | project(kodi-addons-depends) | ||
| 2 | |||
| 3 | cmake_minimum_required(VERSION 2.8) | ||
| 4 | |||
| 5 | list(APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}) | ||
| 6 | |||
| 7 | if(NOT CMAKE_BUILD_TYPE) | ||
| 8 | set(CMAKE_BUILD_TYPE Release) | ||
| 9 | endif() | ||
| 10 | |||
| 11 | if(NOT CORE_SYSTEM_NAME) | ||
| 12 | string(TOLOWER ${CMAKE_SYSTEM_NAME} CORE_SYSTEM_NAME) | ||
| 13 | endif() | ||
| 14 | |||
| 15 | include(ExternalProject) | ||
| 16 | |||
| 17 | if(NOT DEPENDS_PATH) | ||
| 18 | set(DEPENDS_PATH ${PROJECT_SOURCE_DIR}/../build/depends) | ||
| 19 | else() | ||
| 20 | file(TO_CMAKE_PATH "${DEPENDS_PATH}" DEPENDS_PATH) | ||
| 21 | endif() | ||
| 22 | get_filename_component(DEPENDS_PATH "${DEPENDS_PATH}" ABSOLUTE) | ||
| 23 | list(APPEND CMAKE_PREFIX_PATH ${DEPENDS_PATH}) | ||
| 24 | |||
| 25 | if(NOT BUILD_DIR) | ||
| 26 | set(BUILD_DIR "${CMAKE_BINARY_DIR}/build") | ||
| 27 | else() | ||
| 28 | file(TO_CMAKE_PATH "${BUILD_DIR}" BUILD_DIR) | ||
| 29 | endif() | ||
| 30 | get_filename_component(BUILD_DIR "${BUILD_DIR}" ABSOLUTE) | ||
| 31 | |||
| 32 | ## use add_addon_depends to handle the cmake based dependencies | ||
| 33 | include(${APP_ROOT}/project/cmake/scripts/common/handle-depends.cmake) | ||
| 34 | add_addon_depends(depends "${PROJECT_SOURCE_DIR}") | ||
| 35 | |||
| 36 | ## if there's a platform-specific sub-directory containing a CMakeLists.txt, add it to the build as well | ||
| 37 | if(EXISTS ${PROJECT_SOURCE_DIR}/${CORE_SYSTEM_NAME}/CMakeLists.txt) | ||
| 38 | message(STATUS "Processing ${CORE_SYSTEM_NAME}") | ||
| 39 | add_subdirectory(${CORE_SYSTEM_NAME}) | ||
| 40 | else() | ||
| 41 | message(STATUS "No platform specific file ${PROJECT_SOURCE_DIR}/${CORE_SYSTEM_NAME}/CMakeLists.txt found") | ||
| 42 | endif() | ||
