aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWolfgang Schupp <w.schupp@a1.net>2018-12-11 13:52:17 +0100
committerGitHub <noreply@github.com>2018-12-11 13:52:17 +0100
commitdf3be010e9e3081de2a4b01e98eef8f569d8fc65 (patch)
tree35f614accb37ff62074e44b0723125c882caf7fb
parent41dde44755f0574540c8cb706d04d80e9db05309 (diff)
parentcc1527c6b7b32ee47e101cb5fd1ec0be0fbc59a6 (diff)
Merge pull request #15011 from wsnipex/fix-ninja
[cmake] Fix ninja (fixes: #15008)
-rw-r--r--CMakeLists.txt3
-rw-r--r--cmake/scripts/common/GenerateVersionedFiles.cmake2
-rw-r--r--cmake/scripts/common/Macros.cmake10
3 files changed, 12 insertions, 3 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index fa2061c2b5..4ce8872d03 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -215,7 +215,8 @@ endif()
# find all folders containing addon.xml.in
# used to define ADDON_XML_OUTPUTS, ADDON_XML_DEPENDS and ADDON_INSTALL_DATA
# Function defined in ./cmake/scripts/common/Macros.cmake
-find_addon_xml_in_files()
+set(outputFilterRegex "addons/xbmc.json")
+find_addon_xml_in_files(${outputFilterRegex})
# Compile Info
add_custom_command(OUTPUT ${CORE_BUILD_DIR}/xbmc/CompileInfo.cpp
diff --git a/cmake/scripts/common/GenerateVersionedFiles.cmake b/cmake/scripts/common/GenerateVersionedFiles.cmake
index 011f4956f1..1d324db9c5 100644
--- a/cmake/scripts/common/GenerateVersionedFiles.cmake
+++ b/cmake/scripts/common/GenerateVersionedFiles.cmake
@@ -15,7 +15,7 @@ endfunction()
file(GLOB ADDON_XML_IN_FILE ${CORE_SOURCE_DIR}/addons/*/addon.xml.in)
# remove 'xbmc.json', will be created from 'xbmc/interfaces/json-rpc/schema/CMakeLists.txt'
-list(REMOVE_ITEM ADDON_XML_IN_FILE xbmc.json)
+list(REMOVE_ITEM ADDON_XML_IN_FILE ${CORE_SOURCE_DIR}/addons/xbmc.json/addon.xml.in)
foreach(loop_var ${ADDON_XML_IN_FILE})
list(GET loop_var 0 xml_name)
diff --git a/cmake/scripts/common/Macros.cmake b/cmake/scripts/common/Macros.cmake
index 8f457ad8de..0939b000e8 100644
--- a/cmake/scripts/common/Macros.cmake
+++ b/cmake/scripts/common/Macros.cmake
@@ -783,6 +783,12 @@ endmacro()
# find all folders containing addon.xml.in and used to define
# ADDON_XML_OUTPUTS, ADDON_XML_DEPENDS and ADDON_INSTALL_DATA
macro(find_addon_xml_in_files)
+ set(filter ${ARGV0})
+
+ if(filter AND VERBOSE)
+ message(STATUS "find_addon_xml_in_files: filtering ${filter}")
+ endif()
+
file(GLOB ADDON_XML_IN_FILE ${CMAKE_SOURCE_DIR}/addons/*/addon.xml.in)
foreach(loop_var ${ADDON_XML_IN_FILE})
list(GET loop_var 0 xml_name)
@@ -791,7 +797,9 @@ macro(find_addon_xml_in_files)
string(REPLACE "${CORE_SOURCE_DIR}/" "" xml_name ${xml_name})
list(APPEND ADDON_XML_DEPENDS "${CORE_SOURCE_DIR}/${xml_name}/addon.xml.in")
- list(APPEND ADDON_XML_OUTPUTS "${CMAKE_BINARY_DIR}/${xml_name}/addon.xml")
+ if(filter AND NOT xml_name MATCHES ${filter})
+ list(APPEND ADDON_XML_OUTPUTS "${CMAKE_BINARY_DIR}/${xml_name}/addon.xml")
+ endif()
# Read content of add-on folder to have on install
file(GLOB ADDON_FILES "${CORE_SOURCE_DIR}/${xml_name}/*")