1 cmake_minimum_required(VERSION 3.12)
2 project(kodi-addons-depends)
4 list(APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR})
6 if(NOT CMAKE_BUILD_TYPE)
7 set(CMAKE_BUILD_TYPE Release)
10 if(NOT CORE_SYSTEM_NAME)
11 string(TOLOWER ${CMAKE_SYSTEM_NAME} CORE_SYSTEM_NAME)
14 include(ExternalProject)
16 if(NOT ADDON_DEPENDS_PATH)
17 set(ADDON_DEPENDS_PATH ${PROJECT_SOURCE_DIR}/../build/depends)
19 file(TO_CMAKE_PATH "${ADDON_DEPENDS_PATH}" ADDON_DEPENDS_PATH)
21 get_filename_component(ADDON_DEPENDS_PATH "${ADDON_DEPENDS_PATH}" ABSOLUTE)
22 list(APPEND CMAKE_PREFIX_PATH ${ADDON_DEPENDS_PATH})
25 set(BUILD_DIR "${CMAKE_BINARY_DIR}/build")
27 file(TO_CMAKE_PATH "${BUILD_DIR}" BUILD_DIR)
29 get_filename_component(BUILD_DIR "${BUILD_DIR}" ABSOLUTE)
31 ## use add_addon_depends to handle the cmake based dependencies
32 include(${CORE_SOURCE_DIR}/cmake/scripts/common/HandleDepends.cmake)
33 add_addon_depends(depends "${PROJECT_SOURCE_DIR}")
35 ## if there's a platform-specific sub-directory containing a CMakeLists.txt, add it to the build as well
36 if(EXISTS ${PROJECT_SOURCE_DIR}/${CORE_SYSTEM_NAME}/CMakeLists.txt)
37 message(STATUS "Processing ${CORE_SYSTEM_NAME}")
38 add_subdirectory(${CORE_SYSTEM_NAME})
40 message(STATUS "No platform specific file ${PROJECT_SOURCE_DIR}/${CORE_SYSTEM_NAME}/CMakeLists.txt found")