summaryrefslogtreecommitdiffstats
path: root/cmake/addons/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'cmake/addons/CMakeLists.txt')
-rw-r--r--cmake/addons/CMakeLists.txt27
1 files changed, 21 insertions, 6 deletions
diff --git a/cmake/addons/CMakeLists.txt b/cmake/addons/CMakeLists.txt
index 5fc798b..3dccc01 100644
--- a/cmake/addons/CMakeLists.txt
+++ b/cmake/addons/CMakeLists.txt
@@ -80,6 +80,8 @@ if (CMAKE_SYSTEM_NAME STREQUAL WindowsStore)
80 -DCMAKE_SYSTEM_VERSION=${CMAKE_SYSTEM_VERSION}) 80 -DCMAKE_SYSTEM_VERSION=${CMAKE_SYSTEM_VERSION})
81endif() 81endif()
82 82
83include(${CORE_SOURCE_DIR}/cmake/scripts/common/CompilerSettings.cmake)
84
83set(BUILD_ARGS -DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH} 85set(BUILD_ARGS -DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH}
84 -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR> 86 -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR>
85 -DPACKAGE_CONFIG_PATH=${ADDON_DEPENDS_PATH}/lib/pkgconfig 87 -DPACKAGE_CONFIG_PATH=${ADDON_DEPENDS_PATH}/lib/pkgconfig
@@ -121,6 +123,17 @@ if(CMAKE_TOOLCHAIN_FILE)
121 message(STATUS ${BUILD_ARGS}) 123 message(STATUS ${BUILD_ARGS})
122endif() 124endif()
123 125
126# used for addons where need special folders to store there content (if
127# not set the addon define it byself).
128# e.g. Google Chromium addon where his git bring:
129# - "unable to create file" ... "Filename too long"
130# see also WARNING by Windows on: https://bitbucket.org/chromiumembedded/cef/wiki/MasterBuildQuickStart
131if(THIRD_PARTY_PATH)
132 message(STATUS "Third party lib path specified")
133 message(STATUS ${THIRD_PARTY_PATH})
134 list(APPEND BUILD_ARGS -DTHIRD_PARTY_PATH=${THIRD_PARTY_PATH})
135endif()
136
124if(NOT ADDONS_TO_BUILD) 137if(NOT ADDONS_TO_BUILD)
125 set(ADDONS_TO_BUILD "all") 138 set(ADDONS_TO_BUILD "all")
126else() 139else()
@@ -243,9 +256,14 @@ foreach(addon ${addons})
243 if(idx GREATER -1 OR "${ADDONS_TO_BUILD}" STREQUAL "all") 256 if(idx GREATER -1 OR "${ADDONS_TO_BUILD}" STREQUAL "all")
244 set(ADDON_FOUND TRUE) 257 set(ADDON_FOUND TRUE)
245 # Maybe we have a regex 258 # Maybe we have a regex
246 elseif(id MATCHES "${ADDONS_TO_BUILD}") 259 else()
247 message(STATUS "Pattern ${ADDONS_TO_BUILD} matches ${id}, building addon") 260 foreach(ADDONLISTITEM ${ADDONS_TO_BUILD})
248 set(ADDON_FOUND TRUE) 261 if(id MATCHES "${ADDONLISTITEM}")
262 message(STATUS "Pattern ${ADDONLISTITEM} matches ${id}, building addon")
263 set(ADDON_FOUND TRUE)
264 break()
265 endif()
266 endforeach()
249 endif() 267 endif()
250 268
251 if(ADDON_FOUND) 269 if(ADDON_FOUND)
@@ -376,9 +394,6 @@ foreach(addon ${addons})
376 DEPENDERS build 394 DEPENDERS build
377 ALWAYS 1) 395 ALWAYS 1)
378 396
379 # add "kodi-platform" as a dependency to every addon
380 add_dependencies(${id} kodi-platform)
381
382 set(${id}_DEPENDS_DIR ${SOURCE_DIR}/depends) 397 set(${id}_DEPENDS_DIR ${SOURCE_DIR}/depends)
383 398
384 if(EXISTS ${${id}_DEPENDS_DIR}) 399 if(EXISTS ${${id}_DEPENDS_DIR})