diff options
Diffstat (limited to 'cmake/addons/depends')
20 files changed, 315 insertions, 0 deletions
diff --git a/cmake/addons/depends/CMakeLists.txt b/cmake/addons/depends/CMakeLists.txt new file mode 100644 index 0000000..831e0ed --- /dev/null +++ b/cmake/addons/depends/CMakeLists.txt | |||
| @@ -0,0 +1,41 @@ | |||
| 1 | cmake_minimum_required(VERSION 3.1) | ||
| 2 | project(kodi-addons-depends) | ||
| 3 | |||
| 4 | list(APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}) | ||
| 5 | |||
| 6 | if(NOT CMAKE_BUILD_TYPE) | ||
| 7 | set(CMAKE_BUILD_TYPE Release) | ||
| 8 | endif() | ||
| 9 | |||
| 10 | if(NOT CORE_SYSTEM_NAME) | ||
| 11 | string(TOLOWER ${CMAKE_SYSTEM_NAME} CORE_SYSTEM_NAME) | ||
| 12 | endif() | ||
| 13 | |||
| 14 | include(ExternalProject) | ||
| 15 | |||
| 16 | if(NOT ADDON_DEPENDS_PATH) | ||
| 17 | set(ADDON_DEPENDS_PATH ${PROJECT_SOURCE_DIR}/../build/depends) | ||
| 18 | else() | ||
| 19 | file(TO_CMAKE_PATH "${ADDON_DEPENDS_PATH}" ADDON_DEPENDS_PATH) | ||
| 20 | endif() | ||
| 21 | get_filename_component(ADDON_DEPENDS_PATH "${ADDON_DEPENDS_PATH}" ABSOLUTE) | ||
| 22 | list(APPEND CMAKE_PREFIX_PATH ${ADDON_DEPENDS_PATH}) | ||
| 23 | |||
| 24 | if(NOT BUILD_DIR) | ||
| 25 | set(BUILD_DIR "${CMAKE_BINARY_DIR}/build") | ||
| 26 | else() | ||
| 27 | file(TO_CMAKE_PATH "${BUILD_DIR}" BUILD_DIR) | ||
| 28 | endif() | ||
| 29 | get_filename_component(BUILD_DIR "${BUILD_DIR}" ABSOLUTE) | ||
| 30 | |||
| 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}") | ||
| 34 | |||
| 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}) | ||
| 39 | else() | ||
| 40 | message(STATUS "No platform specific file ${PROJECT_SOURCE_DIR}/${CORE_SYSTEM_NAME}/CMakeLists.txt found") | ||
| 41 | endif() | ||
diff --git a/cmake/addons/depends/README b/cmake/addons/depends/README new file mode 100644 index 0000000..584a167 --- /dev/null +++ b/cmake/addons/depends/README | |||
| @@ -0,0 +1,61 @@ | |||
| 1 | KODI ADDON DEPENDENCIES | ||
| 2 | ======================= | ||
| 3 | This directory contains the cmake-based buildsystem for addon dependencies. It | ||
| 4 | looks into the "common" and the "<platform>/cmake" sub-directories and parses | ||
| 5 | all *.txt files recursively. Each dependency must have its own <dependency>.txt | ||
| 6 | file (either in the main sub-directory or in a separate subdirectory of the main | ||
| 7 | subdirectory) which must follow one of the defined formats: | ||
| 8 | * an empty file means that no extra downloads are necessary | ||
| 9 | * <dependency> | ||
| 10 | * <dependency> <url> | ||
| 11 | * <dependency> <git-url> <git-revision> | ||
| 12 | where | ||
| 13 | * <dependency> must be identical to the filename | ||
| 14 | * <url> must be the URL to an archive that is downloaded and extracted. | ||
| 15 | * <git-url> must be the URL of the git repository containing the | ||
| 16 | dependency. | ||
| 17 | * <git-revision> must be a valid git tag/branch/commit in the dependency's git | ||
| 18 | repository which will be used for the build. | ||
| 19 | |||
| 20 | Reserved filenames (for additional information on how to build a dependency) | ||
| 21 | are: | ||
| 22 | * CMakeLists.txt: build instructions for the dependency | ||
| 23 | * install.txt: instructions on how to install the dependency's built files | ||
| 24 | * noinstall.txt: no installation step required (content is ignored) | ||
| 25 | * flags.txt: additional build flags | ||
| 26 | * deps.txt: whitespace separated list of dependencies of this dependency | ||
| 27 | |||
| 28 | The buildsystem uses the following variables (which can be passed into it when | ||
| 29 | executing cmake with the -D<variable-name>=<value> option) to e.g. access | ||
| 30 | specific paths: | ||
| 31 | * CMAKE_BUILD_TYPE specifies the type of the build. This can be either "Debug" | ||
| 32 | or "Release" (default is "Release"). | ||
| 33 | * CMAKE_TOOLCHAIN_FILE can be used to pass a toolchain file into the add-on | ||
| 34 | builds. | ||
| 35 | * CORE_SYSTEM_NAME is the name of the platform (e.g. "linux" or "android") in | ||
| 36 | lower-case (defaults to lowercase(CMAKE_SYSTEM_NAME)). | ||
| 37 | * CORE_SOURCE_DIR points to the root directory of the project (default is the | ||
| 38 | absolute representation of ../../.. starting from this directory). | ||
| 39 | * ADDON_DEPENDS_PATH points to the directory where the built dependencies | ||
| 40 | (their include and library file) will be installed to. | ||
| 41 | * ARCH_DEFINES specifies the platform-specific C/C++ preprocessor defines | ||
| 42 | (defaults to empty). | ||
| 43 | * DEPENDS_TO_BUILD is a quoted, space delimited list of <dependency>s that | ||
| 44 | you want to build (default is "all"). | ||
| 45 | |||
| 46 | To trigger the cmake-based buildsystem the following command must be executed | ||
| 47 | with <path> being the path to this directory (absolute or relative, allowing for | ||
| 48 | in-source and out-of-source builds). | ||
| 49 | |||
| 50 | cmake <path> -G <generator> | ||
| 51 | |||
| 52 | cmake supports multiple generators, see | ||
| 53 | http://www.cmake.org/cmake/help/v2.8.8/cmake.html#section_Generators for a list. | ||
| 54 | |||
| 55 | In case of additional options the call might look like this | ||
| 56 | |||
| 57 | cmake <path> [-G <generator>] \ | ||
| 58 | -DCMAKE_BUILD_TYPE=Release \ | ||
| 59 | -DCORE_SOURCE_DIR="<path-to-project-root>" \ | ||
| 60 | -DARCH_DEFINES="-DTARGET_LINUX" \ | ||
| 61 | -DCMAKE_INSTALL_PREFIX="<path-to-install-directory" | ||
diff --git a/cmake/addons/depends/common/kodi-platform/deps.txt b/cmake/addons/depends/common/kodi-platform/deps.txt new file mode 100644 index 0000000..b953815 --- /dev/null +++ b/cmake/addons/depends/common/kodi-platform/deps.txt | |||
| @@ -0,0 +1,2 @@ | |||
| 1 | tinyxml | ||
| 2 | p8-platform | ||
diff --git a/cmake/addons/depends/common/kodi-platform/kodi-platform.txt b/cmake/addons/depends/common/kodi-platform/kodi-platform.txt new file mode 100644 index 0000000..1b5c8bf --- /dev/null +++ b/cmake/addons/depends/common/kodi-platform/kodi-platform.txt | |||
| @@ -0,0 +1 @@ | |||
| kodi-platform https://github.com/xbmc/kodi-platform 36fb49371dbce49bf470a5bb1fc51b74b4a3612d | |||
diff --git a/cmake/addons/depends/common/p8-platform/p8-platform.txt b/cmake/addons/depends/common/p8-platform/p8-platform.txt new file mode 100644 index 0000000..ae7a370 --- /dev/null +++ b/cmake/addons/depends/common/p8-platform/p8-platform.txt | |||
| @@ -0,0 +1 @@ | |||
| p8-platform https://github.com/xbmc/platform.git 32190045c7eb6883c0662db2f91b4ceeab904fc2 | |||
diff --git a/cmake/addons/depends/common/tinyxml/CMakeLists.txt b/cmake/addons/depends/common/tinyxml/CMakeLists.txt new file mode 100644 index 0000000..ec396ee --- /dev/null +++ b/cmake/addons/depends/common/tinyxml/CMakeLists.txt | |||
| @@ -0,0 +1,22 @@ | |||
| 1 | cmake_minimum_required(VERSION 3.1) | ||
| 2 | project(tinyxml) | ||
| 3 | |||
| 4 | set(SOURCES src/tinystr.cpp | ||
| 5 | src/tinyxml.cpp | ||
| 6 | src/tinyxmlerror.cpp | ||
| 7 | src/tinyxmlparser.cpp) | ||
| 8 | |||
| 9 | if(WIN32) | ||
| 10 | add_definitions(-DWIN32 -D_LIB) | ||
| 11 | endif() | ||
| 12 | add_definitions(-DTIXML_USE_STL) | ||
| 13 | |||
| 14 | add_library(tinyxml ${SOURCES}) | ||
| 15 | |||
| 16 | include_directories(${PROJECT_SOURCE_DIR}/include) | ||
| 17 | |||
| 18 | set(HEADERS ${PROJECT_SOURCE_DIR}/include/tinystr.h | ||
| 19 | ${PROJECT_SOURCE_DIR}/include/tinyxml.h) | ||
| 20 | |||
| 21 | install(FILES ${HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/include) | ||
| 22 | install(TARGETS tinyxml DESTINATION ${CMAKE_INSTALL_PREFIX}/lib) | ||
diff --git a/cmake/addons/depends/common/tinyxml/tinyxml.txt b/cmake/addons/depends/common/tinyxml/tinyxml.txt new file mode 100644 index 0000000..f8e05e8 --- /dev/null +++ b/cmake/addons/depends/common/tinyxml/tinyxml.txt | |||
| @@ -0,0 +1 @@ | |||
| tinyxml http://mirrors.kodi.tv/build-deps/sources/tinyxml-2.6.2_2.tar.gz | |||
diff --git a/cmake/addons/depends/windows/CMakeLists.txt b/cmake/addons/depends/windows/CMakeLists.txt new file mode 100644 index 0000000..c8739c0 --- /dev/null +++ b/cmake/addons/depends/windows/CMakeLists.txt | |||
| @@ -0,0 +1,52 @@ | |||
| 1 | cmake_minimum_required(VERSION 3.1) | ||
| 2 | project(kodi-addons-depends-windows) | ||
| 3 | |||
| 4 | list(APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}) | ||
| 5 | |||
| 6 | if(NOT CMAKE_BUILD_TYPE) | ||
| 7 | set(CMAKE_BUILD_TYPE Release) | ||
| 8 | endif() | ||
| 9 | |||
| 10 | include(ExternalProject) | ||
| 11 | |||
| 12 | if(NOT ADDON_DEPENDS_PATH) | ||
| 13 | message(FATAL_ERROR "ADDON_DEPENDS_PATH (${ADDON_DEPENDS_PATH}) is not a valid target directory.") | ||
| 14 | else() | ||
| 15 | file(TO_CMAKE_PATH "${ADDON_DEPENDS_PATH}" ADDON_DEPENDS_PATH) | ||
| 16 | endif() | ||
| 17 | get_filename_component(ADDON_DEPENDS_PATH "${ADDON_DEPENDS_PATH}" ABSOLUTE) | ||
| 18 | list(APPEND CMAKE_PREFIX_PATH ${ADDON_DEPENDS_PATH}) | ||
| 19 | |||
| 20 | if(NOT DEPENDS_TO_BUILD) | ||
| 21 | set(DEPENDS_TO_BUILD "all") | ||
| 22 | endif() | ||
| 23 | |||
| 24 | function(add_internal id url inputfile) | ||
| 25 | externalproject_add(${id} | ||
| 26 | URL ${url} | ||
| 27 | PREFIX build/${id} | ||
| 28 | CONFIGURE_COMMAND "" | ||
| 29 | BUILD_COMMAND "" | ||
| 30 | INSTALL_COMMAND ${CMAKE_COMMAND} | ||
| 31 | -DINPUTDIR=${PROJECT_BINARY_DIR}/build/${id}/src/${id} | ||
| 32 | -DINPUTFILE=${inputfile} | ||
| 33 | -DDESTDIR=${ADDON_DEPENDS_PATH} | ||
| 34 | -P ${PROJECT_SOURCE_DIR}/Install.cmake | ||
| 35 | ) | ||
| 36 | endfunction() | ||
| 37 | |||
| 38 | file(GLOB_RECURSE download_input_files prebuilt/*.txt) | ||
| 39 | foreach(file ${download_input_files}) | ||
| 40 | if(NOT file MATCHES install.txt) | ||
| 41 | file(STRINGS ${file} def) | ||
| 42 | get_filename_component(dir ${file} DIRECTORY) | ||
| 43 | string(REPLACE " " ";" def ${def}) | ||
| 44 | list(GET def 0 id) | ||
| 45 | |||
| 46 | list(FIND DEPENDS_TO_BUILD ${id} idx) | ||
| 47 | if(idx GREATER -1 OR DEPENDS_TO_BUILD STREQUAL "all") | ||
| 48 | list(GET def 1 url) | ||
| 49 | add_internal(${id} ${url} ${dir}/install.txt) | ||
| 50 | endif() | ||
| 51 | endif() | ||
| 52 | endforeach() | ||
diff --git a/cmake/addons/depends/windows/Install.cmake b/cmake/addons/depends/windows/Install.cmake new file mode 100644 index 0000000..9a3adbb --- /dev/null +++ b/cmake/addons/depends/windows/Install.cmake | |||
| @@ -0,0 +1,24 @@ | |||
| 1 | if(EXISTS "${INPUTFILE}") | ||
| 2 | # if there's an input file we use it to determine which files to copy where | ||
| 3 | file(STRINGS ${INPUTFILE} FILES) | ||
| 4 | string(REPLACE "\n" ";" FILES "${FILES}") | ||
| 5 | foreach(file ${FILES}) | ||
| 6 | string(REPLACE " " ";" file "${file}") | ||
| 7 | list(GET file 0 dir) | ||
| 8 | list(GET file 1 dest) | ||
| 9 | list(LENGTH file deflength) | ||
| 10 | if(deflength GREATER 2) | ||
| 11 | list(GET file 2 copy) | ||
| 12 | endif() | ||
| 13 | file(GLOB files ${INPUTDIR}/${dir}) | ||
| 14 | foreach(instfile ${files}) | ||
| 15 | file(COPY ${instfile} DESTINATION ${DESTDIR}/${dest}) | ||
| 16 | if(copy) | ||
| 17 | file(COPY ${instfile} DESTINATION ${DESTDIR}/${copy}) | ||
| 18 | endif() | ||
| 19 | endforeach() | ||
| 20 | endforeach() | ||
| 21 | else() | ||
| 22 | # otherwise we assume that the content of the extracted archive is already well-formed and can just be copied | ||
| 23 | file(COPY ${INPUTDIR}/${dir} DESTINATION ${DESTDIR}) | ||
| 24 | endif() \ No newline at end of file | ||
diff --git a/cmake/addons/depends/windows/README b/cmake/addons/depends/windows/README new file mode 100644 index 0000000..67dc594 --- /dev/null +++ b/cmake/addons/depends/windows/README | |||
| @@ -0,0 +1,19 @@ | |||
| 1 | KODI WIN32 ADDON DEPENDENCIES | ||
| 2 | ============================= | ||
| 3 | This directory contains the cmake-based buildsystem for dependencies (currently | ||
| 4 | only prebuilt) used by one or multiple addons. The buildsystem looks into the | ||
| 5 | "prebuilt" sub-directory, downloads all the specified dependencies, extracts | ||
| 6 | them and places them into the "depends" sub-directory. | ||
| 7 | |||
| 8 | To trigger the cmake-based buildsystem the following command must be executed | ||
| 9 | with <path> being the path to this directory (absolute or relative, allowing for | ||
| 10 | in-source and out-of-source builds). | ||
| 11 | |||
| 12 | cmake <path> [-G <generator>] | ||
| 13 | |||
| 14 | cmake supports multiple generators, see | ||
| 15 | http://www.cmake.org/cmake/help/v2.8.8/cmake.html#section_Generators for a list. | ||
| 16 | For win32 builds one of the "Visual Studio XX" or the "NMake Makefiles" | ||
| 17 | generators is preferred. For the "NMake Makefiles" generator to work the above | ||
| 18 | command must be called from an environment prepared for VC++ builds (see | ||
| 19 | http://msdn.microsoft.com/en-us/library/f2ccy3wt.aspx). | ||
diff --git a/cmake/addons/depends/windows/cmake/mingw/CMakeLists.txt b/cmake/addons/depends/windows/cmake/mingw/CMakeLists.txt new file mode 100644 index 0000000..02d9724 --- /dev/null +++ b/cmake/addons/depends/windows/cmake/mingw/CMakeLists.txt | |||
| @@ -0,0 +1,37 @@ | |||
| 1 | cmake_minimum_required(VERSION 3.1) | ||
| 2 | project(mingw) | ||
| 3 | |||
| 4 | function(generate_mingw32_wrapper cmd) | ||
| 5 | set(CMD ${cmd}) | ||
| 6 | configure_file(${PROJECT_SOURCE_DIR}/mingw32-cmd.bat.in ${MINGW_PATH}/bin/${CMD}.bat @ONLY) | ||
| 7 | endfunction() | ||
| 8 | |||
| 9 | get_filename_component(CORE_SOURCE_DIR ${PROJECT_SOURCE_DIR}/../../../../../.. REALPATH) | ||
| 10 | |||
| 11 | set(MSYS_PATH "${CORE_SOURCE_DIR}/project/BuildDependencies/msys64") | ||
| 12 | if(CMAKE_SIZEOF_VOID_P EQUAL 4) | ||
| 13 | set(MINGW_PATH "${MSYS_PATH}/mingw32") | ||
| 14 | elseif(CMAKE_SIZEOF_VOID_P EQUAL 8) | ||
| 15 | set(MINGW_PATH "${MSYS_PATH}/mingw64") | ||
| 16 | endif() | ||
| 17 | |||
| 18 | # configure the MinGW toolchain file | ||
| 19 | configure_file(${PROJECT_SOURCE_DIR}/Toolchain_mingw32.cmake.in ${CMAKE_INSTALL_PREFIX}/Toolchain_mingw32.cmake @ONLY) | ||
| 20 | |||
| 21 | # configure MinGWConfig.cmake | ||
| 22 | configure_file(${PROJECT_SOURCE_DIR}/MinGWConfig.cmake.in ${CMAKE_INSTALL_PREFIX}/MinGWConfig.cmake) | ||
| 23 | |||
| 24 | # TODO: MinGW GCC 5.3.0-1 comes without cc.exe, Remove this once package is bumped to 5.3.0-p2 | ||
| 25 | # See https://github.com/Alexpux/MINGW-packages/pull/1034 | ||
| 26 | if(NOT EXISTS ${MINGW_PATH}/bin/cc.exe) | ||
| 27 | execute_process(COMMAND ${CMAKE_COMMAND} -E copy ${MINGW_PATH}/bin/gcc.exe ${MINGW_PATH}/bin/cc.exe) | ||
| 28 | endif() | ||
| 29 | |||
| 30 | # configure the MinGW wrapper batch scripts | ||
| 31 | generate_mingw32_wrapper("make") | ||
| 32 | generate_mingw32_wrapper("gcc") | ||
| 33 | generate_mingw32_wrapper("cc") | ||
| 34 | generate_mingw32_wrapper("g++") | ||
| 35 | generate_mingw32_wrapper("ar") | ||
| 36 | generate_mingw32_wrapper("ld") | ||
| 37 | generate_mingw32_wrapper("windres") | ||
diff --git a/cmake/addons/depends/windows/cmake/mingw/MinGWConfig.cmake.in b/cmake/addons/depends/windows/cmake/mingw/MinGWConfig.cmake.in new file mode 100644 index 0000000..2d6baa7 --- /dev/null +++ b/cmake/addons/depends/windows/cmake/mingw/MinGWConfig.cmake.in | |||
| @@ -0,0 +1,3 @@ | |||
| 1 | set(MINGW_INCLUDE_DIRS @MINGW_PATH@/include) | ||
| 2 | set(MINGW_MAKE @MINGW_PATH@/bin/make.bat -j$ENV{NUMBER_OF_PROCESSORS}) | ||
| 3 | set(MINGW_FOUND 1) | ||
diff --git a/cmake/addons/depends/windows/cmake/mingw/Toolchain_mingw32.cmake.in b/cmake/addons/depends/windows/cmake/mingw/Toolchain_mingw32.cmake.in new file mode 100644 index 0000000..01d281d --- /dev/null +++ b/cmake/addons/depends/windows/cmake/mingw/Toolchain_mingw32.cmake.in | |||
| @@ -0,0 +1,17 @@ | |||
| 1 | set(CMAKE_SYSTEM_VERSION 1) | ||
| 2 | set(CMAKE_SYSTEM_NAME Windows) | ||
| 3 | |||
| 4 | set(CMAKE_FIND_ROOT_PATH @CMAKE_FIND_ROOT_PATH@ @CMAKE_INSTALL_PREFIX@ @MSYS_PATH@ @MINGW_PATH@) | ||
| 5 | |||
| 6 | # specify the cross compiler | ||
| 7 | set(CMAKE_C_COMPILER @MINGW_PATH@/bin/gcc.bat) | ||
| 8 | set(CMAKE_CXX_COMPILER @MINGW_PATH@/bin/g++.bat) | ||
| 9 | set(CMAKE_AR @MINGW_PATH@/bin/ar.bat CACHE FILEPATH "Archiver") | ||
| 10 | set(CMAKE_LINKER @MINGW_PATH@/bin/ld.bat CACHE FILEPATH "Linker") | ||
| 11 | SET(CMAKE_RC_COMPILER @MINGW_PATH@/bin/windres.bat) | ||
| 12 | |||
| 13 | # search for programs in the build host directories | ||
| 14 | set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) | ||
| 15 | # for libraries and headers in the target directories | ||
| 16 | set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) | ||
| 17 | set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) | ||
diff --git a/cmake/addons/depends/windows/cmake/mingw/mingw.txt b/cmake/addons/depends/windows/cmake/mingw/mingw.txt new file mode 100644 index 0000000..90aa6ae --- /dev/null +++ b/cmake/addons/depends/windows/cmake/mingw/mingw.txt | |||
| @@ -0,0 +1 @@ | |||
| mingw | |||
diff --git a/cmake/addons/depends/windows/cmake/mingw/mingw32-cmd.bat.in b/cmake/addons/depends/windows/cmake/mingw/mingw32-cmd.bat.in new file mode 100644 index 0000000..44a0ea2 --- /dev/null +++ b/cmake/addons/depends/windows/cmake/mingw/mingw32-cmd.bat.in | |||
| @@ -0,0 +1,6 @@ | |||
| 1 | @ECHO OFF | ||
| 2 | SETLOCAL | ||
| 3 | |||
| 4 | SET PATH=@MINGW_PATH@/bin;@MSYS_PATH@/usr/bin;%PATH% | ||
| 5 | @CMD@.exe %* | ||
| 6 | |||
diff --git a/cmake/addons/depends/windows/cmake/mingw/noinstall.txt b/cmake/addons/depends/windows/cmake/mingw/noinstall.txt new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/cmake/addons/depends/windows/cmake/mingw/noinstall.txt | |||
diff --git a/cmake/addons/depends/windows/cmake/msys/CMakeLists.txt b/cmake/addons/depends/windows/cmake/msys/CMakeLists.txt new file mode 100644 index 0000000..1c0536e --- /dev/null +++ b/cmake/addons/depends/windows/cmake/msys/CMakeLists.txt | |||
| @@ -0,0 +1,5 @@ | |||
| 1 | cmake_minimum_required(VERSION 3.1) | ||
| 2 | project(msys LANGUAGES NONE) | ||
| 3 | |||
| 4 | # This is an empty dummy dependency because a lot of game addons depend on it. | ||
| 5 | # After they got fixed, this can be removed. | ||
diff --git a/cmake/addons/depends/windows/cmake/msys/msys.txt b/cmake/addons/depends/windows/cmake/msys/msys.txt new file mode 100644 index 0000000..00de9c2 --- /dev/null +++ b/cmake/addons/depends/windows/cmake/msys/msys.txt | |||
| @@ -0,0 +1 @@ | |||
| msys | |||
diff --git a/cmake/addons/depends/windows/cmake/msys/noinstall.txt b/cmake/addons/depends/windows/cmake/msys/noinstall.txt new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/cmake/addons/depends/windows/cmake/msys/noinstall.txt | |||
diff --git a/cmake/addons/depends/windows/prebuilt/README b/cmake/addons/depends/windows/prebuilt/README new file mode 100644 index 0000000..a0c70d6 --- /dev/null +++ b/cmake/addons/depends/windows/prebuilt/README | |||
| @@ -0,0 +1,21 @@ | |||
| 1 | KODI WIN32 PREBUILT ADDON DEPENDENCIES | ||
| 2 | ====================================== | ||
| 3 | This directory contains a file or sub-directory for every prebuilt dependency | ||
| 4 | used by one of the addons being built. There are two different modes supported. | ||
| 5 | Both include a file named <library-id>.txt which must follow the defined format | ||
| 6 | <library-id> <download-url> | ||
| 7 | |||
| 8 | If the archive, which the <download-url> points at, contains | ||
| 9 | * only the necessary files and in the proper directory structure (i.e. an | ||
| 10 | "include" and a "lib" directory) then the file must be put into this | ||
| 11 | directory and nothing else is needed. | ||
| 12 | * unnecessary files and/or does not follow the defined directory structure | ||
| 13 | (i.e. an "include" and a "lib" directory) then the file must be put into a | ||
| 14 | sub-directory named <library-id>. Furthermore an additional file called | ||
| 15 | "install.txt" must be placed in that sub-directory. install.txt contains a | ||
| 16 | line for every path/directory/file with a destination where it must be copied | ||
| 17 | to. It must follow the defined format | ||
| 18 | <source> <destination> [<copy-destination>] | ||
| 19 | where <source> must be an existing file, directory or a path containing | ||
| 20 | wildcards, <destination> and the optional <copy-destination> must be existing | ||
| 21 | directories. | ||
