aboutsummaryrefslogtreecommitdiff
path: root/project
diff options
context:
space:
mode:
authorh.udo <hudokkow@gmail.com>2016-09-08 18:15:54 +0100
committerh.udo <hudokkow@gmail.com>2016-12-21 10:04:18 +0000
commita18701e7b2fe03780f90502d5d51e09cdc3ad718 (patch)
treea9d2c2cca8599a18a78c6b1345f42e48e76ddb27 /project
parentf2b31fda391d3364b7307ab9f9216fa0ee7164c7 (diff)
[cmake] Move to root folder: Move files
Diffstat (limited to 'project')
-rw-r--r--project/cmake/CMakeLists.txt500
-rw-r--r--project/cmake/KodiConfig.cmake.in34
-rw-r--r--project/cmake/README.md299
-rw-r--r--project/cmake/addons/CMakeLists.txt434
-rw-r--r--project/cmake/addons/README.md65
-rw-r--r--project/cmake/addons/bootstrap/Bootstrap.cmake39
-rw-r--r--project/cmake/addons/bootstrap/CMakeLists.txt94
-rw-r--r--project/cmake/addons/bootstrap/README.md48
-rw-r--r--project/cmake/addons/bootstrap/repositories/binary-addons.txt1
-rw-r--r--project/cmake/addons/depends/CMakeLists.txt41
-rw-r--r--project/cmake/addons/depends/README61
-rw-r--r--project/cmake/addons/depends/common/kodi-platform/deps.txt2
-rw-r--r--project/cmake/addons/depends/common/kodi-platform/kodi-platform.txt1
-rw-r--r--project/cmake/addons/depends/common/p8-platform/p8-platform.txt1
-rw-r--r--project/cmake/addons/depends/common/tinyxml/CMakeLists.txt22
-rw-r--r--project/cmake/addons/depends/common/tinyxml/tinyxml.txt1
-rw-r--r--project/cmake/addons/depends/windows/CMakeLists.txt52
-rw-r--r--project/cmake/addons/depends/windows/Install.cmake24
-rw-r--r--project/cmake/addons/depends/windows/README19
-rw-r--r--project/cmake/addons/depends/windows/cmake/mingw/CMakeLists.txt33
-rw-r--r--project/cmake/addons/depends/windows/cmake/mingw/MinGWConfig.cmake.in3
-rw-r--r--project/cmake/addons/depends/windows/cmake/mingw/Toolchain_mingw32.cmake.in17
-rw-r--r--project/cmake/addons/depends/windows/cmake/mingw/mingw.txt1
-rw-r--r--project/cmake/addons/depends/windows/cmake/mingw/mingw32-cmd.bat.in6
-rw-r--r--project/cmake/addons/depends/windows/cmake/mingw/noinstall.txt0
-rw-r--r--project/cmake/addons/depends/windows/cmake/msys/CMakeLists.txt5
-rw-r--r--project/cmake/addons/depends/windows/cmake/msys/msys.txt1
-rw-r--r--project/cmake/addons/depends/windows/cmake/msys/noinstall.txt0
-rw-r--r--project/cmake/addons/depends/windows/prebuilt/README21
-rw-r--r--project/cmake/cpack/CPackConfigDEB.cmake352
-rw-r--r--project/cmake/cpack/deb/NEWS.Debian24
-rw-r--r--project/cmake/cpack/deb/copyright3126
-rw-r--r--project/cmake/cpack/deb/lintian/overrides/kodi1
-rw-r--r--project/cmake/cpack/deb/menu/kodi2
-rw-r--r--project/cmake/cpack/deb/package-description.txt16
-rw-r--r--project/cmake/cpack/deb/packages/kodi-addon-dev.txt.in25
-rw-r--r--project/cmake/cpack/deb/packages/kodi-audio-dev.txt.in25
-rw-r--r--project/cmake/cpack/deb/packages/kodi-bin.txt.in25
-rw-r--r--project/cmake/cpack/deb/packages/kodi-eventclients-common.txt.in25
-rw-r--r--project/cmake/cpack/deb/packages/kodi-eventclients-dev.txt.in25
-rw-r--r--project/cmake/cpack/deb/packages/kodi-eventclients-ps3.txt.in25
-rw-r--r--project/cmake/cpack/deb/packages/kodi-eventclients-wiiremote.txt.in25
-rw-r--r--project/cmake/cpack/deb/packages/kodi-eventclients-xbmc-send.txt.in25
-rw-r--r--project/cmake/cpack/deb/packages/kodi-inputstream-dev.txt.in25
-rw-r--r--project/cmake/cpack/deb/packages/kodi-peripheral-dev.txt.in24
-rw-r--r--project/cmake/cpack/deb/packages/kodi-pvr-dev.txt.in25
-rw-r--r--project/cmake/cpack/deb/packages/kodi-screensaver-dev.txt.in25
-rw-r--r--project/cmake/cpack/deb/packages/kodi-tools-texturepacker.txt.in25
-rw-r--r--project/cmake/cpack/deb/packages/kodi-visualization-dev.txt.in25
-rw-r--r--project/cmake/cpack/deb/packages/kodi.txt.in25
-rwxr-xr-xproject/cmake/cpack/deb/postinst5
-rwxr-xr-xproject/cmake/cpack/deb/postrm3
-rw-r--r--project/cmake/installdata/common/addons.txt42
-rw-r--r--project/cmake/installdata/common/common.txt13
-rw-r--r--project/cmake/installdata/ios/certificates.txt1
-rw-r--r--project/cmake/installdata/ios/packaging.txt3
-rw-r--r--project/cmake/installdata/ios/runtime.txt2
-rw-r--r--project/cmake/installdata/linux/lirc.txt1
-rw-r--r--project/cmake/installdata/osx/certificates.txt1
-rw-r--r--project/cmake/installdata/osx/packaging.txt4
-rw-r--r--project/cmake/installdata/osx/runtime.txt2
l---------project/cmake/installdata/rbpi/lirc.txt1
-rw-r--r--project/cmake/installdata/test-reference-data.txt10
-rw-r--r--project/cmake/installdata/windows/addons.txt1
-rw-r--r--project/cmake/installdata/windows/dlls.txt2
-rw-r--r--project/cmake/installdata/windows/irss.txt2
-rw-r--r--project/cmake/installdata/windows/python.txt1
-rw-r--r--project/cmake/modules/FindAML.cmake35
-rw-r--r--project/cmake/modules/FindASS.cmake44
-rw-r--r--project/cmake/modules/FindAlsa.cmake46
-rw-r--r--project/cmake/modules/FindAvahi.cmake63
-rw-r--r--project/cmake/modules/FindBluetooth.cmake44
-rw-r--r--project/cmake/modules/FindBluray.cmake58
-rw-r--r--project/cmake/modules/FindCAP.cmake44
-rw-r--r--project/cmake/modules/FindCCache.cmake18
-rw-r--r--project/cmake/modules/FindCEC.cmake68
-rw-r--r--project/cmake/modules/FindCWiid.cmake44
-rw-r--r--project/cmake/modules/FindCXX11.cmake18
-rw-r--r--project/cmake/modules/FindCdio.cmake45
-rw-r--r--project/cmake/modules/FindCpluff.cmake61
-rw-r--r--project/cmake/modules/FindCrossGUID.cmake78
-rw-r--r--project/cmake/modules/FindCurl.cmake83
-rw-r--r--project/cmake/modules/FindD3DX11Effects.cmake30
-rw-r--r--project/cmake/modules/FindDBus.cmake52
-rw-r--r--project/cmake/modules/FindEGL.cmake48
-rw-r--r--project/cmake/modules/FindEMBEDDED.cmake16
-rw-r--r--project/cmake/modules/FindFFMPEG.cmake292
-rw-r--r--project/cmake/modules/FindFreeType.cmake45
-rw-r--r--project/cmake/modules/FindFribidi.cmake48
-rw-r--r--project/cmake/modules/FindGIF.cmake46
-rw-r--r--project/cmake/modules/FindJsonSchemaBuilder.cmake21
-rw-r--r--project/cmake/modules/FindLibDRM.cmake45
-rw-r--r--project/cmake/modules/FindLibDvd.cmake219
-rw-r--r--project/cmake/modules/FindLibUSB.cmake45
-rw-r--r--project/cmake/modules/FindLibXml2.cmake84
-rw-r--r--project/cmake/modules/FindLzo2.cmake37
-rw-r--r--project/cmake/modules/FindMMAL.cmake55
-rw-r--r--project/cmake/modules/FindMicroHttpd.cmake51
-rw-r--r--project/cmake/modules/FindMir.cmake33
-rw-r--r--project/cmake/modules/FindMySqlClient.cmake69
-rw-r--r--project/cmake/modules/FindNFS.cmake58
-rw-r--r--project/cmake/modules/FindOpenGLES.cmake48
-rw-r--r--project/cmake/modules/FindOpenGl.cmake43
-rw-r--r--project/cmake/modules/FindPCRE.cmake87
-rw-r--r--project/cmake/modules/FindPlist.cmake58
-rw-r--r--project/cmake/modules/FindPulseAudio.cmake68
-rw-r--r--project/cmake/modules/FindPython.cmake39
-rw-r--r--project/cmake/modules/FindSSE.cmake143
-rw-r--r--project/cmake/modules/FindSSH.cmake47
-rw-r--r--project/cmake/modules/FindSWIG.cmake29
-rw-r--r--project/cmake/modules/FindSdl.cmake46
-rw-r--r--project/cmake/modules/FindShairplay.cmake63
-rw-r--r--project/cmake/modules/FindSmbClient.cmake47
-rw-r--r--project/cmake/modules/FindSqlite3.cmake44
-rw-r--r--project/cmake/modules/FindTagLib.cmake60
-rw-r--r--project/cmake/modules/FindTexturePacker.cmake41
-rw-r--r--project/cmake/modules/FindTinyXML.cmake68
-rw-r--r--project/cmake/modules/FindUDEV.cmake47
-rw-r--r--project/cmake/modules/FindUUID.cmake43
-rw-r--r--project/cmake/modules/FindVAAPI.cmake72
-rw-r--r--project/cmake/modules/FindVDPAU.cmake47
-rw-r--r--project/cmake/modules/FindX.cmake57
-rw-r--r--project/cmake/modules/FindXRandR.cmake47
-rw-r--r--project/cmake/modules/FindXSLT.cmake50
-rw-r--r--project/cmake/modules/FindYajl.cmake62
-rw-r--r--project/cmake/modules/FindZip.cmake46
-rw-r--r--project/cmake/modules/LDGOLD.cmake45
-rw-r--r--project/cmake/modules/extra/ECMEnableSanitizers.cmake149
-rw-r--r--project/cmake/platform/android/defines.txt1
-rw-r--r--project/cmake/platform/freebsd/defines.txt1
-rw-r--r--project/cmake/platform/ios/defines.txt1
-rw-r--r--project/cmake/platform/linux/defines.txt1
-rw-r--r--project/cmake/platform/osx/defines.txt1
-rw-r--r--project/cmake/platform/rbpi/defines.txt1
-rw-r--r--project/cmake/platform/windows/defines.txt1
-rw-r--r--project/cmake/scripts/android/ArchSetup.cmake35
-rw-r--r--project/cmake/scripts/android/Install.cmake122
l---------project/cmake/scripts/android/Macros.cmake1
-rw-r--r--project/cmake/scripts/android/PathSetup.cmake33
-rw-r--r--project/cmake/scripts/common/AddOptions.cmake78
-rw-r--r--project/cmake/scripts/common/AddonHelpers.cmake268
-rw-r--r--project/cmake/scripts/common/ArchSetup.cmake156
-rw-r--r--project/cmake/scripts/common/CMakeHelpers.cmake54
-rw-r--r--project/cmake/scripts/common/CheckCommits.cmake75
-rw-r--r--project/cmake/scripts/common/CheckTargetPlatform.cmake67
-rw-r--r--project/cmake/scripts/common/GenerateVersionedFiles.cmake18
-rw-r--r--project/cmake/scripts/common/GeneratorSetup.cmake49
-rw-r--r--project/cmake/scripts/common/HandleDepends.cmake252
-rw-r--r--project/cmake/scripts/common/Macros.cmake622
-rw-r--r--project/cmake/scripts/common/PrepareEnv.cmake64
-rw-r--r--project/cmake/scripts/common/ProjectMacros.cmake89
-rw-r--r--project/cmake/scripts/common/Uninstall.cmake22
-rw-r--r--project/cmake/scripts/freebsd/ArchSetup.cmake16
l---------project/cmake/scripts/freebsd/Install.cmake1
l---------project/cmake/scripts/freebsd/Macros.cmake1
l---------project/cmake/scripts/freebsd/PathSetup.cmake1
-rw-r--r--project/cmake/scripts/ios/ArchSetup.cmake57
-rw-r--r--project/cmake/scripts/ios/Install.cmake85
l---------project/cmake/scripts/ios/Macros.cmake1
l---------project/cmake/scripts/ios/PathSetup.cmake1
-rw-r--r--project/cmake/scripts/linux/ArchSetup.cmake45
-rw-r--r--project/cmake/scripts/linux/CodeCoverage.cmake97
-rw-r--r--project/cmake/scripts/linux/ExtraTargets.cmake12
-rw-r--r--project/cmake/scripts/linux/Install.cmake362
-rw-r--r--project/cmake/scripts/linux/Macros.cmake95
-rw-r--r--project/cmake/scripts/linux/PathSetup.cmake40
-rw-r--r--project/cmake/scripts/osx/ArchSetup.cmake34
-rw-r--r--project/cmake/scripts/osx/ExtraTargets.cmake3
-rw-r--r--project/cmake/scripts/osx/Install.cmake40
-rw-r--r--project/cmake/scripts/osx/Macros.cmake118
-rw-r--r--project/cmake/scripts/osx/PathSetup.cmake32
-rw-r--r--project/cmake/scripts/rbpi/ArchSetup.cmake28
l---------project/cmake/scripts/rbpi/Install.cmake1
l---------project/cmake/scripts/rbpi/Macros.cmake1
l---------project/cmake/scripts/rbpi/PathSetup.cmake1
-rw-r--r--project/cmake/scripts/windows/ArchSetup.cmake89
-rw-r--r--project/cmake/scripts/windows/CFlagOverrides.cmake5
-rw-r--r--project/cmake/scripts/windows/CXXFlagOverrides.cmake5
-rw-r--r--project/cmake/scripts/windows/Install.cmake0
-rw-r--r--project/cmake/scripts/windows/Macros.cmake66
-rw-r--r--project/cmake/scripts/windows/PathSetup.cmake34
-rw-r--r--project/cmake/scripts/windows/tools/patch.cmake37
-rw-r--r--project/cmake/treedata/android/subdirs.txt17
-rw-r--r--project/cmake/treedata/common/addons.txt0
-rw-r--r--project/cmake/treedata/common/cores.txt9
-rw-r--r--project/cmake/treedata/common/events.txt2
-rw-r--r--project/cmake/treedata/common/externals.txt2
-rw-r--r--project/cmake/treedata/common/filesystem.txt3
-rw-r--r--project/cmake/treedata/common/games.txt12
-rw-r--r--project/cmake/treedata/common/interfaces.txt9
-rw-r--r--project/cmake/treedata/common/music.txt5
-rw-r--r--project/cmake/treedata/common/network.txt2
-rw-r--r--project/cmake/treedata/common/peripherals.txt6
-rw-r--r--project/cmake/treedata/common/profiles.txt3
-rw-r--r--project/cmake/treedata/common/pvr.txt7
-rw-r--r--project/cmake/treedata/common/settings.txt4
-rw-r--r--project/cmake/treedata/common/subdirs.txt41
-rw-r--r--project/cmake/treedata/common/tests.txt10
-rw-r--r--project/cmake/treedata/common/video.txt5
-rw-r--r--project/cmake/treedata/common/videoplayer.txt12
-rw-r--r--project/cmake/treedata/freebsd/subdirs.txt13
-rw-r--r--project/cmake/treedata/ios/subdirs.txt15
-rw-r--r--project/cmake/treedata/linux/subdirs.txt13
-rw-r--r--project/cmake/treedata/optional/common/X11.txt1
-rw-r--r--project/cmake/treedata/optional/common/cdrip.txt1
-rw-r--r--project/cmake/treedata/optional/common/dacp.txt1
-rw-r--r--project/cmake/treedata/optional/common/mir.txt1
-rw-r--r--project/cmake/treedata/optional/common/nonfree.txt1
-rw-r--r--project/cmake/treedata/optional/common/opengl.txt1
-rw-r--r--project/cmake/treedata/optional/common/opengles.txt1
-rw-r--r--project/cmake/treedata/optional/common/upnp.txt2
-rw-r--r--project/cmake/treedata/optional/common/webserver.txt2
-rw-r--r--project/cmake/treedata/osx/subdirs.txt12
-rw-r--r--project/cmake/treedata/rbpi/omxplayer.txt1
-rw-r--r--project/cmake/treedata/rbpi/subdirs.txt12
-rw-r--r--project/cmake/treedata/windows/externals.txt1
-rw-r--r--project/cmake/treedata/windows/subdirs.txt14
217 files changed, 0 insertions, 13014 deletions
diff --git a/project/cmake/CMakeLists.txt b/project/cmake/CMakeLists.txt
deleted file mode 100644
index 861c3d5f1b..0000000000
--- a/project/cmake/CMakeLists.txt
+++ /dev/null
@@ -1,500 +0,0 @@
-cmake_minimum_required(VERSION 3.1)
-project(kodi LANGUAGES CXX C ASM)
-
-list(APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/modules)
-if(DEPENDS_DIR)
- list(APPEND CMAKE_PREFIX_PATH ${DEPENDS_DIR})
-endif()
-
-# Set CORE_SOURCE_DIR and CORE_BUILD_DIR
-get_filename_component(CORE_SOURCE_DIR ${PROJECT_SOURCE_DIR}/../.. ABSOLUTE)
-set(CORE_BUILD_DIR build)
-
-message(STATUS "Source directory: ${CORE_SOURCE_DIR}")
-message(STATUS "Build directory: ${CMAKE_BINARY_DIR}")
-if(CMAKE_BINARY_DIR STREQUAL CORE_SOURCE_DIR)
- message(WARNING "In-source build detected. It is recommended to build out-of-source.")
-endif()
-
-# Hide messages from Check*.cmake (e.g. CheckCSourceCompiles)
-if(NOT VERBOSE)
- set(CMAKE_REQUIRED_QUIET ON)
-endif()
-
-# Includes
-include(modules/extra/ECMEnableSanitizers.cmake)
-include(scripts/common/GeneratorSetup.cmake)
-include(scripts/common/AddOptions.cmake)
-include(scripts/common/ArchSetup.cmake)
-include(scripts/common/Macros.cmake)
-include(scripts/common/ProjectMacros.cmake)
-include(scripts/${CORE_SYSTEM_NAME}/PathSetup.cmake)
-include(ExternalProject)
-
-# Languages and global compiler settings
-set(CMAKE_CXX_STANDARD 11)
-set(CMAKE_CXX_STANDARD_REQUIRED ON)
-set(CMAKE_CXX_EXTENSIONS OFF)
-set(CMAKE_ASM_FLAGS "${CMAKE_C_FLAGS} -x assembler-with-cpp")
-
-# general
-option(VERBOSE "Enable verbose output?" OFF)
-option(ENABLE_DVDCSS "Enable libdvdcss support?" ON)
-option(ENABLE_UPNP "Enable UPnP support?" ON)
-option(ENABLE_NONFREE "Enable non-free components?" ON)
-option(ENABLE_AIRTUNES "Enable AirTunes support?" ON)
-option(ENABLE_CEC "Enable CEC support?" ON)
-option(ENABLE_OPTICAL "Enable optical support?" ON)
-# use ffmpeg from depends or system
-option(ENABLE_INTERNAL_FFMPEG "Enable internal ffmpeg?" OFF)
-if(UNIX)
- option(FFMPEG_PATH "Path to external ffmpeg?" "")
- option(ENABLE_INTERNAL_CROSSGUID "Enable internal crossguid?" ON)
- option(ENABLE_OPENSSL "Enable OpenSSL?" ON)
- option(ENABLE_SDL "Enable SDL?" OFF)
- option(ENABLE_MIR "Enable MIR?" OFF)
- if(CORE_SYSTEM_NAME STREQUAL linux OR CORE_SYSTEM_NAME STREQUAL freebsd)
- option(ENABLE_X11 "Enable X11 support?" ON)
- option(ENABLE_AML "Enable AML?" OFF)
- endif()
-endif()
-# System options
-if(NOT WIN32)
- option(WITH_ARCH "build with given arch" OFF)
- option(WITH_CPU "build with given cpu" OFF)
- option(ENABLE_CCACHE "Enable Ccache support" ON)
-endif()
-if(CORE_SYSTEM_NAME STREQUAL linux OR CORE_SYSTEM_NAME STREQUAL rbpi)
- option(ENABLE_LIRC "Enable LIRC support?" ON)
- option(ENABLE_EVENTCLIENTS "Enable event clients support?" OFF)
-endif()
-
-# Build static libraries per directory
-if(NOT CMAKE_GENERATOR MATCHES "Visual Studio" AND NOT CMAKE_GENERATOR STREQUAL Xcode)
- set(ENABLE_STATIC_LIBS TRUE)
-else()
- set(ENABLE_STATIC_LIBS FALSE)
-endif()
-
-core_find_git_rev(APP_SCMID FULL)
-core_find_versions()
-
-# Dynamically loaded libraries built with the project
-add_custom_target(${APP_NAME_LC}-libraries)
-set(LIBRARY_FILES "" CACHE STRING "" FORCE)
-mark_as_advanced(LIBRARY_FILES)
-
-set(INCLUDES ${CORE_SOURCE_DIR}
- ${CORE_SOURCE_DIR}/lib
- ${CORE_SOURCE_DIR}/lib/gtest/include
- ${CORE_SOURCE_DIR}/xbmc
- ${CORE_SOURCE_DIR}/xbmc/${PLATFORM_DIR}
- ${CORE_SOURCE_DIR}/xbmc/cores/VideoPlayer
- ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR})
-
-find_package(PkgConfig)
-if(KODI_DEPENDSBUILD)
- if(PKG_CONFIG_EXECUTABLE)
- set(PKG_CONFIG_FOUND TRUE)
- endif()
-endif()
-
-find_package(Threads REQUIRED QUIET)
-list(APPEND DEPLIBS ${CMAKE_THREAD_LIBS_INIT})
-
-# Required dependencies
-set(required_deps Sqlite3 FreeType PCRE Cpluff LibDvd
- TinyXML Python Yajl
- Lzo2 Fribidi TagLib FFMPEG CrossGUID)
-if(NOT WIN32)
- list(APPEND required_deps ZLIB)
-else()
- list(APPEND required_deps D3DX11Effects)
-endif()
-if(CORE_SYSTEM_NAME STREQUAL android)
- list(APPEND required_deps Zip)
-endif()
-
-# Optional dependencies
-set(optional_deps MicroHttpd MySqlClient SSH XSLT
- Alsa UDEV DBus Avahi SmbClient
- PulseAudio VDPAU VAAPI Bluetooth CAP)
-
-# Required, dyloaded deps
-set(required_dyload Curl ASS)
-
-# Optional, dyloaded deps
-set(dyload_optional CEC Bluray Plist NFS)
-
-# Required by shared objects we link
-set(required_dep_libs EXPAT)
-
-# Required tools
-find_package(TexturePacker REQUIRED)
-find_package(JsonSchemaBuilder REQUIRED)
-
-foreach(dep ${required_dep_libs})
- find_package(${dep} REQUIRED)
-endforeach()
-
-foreach(dep ${required_deps})
- core_require_dep(${dep})
-endforeach()
-
-foreach(dep ${optional_deps})
- core_optional_dep(${dep})
-endforeach()
-
-if(NOT UDEV_FOUND)
- core_optional_dep(LibUSB)
-endif()
-
-foreach(dep ${required_dyload})
- core_require_dyload_dep(${dep})
-endforeach()
-
-foreach(dep ${dyload_optional})
- core_optional_dyload_dep(${dep})
-endforeach()
-
-if(ENABLE_OPENSSL)
- core_require_dep(OpenSSL)
- list(APPEND DEP_DEFINES "-DHAVE_OPENSSL=1")
-endif()
-
-if(ENABLE_UPNP)
- list(APPEND DEP_DEFINES "-DUSE_UPNP=1")
-endif()
-
-if(ENABLE_NONFREE)
- list(APPEND DEP_DEFINES "-DHAVE_XBMC_NONFREE=1")
-endif()
-
-if(ENABLE_OPTICAL)
- list(APPEND DEP_DEFINES -DHAS_DVD_DRIVE)
- core_require_dep(Cdio)
-endif()
-
-if(ENABLE_LIRC)
- set(LIRC_DEVICE /dev/lircd CACHE STRING "LIRC device to use")
- list(APPEND DEP_DEFINES -DLIRC_DEVICE="${LIRC_DEVICE}" -DHAVE_LIRC=1)
-endif()
-
-if(ENABLE_AIRTUNES)
- find_package(Shairplay)
- if(SHAIRPLAY_FOUND)
- core_require_dyload_dep(Shairplay)
- endif()
-endif()
-
-if(CORE_SYSTEM_NAME STREQUAL osx)
- core_require_dep(Sdl)
-else()
- core_optional_dep(Sdl)
-endif()
-
-if(NOT WIN32)
- core_optional_dep(OpenGl)
- if(OPENGL_FOUND)
- if(ENABLE_MIR)
- core_require_dep(Mir ENABLE_MIR)
- core_optional_dep(LibDRM ENABLE_MIR)
- else()
- core_optional_dep(X ENABLE_X11)
- core_optional_dep(XRandR ENABLE_X11)
- core_optional_dep(LibDRM ENABLE_X11)
- endif()
- else()
- core_optional_dep(OpenGLES)
- if(OPENGLES_FOUND)
- if(ENABLE_MIR)
- core_require_dep(Mir ENABLE_MIR)
- core_optional_dep(LibDRM ENABLE_MIR)
- else()
- core_optional_dep(X ENABLE_X11)
- core_optional_dep(LibDRM ENABLE_X11)
- endif()
- endif()
- endif()
- if(NOT APPLE)
- core_require_dep(EGL)
- endif()
-endif()
-
-if(CORE_SYSTEM_NAME STREQUAL android OR CORE_SYSTEM_NAME STREQUAL linux)
- core_optional_dep(AML)
-elseif(CORE_SYSTEM_NAME STREQUAL rbpi)
- core_require_dep(MMAL)
-endif()
-
-if(ENABLE_CCACHE)
- core_optional_dep(CCache)
-endif()
-
-# Compile Info
-add_custom_command(OUTPUT ${CORE_BUILD_DIR}/xbmc/CompileInfo.cpp
- ${CMAKE_BINARY_DIR}/addons/xbmc.addon/addon.xml
- ${CMAKE_BINARY_DIR}/addons/kodi.guilib/addon.xml
- COMMAND ${CMAKE_COMMAND} -DCORE_SOURCE_DIR=${CORE_SOURCE_DIR}
- -DCORE_SYSTEM_NAME=${CORE_SYSTEM_NAME}
- -DCORE_BUILD_DIR=${CORE_BUILD_DIR}
- -DCMAKE_BINARY_DIR=${CMAKE_BINARY_DIR}
- -DARCH_DEFINES="${ARCH_DEFINES}"
- -DAPP_SCMID=${APP_SCMID}
- -Dprefix=${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}
- -P ${PROJECT_SOURCE_DIR}/scripts/common/GenerateVersionedFiles.cmake
- DEPENDS ${CORE_SOURCE_DIR}/version.txt
- ${CORE_SOURCE_DIR}/addons/xbmc.addon/addon.xml.in
- ${CORE_SOURCE_DIR}/addons/kodi.guilib/addon.xml.in
- ${CORE_SOURCE_DIR}/xbmc/CompileInfo.cpp.in)
-list(APPEND install_data addons/xbmc.addon/addon.xml)
-list(APPEND install_data addons/xbmc.json/addon.xml)
-list(APPEND install_data addons/kodi.guilib/addon.xml)
-add_library(compileinfo OBJECT ${CORE_BUILD_DIR}/xbmc/CompileInfo.cpp)
-set_target_properties(compileinfo PROPERTIES FOLDER "Build Utilities")
-target_compile_options(compileinfo PRIVATE "${SYSTEM_DEFINES}")
-
-# RC File
-if(WIN32)
- configure_file(${CORE_SOURCE_DIR}/xbmc/platform/win32/XBMC_PC.rc.in
- ${CORE_BUILD_DIR}/xbmc/platform/win32/XBMC_PC.rc @ONLY)
- add_library(resources OBJECT ${CORE_BUILD_DIR}/xbmc/platform/win32/XBMC_PC.rc)
- set_target_properties(resources PROPERTIES FOLDER "Build Utilities")
- target_include_directories(resources PRIVATE ${CORE_SOURCE_DIR}/tools/windows/packaging/media)
- set(RESOURCES $<TARGET_OBJECTS:resources>)
-endif()
-
-include_directories(${INCLUDES} ${SYSTEM_INCLUDES})
-add_compile_options(${ARCH_DEFINES} "${SYSTEM_DEFINES}" ${DEP_DEFINES} ${PATH_DEFINES})
-
-set(core_DEPENDS "" CACHE STRING "" FORCE)
-set(test_archives "" CACHE STRING "" FORCE)
-set(test_sources "" CACHE STRING "" FORCE)
-mark_as_advanced(core_DEPENDS)
-mark_as_advanced(test_archives)
-mark_as_advanced(test_sources)
-
-add_subdirectory(${CORE_SOURCE_DIR}/lib/gtest ${CORE_BUILD_DIR}/gtest EXCLUDE_FROM_ALL)
-set_target_properties(gtest PROPERTIES FOLDER "External Projects")
-
-# copy files to build tree
-copy_files_from_filelist_to_buildtree(${PROJECT_SOURCE_DIR}/installdata/common/*.txt
- ${PROJECT_SOURCE_DIR}/installdata/${CORE_SYSTEM_NAME}/*.txt)
-
-list(APPEND SKINS "${CORE_SOURCE_DIR}/addons/skin.estuary\;${CORE_SOURCE_DIR}")
-list(APPEND SKINS "${CORE_SOURCE_DIR}/addons/skin.estouchy\;${CORE_SOURCE_DIR}")
-
-# These are skins that are copied into place from the source tree
-foreach(skin ${SKINS})
- list(GET skin 0 dir)
- list(GET skin 1 relative)
- copy_skin_to_buildtree(${dir} ${relative})
-endforeach()
-
-add_custom_target(pack-skins ALL
- DEPENDS TexturePacker::TexturePacker export-files ${XBT_FILES})
-set_target_properties(pack-skins PROPERTIES FOLDER "Build Utilities")
-
-file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/system/players/VideoPlayer)
-
-set(LIBCEC_SONAME "${CEC_SONAME}")
-if(NOT CORE_SYSTEM_NAME STREQUAL windows AND NOT CORE_SYSTEM_NAME STREQUAL android)
- configure_file(${CORE_SOURCE_DIR}/xbmc/DllPaths_generated.h.in
- ${CORE_BUILD_DIR}/DllPaths_generated.h @ONLY)
-elseif(CORE_SYSTEM_NAME STREQUAL android)
- configure_file(${CORE_SOURCE_DIR}/xbmc/DllPaths_generated_android.h.in
- ${CORE_BUILD_DIR}/DllPaths_generated_android.h @ONLY)
-endif()
-
-# main library (used for main binary and tests)
-add_library(lib${APP_NAME_LC} STATIC $<TARGET_OBJECTS:compileinfo>)
-set_target_properties(lib${APP_NAME_LC} PROPERTIES PREFIX "")
-add_dependencies(lib${APP_NAME_LC} libcpluff ffmpeg dvdnav crossguid)
-
-# Codegen
-add_subdirectory(${CORE_SOURCE_DIR}/xbmc/interfaces/swig build/swig)
-
-# Other files (IDE)
-set(OTHER_FILES README.md)
-
-# Subdirs
-core_add_subdirs_from_filelist(${PROJECT_SOURCE_DIR}/treedata/common/*.txt
- ${PROJECT_SOURCE_DIR}/treedata/${CORE_SYSTEM_NAME}/*.txt)
-core_add_optional_subdirs_from_filelist(${PROJECT_SOURCE_DIR}/treedata/optional/common/*.txt
- ${PROJECT_SOURCE_DIR}/treedata/optional/${CORE_SYSTEM_NAME}/*.txt)
-
-target_link_libraries(lib${APP_NAME_LC} PUBLIC ${core_DEPENDS} ${SYSTEM_LDFLAGS} ${DEPLIBS} ${CMAKE_DL_LIBS})
-set_target_properties(lib${APP_NAME_LC} PROPERTIES PROJECT_LABEL "xbmc")
-source_group_by_folder(lib${APP_NAME_LC} RELATIVE ${CORE_SOURCE_DIR}/xbmc)
-if(WIN32)
- add_precompiled_header(lib${APP_NAME_LC} pch.h ${CORE_SOURCE_DIR}/xbmc/platform/win32/pch.cpp PCH_TARGET kodi)
- set_language_cxx(lib${APP_NAME_LC})
-endif()
-
-# main binary
-if(NOT CORE_SYSTEM_NAME STREQUAL android)
- add_executable(${APP_NAME_LC} ${CORE_MAIN_SOURCE} "${RESOURCES}" ${OTHER_FILES})
-else()
- set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--no-undefined")
- add_library(${APP_NAME_LC} SHARED ${CORE_MAIN_SOURCE} "${RESOURCES}" ${OTHER_FILES})
-endif()
-add_dependencies(${APP_NAME_LC} ${APP_NAME_LC}-libraries export-files pack-skins)
-whole_archive(_MAIN_LIBRARIES ${core_DEPENDS})
-target_link_libraries(${APP_NAME_LC} ${_MAIN_LIBRARIES} lib${APP_NAME_LC} ${DEPLIBS})
-unset(_MAIN_LIBRARIES)
-
-if(WIN32)
- set_target_properties(${APP_NAME_LC} PROPERTIES WIN32_EXECUTABLE ON)
- set_property(DIRECTORY PROPERTY VS_STARTUP_PROJECT ${APP_NAME_LC})
- target_sources(${APP_NAME_LC} PRIVATE ${CORE_SOURCE_DIR}/xbmc/platform/win32/app.manifest)
-elseif(CORE_SYSTEM_NAME STREQUAL android)
- # Nothing
-elseif(CORE_SYSTEM_NAME STREQUAL ios)
- set_target_properties(${APP_NAME_LC} PROPERTIES OUTPUT_NAME ${APP_NAME}
- MACOSX_BUNDLE_INFO_PLIST ${CORE_SOURCE_DIR}/xbmc/platform/darwin/ios/Info.plist.in)
-else()
- set_target_properties(${APP_NAME_LC} PROPERTIES SUFFIX ".bin")
-endif()
-
-# testing
-copy_files_from_filelist_to_buildtree(${PROJECT_SOURCE_DIR}/installdata/test-reference-data.txt NO_INSTALL)
-add_executable(${APP_NAME_LC}-test EXCLUDE_FROM_ALL ${CORE_SOURCE_DIR}/xbmc/test/xbmc-test.cpp ${test_sources})
-whole_archive(_TEST_LIBRARIES ${core_DEPENDS} gtest)
-target_link_libraries(${APP_NAME_LC}-test PRIVATE ${SYSTEM_LDFLAGS} ${_TEST_LIBRARIES} lib${APP_NAME_LC} ${DEPLIBS} ${CMAKE_DL_LIBS})
-unset(_TEST_LIBRARIES)
-add_dependencies(${APP_NAME_LC}-test ${APP_NAME_LC}-libraries export-files)
-if(WIN32)
- add_precompiled_header(${APP_NAME_LC}-test pch.h ${CORE_SOURCE_DIR}/xbmc/platform/win32/pch.cpp PCH_TARGET kodi)
-endif()
-
-# Enable unit-test related targets
-if(CORE_HOST_IS_TARGET)
- enable_testing()
- gtest_add_tests(${APP_NAME_LC}-test "" ${test_sources})
- add_custom_target(check ${CMAKE_CTEST_COMMAND} WORKING_DIRECTORY ${PROJECT_BINARY_DIR})
- add_dependencies(check ${APP_NAME_LC}-test)
-
- # Valgrind (memcheck)
- find_program(VALGRIND_EXECUTABLE NAMES valgrind)
- if(VALGRIND_EXECUTABLE)
- set(CTEST_MEMORYCHECK_COMMAND ${VALGRIND_EXECUTABLE})
- set(CTEST_MEMORYCHECK_COMMAND_OPTIONS "-q --trace-children=yes --leak-check=yes --track-origins=yes")
- include(CTest)
- add_custom_target(check-valgrind ${CMAKE_CTEST_COMMAND} -D ExperimentalMemCheck \${ARGS} WORKING_DIRECTORY ${PROJECT_BINARY_DIR})
- add_dependencies(check-valgrind ${APP_NAME_LC}-test)
- endif()
-
- # For testing commit series
- add_custom_target(check-commits ${CMAKE_COMMAND} -P ${PROJECT_SOURCE_DIR}/scripts/common/CheckCommits.cmake
- -DCMAKE_BINARY_DIR=${CMAKE_BINARY_DIR})
- set_target_properties(check-commits PROPERTIES FOLDER "Build Utilities")
-
- # code coverage
- if(CMAKE_BUILD_TYPE STREQUAL Coverage)
- if(EXISTS ${PROJECT_SOURCE_DIR}/scripts/${CORE_SYSTEM_NAME}/CodeCoverage.cmake)
- include(${PROJECT_SOURCE_DIR}/scripts/${CORE_SYSTEM_NAME}/CodeCoverage.cmake)
- else()
- message(FATAL_ERROR "Code coverage not (yet) implemented for platform ${CORE_SYSTEM_NAME}")
- endif()
- endif()
-
- # Documentation
- find_package(Doxygen)
- if(DOXYGEN_FOUND)
- add_custom_target(doc
- COMMAND ${DOXYGEN_EXECUTABLE} ${CORE_SOURCE_DIR}/doxygen_resources/Doxyfile.doxy
- COMMAND ${CMAKE_COMMAND} -E echo "Documentation built to: file://${CORE_SOURCE_DIR}/docs/html/index.html"
- WORKING_DIRECTORY ${CORE_SOURCE_DIR}/doxygen_resources
- COMMENT "Generating Doxygen documentation" VERBATIM)
- endif()
-endif()
-
-# link wrapper
-if(FFMPEG_LINK_EXECUTABLE)
- set(CMAKE_CXX_LINK_EXECUTABLE "${FFMPEG_LINK_EXECUTABLE}")
-endif()
-if(FFMPEG_CREATE_SHARED_LIBRARY)
- set(CMAKE_CXX_CREATE_SHARED_LIBRARY "${FFMPEG_CREATE_SHARED_LIBRARY}")
-endif()
-
-# Platform specific additional extra targets
-if(EXISTS ${PROJECT_SOURCE_DIR}/scripts/${CORE_SYSTEM_NAME}/ExtraTargets.cmake)
- include(${PROJECT_SOURCE_DIR}/scripts/${CORE_SYSTEM_NAME}/ExtraTargets.cmake)
-endif()
-
-include(scripts/${CORE_SYSTEM_NAME}/Install.cmake)
-
-# Add uninstall target
-if(CMAKE_GENERATOR MATCHES Makefile)
- add_custom_target(uninstall COMMAND ${CMAKE_COMMAND} -P ${PROJECT_SOURCE_DIR}/scripts/common/Uninstall.cmake)
- set_target_properties(uninstall PROPERTIES FOLDER "Build Utilities")
-endif()
-
-# Create target that allows to build binary-addons.
-# Use make binary-addons ADDONS="visualization.spectrum" to select the addons to build.
-if(CMAKE_GENERATOR STREQUAL "Unix Makefiles")
- if(CMAKE_CROSSCOMPILING)
- set(_cross_args CROSS_COMPILING=yes TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE})
- endif()
- if(NOT CORE_SYSTEM_NAME STREQUAL android)
- set(_prefix ${CMAKE_BINARY_DIR}/addons)
- set(_extra "CMAKE_EXTRA=-DPACKAGE_ZIP=ON")
- else()
- set(_prefix ${CMAKE_INSTALL_PREFIX})
- endif()
- add_custom_target(binary-addons
- COMMAND $(MAKE) -C ${CORE_SOURCE_DIR}/tools/depends/target/binary-addons clean
- COMMAND $(MAKE) -C ${CORE_SOURCE_DIR}/tools/depends/target/binary-addons VERBOSE=1 V=99
- PREFIX=${_prefix} INSTALL_PREFIX=${_prefix} ${_cross_args} ${_extra})
- unset(_cross_args)
- unset(_prefix)
-endif()
-
-# Prepare add-on build env
-core_file_read_filtered(bindings ${CORE_SOURCE_DIR}/xbmc/addons/addon-bindings.mk)
-foreach(binding ${bindings})
- string(REPLACE " =" ";" binding "${binding}")
- string(REPLACE "+=" ";" binding "${binding}")
- list(GET binding 1 header)
- get_filename_component(file ${header} NAME)
- configure_file(${CORE_SOURCE_DIR}/${header} ${CORE_BUILD_DIR}/include/${APP_NAME_LC}/${file} COPYONLY)
-endforeach()
-
-set(APP_LIB_DIR ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/lib/${APP_NAME_LC})
-set(APP_INCLUDE_DIR ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/include/${APP_NAME_LC})
-set(CXX11_SWITCH "-std=c++11")
-configure_file(${PROJECT_SOURCE_DIR}/KodiConfig.cmake.in
- ${CORE_BUILD_DIR}/lib/${APP_NAME_LC}/${APP_NAME}Config.cmake @ONLY)
-configure_file(${PROJECT_SOURCE_DIR}/scripts/common/AddonHelpers.cmake
- ${CORE_BUILD_DIR}/lib/${APP_NAME_LC}/AddonHelpers.cmake COPYONLY)
-configure_file(${PROJECT_SOURCE_DIR}/scripts/common/AddOptions.cmake
- ${CORE_BUILD_DIR}/lib/${APP_NAME_LC}/AddOptions.cmake COPYONLY)
-
-# Status
-message(STATUS "#---- CONFIGURATION ----#")
-foreach(msg ${final_message})
- message(STATUS ${msg})
-endforeach()
-
-if(VERBOSE)
- message(STATUS "\n#--------------- Internal Variables -------------#")
- message(STATUS "DEPLIBS: ${DEPLIBS}")
- message(STATUS "core_DEPENDS: ${core_DEPENDS}")
- message(STATUS "#---------------------------------------------#")
- message(STATUS "SYSTEM_LDFLAGS : ${SYSTEM_LDFLAGS}")
- message(STATUS "CMAKE_DL_LIBS : ${CMAKE_DL_LIBS}")
- message(STATUS "CMAKE_C_FLAGS : ${CMAKE_C_FLAGS}")
- message(STATUS "CMAKE_CXX_FLAGS : ${CMAKE_CXX_FLAGS}")
- message(STATUS "CMAKE_EXE_LINKER_FLAGS: ${CMAKE_EXE_LINKER_FLAGS}")
- message(STATUS "#---------------------------------------------#")
- message(STATUS "bindir : ${bindir}")
- message(STATUS "includedir : ${includedir}")
- message(STATUS "libdir : ${libdir}")
- message(STATUS "datarootdir: ${datarootdir}")
- message(STATUS "#---------------------------------------------#")
- message(STATUS "GIT_REV: ${APP_SCMID}")
- message(STATUS "#---------------------------------------------#")
- message(STATUS "CPACK_GENERATOR : ${CPACK_GENERATOR}")
- message(STATUS "CPACK_SOURCE_GENERATOR: ${CPACK_SOURCE_GENERATOR}")
- message(STATUS "#---------------------------------------------#")
-endif()
diff --git a/project/cmake/KodiConfig.cmake.in b/project/cmake/KodiConfig.cmake.in
deleted file mode 100644
index c02a68085a..0000000000
--- a/project/cmake/KodiConfig.cmake.in
+++ /dev/null
@@ -1,34 +0,0 @@
-set(APP_NAME @APP_NAME@)
-set(APP_NAME_LC @APP_NAME_LC@)
-set(APP_NAME_UC @APP_NAME_UC@)
-set(APP_VERSION_MAJOR @APP_VERSION_MAJOR@)
-set(APP_VERSION_MINOR @APP_VERSION_MINOR@)
-if(NOT @APP_NAME_UC@_PREFIX)
- set(@APP_NAME_UC@_PREFIX @APP_PREFIX@)
-endif()
-if(NOT @APP_NAME_UC@_INCLUDE_DIR)
- set(@APP_NAME_UC@_INCLUDE_DIR @APP_INCLUDE_DIR@)
-endif()
-if(NOT @APP_NAME_UC@_LIB_DIR)
- set(@APP_NAME_UC@_LIB_DIR @APP_LIB_DIR@)
-endif()
-if(NOT @APP_NAME_UC@_DATA_DIR)
- set(@APP_NAME_UC@_DATA_DIR @APP_DATA_DIR@)
-endif()
-if(NOT WIN32)
- set(CMAKE_CXX_FLAGS "$ENV{CXXFLAGS} @CXX11_SWITCH@")
-endif()
-list(APPEND CMAKE_MODULE_PATH @APP_LIB_DIR@ @APP_DATA_DIR@/cmake)
-
-string(REPLACE ";" " " ARCH_DEFINES "@ARCH_DEFINES@")
-add_definitions(${ARCH_DEFINES} -DBUILD_KODI_ADDON)
-
-if(NOT CORE_SYSTEM_NAME)
- if(CMAKE_SYSTEM_NAME STREQUAL "Darwin")
- set(CORE_SYSTEM_NAME "osx")
- else()
- string(TOLOWER ${CMAKE_SYSTEM_NAME} CORE_SYSTEM_NAME)
- endif()
-endif()
-
-include(AddonHelpers)
diff --git a/project/cmake/README.md b/project/cmake/README.md
deleted file mode 100644
index f3d727e548..0000000000
--- a/project/cmake/README.md
+++ /dev/null
@@ -1,299 +0,0 @@
-# Kodi CMake based buildsystem
-
-This files describes Kodi's CMake based buildsystem. CMake is a cross-platform
-tool for generating makefiles as well as project files used by IDEs.
-
-The current version of the buildsystem is capable of building and packaging
-Kodi for the following platforms:
-
-- Linux (GNU Makefiles, Ninja)
-- Windows (NMake Makefiles, Visual Studio 14 (2015), Ninja)
-- macOS and iOS (GNU Makefiles, Xcode, Ninja)
-- Android (GNU Makefiles)
-- FreeBSD (GNU Makefiles)
-
-Before building Kodi with CMake, please ensure that you have the platform
-specific dependencies installed.
-
-While the legacy build systems typically used in-source builds it's recommended
-to use out-of-source builds with CMake. The necessary runtime dependencies such
-as dlls, skins and configuration files are copied over to the build directory
-automatically.
-
-## Dependency installation
-
-### Linux
-
-The dependencies required to build on Linux can be found in
-[docs/README.xxx](https://github.com/xbmc/xbmc/tree/master/docs).
-
-### Raspberry Pi
-
-The cross compilation environment for the Raspberry Pi as well as the
-dependencies have to be installed as explained in
-[docs/README.raspberrypi](https://github.com/xbmc/xbmc/tree/master/docs/README.raspberrypi).
-
-### Windows
-
-For Windows the dependencies can be found in the
-[Wiki](http://kodi.wiki/view/HOW-TO:Compile_Kodi_for_Windows) (Step 1-4). If not already available on your pc, you should
-install the [Windows Software Development Kit (SDK)](https://dev.windows.com/en-us/downloads/sdk-archive) for your Windows version. This is required for HLSL shader offline compiling with the [Effect-Compiler Tool](https://msdn.microsoft.com/de-de/library/windows/desktop/bb232919(v=vs.85).aspx) (fxc.exe).
-
-On Windows, the CMake based buildsystem requires that the binary dependencies
-are downloaded using `DownloadBuildDeps.bat` and `DownloadMingwBuildEnv.bat`
-and that the mingw libs (ffmpeg, libdvd and others) are built using
-`make-mingwlibs.bat`.
-
-### macOS
-
-For macOS the required dependencies can be found in
-[docs/README.osx](https://github.com/xbmc/xbmc/tree/master/docs/README.osx).
-
-On macOS it is necessary to build the dependencies in `tools/depends` using
-`./bootstrap && ./configure --host=<PLATFORM> && make`. The other steps such
-as `make -C tools/depends/target/xbmc` and `make xcode_depends` are not needed
-as these steps are covered already by the CMake project.
-
-### Android
-
-The dependencies needed to compile for Android can be found in
-[docs/README.android](https://github.com/xbmc/xbmc/tree/master/docs/README.android)
-. All described steps have to be executed (except 5.2 which is replaced by the
-respective CMake command below).
-
-## Building Kodi
-
-This section lists the necessary commands for building Kodi with CMake.
-CMake supports different generators that can be classified into two categories:
-single- and multiconfiguration generators.
-
-A single configuration generator (GNU/NMake Makefiles) generates project files
-for a single build type (e.g. Debug, Release) specified at configure time.
-Multi configuration generators (Visual Studio, Xcode) allow to specify the
-build type at compile time.
-
-All examples below are for out-of-source builds with Kodi checked out to
-`<KODI_SRC>`:
-
-```
-mkdir kodi-build && cd kodi-build
-```
-
-### Linux with GNU Makefiles
-
-```
-cmake <KODI_SRC>/project/cmake/
-cmake --build . -- VERBOSE=1 -j$(nproc) # or: make VERBOSE=1 -j$(nproc)
-./kodi.bin
-```
-
-`CMAKE_BUILD_TYPE` defaults to `Release`.
-
-#### Debian package generation
-The buildsystem is capable of generating Debian packages using CPack. To generate them, `CPACK_GENERATOR` has to be set to *DEB*, i.e. executing CMake's configure step with `-DCPACK_GENERATOR=DEB`.
-You should use CMake/CPack 3.6.0 or higher. Lower versions can generate the packages but package names will be mangled.
-
-The following optional variables (which can be passed to buildsystem when executing cmake with the -D`<variable-name>=<value>` format) can be used to manipulate package type, name and version:
-
-- `DEBIAN_PACKAGE_TYPE` controls the name and version of generated packages. Accepted values are `stable`, `unstable` and `nightly` (default is `nightly`).
-- `DEBIAN_PACKAGE_EPOCH` controls package epoch (default is `2`)
-- `DEBIAN_PACKAGE_VERSION` controls package version (default is `0`)
-- `DEBIAN_PACKAGE_REVISION` controls package revision (no default is set)
-
-Packages metadata can be changed simply by editing files present in the `cpack/deb` folder
-A lot more variables are available (see cpack/CPackDebian.cmake file) but you shouldn't mess with them unless you know what you're doing.
-
-Generated packages can be found in <BUILD_DIR>/packages.
-
-### Raspberry Pi with GNU Makefiles
-
-```
-cmake -DCMAKE_TOOLCHAIN_FILE=<KODI_SRC>/tools/depends/target/Toolchain.cmake <KODI_SRC>/project/cmake/
-cmake --build . -- VERBOSE=1 -j$(nproc) # or: make VERBOSE=1 -j$(nproc)
-```
-
-### Windows with Visual Studio project files
-
-```
-cmake -G "Visual Studio 14" <KODI_SRC>/project/cmake/
-cmake --build . --config "Debug" # or: Build solution with Visual Studio
-Debug\kodi.exe
-```
-
-#### Windows installer generation
-
-The script [project/Win32BuildSetup](https://github.com/xbmc/xbmc/blob/master/project/Win32BuildSetup/BuildSetup.bat)
-builds an installable package for Windows.
-
-### Windows with NMake Makefiles
-
-```
-cmake -G "NMake Makefiles" -DCMAKE_BUILD_TYPE=Release <KODI_SRC>/project/cmake/
-cmake --build . # or: nmake
-kodi.exe
-```
-
-### macOS with GNU Makefiles
-
-```
-cmake -DCMAKE_TOOLCHAIN_FILE=<KODI_SRC>/tools/depends/target/Toolchain.cmake <KODI_SRC>/project/cmake/
-cmake --build . -- VERBOSE=1 -j$(sysctl -n hw.ncpu) # or: make VERBOSE=1 -j$(sysctl -n hw.ncpu)
-./kodi.bin
-```
-
-### macOS with Xcode project files
-
-```
-cmake -DCMAKE_TOOLCHAIN_FILE=<KODI_SRC>/tools/depends/target/Toolchain.cmake -G "Xcode" <KODI_SRC>/project/cmake/
-cmake --build . --config "Release" -- -verbose -jobs $(sysctl -n hw.ncpu) # or: Build solution with Xcode
-./Release/kodi.bin
-```
-
-#### macOS installer generation
-
-Afterwards an installable DMG for macOS can be built with the following command:
-
-```
-cmake --build . --config "Release" --target "dmg" # or: make dmg
-```
-
-#### iOS package generation
-
-Consequently an installable DEB for iOS can be built with the following command:
-
-```
-make deb
-```
-
-### Android with GNU Makefiles
-
-```
-cmake -DCMAKE_TOOLCHAIN_FILE=<KODI_SRC>/tools/depends/target/Toolchain.cmake <KODI_SRC>/project/cmake/
-cmake --build . -- VERBOSE=1 -j$(nproc) # or: make VERBOSE=1 -j$(nproc)
-```
-
-#### Android package generation
-
-An installable APK for Android can be built with the following command:
-
-```
-make apk
-```
-
-## Options
-
-Kodi supports a number of build options that can enable or disable certain
-functionality.i These options must be set when running CMake with
-`-DENABLE_<OPTION>=<ON|OFF|AUTO`. The default is `AUTO` which enables
-the option if a certain dependency is found. For example CEC support is
-enabled if libCEC is available. `ON` forcefully enables the dependency
-and the CMake run will fail if the related dependency is not available.
-This is mostly useful for packagers. `OFF` will disable the feature.
-
-Example for forcefully enabling VAAPI and disabling VDPAU:
-
-```
-cmake ... -DENABLE_VAAPI=ON -DENABLE_VDPAU=OFF ...
-```
-
-Example for building with external FFMPEG:
-
-```
-cmake ... -DFFMPEG_PATH=/opt/ffmpeg -DENABLE_INTERNAL_FFMPEG=OFF ...
-```
-
-For more information and an updated list of option, please check the
-main [project/cmake/CMakeLists.txt](https://github.com/xbmc/xbmc/tree/master/project/cmake/CMakeLists.txt).
-
-## Tests
-
-Kodi uses Google Test as its testing framework. Each test file is scanned for tests and these
-are added to CTest, which is the native test driver for CMake.
-
-This scanning happens at configuration time. If tests depend on generated support files which
-should not be scanned, then those support files should be added to the SUPPORT_SOURCES
-variable as opposed to SOURCES before calling core_add_test. You might want to do this where
-the generated support files would not exist at configure time, or if they are so large that
-scanning them would take up an unreasonable amount of configure time.
-
-## Extra targets
-
-When using the makefile builds a few extra targets are defined:
-
-- `make check` builds and executes the test suite.
-- `make check-valgrind` builds and executes the test suite with valgrind memcheck.
-- `make doc` builds the Doxygen documentation.
-
-Code coverage (with Gcov, LCOV and Gcovr) can be built on Linux:
-
-- CMake has to be executed with `-DCMAKE_BUILD_TYPE=Coverage`
-- `make coverage` generates an HTML code coverage report.
-- `make coverage_xml` generates an XML code coverage report.
-
-## Building binary addons
-
-The CMake build system integrates with the addon build system if the GNU
-Makefile generator is used. This offers an easy way to build addons for
-packagers or Kodi developers who don't work on addons.
-
-```
-make binary-addons
-```
-
-Specific addons can be built with:
-
-```
-make binary-addons ADDONS="visualization.spectrum pvr.demo"
-```
-
-Addon developers can build single addons into the Kodi build directory
-so that the addon can be tested with self-compiled specific versions of Kodi.
-
-```
-mkdir pvr.demo-build && cd pvr.demo-build
-cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_PREFIX_PATH=<KODI_BUILD_DIR>/build -DKODI_BUILD_DIR=<KODI_BUILD_DIR> <pvr.demo-SRC>
-make
-```
-
-It is recommended to specify the directories as absolute paths. If relative
-paths are used, they are considered relative to the build directory in which
-`cmake` was executed (aka the current working working directory).
-
-Both methods work only for already existing addons. See this
-[forum thread](http://forum.kodi.tv/showthread.php?tid=219166&pid=1934922#pid1934922)
-and [addons/README.md](https://github.com/xbmc/xbmc/blob/master/project/cmake/addons/README.md)
-for addon development and detailed documentation about the addon build system.
-
-## Sanitizers
-
-Clang and GCC support different kinds of Sanitizers. To enable a Sanitizer call CMake with the
-option `-DECM_ENABLE_SANITIZERS=’san1;san2;...'`. For more information about enabling the
-Sanitizers read the documentation in
-[modules/extra/ECMEnableSanitizers.cmake](https://github.com/xbmc/xbmc/tree/master/project/cmake/modules/extra/ECMEnableSanitizers.cmake).
-
-It is also recommended to read the sections about the Sanitizers in the [Clang
-documentation](http://clang.llvm.org/docs/).
-
-## Debugging the build
-
-This section covers some tips that can be useful for debugging a CMake
-based build.
-
-### Verbosity (show compiler and linker parameters)
-
-In order to see the exact compiler commands `make` and `nmake` can be
-executed with a `VERBOSE=1` parameter.
-
-On Windows, this is unfortunately not enough because `nmake` uses
-temporary files to workaround `nmake`'s command string length limitations.
-In order to see verbose output the file
-[Modules/Platform/Windows.cmake](https://github.com/Kitware/CMake/blob/master/Modules/Platform/Windows.cmake#L40)
-in the local CMake installation has to be adapted by uncommenting these
-lines:
-
-```
-# uncomment these out to debug nmake and borland makefiles
-#set(CMAKE_START_TEMP_FILE "")
-#set(CMAKE_END_TEMP_FILE "")
-#set(CMAKE_VERBOSE_MAKEFILE 1)
-```
diff --git a/project/cmake/addons/CMakeLists.txt b/project/cmake/addons/CMakeLists.txt
deleted file mode 100644
index 96e544bb44..0000000000
--- a/project/cmake/addons/CMakeLists.txt
+++ /dev/null
@@ -1,434 +0,0 @@
-cmake_minimum_required(VERSION 3.1)
-project(kodi-addons)
-
-list(APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR})
-
-option(ADDON_TARBALL_CACHING "Cache downloaded addon source tarballs?" ON)
-if(ADDON_TARBALL_CACHING)
- message(STATUS "Addon source tarball caching is enabled")
-else()
- message(STATUS "Addon source tarball caching is disabled")
-endif()
-
-if(NOT CMAKE_BUILD_TYPE)
- set(CMAKE_BUILD_TYPE Release)
-endif()
-
-if(NOT CORE_SYSTEM_NAME)
- if(CMAKE_SYSTEM_NAME STREQUAL "Darwin")
- set(CORE_SYSTEM_NAME "osx")
- else()
- string(TOLOWER ${CMAKE_SYSTEM_NAME} CORE_SYSTEM_NAME)
- endif()
-endif()
-
-include(ExternalProject)
-
-### setup all the necessary paths
-if(APP_ROOT)
- set(CORE_SOURCE_DIR ${APP_ROOT})
- unset(APP_ROOT)
- message(WARNING "APP_ROOT is deprecated. Please use CORE_SOURCE_DIR instead.")
-endif()
-if(NOT CORE_SOURCE_DIR)
- set(CORE_SOURCE_DIR ${PROJECT_SOURCE_DIR}/../../..)
-else()
- file(TO_CMAKE_PATH "${CORE_SOURCE_DIR}" CORE_SOURCE_DIR)
-endif()
-get_filename_component(CORE_SOURCE_DIR "${CORE_SOURCE_DIR}" ABSOLUTE)
-
-if(NOT BUILD_DIR)
- set(BUILD_DIR "${CMAKE_BINARY_DIR}/build")
-else()
- file(TO_CMAKE_PATH "${BUILD_DIR}" BUILD_DIR)
-endif()
-get_filename_component(BUILD_DIR "${BUILD_DIR}" ABSOLUTE)
-
-if(NOT ADDON_DEPENDS_PATH)
- set(ADDON_DEPENDS_PATH "${BUILD_DIR}/depends")
-else()
- file(TO_CMAKE_PATH "${ADDON_DEPENDS_PATH}" ADDON_DEPENDS_PATH)
-endif()
-get_filename_component(ADDON_DEPENDS_PATH "${ADDON_DEPENDS_PATH}" ABSOLUTE)
-
-if(NOT PLATFORM_DIR)
- set(PLATFORM_DIR ${CORE_SOURCE_DIR}/project/cmake/platform/${CORE_SYSTEM_NAME})
- file(TO_CMAKE_PATH "${PLATFORM_DIR}" PLATFORM_DIR)
-endif()
-
-# make sure CMAKE_PREFIX_PATH is set
-if(NOT CMAKE_PREFIX_PATH)
- set(CMAKE_PREFIX_PATH "${ADDON_DEPENDS_PATH}")
-else()
- file(TO_CMAKE_PATH "${CMAKE_PREFIX_PATH}" CMAKE_PREFIX_PATH)
- list(APPEND CMAKE_PREFIX_PATH "${ADDON_DEPENDS_PATH}")
-endif()
-
-# check for autoconf stuff to pass on
-if(AUTOCONF_FILES)
- string(REPLACE " " ";" AUTOCONF_FILES ${AUTOCONF_FILES})
- set(CROSS_AUTOCONF "yes")
-endif()
-
-if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT OR NOT CMAKE_INSTALL_PREFIX)
- set(CMAKE_INSTALL_PREFIX "${PROJECT_SOURCE_DIR}/output/addons")
-endif()
-list(APPEND CMAKE_PREFIX_PATH ${CMAKE_INSTALL_PREFIX})
-
-set(BUILD_ARGS -DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH}
- -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR>
- -DPACKAGE_CONFIG_PATH=${ADDON_DEPENDS_PATH}/lib/pkgconfig
- -DADDON_DEPENDS_PATH=${ADDON_DEPENDS_PATH}
- -DOVERRIDE_PATHS=${OVERRIDE_PATHS}
- -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
- -DCMAKE_USER_MAKE_RULES_OVERRIDE=${CMAKE_USER_MAKE_RULES_OVERRIDE}
- -DCMAKE_USER_MAKE_RULES_OVERRIDE_CXX=${CMAKE_USER_MAKE_RULES_OVERRIDE_CXX}
- -DCORE_SYSTEM_NAME=${CORE_SYSTEM_NAME}
- -DBUILD_SHARED_LIBS=1
- -DCMAKE_C_FLAGS=${CMAKE_C_FLAGS}
- -DCMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS})
-
-if(MSVC)
- # move cmake specific targets to a CMakePredefinedTargets folder in Visual Studio
- set_property(GLOBAL PROPERTY USE_FOLDERS ON)
-endif()
-
-option(PACKAGE_ZIP "Prepare built addons for packaging" OFF)
-if(PACKAGE_ZIP)
- # needed for project installing
- list(APPEND BUILD_ARGS -DPACKAGE_ZIP=ON)
-
- # figure out where to store the packaged ZIP archives
- if(NOT PACKAGE_DIR)
- set(PACKAGE_DIR "${BUILD_DIR}/zips")
- else()
- file(TO_CMAKE_PATH "${PACKAGE_DIR}" PACKAGE_DIR)
- endif()
- list(APPEND BUILD_ARGS -DPACKAGE_DIR=${PACKAGE_DIR})
-
- message(STATUS "ZIP packaging enabled (destination: ${PACKAGE_DIR})")
-endif()
-
-if(CMAKE_TOOLCHAIN_FILE)
- list(APPEND BUILD_ARGS -DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE})
- message(STATUS "Toolchain specified")
- message(STATUS ${BUILD_ARGS})
-endif()
-
-if(NOT ADDONS_TO_BUILD)
- set(ADDONS_TO_BUILD "all")
-else()
- string(STRIP "${ADDONS_TO_BUILD}" ADDONS_TO_BUILD)
- message(STATUS "Building following addons: ${ADDONS_TO_BUILD}")
- string(REPLACE " " ";" ADDONS_TO_BUILD ${ADDONS_TO_BUILD})
-endif()
-
-if(NOT ADDONS_DEFINITION_DIR)
- set(ADDONS_DEFINITION_DIR ${PROJECT_SOURCE_DIR}/addons)
-else()
- file(TO_CMAKE_PATH "${ADDONS_DEFINITION_DIR}" ADDONS_DEFINITION_DIR)
-endif()
-get_filename_component(ADDONS_DEFINITION_DIR "${ADDONS_DEFINITION_DIR}" ABSOLUTE)
-
-if(ADDON_SRC_PREFIX)
- if(NOT IS_ABSOLUTE ${ADDON_SRC_PREFIX})
- get_filename_component(ADDON_SRC_PREFIX "${CMAKE_BINARY_DIR}/${ADDON_SRC_PREFIX}" ABSOLUTE)
- endif()
- message(STATUS "Overriding addon source directory prefix: ${ADDON_SRC_PREFIX}")
-endif()
-
-if(NOT APP_LIB_DIR)
- set(APP_LIB_DIR "${ADDON_DEPENDS_PATH}/lib/kodi")
-else()
- file(TO_CMAKE_PATH "${APP_LIB_DIR}" APP_LIB_DIR)
-endif()
-
-set(APP_PREFIX "${CMAKE_INSTALL_PREFIX}")
-
-# check for platform specific stuff
-if(EXISTS ${PLATFORM_DIR}/defines.txt)
- file(STRINGS ${PLATFORM_DIR}/defines.txt platformdefines)
-
- if(NOT ARCH_DEFINES AND platformdefines)
- set(ARCH_DEFINES ${platformdefines})
- endif()
-endif()
-
-# include check_target_platform() function
-include(${CORE_SOURCE_DIR}/project/cmake/scripts/common/CheckTargetPlatform.cmake)
-
-set(ADDON_INSTALL_DIR ${CMAKE_INSTALL_PREFIX})
-if(NOT WIN32)
- # check install permissions
- check_install_permissions(${CMAKE_INSTALL_PREFIX} can_write)
- if(NOT ${can_write} AND CMAKE_SYSTEM_NAME STREQUAL "Linux")
- set(NEED_SUDO TRUE)
- set(ADDON_INSTALL_DIR ${CMAKE_BINARY_DIR}/.install)
- list(APPEND BUILD_ARGS -DOVERRIDE_PATHS=ON)
- message(STATUS "NEED_SUDO: ${NEED_SUDO} (no write permission for ${CMAKE_INSTALL_PREFIX})")
- endif()
-endif()
-
-### prepare the build environment for the binary addons
-# copy the PrepareEnv.cmake script to the depends path so that we can include it
-file(COPY ${CORE_SOURCE_DIR}/project/cmake/scripts/common/PrepareEnv.cmake DESTINATION ${APP_LIB_DIR})
-
-# add the location of PrepareEnv.cmake to CMAKE_MODULE_PATH so that it is found
-list(APPEND CMAKE_MODULE_PATH ${APP_LIB_DIR})
-
-# include PrepareEnv.cmake which contains the logic to install the addon header bindings etc
-include(PrepareEnv)
-
-### add the depends subdirectory for any general dependencies
-message(STATUS "\n-- ---- Preparing general dependencies ----")
-add_subdirectory(depends)
-
-# add a custom target "package-addons" which will package and install all addons
-add_custom_target(package-addons)
-
-### get and build all the binary addons
-# look for all the addons to be built
-file(GLOB_RECURSE addons ${ADDONS_DEFINITION_DIR}/*.txt)
-
-#if there are no addons assume that bootstrapping hasn't happened yet
-if(NOT addons)
- message(STATUS "Bootstrapping all default repositories as no addons were found...")
- set(BOOTSTRAP_BUILD_DIR "${BUILD_DIR}/bootstrap")
-
- # make sure that the bootstraps build addon exists
- if(NOT EXISTS ${BOOTSTRAP_BUILD_DIR})
- file(MAKE_DIRECTORY ${BOOTSTRAP_BUILD_DIR})
- endif()
-
- string(REPLACE ";" " " ADDONS_TO_BUILD_STR "${ADDONS_TO_BUILD}")
- # generate the bootstrap buildsystem
- execute_process(COMMAND ${CMAKE_COMMAND} ${PROJECT_SOURCE_DIR}/bootstrap
- -DCMAKE_INSTALL_PREFIX:PATH=${ADDONS_DEFINITION_DIR}
- -DBUILD_DIR:PATH=${BOOTSTRAP_BUILD_DIR}
- -DADDONS_TO_BUILD:STRING=${ADDONS_TO_BUILD_STR}
- -DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE}
- WORKING_DIRECTORY ${BOOTSTRAP_BUILD_DIR})
-
- # execute the generated bootstrap buildsystem
- execute_process(COMMAND ${CMAKE_COMMAND} --build ${BOOTSTRAP_BUILD_DIR}
- WORKING_DIRECTORY ${BOOTSTRAP_BUILD_DIR})
-
- # now look for all the addons to be built again
- file(GLOB_RECURSE addons ${ADDONS_DEFINITION_DIR}/*.txt)
-
- if(NOT addons)
- message(FATAL_ERROR "No addons available to be built")
- endif()
-endif()
-
-# Track if at least one addon has been found. Everything else is likely an
-# error either in ADDONS_TO_BUILD or in the directory configuration.
-set(SUPPORTED_ADDON_FOUND FALSE)
-
-foreach(addon ${addons})
- if(NOT (addon MATCHES platforms.txt))
- file(STRINGS ${addon} def)
- string(REPLACE " " ";" def ${def})
- list(GET def 0 id)
-
- set(ADDON_FOUND FALSE)
- # try to find a perfect match
- list(FIND ADDONS_TO_BUILD ${id} idx)
- if(idx GREATER -1 OR "${ADDONS_TO_BUILD}" STREQUAL "all")
- set(ADDON_FOUND TRUE)
- # Maybe we have a regex
- elseif(id MATCHES "${ADDONS_TO_BUILD}")
- message(STATUS "Pattern ${ADDONS_TO_BUILD} matches ${id}, building addon")
- set(ADDON_FOUND TRUE)
- endif()
-
- if(ADDON_FOUND)
- message(STATUS "\n-- ---- Configuring addon ${addon} ----")
- set(SUPPORTED_ADDON_FOUND TRUE)
-
- get_filename_component(dir ${addon} DIRECTORY)
-
- # check if the addon has a platforms.txt
- set(platform_found FALSE)
- check_target_platform(${dir} ${CORE_SYSTEM_NAME} platform_found)
-
- if(${platform_found})
- # make sure the output directory is clean
- file(REMOVE_RECURSE "${CMAKE_INSTALL_PREFIX}/${id}/")
-
- # get the URL and revision of the addon
- list(LENGTH def deflength)
- list(GET def 1 url)
-
- set(archive_name ${id})
- if(ADDON_SRC_PREFIX)
- set(SOURCE_DIR ${ADDON_SRC_PREFIX}/${id})
- set(archive_name "")
- else()
- set(SOURCE_DIR "")
- endif()
-
- # if there is a 3rd parameter in the file, we consider it a git revision
- if(deflength GREATER 2 AND "${SOURCE_DIR}" STREQUAL "")
- list(GET def 2 revision)
-
- # we need access to a git executable
- find_package(Git REQUIRED)
-
- # resolve revision to git hash
- execute_process(COMMAND ${GIT_EXECUTABLE} ls-remote ${url} ${revision} OUTPUT_VARIABLE revision_hash)
- # git ls-remote only works on branches and tag names but not on revisions
- if(NOT "${revision_hash}" STREQUAL "")
- string(REPLACE "\t" ";" revision_list ${revision_hash})
- list(GET revision_list 0 revision_hash)
- message(STATUS "${id}: git branch/tag ${revision} resolved to hash: ${revision_hash}")
- set(revision ${revision_hash})
- endif()
-
- # Note: downloading specific revisions via http in the format below is probably github specific
- # if we ever use other repositories, this might need adapting
- set(url ${url}/archive/${revision}.tar.gz)
- set(archive_name ${archive_name}-${revision})
- elseif("${SOURCE_DIR}" STREQUAL "")
- # check if the URL starts with file://
- string(REGEX MATCH "^file://.*$" local_url "${url}")
-
- #if not we assume this to be a local directory
- if(local_url)
- # this is not an archive
- set(archive_name "")
-
- # remove the file:// protocol from the URL
- string(REPLACE "file://" "" SOURCE_DIR "${url}")
-
- # on win32 we may have to remove another leading /
- if(WIN32)
- # check if the path is a local path
- string(REGEX MATCH "^/.*$" local_path "${SOURCE_DIR}")
- if(local_path)
- string(SUBSTRING "${SOURCE_DIR}" 1 -1 SOURCE_DIR)
- endif()
- endif()
- endif()
- endif()
-
- # download the addon if necessary
- if(NOT "${archive_name}" STREQUAL "")
- # download and extract the addon
- if(NOT ADDON_TARBALL_CACHING OR NOT EXISTS ${BUILD_DIR}/download/${archive_name}.tar.gz)
- # cleanup any of the previously downloaded archives of this addon
- file(GLOB archives "${BUILD_DIR}/download/${id}*.tar.gz")
- if(archives)
- message(STATUS "Removing old archives of ${id}: ${archives}")
- file(REMOVE ${archives})
- endif()
-
- # download the addon
- file(DOWNLOAD "${url}" "${BUILD_DIR}/download/${archive_name}.tar.gz" STATUS dlstatus LOG dllog SHOW_PROGRESS)
- list(GET dlstatus 0 retcode)
- if(NOT ${retcode} EQUAL 0)
- message(FATAL_ERROR "ERROR downloading ${url} - status: ${dlstatus} log: ${dllog}")
- endif()
- endif()
-
- # remove any previously extracted version of the addon
- file(REMOVE_RECURSE "${BUILD_DIR}/${id}")
-
- # extract the addon from the archive
- execute_process(COMMAND ${CMAKE_COMMAND} -E tar xzvf ${BUILD_DIR}/download/${archive_name}.tar.gz
- WORKING_DIRECTORY ${BUILD_DIR})
- file(GLOB extract_dir "${BUILD_DIR}/${archive_name}*")
- if(extract_dir STREQUAL "")
- message(FATAL_ERROR "${id}: error extracting ${BUILD_DIR}/download/${archive_name}.tar.gz")
- else()
- file(RENAME "${extract_dir}" "${BUILD_DIR}/${id}")
- endif()
-
- set(SOURCE_DIR ${BUILD_DIR}/${id})
- endif()
-
- if(NOT "${SOURCE_DIR}" STREQUAL "" AND EXISTS ${SOURCE_DIR})
- # create a list of addons we are building
- list(APPEND ALL_ADDONS_BUILDING ${id})
-
- # setup the buildsystem for the addon
- externalproject_add(${id}
- SOURCE_DIR ${SOURCE_DIR}
- INSTALL_DIR ${ADDON_INSTALL_DIR}
- CMAKE_ARGS ${BUILD_ARGS})
-
- # add a custom step to the external project between the configure and the build step which will always
- # be executed and therefore forces a re-build of all changed files
- externalproject_add_step(${id} forcebuild
- COMMAND ${CMAKE_COMMAND} -E echo "Force build of ${id}"
- DEPENDEES configure
- DEPENDERS build
- ALWAYS 1)
-
- # add "kodi-platform" as a dependency to every addon
- add_dependencies(${id} kodi-platform)
-
- set(${id}_DEPENDS_DIR ${SOURCE_DIR}/depends)
-
- if(EXISTS ${${id}_DEPENDS_DIR})
- include(${CORE_SOURCE_DIR}/project/cmake/scripts/common/HandleDepends.cmake)
- add_addon_depends(${id} ${${id}_DEPENDS_DIR})
- if(${id}_DEPS AND NOT "${${id}_DEPS}" STREQUAL "")
- message(STATUS "${id} DEPENDENCIES: ${${id}_DEPS}")
- add_dependencies(${id} ${${id}_DEPS})
- endif()
- endif()
-
- if(CROSS_AUTOCONF AND AUTOCONF_FILES)
- if(EXISTS ${SOURCE_DIR}/bootstrap/autoreconf.txt)
- file(STRINGS ${SOURCE_DIR}/bootstrap/autoreconf.txt conf_dirs)
- foreach(conf_dir ${conf_dirs})
- foreach(afile ${AUTOCONF_FILES})
- message(STATUS "copying ${afile} to ${SOURCE_DIR}/${conf_dir}")
- file(COPY ${afile} DESTINATION ${SOURCE_DIR}/${conf_dir})
- endforeach()
- endforeach()
- endif()
- endif()
-
- # create a forwarding target to the addon-package target
- add_custom_target(package-${id}
- COMMAND ${CMAKE_COMMAND} --build ${id}-prefix/src/${id}-build --target addon-package
- DEPENDS ${id})
- add_dependencies(package-addons package-${id})
-
- else()
- message(FATAL_ERROR "${id}: invalid or missing addon source directory at ${SOURCE_DIR}")
- endif()
- else()
- # add a dummy target for addons that are unsupported on this platform
- add_custom_target(${id} COMMAND ${CMAKE_COMMAND} -E echo "IGNORED ${id} - not supported on ${CORE_SYSTEM_NAME}\n")
- endif()
- endif()
- endif()
-endforeach()
-message(STATUS "")
-
-if(NEED_SUDO)
- add_custom_target(sudo-install
- COMMAND ${CMAKE_COMMAND} -E echo "sudo rights needed to install to ${CMAKE_INSTALL_PREFIX}\n"
- COMMAND sudo ${CMAKE_COMMAND} -E copy_directory ${ADDON_INSTALL_DIR}/ ${CMAKE_INSTALL_PREFIX}/
- COMMAND sudo -k)
-
- foreach(_id ${ALL_ADDONS_BUILDING})
- add_dependencies(sudo-install ${_id})
- endforeach()
- message(WARNING "sudo rights needed to install to ${CMAKE_INSTALL_PREFIX}")
- message(STATUS "\nplease type \"make sudo-install\"\n\n")
-endif()
-
-if(NOT SUPPORTED_ADDON_FOUND)
- message(FATAL_ERROR "${ADDONS_TO_BUILD} did not match any of the supported addons. \
- A list of supported addons can be viewed by building the 'supported_addons' target. \
- Addon definitions are loaded from ADDONS_DEFINITION_DIR (${ADDONS_DEFINITION_DIR}).")
-endif()
-
-# add custom target "supported_addons" that returns all addons that are supported on this platform
-string(REPLACE ";" " " ALL_ADDONS_BUILDING "${ALL_ADDONS_BUILDING}")
-add_custom_target(supported_addons COMMAND ${CMAKE_COMMAND} -E echo "ALL_ADDONS_BUILDING: ${ALL_ADDONS_BUILDING}" VERBATIM)
-add_custom_target(need-sudo COMMAND ${CMAKE_COMMAND} -E echo ${NEED_SUDO} VERBATIM)
diff --git a/project/cmake/addons/README.md b/project/cmake/addons/README.md
deleted file mode 100644
index 6470ee1686..0000000000
--- a/project/cmake/addons/README.md
+++ /dev/null
@@ -1,65 +0,0 @@
-![Kodi logo](https://raw.githubusercontent.com/xbmc/xbmc-forum/master/xbmc/images/logo-sbs-black.png)
-# Kodi add-ons CMake based buildsystem
-This directory contains the cmake-based buildsystem for Kodi add-ons. It looks into the directory pointed to by the *ADDONS_DEFINITION_DIR* option (which defaults to the *addons* sub-directory) and parses all *.txt files recursively. Each add-on must have its own `<addon-id>.txt` file in a separate sub-directory that must follow one of the defined formats:
-
- - `<addon-id> <git-url> <git-revision>`
- - `<addon-id> <tarball-url>`
- - `<addon-id> <file://path>`
-
-where
-- `<addon-id>` must be identical to the add-on's ID as defined in the add-on's addon.xml
-- `<git-url>` must be the URL of the git repository containing the add-on
-- `<git-revision>` must be a valid git tag/branch/commit in the add-on's git repository which will be used for the build
-- `<tarball-url>` must be the URL to a .tar.gz tarball containing the add-on
-- `<file://path>` must be a *file://* based path to the directory containing the add-on
-
-## Reserved filenames
-- **platforms.txt**
-
-List of platforms to build an add-on for (or *all*). Negating platforms is supported using a leading exclamation mark, e.g. *!windows*.
-
-Available platforms are: linux, windows, osx, ios, android, rbpi and freebsd.
-
-#### Attention
-If no add-on definitions could be found, the buildsystem assumes that the bootstrapping of the add-on definition repositories hasn't been performed yet and automatically executes the add-on bootstrapping buildsystem located in the *bootstrap* sub-directory with the default settings (i.e. *all* add-ons from all pre-defined add-on definition repositories are bootstrapped into the directory pointed to by the *ADDONS_DEFINITION_DIR* option).
-
-## Buildsystem variables
-The buildsystem uses the following variables (which can be passed into it when executing cmake with the -D`<variable-name>=<value>` format) to manipulate the build process:
-- `ADDONS_TO_BUILD` has two variations, which are tested in order:
- - a quoted, space delimited list of `<addon-id>s` that you want to build (default is *all*)
- - a regular expression that every `<addon-id>` is matched against (e.g. `ADDONS_TO_BUILD="pvr.*"`) to build all pvr add-ons
-- `ADDONS_DEFINITION_DIR` points to the directory containing the definitions for the addons to be built
-- `ADDON_SRC_PREFIX` can be used to override the add-on repository location. It must point to the locally available parent directory of the add-on(s) to build. `<addon-id>` will be appended to this path automatically
-- `CMAKE_BUILD_TYPE` specifies the type of the build. This can be either *Debug* or *Release* (default is *Release*)
-- `CMAKE_INSTALL_PREFIX` points to the directory where the built add-ons and their additional files (addon.xml, resources, ...) will be installed to (defaults to `<ADDON_DEPENDS_PATH>`)
-- `CMAKE_TOOLCHAIN_FILE` can be used to pass a toolchain file into the add-on builds
-- `ADDON_DEPENDS_PATH` points to the directory containing the *include* and *lib* directories of the add-ons' dependencies.
-- `CORE_SOURCE_DIR` points to the root directory of the project (default is the absolute representation of ../../.. starting from this directory)
-- `BUILD_DIR` points to the directory where the add-ons and their dependencies will be downloaded and built
-- `PACKAGE_ZIP=ON` means that the add-ons will be 'packaged' into a common folder, rather than being placed in `<CMAKE_INSTALL_PREFIX>/lib/kodi/addons` and `<CMAKE_INSTALL_PREFIX>/share/kodi/addons`
-- `PACKAGE_DIR` points to the directory where the ZIP archived add-ons will be stored after they have been packaged (defaults to `<BUILD_DIR>/zips`)
-- `ARCH_DEFINES` specifies the platform-specific C/C++ preprocessor defines (defaults to empty)
-- `ADDON_TARBALL_CACHING` specifies whether downloaded add-on source tarballs should be cached or not (defaults to *ON*)
-
-## Deprecated buildsystem variables
-Buildsystem will print a warning if you use any of the below-listed variables. For now they still work but you should adapt your workflow to the new variables.
-- `APP_ROOT` - Use `CORE_SOURCE_DIR` instead
-
-## Building
-The buildsystem makes some assumptions about the environment which must be met by whoever uses it:
-- Any dependencies of the add-ons must already be built and their include and library files must be present in the path pointed to by `<CMAKE_PREFIX_PATH>` (in *include* and *lib* sub-directories)
-
-To trigger the cmake-based buildsystem the following command must be executed with `<path>` set to this directory (absolute or relative) allowing for in-source and out-of-source builds
-
-`cmake <path> -G <generator>`
-
-CMake supports multiple generators. See [here] (https://cmake.org/cmake/help/v3.1/manual/cmake-generators.7.html) for a list.
-
-In case of additional options the call might look like this:
-
-cmake `<path>` [-G `<generator>`] \
- -DCMAKE_BUILD_TYPE=Release \
- -DCORE_SOURCE_DIR="`<path-to-app-root>`" \
- -DARCH_DEFINES="-DTARGET_LINUX" \
- -DADDON_DEPENDS_PATH=`<path-to-built-depends>` \
- -DCMAKE_INSTALL_PREFIX="`<path-to-install-directory`"
diff --git a/project/cmake/addons/bootstrap/Bootstrap.cmake b/project/cmake/addons/bootstrap/Bootstrap.cmake
deleted file mode 100644
index 5d20302590..0000000000
--- a/project/cmake/addons/bootstrap/Bootstrap.cmake
+++ /dev/null
@@ -1,39 +0,0 @@
-list(APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR})
-
-# make sure that the installation location has been specified
-if(NOT CMAKE_INSTALL_PREFIX)
- message(FATAL_ERROR "CMAKE_INSTALL_PREFIX has not been specified")
-endif()
-
-# figure out which addons to bootstrap (defaults to all)
-if(NOT ADDONS_TO_BUILD)
- set(ADDONS_TO_BUILD "all")
-else()
- string(STRIP "${ADDONS_TO_BUILD}" ADDONS_TO_BUILD)
- message(STATUS "Bootstrapping following addons: ${ADDONS_TO_BUILD}")
- string(REPLACE " " ";" ADDONS_TO_BUILD ${ADDONS_TO_BUILD})
-endif()
-
-# find all addon definitions and go through them
-file(GLOB_RECURSE ADDON_DEFINITIONS ${PROJECT_SOURCE_DIR}/*.txt)
-foreach(ADDON_DEFINITION_FILE ${ADDON_DEFINITIONS})
- # ignore platforms.txt
- if(NOT (ADDON_DEFINITION_FILE MATCHES platforms.txt))
- # read the addon definition file
- file(STRINGS ${ADDON_DEFINITION_FILE} ADDON_DEFINITION)
- string(REPLACE " " ";" ADDON_DEFINITION ${ADDON_DEFINITION})
-
- # extract the addon definition's identifier
- list(GET ADDON_DEFINITION 0 ADDON_ID)
-
- # check if the addon definition should be built
- if(ADDON_ID MATCHES "^${ADDONS_TO_BUILD}" OR ADDONS_TO_BUILD STREQUAL all)
- # get the path to the addon definition directory
- get_filename_component(ADDON_DEFINITION_DIR ${ADDON_DEFINITION_FILE} DIRECTORY)
-
- # install the addon definition
- message(STATUS "Bootstrapping ${ADDON_ID} addon...")
- file(INSTALL ${ADDON_DEFINITION_DIR} DESTINATION ${CMAKE_INSTALL_PREFIX})
- endif()
- endif()
-endforeach()
diff --git a/project/cmake/addons/bootstrap/CMakeLists.txt b/project/cmake/addons/bootstrap/CMakeLists.txt
deleted file mode 100644
index c20b97efca..0000000000
--- a/project/cmake/addons/bootstrap/CMakeLists.txt
+++ /dev/null
@@ -1,94 +0,0 @@
-cmake_minimum_required(VERSION 3.1)
-project(kodi-addons-bootstrap)
-
-list(APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR})
-
-# make sure CMAKE_INSTALL_PREFIX is properly set
-if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT OR NOT CMAKE_INSTALL_PREFIX)
- set(CMAKE_INSTALL_PREFIX "${PROJECT_SOURCE_DIR}/../addons")
-endif()
-list(APPEND CMAKE_PREFIX_PATH ${CMAKE_INSTALL_PREFIX})
-
-# figure out where the build directory is located
-if(NOT BUILD_DIR)
- set(BUILD_DIR "${CMAKE_BINARY_DIR}/build")
-else()
- file(TO_CMAKE_PATH "${BUILD_DIR}" BUILD_DIR)
-endif()
-get_filename_component(BUILD_DIR "${BUILD_DIR}" ABSOLUTE)
-
-# make sure that the repositories to build have been specified
-if(NOT REPOSITORY_TO_BUILD)
- set(REPOSITORY_TO_BUILD_DEFAULT ON)
- set(REPOSITORY_TO_BUILD "all")
- set(REPOSITORY_REVISION "")
- message(STATUS "Bootstrapping all repositories")
-else()
- set(REPOSITORY_TO_BUILD_DEFAULT OFF)
- message(STATUS "Bootstrapping following repository: ${REPOSITORY_TO_BUILD}")
-endif()
-
-# figure out which addons to bootstrap (defaults to all)
-if(NOT ADDONS_TO_BUILD)
- set(ADDONS_TO_BUILD "all")
- message(STATUS "Bootstrapping all addons")
-else()
- message(STATUS "Bootstrapping following addons: ${ADDONS_TO_BUILD}")
-endif()
-
-include(ExternalProject)
-
-function(bootstrap_repo repo_id repo_url repo_revision)
- message(STATUS "Bootstrapping addons from ${repo_id} (${repo_url} ${repo_revision})...")
- externalproject_add(${repo_id}
- GIT_REPOSITORY ${repo_url}
- GIT_TAG ${repo_revision}
- PREFIX ${BUILD_DIR}/${repo_id}
- CONFIGURE_COMMAND ""
- BUILD_COMMAND ""
- INSTALL_COMMAND ${CMAKE_COMMAND}
- -DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH}
- -DPROJECT_SOURCE_DIR=<SOURCE_DIR>
- -DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX}
- -DADDONS_TO_BUILD=${ADDONS_TO_BUILD}
- -P ${PROJECT_SOURCE_DIR}/Bootstrap.cmake
- )
-endfunction()
-
-# look for all addons repository definitions
-set(REPOSITORY_TO_BUILD_FOUND OFF)
-file(GLOB repos repositories/*.txt)
-foreach(repo ${repos})
- file(STRINGS ${repo} repo_definition)
- string(REPLACE " " ";" repo_definition ${repo_definition})
- list(GET repo_definition 0 repo_id)
-
- list(FIND REPOSITORY_TO_BUILD ${repo_id} idx)
- if(idx GREATER -1 OR REPOSITORY_TO_BUILD STREQUAL "all")
- set(REPOSITORY_TO_BUILD_FOUND ON)
-
- # get the URL of the repository
- list(GET repo_definition 1 repo_url)
-
- # get the revision of the repository if not provided as an argument
- if(NOT REPOSITORY_REVISION)
- list(GET repo_definition 2 repo_revision)
- else()
- set(repo_revision "${REPOSITORY_REVISION}")
- endif()
-
- bootstrap_repo(${repo_id} ${repo_url} ${repo_revision})
- endif()
-endforeach()
-
-# if we have been asked to bootstrap a specific repository (not the default one) and
-# it couldn't be found in the predefined repository definitions we assume that it's a
-# URL to a specific repository
-if(NOT REPOSITORY_TO_BUILD_DEFAULT AND NOT REPOSITORY_TO_BUILD_FOUND)
- # default to the master branch if no revision has been provided
- if(NOT REPOSITORY_REVISION)
- set(REPOSITORY_REVISION "master")
- endif()
-
- bootstrap_repo(binary-addons-custom ${REPOSITORY_TO_BUILD} ${REPOSITORY_REVISION})
-endif()
diff --git a/project/cmake/addons/bootstrap/README.md b/project/cmake/addons/bootstrap/README.md
deleted file mode 100644
index b886b5b8c9..0000000000
--- a/project/cmake/addons/bootstrap/README.md
+++ /dev/null
@@ -1,48 +0,0 @@
-# KODI ADDON DEFINITIONS BOOTSTRAPPING
-This directory contains the cmake-based buildsystem for addon definitions
-bootstrapping which downloads the addon definitions from one or more addon
-definitions repositories. These addon definitions are then used by the addon
-buildsystem to figure out which addons and which versions to build. It looks
-into the "repositories" sub-directory and parses all *.txt files recursively.
-Each addon definitions repository must have its own <repository>.txt file which
-must follow the following defined format:
-```
-<repository> <git-url> <git-revision>
-```
-where
-* `<repository>` is the identification of the repository.
-* `<git-url>` must be the URL of the git repository containing the addon
- definitions
-* `<git-revision>` must be a valid git tag/branch/commit in the addon
- definitions repository's git repository which will be used for the build
-
-The buildsystem uses the following variables (which can be passed into it when
-executing cmake with the `-D<variable-name>=<value>` option):
-* `CMAKE_INSTALL_PREFIX` points to the directory where the downloaded addon
-definitions will be installed to (defaults to `../addons`).
-* `BUILD_DIR` points to the directory where the addon definitions repositories
-will be downloaded to.
-* `REPOSITORY_TO_BUILD` specifies a single addon definitions repository to be
-downloaded and processed (defaults to `"all"`).
-* `REPOSITORY_REVISION` specifies the git revision in the addon definitions
-repository which will be used for the build. This option is only valid in
-combination with the `REPOSITORY_TO_BUILD` option (defaults to the git
-revision specified in the repository's definition file).
-* `ADDONS_TO_BUILD` is a quoted, space delimited list of `<addon-id>`s that
-should be bootstrapped (default is `"all"`).
-
-To trigger the cmake-based buildsystem the following command must be executed
-with <path> being the path to this directory (absolute or relative, allowing for
-in-source and out-of-source builds).
-```
-cmake <path> -G <generator>
-```
-
-cmake supports multiple generators, see
-http://www.cmake.org/cmake/help/v2.8.8/cmake.html#section_Generators for a list.
-
-In case of additional options the call might look like this
-```
-cmake <path> [-G <generator>] \
- -DCMAKE_INSTALL_PREFIX="<path-to-install-directory>"
-``` \ No newline at end of file
diff --git a/project/cmake/addons/bootstrap/repositories/binary-addons.txt b/project/cmake/addons/bootstrap/repositories/binary-addons.txt
deleted file mode 100644
index 8674f06b82..0000000000
--- a/project/cmake/addons/bootstrap/repositories/binary-addons.txt
+++ /dev/null
@@ -1 +0,0 @@
-binary-addons https://github.com/xbmc/repo-binary-addons.git master \ No newline at end of file
diff --git a/project/cmake/addons/depends/CMakeLists.txt b/project/cmake/addons/depends/CMakeLists.txt
deleted file mode 100644
index 622701de79..0000000000
--- a/project/cmake/addons/depends/CMakeLists.txt
+++ /dev/null
@@ -1,41 +0,0 @@
-cmake_minimum_required(VERSION 3.1)
-project(kodi-addons-depends)
-
-list(APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR})
-
-if(NOT CMAKE_BUILD_TYPE)
- set(CMAKE_BUILD_TYPE Release)
-endif()
-
-if(NOT CORE_SYSTEM_NAME)
- string(TOLOWER ${CMAKE_SYSTEM_NAME} CORE_SYSTEM_NAME)
-endif()
-
-include(ExternalProject)
-
-if(NOT ADDON_DEPENDS_PATH)
- set(ADDON_DEPENDS_PATH ${PROJECT_SOURCE_DIR}/../build/depends)
-else()
- file(TO_CMAKE_PATH "${ADDON_DEPENDS_PATH}" ADDON_DEPENDS_PATH)
-endif()
-get_filename_component(ADDON_DEPENDS_PATH "${ADDON_DEPENDS_PATH}" ABSOLUTE)
-list(APPEND CMAKE_PREFIX_PATH ${ADDON_DEPENDS_PATH})
-
-if(NOT BUILD_DIR)
- set(BUILD_DIR "${CMAKE_BINARY_DIR}/build")
-else()
- file(TO_CMAKE_PATH "${BUILD_DIR}" BUILD_DIR)
-endif()
-get_filename_component(BUILD_DIR "${BUILD_DIR}" ABSOLUTE)
-
-## use add_addon_depends to handle the cmake based dependencies
-include(${CORE_SOURCE_DIR}/project/cmake/scripts/common/HandleDepends.cmake)
-add_addon_depends(depends "${PROJECT_SOURCE_DIR}")
-
-## if there's a platform-specific sub-directory containing a CMakeLists.txt, add it to the build as well
-if(EXISTS ${PROJECT_SOURCE_DIR}/${CORE_SYSTEM_NAME}/CMakeLists.txt)
- message(STATUS "Processing ${CORE_SYSTEM_NAME}")
- add_subdirectory(${CORE_SYSTEM_NAME})
-else()
- message(STATUS "No platform specific file ${PROJECT_SOURCE_DIR}/${CORE_SYSTEM_NAME}/CMakeLists.txt found")
-endif()
diff --git a/project/cmake/addons/depends/README b/project/cmake/addons/depends/README
deleted file mode 100644
index 584a167f72..0000000000
--- a/project/cmake/addons/depends/README
+++ /dev/null
@@ -1,61 +0,0 @@
-KODI ADDON DEPENDENCIES
-=======================
-This directory contains the cmake-based buildsystem for addon dependencies. It
-looks into the "common" and the "<platform>/cmake" sub-directories and parses
-all *.txt files recursively. Each dependency must have its own <dependency>.txt
-file (either in the main sub-directory or in a separate subdirectory of the main
-subdirectory) which must follow one of the defined formats:
- * an empty file means that no extra downloads are necessary
- * <dependency>
- * <dependency> <url>
- * <dependency> <git-url> <git-revision>
-where
- * <dependency> must be identical to the filename
- * <url> must be the URL to an archive that is downloaded and extracted.
- * <git-url> must be the URL of the git repository containing the
- dependency.
- * <git-revision> must be a valid git tag/branch/commit in the dependency's git
- repository which will be used for the build.
-
-Reserved filenames (for additional information on how to build a dependency)
-are:
- * CMakeLists.txt: build instructions for the dependency
- * install.txt: instructions on how to install the dependency's built files
- * noinstall.txt: no installation step required (content is ignored)
- * flags.txt: additional build flags
- * deps.txt: whitespace separated list of dependencies of this dependency
-
-The buildsystem uses the following variables (which can be passed into it when
-executing cmake with the -D<variable-name>=<value> option) to e.g. access
-specific paths:
- * CMAKE_BUILD_TYPE specifies the type of the build. This can be either "Debug"
- or "Release" (default is "Release").
- * CMAKE_TOOLCHAIN_FILE can be used to pass a toolchain file into the add-on
- builds.
- * CORE_SYSTEM_NAME is the name of the platform (e.g. "linux" or "android") in
- lower-case (defaults to lowercase(CMAKE_SYSTEM_NAME)).
- * CORE_SOURCE_DIR points to the root directory of the project (default is the
- absolute representation of ../../.. starting from this directory).
- * ADDON_DEPENDS_PATH points to the directory where the built dependencies
- (their include and library file) will be installed to.
- * ARCH_DEFINES specifies the platform-specific C/C++ preprocessor defines
- (defaults to empty).
- * DEPENDS_TO_BUILD is a quoted, space delimited list of <dependency>s that
- you want to build (default is "all").
-
-To trigger the cmake-based buildsystem the following command must be executed
-with <path> being the path to this directory (absolute or relative, allowing for
-in-source and out-of-source builds).
-
- cmake <path> -G <generator>
-
-cmake supports multiple generators, see
-http://www.cmake.org/cmake/help/v2.8.8/cmake.html#section_Generators for a list.
-
-In case of additional options the call might look like this
-
- cmake <path> [-G <generator>] \
- -DCMAKE_BUILD_TYPE=Release \
- -DCORE_SOURCE_DIR="<path-to-project-root>" \
- -DARCH_DEFINES="-DTARGET_LINUX" \
- -DCMAKE_INSTALL_PREFIX="<path-to-install-directory"
diff --git a/project/cmake/addons/depends/common/kodi-platform/deps.txt b/project/cmake/addons/depends/common/kodi-platform/deps.txt
deleted file mode 100644
index b9538152d3..0000000000
--- a/project/cmake/addons/depends/common/kodi-platform/deps.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-tinyxml
-p8-platform
diff --git a/project/cmake/addons/depends/common/kodi-platform/kodi-platform.txt b/project/cmake/addons/depends/common/kodi-platform/kodi-platform.txt
deleted file mode 100644
index 46ef93cc94..0000000000
--- a/project/cmake/addons/depends/common/kodi-platform/kodi-platform.txt
+++ /dev/null
@@ -1 +0,0 @@
-kodi-platform https://github.com/xbmc/kodi-platform c8188d82678fec6b784597db69a68e74ff4986b5
diff --git a/project/cmake/addons/depends/common/p8-platform/p8-platform.txt b/project/cmake/addons/depends/common/p8-platform/p8-platform.txt
deleted file mode 100644
index 7db4e36ec1..0000000000
--- a/project/cmake/addons/depends/common/p8-platform/p8-platform.txt
+++ /dev/null
@@ -1 +0,0 @@
-p8-platform https://github.com/Pulse-Eight/platform.git 38343e0acd6a636ac46139aa666aee4a8d1f13db
diff --git a/project/cmake/addons/depends/common/tinyxml/CMakeLists.txt b/project/cmake/addons/depends/common/tinyxml/CMakeLists.txt
deleted file mode 100644
index ec396eeb40..0000000000
--- a/project/cmake/addons/depends/common/tinyxml/CMakeLists.txt
+++ /dev/null
@@ -1,22 +0,0 @@
-cmake_minimum_required(VERSION 3.1)
-project(tinyxml)
-
-set(SOURCES src/tinystr.cpp
- src/tinyxml.cpp
- src/tinyxmlerror.cpp
- src/tinyxmlparser.cpp)
-
-if(WIN32)
- add_definitions(-DWIN32 -D_LIB)
-endif()
-add_definitions(-DTIXML_USE_STL)
-
-add_library(tinyxml ${SOURCES})
-
-include_directories(${PROJECT_SOURCE_DIR}/include)
-
-set(HEADERS ${PROJECT_SOURCE_DIR}/include/tinystr.h
- ${PROJECT_SOURCE_DIR}/include/tinyxml.h)
-
-install(FILES ${HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/include)
-install(TARGETS tinyxml DESTINATION ${CMAKE_INSTALL_PREFIX}/lib)
diff --git a/project/cmake/addons/depends/common/tinyxml/tinyxml.txt b/project/cmake/addons/depends/common/tinyxml/tinyxml.txt
deleted file mode 100644
index f8e05e8756..0000000000
--- a/project/cmake/addons/depends/common/tinyxml/tinyxml.txt
+++ /dev/null
@@ -1 +0,0 @@
-tinyxml http://mirrors.kodi.tv/build-deps/sources/tinyxml-2.6.2_2.tar.gz
diff --git a/project/cmake/addons/depends/windows/CMakeLists.txt b/project/cmake/addons/depends/windows/CMakeLists.txt
deleted file mode 100644
index c8739c08ec..0000000000
--- a/project/cmake/addons/depends/windows/CMakeLists.txt
+++ /dev/null
@@ -1,52 +0,0 @@
-cmake_minimum_required(VERSION 3.1)
-project(kodi-addons-depends-windows)
-
-list(APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR})
-
-if(NOT CMAKE_BUILD_TYPE)
- set(CMAKE_BUILD_TYPE Release)
-endif()
-
-include(ExternalProject)
-
-if(NOT ADDON_DEPENDS_PATH)
- message(FATAL_ERROR "ADDON_DEPENDS_PATH (${ADDON_DEPENDS_PATH}) is not a valid target directory.")
-else()
- file(TO_CMAKE_PATH "${ADDON_DEPENDS_PATH}" ADDON_DEPENDS_PATH)
-endif()
-get_filename_component(ADDON_DEPENDS_PATH "${ADDON_DEPENDS_PATH}" ABSOLUTE)
-list(APPEND CMAKE_PREFIX_PATH ${ADDON_DEPENDS_PATH})
-
-if(NOT DEPENDS_TO_BUILD)
- set(DEPENDS_TO_BUILD "all")
-endif()
-
-function(add_internal id url inputfile)
- externalproject_add(${id}
- URL ${url}
- PREFIX build/${id}
- CONFIGURE_COMMAND ""
- BUILD_COMMAND ""
- INSTALL_COMMAND ${CMAKE_COMMAND}
- -DINPUTDIR=${PROJECT_BINARY_DIR}/build/${id}/src/${id}
- -DINPUTFILE=${inputfile}
- -DDESTDIR=${ADDON_DEPENDS_PATH}
- -P ${PROJECT_SOURCE_DIR}/Install.cmake
- )
-endfunction()
-
-file(GLOB_RECURSE download_input_files prebuilt/*.txt)
-foreach(file ${download_input_files})
- if(NOT file MATCHES install.txt)
- file(STRINGS ${file} def)
- get_filename_component(dir ${file} DIRECTORY)
- string(REPLACE " " ";" def ${def})
- list(GET def 0 id)
-
- list(FIND DEPENDS_TO_BUILD ${id} idx)
- if(idx GREATER -1 OR DEPENDS_TO_BUILD STREQUAL "all")
- list(GET def 1 url)
- add_internal(${id} ${url} ${dir}/install.txt)
- endif()
- endif()
-endforeach()
diff --git a/project/cmake/addons/depends/windows/Install.cmake b/project/cmake/addons/depends/windows/Install.cmake
deleted file mode 100644
index 9a3adbb7c3..0000000000
--- a/project/cmake/addons/depends/windows/Install.cmake
+++ /dev/null
@@ -1,24 +0,0 @@
-if(EXISTS "${INPUTFILE}")
- # if there's an input file we use it to determine which files to copy where
- file(STRINGS ${INPUTFILE} FILES)
- string(REPLACE "\n" ";" FILES "${FILES}")
- foreach(file ${FILES})
- string(REPLACE " " ";" file "${file}")
- list(GET file 0 dir)
- list(GET file 1 dest)
- list(LENGTH file deflength)
- if(deflength GREATER 2)
- list(GET file 2 copy)
- endif()
- file(GLOB files ${INPUTDIR}/${dir})
- foreach(instfile ${files})
- file(COPY ${instfile} DESTINATION ${DESTDIR}/${dest})
- if(copy)
- file(COPY ${instfile} DESTINATION ${DESTDIR}/${copy})
- endif()
- endforeach()
- endforeach()
-else()
- # otherwise we assume that the content of the extracted archive is already well-formed and can just be copied
- file(COPY ${INPUTDIR}/${dir} DESTINATION ${DESTDIR})
-endif() \ No newline at end of file
diff --git a/project/cmake/addons/depends/windows/README b/project/cmake/addons/depends/windows/README
deleted file mode 100644
index 67dc59451d..0000000000
--- a/project/cmake/addons/depends/windows/README
+++ /dev/null
@@ -1,19 +0,0 @@
-KODI WIN32 ADDON DEPENDENCIES
-=============================
-This directory contains the cmake-based buildsystem for dependencies (currently
-only prebuilt) used by one or multiple addons. The buildsystem looks into the
-"prebuilt" sub-directory, downloads all the specified dependencies, extracts
-them and places them into the "depends" sub-directory.
-
-To trigger the cmake-based buildsystem the following command must be executed
-with <path> being the path to this directory (absolute or relative, allowing for
-in-source and out-of-source builds).
-
- cmake <path> [-G <generator>]
-
-cmake supports multiple generators, see
-http://www.cmake.org/cmake/help/v2.8.8/cmake.html#section_Generators for a list.
-For win32 builds one of the "Visual Studio XX" or the "NMake Makefiles"
-generators is preferred. For the "NMake Makefiles" generator to work the above
-command must be called from an environment prepared for VC++ builds (see
-http://msdn.microsoft.com/en-us/library/f2ccy3wt.aspx).
diff --git a/project/cmake/addons/depends/windows/cmake/mingw/CMakeLists.txt b/project/cmake/addons/depends/windows/cmake/mingw/CMakeLists.txt
deleted file mode 100644
index 2c2c4b8e3f..0000000000
--- a/project/cmake/addons/depends/windows/cmake/mingw/CMakeLists.txt
+++ /dev/null
@@ -1,33 +0,0 @@
-cmake_minimum_required(VERSION 3.1)
-project(mingw)
-
-function(generate_mingw32_wrapper cmd)
- set(CMD ${cmd})
- configure_file(${PROJECT_SOURCE_DIR}/mingw32-cmd.bat.in ${MINGW_PATH}/bin/${CMD}.bat @ONLY)
-endfunction()
-
-get_filename_component(CORE_SOURCE_DIR ${PROJECT_SOURCE_DIR}/../../../../../../.. REALPATH)
-
-set(MSYS_PATH "${CORE_SOURCE_DIR}/project/BuildDependencies/msys64")
-set(MINGW_PATH "${MSYS_PATH}/mingw32")
-
-# configure the MinGW toolchain file
-configure_file(${PROJECT_SOURCE_DIR}/Toolchain_mingw32.cmake.in ${CMAKE_INSTALL_PREFIX}/Toolchain_mingw32.cmake @ONLY)
-
-# configure MinGWConfig.cmake
-configure_file(${PROJECT_SOURCE_DIR}/MinGWConfig.cmake.in ${CMAKE_INSTALL_PREFIX}/MinGWConfig.cmake)
-
-# TODO: MinGW GCC 5.3.0-1 comes without cc.exe, Remove this once package is bumped to 5.3.0-p2
-# See https://github.com/Alexpux/MINGW-packages/pull/1034
-if(NOT EXISTS ${MINGW_PATH}/bin/cc.exe)
- execute_process(COMMAND ${CMAKE_COMMAND} -E copy ${MINGW_PATH}/bin/gcc.exe ${MINGW_PATH}/bin/cc.exe)
-endif()
-
-# configure the MinGW wrapper batch scripts
-generate_mingw32_wrapper("make")
-generate_mingw32_wrapper("gcc")
-generate_mingw32_wrapper("cc")
-generate_mingw32_wrapper("g++")
-generate_mingw32_wrapper("ar")
-generate_mingw32_wrapper("ld")
-generate_mingw32_wrapper("windres")
diff --git a/project/cmake/addons/depends/windows/cmake/mingw/MinGWConfig.cmake.in b/project/cmake/addons/depends/windows/cmake/mingw/MinGWConfig.cmake.in
deleted file mode 100644
index 2d6baa777d..0000000000
--- a/project/cmake/addons/depends/windows/cmake/mingw/MinGWConfig.cmake.in
+++ /dev/null
@@ -1,3 +0,0 @@
-set(MINGW_INCLUDE_DIRS @MINGW_PATH@/include)
-set(MINGW_MAKE @MINGW_PATH@/bin/make.bat -j$ENV{NUMBER_OF_PROCESSORS})
-set(MINGW_FOUND 1)
diff --git a/project/cmake/addons/depends/windows/cmake/mingw/Toolchain_mingw32.cmake.in b/project/cmake/addons/depends/windows/cmake/mingw/Toolchain_mingw32.cmake.in
deleted file mode 100644
index 01d281d8a1..0000000000
--- a/project/cmake/addons/depends/windows/cmake/mingw/Toolchain_mingw32.cmake.in
+++ /dev/null
@@ -1,17 +0,0 @@
-set(CMAKE_SYSTEM_VERSION 1)
-set(CMAKE_SYSTEM_NAME Windows)
-
-set(CMAKE_FIND_ROOT_PATH @CMAKE_FIND_ROOT_PATH@ @CMAKE_INSTALL_PREFIX@ @MSYS_PATH@ @MINGW_PATH@)
-
-# specify the cross compiler
-set(CMAKE_C_COMPILER @MINGW_PATH@/bin/gcc.bat)
-set(CMAKE_CXX_COMPILER @MINGW_PATH@/bin/g++.bat)
-set(CMAKE_AR @MINGW_PATH@/bin/ar.bat CACHE FILEPATH "Archiver")
-set(CMAKE_LINKER @MINGW_PATH@/bin/ld.bat CACHE FILEPATH "Linker")
-SET(CMAKE_RC_COMPILER @MINGW_PATH@/bin/windres.bat)
-
-# search for programs in the build host directories
-set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
-# for libraries and headers in the target directories
-set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
-set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
diff --git a/project/cmake/addons/depends/windows/cmake/mingw/mingw.txt b/project/cmake/addons/depends/windows/cmake/mingw/mingw.txt
deleted file mode 100644
index 90aa6aee7e..0000000000
--- a/project/cmake/addons/depends/windows/cmake/mingw/mingw.txt
+++ /dev/null
@@ -1 +0,0 @@
-mingw
diff --git a/project/cmake/addons/depends/windows/cmake/mingw/mingw32-cmd.bat.in b/project/cmake/addons/depends/windows/cmake/mingw/mingw32-cmd.bat.in
deleted file mode 100644
index 44a0ea2cc9..0000000000
--- a/project/cmake/addons/depends/windows/cmake/mingw/mingw32-cmd.bat.in
+++ /dev/null
@@ -1,6 +0,0 @@
-@ECHO OFF
-SETLOCAL
-
-SET PATH=@MINGW_PATH@/bin;@MSYS_PATH@/usr/bin;%PATH%
-@CMD@.exe %*
-
diff --git a/project/cmake/addons/depends/windows/cmake/mingw/noinstall.txt b/project/cmake/addons/depends/windows/cmake/mingw/noinstall.txt
deleted file mode 100644
index e69de29bb2..0000000000
--- a/project/cmake/addons/depends/windows/cmake/mingw/noinstall.txt
+++ /dev/null
diff --git a/project/cmake/addons/depends/windows/cmake/msys/CMakeLists.txt b/project/cmake/addons/depends/windows/cmake/msys/CMakeLists.txt
deleted file mode 100644
index 1c0536e902..0000000000
--- a/project/cmake/addons/depends/windows/cmake/msys/CMakeLists.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-cmake_minimum_required(VERSION 3.1)
-project(msys LANGUAGES NONE)
-
-# This is an empty dummy dependency because a lot of game addons depend on it.
-# After they got fixed, this can be removed.
diff --git a/project/cmake/addons/depends/windows/cmake/msys/msys.txt b/project/cmake/addons/depends/windows/cmake/msys/msys.txt
deleted file mode 100644
index 00de9c2b98..0000000000
--- a/project/cmake/addons/depends/windows/cmake/msys/msys.txt
+++ /dev/null
@@ -1 +0,0 @@
-msys
diff --git a/project/cmake/addons/depends/windows/cmake/msys/noinstall.txt b/project/cmake/addons/depends/windows/cmake/msys/noinstall.txt
deleted file mode 100644
index e69de29bb2..0000000000
--- a/project/cmake/addons/depends/windows/cmake/msys/noinstall.txt
+++ /dev/null
diff --git a/project/cmake/addons/depends/windows/prebuilt/README b/project/cmake/addons/depends/windows/prebuilt/README
deleted file mode 100644
index a0c70d6bde..0000000000
--- a/project/cmake/addons/depends/windows/prebuilt/README
+++ /dev/null
@@ -1,21 +0,0 @@
-KODI WIN32 PREBUILT ADDON DEPENDENCIES
-======================================
-This directory contains a file or sub-directory for every prebuilt dependency
-used by one of the addons being built. There are two different modes supported.
-Both include a file named <library-id>.txt which must follow the defined format
- <library-id> <download-url>
-
-If the archive, which the <download-url> points at, contains
- * only the necessary files and in the proper directory structure (i.e. an
- "include" and a "lib" directory) then the file must be put into this
- directory and nothing else is needed.
- * unnecessary files and/or does not follow the defined directory structure
- (i.e. an "include" and a "lib" directory) then the file must be put into a
- sub-directory named <library-id>. Furthermore an additional file called
- "install.txt" must be placed in that sub-directory. install.txt contains a
- line for every path/directory/file with a destination where it must be copied
- to. It must follow the defined format
- <source> <destination> [<copy-destination>]
- where <source> must be an existing file, directory or a path containing
- wildcards, <destination> and the optional <copy-destination> must be existing
- directories.
diff --git a/project/cmake/cpack/CPackConfigDEB.cmake b/project/cmake/cpack/CPackConfigDEB.cmake
deleted file mode 100644
index cb8e59e840..0000000000
--- a/project/cmake/cpack/CPackConfigDEB.cmake
+++ /dev/null
@@ -1,352 +0,0 @@
-# include Macros.cmake to automate generation of time/date stamps, maintainer, etc.
-include(${PROJECT_SOURCE_DIR}/scripts/common/Macros.cmake)
-
-# find stuff we need
-find_program(LSB_RELEASE_CMD lsb_release)
-find_program(DPKG_CMD dpkg)
-find_package(Git)
-find_program(GZIP_CMD gzip)
-
-# set packaging dir
-if(NOT CPACK_PACKAGE_DIRECTORY)
- set(CPACK_PACKAGE_DIRECTORY ${CMAKE_BINARY_DIR}/packages)
-endif()
-
-# force CPack generated DEBs to use the same path as CMAKE_INSTALL_PREFIX
-set(CPACK_SET_DESTDIR true)
-
-# set architecture
-if(NOT CPACK_SYSTEM_NAME)
- set(CPACK_SYSTEM_NAME ${CMAKE_SYSTEM_PROCESSOR})
- # sanity check
- if(CPACK_SYSTEM_NAME STREQUAL x86_64)
- set(CPACK_SYSTEM_NAME amd64)
- endif()
-endif()
-
-# set packaging by components
-set(CPACK_DEB_COMPONENT_INSTALL ON)
-
-# enforce Debian policy permission rules
-set(CPACK_DEBIAN_PACKAGE_CONTROL_STRICT_PERMISSION ON)
-
-# packaging by components doesn't fully work with CMake/CPack <3.6.0
-# CPACK_DEBIAN_<COMPONENT>_FILE_NAME is a 3.6.0 addition
-# warn if detected version is lower
-if(CMAKE_VERSION VERSION_LESS 3.6)
- message(WARNING "DEB Generator: CMake/CPack 3.6 or higher is needed to produce correctly named packages.")
-endif()
-
-# distro codename
-if(NOT DISTRO_CODENAME)
- if(NOT LSB_RELEASE_CMD)
- message(WARNING "DEB Generator: Can't find lsb_release in your path. Setting DISTRO_CODENAME to unknown.")
- set(DISTRO_CODENAME unknown)
- else()
- execute_process(COMMAND ${LSB_RELEASE_CMD} -cs
- OUTPUT_VARIABLE DISTRO_CODENAME
- OUTPUT_STRIP_TRAILING_WHITESPACE)
- endif()
-endif()
-
-# package version
-if(DEBIAN_PACKAGE_VERSION)
- set(DISTRO_CODENAME ${DEBIAN_PACKAGE_VERSION}${DISTRO_CODENAME})
-else()
- set(DISTRO_CODENAME 0${DISTRO_CODENAME})
-endif()
-
-# package revision
-if(DEBIAN_PACKAGE_REVISION)
- set(DISTRO_CODENAME ${DISTRO_CODENAME}${DEBIAN_PACKAGE_REVISION})
-endif()
-
-# package type
-if(DEBIAN_PACKAGE_TYPE STREQUAL stable)
- set(RELEASE_IDENTIFIER final)
-elseif(DEBIAN_PACKAGE_TYPE STREQUAL unstable)
- set(RELEASE_IDENTIFIER ${APP_VERSION_TAG_LC})
-else()
- core_find_git_rev(RELEASE_IDENTIFIER)
-endif()
-
-# package name
-string(TIMESTAMP PACKAGE_TIMESTAMP "%Y%m%d.%H%M" UTC)
-set(PACKAGE_NAME_VERSION ${APP_VERSION_MAJOR}.${APP_VERSION_MINOR}~git${PACKAGE_TIMESTAMP}-${RELEASE_IDENTIFIER}-${DISTRO_CODENAME})
-unset(RELEASE_IDENTIFIER)
-
-# package version
-if(DEBIAN_PACKAGE_EPOCH)
- set(CPACK_DEBIAN_PACKAGE_VERSION ${DEBIAN_PACKAGE_EPOCH}:${PACKAGE_NAME_VERSION})
-else()
- set(CPACK_DEBIAN_PACKAGE_VERSION 2:${PACKAGE_NAME_VERSION})
-endif()
-
-# architecture
-if(NOT CPACK_DEBIAN_PACKAGE_ARCHITECTURE)
- if(NOT DPKG_CMD)
- message(WARNING "DEB Generator: Can't find dpkg in your path. Setting CPACK_DEBIAN_PACKAGE_ARCHITECTURE to i386.")
- set(CPACK_DEBIAN_PACKAGE_ARCHITECTURE i386)
- endif()
- execute_process(COMMAND "${DPKG_CMD}" --print-architecture
- OUTPUT_VARIABLE CPACK_DEBIAN_PACKAGE_ARCHITECTURE
- OUTPUT_STRIP_TRAILING_WHITESPACE)
-endif()
-
-# package maintainer
-if(NOT CPACK_DEBIAN_PACKAGE_MAINTAINER)
- userstamp()
- set(CPACK_DEBIAN_PACKAGE_MAINTAINER ${PACKAGE_MAINTAINER})
- unset(PACKAGE_MAINTAINER)
-endif()
-
-# package description common to all packages
-if(NOT CPACK_DEBIAN_PACKAGE_DESCRIPTION)
- file(STRINGS ${PROJECT_SOURCE_DIR}/cpack/deb/package-description.txt DESC_LINES)
- foreach(LINE IN LISTS DESC_LINES)
- set(CPACK_DEBIAN_PACKAGE_DESCRIPTION "${CPACK_DEBIAN_PACKAGE_DESCRIPTION} ${LINE}\n")
- endforeach()
-endif()
-
-# package homepage
-if(NOT CPACK_DEBIAN_PACKAGE_HOMEPAGE)
- set(CPACK_DEBIAN_PACKAGE_HOMEPAGE ${APP_WEBSITE})
-endif()
-
-# generate a Debian compliant changelog
-set(CHANGELOG_HEADER "${APP_NAME_LC} (${CPACK_DEBIAN_PACKAGE_VERSION}) ${DISTRO_CODENAME}\; urgency=high")
-rfc2822stamp()
-# two spaces between maintainer and timestamp is NOT a mistake
-set(CHANGELOG_FOOTER " -- ${CPACK_DEBIAN_PACKAGE_MAINTAINER} ${RFC2822_TIMESTAMP}")
-
-if(GIT_FOUND AND GZIP_CMD AND EXISTS ${CORE_SOURCE_DIR}/.git)
- execute_process(COMMAND ${GIT_EXECUTABLE} log --no-merges --pretty=format:"%n [%an]%n * %s" --since="last month"
- OUTPUT_VARIABLE CHANGELOG
- WORKING_DIRECTORY ${CORE_SOURCE_DIR}
- OUTPUT_STRIP_TRAILING_WHITESPACE)
- string(REPLACE "\"" "" CHANGELOG ${CHANGELOG})
- file(WRITE ${CPACK_PACKAGE_DIRECTORY}/deb/changelog.Debian ${CHANGELOG_HEADER}\n${CHANGELOG}\n\n${CHANGELOG_FOOTER})
- execute_process(COMMAND ${GZIP_CMD} -f -9 -n ${CPACK_PACKAGE_DIRECTORY}/deb/changelog.Debian)
- unset(CHANGELOG_HEADER)
- unset(CHANGELOG_FOOTER)
- unset(RFC2822_TIMESTAMP)
-else()
- message(WARNING "DEB Generator: Can't find git and/or gzip in your path. DEB packages will be missing changelog.Debian.gz.")
-endif()
-
-# Generate NEWS.Debian
-configure_file(${PROJECT_SOURCE_DIR}/cpack/deb/NEWS.Debian
- ${CPACK_PACKAGE_DIRECTORY}/deb/NEWS.Debian @ONLY)
-if(GZIP_CMD)
- execute_process(COMMAND ${GZIP_CMD} -f -9 -n ${CPACK_PACKAGE_DIRECTORY}/deb/NEWS.Debian)
-else()
- message(WARNING "DEB Generator: Can't find gzip in your path. DEB packages will be missing NEWS.Debian.")
-endif()
-
-# Generate man pages
-configure_file(${CORE_SOURCE_DIR}/docs/manpages/kodi.bin.1
- ${CPACK_PACKAGE_DIRECTORY}/deb/kodi.1 COPYONLY)
-configure_file(${CORE_SOURCE_DIR}/docs/manpages/kodi.bin.1
- ${CPACK_PACKAGE_DIRECTORY}/deb/kodi.bin.1 COPYONLY)
-configure_file(${CORE_SOURCE_DIR}/docs/manpages/kodi-standalone.1
- ${CPACK_PACKAGE_DIRECTORY}/deb/kodi-standalone.1 COPYONLY)
-if(ENABLE_EVENTCLIENTS)
- configure_file(${CORE_SOURCE_DIR}/docs/manpages/kodi-ps3remote.1
- ${CPACK_PACKAGE_DIRECTORY}/deb/kodi-ps3remote.1 COPYONLY)
- configure_file(${CORE_SOURCE_DIR}/docs/manpages/kodi-send.1
- ${CPACK_PACKAGE_DIRECTORY}/deb/kodi-send.1 COPYONLY)
- configure_file(${CORE_SOURCE_DIR}/docs/manpages/kodi-wiiremote.1
- ${CPACK_PACKAGE_DIRECTORY}/deb/kodi-wiiremote.1 COPYONLY)
-endif()
-
-if(GZIP_CMD)
- execute_process(COMMAND ${GZIP_CMD} -f -9 -n ${CPACK_PACKAGE_DIRECTORY}/deb/kodi.1)
- execute_process(COMMAND ${GZIP_CMD} -f -9 -n ${CPACK_PACKAGE_DIRECTORY}/deb/kodi.bin.1)
- execute_process(COMMAND ${GZIP_CMD} -f -9 -n ${CPACK_PACKAGE_DIRECTORY}/deb/kodi-standalone.1)
- if(ENABLE_EVENTCLIENTS)
- execute_process(COMMAND ${GZIP_CMD} -f -9 -n ${CPACK_PACKAGE_DIRECTORY}/deb/kodi-ps3remote.1)
- execute_process(COMMAND ${GZIP_CMD} -f -9 -n ${CPACK_PACKAGE_DIRECTORY}/deb/kodi-send.1)
- execute_process(COMMAND ${GZIP_CMD} -f -9 -n ${CPACK_PACKAGE_DIRECTORY}/deb/kodi-wiiremote.1)
- endif()
-else()
- message(WARNING "DEB Generator: Can't find gzip in your path. Several DEB packages will be missing man pages.")
-endif()
-
-install(FILES ${CPACK_PACKAGE_DIRECTORY}/deb/kodi.1.gz
- ${CPACK_PACKAGE_DIRECTORY}/deb/kodi.bin.1.gz
- ${CPACK_PACKAGE_DIRECTORY}/deb/kodi-standalone.1.gz
- DESTINATION share/man/man1
- COMPONENT kodi)
-if(ENABLE_EVENTCLIENTS)
-install(FILES ${CPACK_PACKAGE_DIRECTORY}/deb/kodi-ps3remote.1.gz
- DESTINATION share/man/man1
- COMPONENT kodi-eventclients-ps3)
-install(FILES ${CPACK_PACKAGE_DIRECTORY}/deb/kodi-send.1.gz
- DESTINATION share/man/man1
- COMPONENT kodi-eventclients-xbmc-send)
-install(FILES ${CPACK_PACKAGE_DIRECTORY}/deb/kodi-wiiremote.1.gz
- DESTINATION share/man/man1
- COMPONENT kodi-eventclients-wiiremote)
-endif()
-
-# configure package metadata files
-file(GLOB DEBIAN_PACKAGE_FILES ${PROJECT_SOURCE_DIR}/cpack/deb/packages/*.txt.in)
-foreach(file ${DEBIAN_PACKAGE_FILES})
- get_filename_component(package ${file} NAME_WE)
- # filter eventclients so we don't have to support two more deps
- # (libbluetooth-dev and libcwiid-dev) just because of wii-remote
- string(SUBSTRING ${package} 0 17 PACKAGE_FILTER)
- if(NOT ENABLE_EVENTCLIENTS AND PACKAGE_FILTER STREQUAL kodi-eventclients)
- message(STATUS "DEB Generator: ${package} matches ${PACKAGE_FILTER}, skipping.")
- # do nothing
- else()
- configure_file(${file}
- ${CPACK_PACKAGE_DIRECTORY}/deb/${package}.txt @ONLY)
- list(APPEND DEBIAN_PACKAGES ${package})
- endif()
-endforeach()
-unset(DEBIAN_PACKAGE_FILES)
-
-# generate packages
-include(CMakeParseArguments)
-foreach(file ${DEBIAN_PACKAGES})
- core_file_read_filtered(DEBIAN_METADATA ${CPACK_PACKAGE_DIRECTORY}/deb/${file}.txt)
- string(REPLACE " " ";" DEBIAN_METADATA "${DEBIAN_METADATA}")
- cmake_parse_arguments(DEB
- ""
- "PACKAGE_NAME;PACKAGE_ARCHITECTURE;PACKAGE_SECTION;PACKAGE_PRIORITY;PACKAGE_SHLIBDEPS"
- "PACKAGE_DEPENDS;PACKAGE_RECOMMENDS;PACKAGE_SUGGESTS;PACKAGE_BREAKS;PACKAGE_REPLACES;PACKAGE_PROVIDES;PACKAGE_DESCRIPTION_HEADER;PACKAGE_DESCRIPTION_FOOTER"
- ${DEBIAN_METADATA})
- string(REPLACE ";" " " DEB_PACKAGE_DEPENDS "${DEB_PACKAGE_DEPENDS}")
- string(REPLACE ";" " " DEB_PACKAGE_RECOMMENDS "${DEB_PACKAGE_RECOMMENDS}")
- string(REPLACE ";" " " DEB_PACKAGE_SUGGESTS "${DEB_PACKAGE_SUGGESTS}")
- string(REPLACE ";" " " DEB_PACKAGE_BREAKS "${DEB_PACKAGE_BREAKS}")
- string(REPLACE ";" " " DEB_PACKAGE_REPLACES "${DEB_PACKAGE_REPLACES}")
- string(REPLACE ";" " " DEB_PACKAGE_PROVIDES "${DEB_PACKAGE_PROVIDES}")
- string(REPLACE ";" " " DEB_PACKAGE_DESCRIPTION_HEADER "${DEB_PACKAGE_DESCRIPTION_HEADER}")
- string(REPLACE ";" " " DEB_PACKAGE_DESCRIPTION_FOOTER "${DEB_PACKAGE_DESCRIPTION_FOOTER}")
-
- string(TOUPPER ${file} COMPONENT)
-
- if(NOT DEB_PACKAGE_ARCHITECTURE)
- message(STATUS "DEB Generator: Mandatory variable CPACK_DEBIAN_${COMPONENT}_PACKAGE_ARCHITECTURE is empty. Setting to ${CPACK_SYSTEM_NAME}.")
- set(CPACK_DEBIAN_${COMPONENT}_PACKAGE_ARCHITECTURE ${CPACK_SYSTEM_NAME})
- else()
- set(CPACK_DEBIAN_${COMPONENT}_PACKAGE_ARCHITECTURE ${DEB_PACKAGE_ARCHITECTURE})
- endif()
-
- if(DEB_PACKAGE_NAME)
- if(DEB_PACKAGE_ARCHITECTURE)
- set(CPACK_DEBIAN_${COMPONENT}_FILE_NAME ${DEB_PACKAGE_NAME}_${PACKAGE_NAME_VERSION}_${DEB_PACKAGE_ARCHITECTURE}.deb)
- else()
- set(CPACK_DEBIAN_${COMPONENT}_FILE_NAME ${DEB_PACKAGE_NAME}_${PACKAGE_NAME_VERSION}_${CPACK_SYSTEM_NAME}.deb)
- endif()
- else()
- message(FATAL_ERROR "DEB Generator: Mandatory variable CPACK_DEBIAN_${COMPONENT}_FILE_NAME is not set.")
- endif()
-
- set(CPACK_DEBIAN_${COMPONENT}_PACKAGE_SOURCE ${APP_NAME_LC})
-
- if(DEB_PACKAGE_NAME)
- set(CPACK_DEBIAN_${COMPONENT}_PACKAGE_NAME ${DEB_PACKAGE_NAME})
- else()
- message(FATAL_ERROR "DEB Generator: Mandatory variable CPACK_DEBIAN_${COMPONENT}_PACKAGE_NAME is not set.")
- endif()
-
- if(DEB_PACKAGE_SECTION)
- set(CPACK_DEBIAN_${COMPONENT}_PACKAGE_SECTION ${DEB_PACKAGE_SECTION})
- else()
- message(FATAL_ERROR "DEB Generator: Mandatory variable CPACK_DEBIAN_${COMPONENT}_PACKAGE_SECTION is not set.")
- endif()
-
- if(DEB_PACKAGE_PRIORITY)
- set(CPACK_DEBIAN_${COMPONENT}_PACKAGE_PRIORITY ${DEB_PACKAGE_PRIORITY})
- else()
- message(FATAL_ERROR "DEB Generator: Mandatory variable CPACK_DEBIAN_${COMPONENT}_PACKAGE_PRIORITY is not set.")
- endif()
-
- if(DEB_PACKAGE_SHLIBDEPS)
- set(CPACK_DEBIAN_${COMPONENT}_PACKAGE_SHLIBDEPS ON)
- else()
- if(DEB_PACKAGE_DEPENDS)
- set(CPACK_DEBIAN_${COMPONENT}_PACKAGE_DEPENDS "${DEB_PACKAGE_DEPENDS}")
- endif()
- endif()
-
- if(DEB_PACKAGE_RECOMMENDS)
- set(CPACK_DEBIAN_${COMPONENT}_PACKAGE_RECOMMENDS "${DEB_PACKAGE_RECOMMENDS}")
- endif()
-
- if(DEB_PACKAGE_SUGGESTS)
- set(CPACK_DEBIAN_${COMPONENT}_PACKAGE_SUGGESTS "${DEB_PACKAGE_SUGGESTS}")
- endif()
-
- if(DEB_PACKAGE_BREAKS)
- set(CPACK_DEBIAN_${COMPONENT}_PACKAGE_BREAKS "${DEB_PACKAGE_BREAKS}")
- endif()
-
- if(DEB_PACKAGE_REPLACES)
- set(CPACK_DEBIAN_${COMPONENT}_PACKAGE_REPLACES "${DEB_PACKAGE_REPLACES}")
- endif()
-
- if(DEB_PACKAGE_PROVIDES)
- set(CPACK_DEBIAN_${COMPONENT}_PACKAGE_PROVIDES "${DEB_PACKAGE_PROVIDES}")
- endif()
-
- if(NOT DEB_PACKAGE_DESCRIPTION_HEADER OR NOT DEB_PACKAGE_DESCRIPTION_FOOTER)
- message(FATAL_ERROR "DEB Generator: Mandatory variable CPACK_COMPONENT_${COMPONENT}_DESCRIPTION is not set.")
- else()
- set(CPACK_COMPONENT_${COMPONENT}_DESCRIPTION "\
-${DEB_PACKAGE_DESCRIPTION_HEADER}\n\
-${CPACK_DEBIAN_PACKAGE_DESCRIPTION} \
-${DEB_PACKAGE_DESCRIPTION_FOOTER}")
- endif()
-
- install(FILES ${CPACK_PACKAGE_DIRECTORY}/deb/changelog.Debian.gz
- ${CPACK_PACKAGE_DIRECTORY}/deb/NEWS.Debian.gz
- ${PROJECT_SOURCE_DIR}/cpack/deb/copyright
- DESTINATION share/doc/${file}
- COMPONENT ${file})
-
- # kodi package exclusive files
- if(CPACK_DEBIAN_KODI_PACKAGE_NAME)
- set(CPACK_DEBIAN_KODI_PACKAGE_CONTROL_EXTRA
- "${PROJECT_SOURCE_DIR}/cpack/deb/postinst;${PROJECT_SOURCE_DIR}/cpack/deb/postrm")
- install(FILES ${PROJECT_SOURCE_DIR}/cpack/deb/lintian/overrides/kodi
- DESTINATION share/lintian/overrides
- COMPONENT kodi)
- install(FILES ${PROJECT_SOURCE_DIR}/cpack/deb/menu/kodi
- DESTINATION share/menu
- COMPONENT kodi)
- endif()
-endforeach()
-unset(DEBIAN_PACKAGES)
-
-### source package generation specific variables
-# source generator
-set(CPACK_SOURCE_GENERATOR TGZ)
-
-# source package name
-set(CPACK_SOURCE_PACKAGE_FILE_NAME ${APP_NAME_LC}_${APP_VERSION_MAJOR}.${APP_VERSION_MINOR}~git${PACKAGE_TIMESTAMP}-${GIT_HASH}.orig)
-
-# source dir
-set(CMAKE_SOURCE_DIR ${CORE_SOURCE_DIR})
-
-# ignore files for source package
-set(CPACK_SOURCE_IGNORE_FILES
- "/build/"
- "/debian/"
- "/.git/"
- ".gitignore"
- "yml$"
- "~$")
-
-# unset variables
-unset(PACKAGE_TIMESTAMP)
-unset(DISTRO_CODENAME)
-
-# reference docs
-# https://cmake.org/cmake/help/latest/module/CPack.html
-# https://cmake.org/cmake/help/latest/module/CPackDeb.html
-# https://cmake.org/cmake/help/latest/module/CPackComponent.html
-include(CPack)
diff --git a/project/cmake/cpack/deb/NEWS.Debian b/project/cmake/cpack/deb/NEWS.Debian
deleted file mode 100644
index 034774b302..0000000000
--- a/project/cmake/cpack/deb/NEWS.Debian
+++ /dev/null
@@ -1,24 +0,0 @@
-@CPACK_PACKAGE_NAME@ (@CPACK_DEBIAN_PACKAGE_VERSION@) @DISTRO_CODENAME@; urgency=high
- * Kodi Krypton (v17.0) will have an awesome new default skin, Estuary.
- However the vast improvements are deep in the bowels of Kodi core code.
- .
- Since the beginning of XBMC back in the days while it was running on
- the XBOX there was something like DVDPlayer. As the name probably
- implies it was used to playback DVD discs/files. During the years this
- DVDPlayer was improved and patched up to stay within modern day
- standards of video playback expectancy. However it became clear that
- for the future a major overhaul and rewrite was needed to keep up and
- be future proof. As such the developers who did the AudioEngine in v12
- picked up this job and have now transformed it into VideoPlayer.
- .
- Together with some platform developers they ripped out the old
- DVDPlayer code, chopped it into pieces, put it in the blender, picked
- the needed pieces and put it back in without breaking the rest of Kodi.
- This certainly wasn’t an easy job as DVDPlayer was like the bottom
- block of a Jenga tower that needed to be replaced while still being
- entangled throughout the whole tower. It had it’s tentacles in parts
- of the code where it shouldn’t have been in the first place. Over a
- year ago work started on getting this untangled and made ready to
- be replaced by the new implementation, VideoPlayer.
-
- -- h.udo <hudokkow@gmail.com> Tue, 05 Jul 2016 13:34:11 +0000
diff --git a/project/cmake/cpack/deb/copyright b/project/cmake/cpack/deb/copyright
deleted file mode 100644
index a79cf54f63..0000000000
--- a/project/cmake/cpack/deb/copyright
+++ /dev/null
@@ -1,3126 +0,0 @@
-Kodi is downloaded from http://kodi.tv/.
-Orig tarballs are generated from the script located at
-https://github.com/Kodi/Kodi/tree/master/project/cmake. The
-orig tarball is generated using the sources in https://github.com/Kodi/Kodi.
-
-Main Contact: "Team-Kodi" <team at kodi dot tv>
-
-Upstream Authors:
-
- Andreas Setterlind [Gamester17]
- Staffan Lindberg [pike]
- Arne Morten Kvarving [cptspiff]
- Anoop Menon [d4rk]
- Joakim Plate [elupus]
- Jonathan Marshall [jmarshall]
- Tobias Arrskog [Topfs2]
- Roee Vulkan [vulkanr]
- Winfried Soltys [WiSo]
- Yuval Tal [yuvalt]
- John W Vanderbeck [agathorn]
- Trent Nelson [AlTheKiller]
- Andres Mejia [ceros]
- Gunnar Norin [blittan]
- Dean Ross Parry [C-Quel]
- Sylvain Rebaud [c0diq]
- Martin van Beurden [chadoe]
- Scott Davilla [davilla]
- Stephan Diederich [MaestroDD]
- Benjamin Bertrand [Beenje]
- Benjamin Dickgiesser [DonJ]
- [GeminiServer]
- Christian Granqvist [Granqvist]
- Dave [kraqh3d]
- Luigi Capriotti [l.capriotti]
- Sean [malloc]
- Kyle Hill [monkeyman]
- [MrC]
- [nad]
- [nuka1195]
- Vincent Blackwell-Price [Voinage]
- Robert Parris [rwparris2]
- Sigurdur H. Olafsson [sho]
- Alasdair Campbell [Alcoheca]
- Georgy Yunaev [oldnemesis]
- Chris [phi2039]
- Bob [bobo1on1]
- David Allonby [motd2k]
- Robert Rudd [Rudd]
- Eric G [Tslayer]
- Amund Scharning [tut-ankh-amon]
- Matthias Kortstiege [VDRfan]
- Daniel Mehrwald [AreaScout]
- Oumar Aziz Outtara [wattazoum]
- Chris Haley [CHI3f]
- [Jezz_X]
- [Smokehead]
- Darren [Bizzeh]
- Marc [Bobbin007]
- Richard [Butcher]
- Jan-Willem [Darkie]
- Chris Branson [forza]
- [Kreet]
- [Ysbox]
- Erwin Beckers [Frodo]
- Albert Griscti-Soler [RUNTiME]
- Phil Burr [d7o3g4q] (a.k.a. Duo Egaq)
- Mathias Mahling [chokemaniac]
-
-Credits:
-
-Kodi - Cross-platform Media Center
-<http://Kodi.org/>
-
- Copyright © 2005-2016 Team Kodi http://kodi.tv
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-Generic classes for raster images
-
- Copyright © 2000, Juan Soulie <jsoulie@cplusplus.com>
-
- Permission to use, copy, modify, distribute and sell this software or any
- part thereof and/or its documentation for any purpose is granted without fee
- provided that the above copyright notice and this permission notice appear
- in all copies.
-
- This software is provided "as is" without express or implied warranty of
- any kind. The author shall have no liability with respect to the
- infringement of copyrights or patents that any modification to the content
- of this file or this file itself may incur.
-
-The FreeType Project
-<http://www.freetype.org/>
-
- Copyright © 1996-2006, by David Turner, Robert Wilhelm, and Werner Lemberg
-
- This file is part of the FreeType project, and may only be used,
- modified, and distributed under the terms of the FreeType project
- license, LICENSE.TXT. By continuing to use, modify, or distribute
- this file you indicate that you have read the license and
- understand and accept it fully.
-
- A full copy of the FreeType License (FTL) is provided under section
- "Licenses".
-
-TinyXML - simple, small, C++ XML Parser
-<http://www.grinninglizard.com/tinyxml/>
-
- Copyright © 2000-2006 Lee Thomason (www.grinninglizard.com)
- Copyright © 2005 Tyge Lovset
-
- This software is provided 'as-is', without any express or implied
- warranty. In no event will the authors be held liable for any damages
- arising from the use of this software.
-
- Permission is granted to anyone to use this software for any purpose,
- including commercial applications, and to alter it and redistribute it
- freely, subject to the following restrictions:
-
- 1. The origin of this software must not be misrepresented; you must not
- claim that you wrote the original software. If you use this software
- in a product, an acknowledgment in the product documentation would be
- appreciated but is not required.
- 2. Altered source versions must be plainly marked as such, and must not be
- misrepresented as being the original software.
- 3. This notice may not be removed or altered from any source distribution.
-
-CString Class in guilib/StdString.h
-
- Copyright © 2002 Joseph M. O'Leary
-
- This code is 100% free. Use it anywhere you want. Rewrite it, restructure
- it, whatever. If you can write software that makes money off of it, good for
- you. I kinda like capitalism. Please don't blame me if it causes your $30
- billion dollar satellite explode in orbit. If you redistribute it in any
- form, I'd appreciate it if you would leave this notice here.
-
-Mach-O library symbol mapping Ruby Scripts
-
- Copyright © 2008 Elan Feingold (elan at bluemandrill dot com)
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-Wiimote C Library
-<http://www.wiiuse.net/>
-
- Copyright © Michael Laforest < para >
- < thepara (--AT--) g m a i l [--DOT--] com >
-
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-Wiiuse Class for Kodi
-
- Copyright © 2009 by Cory Fields
-
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-Apple Remote Control Wrapper Classes
-
- Copyright © 2006 Martin Kahr martinkahr.com. All rights reserved.
-
- Permission is hereby granted, free of charge, to any person obtaining a
- copy of this software and associated documentation files (the "Software"),
- to deal in the Software without restriction, including without limitation
- the rights to use, copy, modify, merge, publish, distribute, sublicense,
- and/or sell copies of the Software, and to permit persons to whom the
- Software is furnished to do so, subject to the following conditions:
-
- The above copyright notice and this permission notice shall be included
- in all copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
- IN THE SOFTWARE.
-
-Class to Display events received from the Apple Infrared Remote.
-
- Copyright © 2006-2008 Amit Singh. All Rights Reserved.
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions
- are met:
- 1. Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
- 2. Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- THIS SOFTWARE IS PROVIDED BY AUTHOR AND CONTRIBUTORS ``AS IS'' AND
- ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- ARE DISCLAIMED. IN NO EVENT SHALL AUTHOR OR CONTRIBUTORS BE LIABLE
- FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- SUCH DAMAGE.
-
-ISO C9x compliant stdint.h and inttypes.h for Microsoft Visual Studio
-
- Copyright © 2006 Alexander Chemeris
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions are met:
-
- 1. Redistributions of source code must retain the above copyright notice,
- this list of conditions and the following disclaimer.
-
- 2. Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- 3. The name of the author may be used to endorse or promote products
- derived from this software without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-cURL - library and command line tool for transferring files with URL syntax
-<http://curl.haxx.se/>
-
- Copyright © 1998 - 2006, Daniel Stenberg, <daniel@haxx.se>, et al.
-
- Permission to use, copy, modify, and distribute this software for any
- purpose with or without fee is hereby granted, provided that the above
- copyright notice and this permission notice appear in all copies.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS.
- IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
- USE OR OTHER DEALINGS IN THE SOFTWARE.
-
- Except as contained in this notice, the name of a copyright holder shall not
- be used in advertising or otherwise to promote the sale, use or other
- dealings in this Software without prior written authorization of the
- copyright holder.
-
-RegExp.h
-
- Copyright © 1986, 1993, 1995 by University of Toronto.
-
- Permission is granted to anyone to use this software for any
- purpose on any computer system, and to redistribute it in any way,
- subject to the following restrictions:
-
- 1. The author is not responsible for the consequences of use of
- this software, no matter how awful, even if they arise
- from defects in it.
-
- 2. The origin of this software must not be misrepresented, either
- by explicit claim or by omission.
-
- 3. Altered versions must be plainly marked as such, and must not
- be misrepresented (by explicit claim or omission) as being
- the original software.
-
- 4. This notice must not be removed or altered.
-
-GNU gettext - internationalization aids
-<http://www.gnu.org/software/gettext/>
-
- Copyright © 1988, 1989, 1992, 1993, 1995 Free Software Foundation, Inc.
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-DBUSServer Class
-<http://www.azurdigitalnetworks.net/>
-
- Copyright © 2009 Azur Digital Networks
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-Really Slick X Screensavers
-<http://www.reallyslick.com/>
-
- Copyright © 2002-2006 Michael Chapman
- Copyright © 2002 Terence M. Welsh
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-SDLMain.h
-
- Copyright © Darrell Walisser <dwaliss1@purdue.edu>
- Copyright © Max Horn <max@quendi.de>
-
- Feel free to customize this file to suit your needs.
-
-XKGeneral.h - General Utility and Helper function Class' Header
-
- Copyright © TEAM ASSEMBLY www.team-assembly.com
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-Goom 2k4
-<http://www.ios-software.com/index.php3?page=projet&quoi=1&lg=AN>
-
- Copyright © 2000-2004, Jean-Christophe Hoelt <jeko@ios-software.com>
- Copyright © 2000-2004, Guillaume Borios <gyom@ios-software.com>
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
- iTunes Visualizer Plug-In SDK files included in Goom 2k4 are under the
- following license.
-
- Copyright (c) 2003 Apple Computer, Inc. All rights reserved.
-
- This Apple software is supplied to you by Apple Computer, Inc. in
- consideration of your agreement to the following terms, and your use,
- installation, modification or redistribution of this Apple software
- constitutes acceptance of these terms. If you do not agree with these terms,
- please do not use, install, modify or redistribute this Apple software.
-
- In consideration of your agreement to abide by the following terms, and
- subject to these terms, Apple grants you a personal, non-exclusive license,
- under Apple's intellectual property rights in this Apple Software (the
- "Apple Software"), to use, reproduce, modify and distribute the Apple
- Software; provided that no license is granted herein under any patents that
- may be infringed by your modifications, derivative works or by other works
- in which the Apple Software may be incorporated. No names, trademarks,
- service marks or logos of Apple Computer, Inc. may be used to endorse or
- promote products derived from the Apple Software without specific prior
- written permission from Apple. Except as expressly stated herein, no other
- rights or licenses, express or implied, are granted by Apple and nothing
- herein grants any license under any patents except claims of Apple patents
- that cover this Apple Software as originally provided by Apple, and only to
- the extent necessary to use and distribute this Apple Software as originally
- provided by Apple.
-
- The Apple Software is provided by Apple on an "AS IS" basis. APPLE MAKES NO
- WARRANTIES, EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED
- WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND OPERATION ALONE OR IN
- COMBINATION WITH ANY PRODUCT.
-
- IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR
- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- INTERRUPTION) ARISING IN ANY WAY OUT OF THE USE, REPRODUCTION, MODIFICATION
- AND/OR DISTRIBUTION OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER UNDER
- THEORY OF CONTRACT, TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY OR
- OTHERWISE, EVEN IF APPLE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-XAnalyser, frequence spectrum analyser for X Window
-<http://arvin.schnell-web.net/xanalyser/>
-
- Copyright © 1998 Arvin Schnell
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-XMMS - Cross-platform multimedia player
-<http://www.xmms.org/>
-
- Copyright © 1998-2000 Peter Alm, Mikael Alm, Olle Hallnas, Thomas Nilsson
- and 4Front Technologies
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-Pthreads-win32 - POSIX Threads Library for Win32
-<http://sourceware.org/pthreads-win32/>
-
- Copyright © 1998 John E. Bossom
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Library General Public
- License as published by the Free Software Foundation; either
- version 2 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Library General Public License for more details.
-
- You should have received a copy of the GNU Library General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-projectM - OpenGL based advanced music visualization program
-<http://projectm.sourceforge.net/>
-
- Copyright © 2003-2007 projectM Team
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-OpenDAAP
-<http://www.opendaap.org/>
-
- Copyright © 2004 Forza (Chris Barnett)
- Copyright © the authors of libOpenDAAP
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-zlib - A Massively Spiffy Yet Delicately Unobtrusive Compression Library
-<http://www.zlib.net/>
-
- Copyright © 1995-2002 Jean-loup Gailly and Mark Adler.
-
- This software is provided 'as-is', without any express or implied
- warranty. In no event will the authors be held liable for any damages
- arising from the use of this software.
-
- Permission is granted to anyone to use this software for any purpose,
- including commercial applications, and to alter it and redistribute it
- freely, subject to the following restrictions:
-
- 1. The origin of this software must not be misrepresented; you must not
- claim that you wrote the original software. If you use this software
- in a product, an acknowledgment in the product documentation would be
- appreciated but is not required.
- 2. Altered source versions must be plainly marked as such, and must not be
- misrepresented as being the original software.
- 3. This notice may not be removed or altered from any source distribution.
-
-iso9660.h
-
- Copyright © The Joker / Avalaunch team
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-Neptune Portable C++ Runtime Library
-<http://neptune.sourceforge.net/>
-
- Copyright © 2001-2006 Gilles Boccon-Gibod
- Copyright © 2002-2008, Axiomatic Systems, LLC.
- All rights reserved.
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions are met:
- * Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
- * Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
- * Neither the name of the <organization> nor the
- names of its contributors may be used to endorse or promote products
- derived from this software without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY AXIOMATIC SYSTEMS ''AS IS'' AND ANY
- EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- DISCLAIMED. IN NO EVENT SHALL AXIOMATIC SYSTEMS BE LIABLE FOR ANY
- DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
- THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-MMST implementation taken from the xine-mms plugin made by Major MMS
-(http://geocities.com/majormms/).
-
- Copyright © 2005-2008 Team Kodi
- Copyright © 2002 Abhijeet Phatak <abhijeetphatak@yahoo.com>
- Copyright © 2002 the xine project
- Copyright © 2000-2001 major mms
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-Ogg Bitstream Library
-<http://www.xiph.org/>
-
- Copyright © 1994-2002 Xiph.Org Foundation http://www.xiph.org/
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice,
- this list of conditions and the following disclaimer.
- * Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
- * Neither the name of the Xiph.org Foundation nor the names of its
- contributors may be used to endorse or promote products derived from
- this software without specific prior written permission.
-
- This software is provided by the copyright holders and contributors “as is”
- and any express or implied warranties, including, but not limited to, the
- implied warranties of merchantability and fitness for a particular purpose
- are disclaimed. In no event shall the foundation or contributors be liable
- for any direct, indirect, incidental, special, exemplary, or consequential
- damages (including, but not limited to, procurement of substitute goods or
- services; loss of use, data, or profits; or business interruption) however
- caused and on any theory of liability, whether in contract, strict
- liability, or tort (including negligence or otherwise) arising in any way
- out of the use of this software, even if advised of the possibility of such
- damage.
-
-The Vorbis General Audio Compression Codec
-<http://www.xiph.org/>
-
- Copyright © 2002, Xiph.org Foundation
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice,
- this list of conditions and the following disclaimer.
- * Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
- * Neither the name of the Xiph.org Foundation nor the names of its
- contributors may be used to endorse or promote products derived from
- this software without specific prior written permission.
-
- This software is provided by the copyright holders and contributors “as is”
- and any express or implied warranties, including, but not limited to, the
- implied warranties of merchantability and fitness for a particular purpose
- are disclaimed. In no event shall the foundation or contributors be liable
- for any direct, indirect, incidental, special, exemplary, or consequential
- damages (including, but not limited to, procurement of substitute goods or
- services; loss of use, data, or profits; or business interruption) however
- caused and on any theory of liability, whether in contract, strict
- liability, or tort (including negligence or otherwise) arising in any way
- out of the use of this software, even if advised of the possibility of such
- damage.
-
-LAME Ain't an Mp3 Encoder
-<http://lame.sourceforge.net/>
-
- Copyright © 1999 Mark Taylor
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-GNU libmicrohttpd
-<http://www.gnu.org/software/libmicrohttpd/>
-
- (C) 2006, 2007, 2008, 2009 Christian Grothoff (and other contributing
- authors)
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-Python Programming Language
-<http://www.python.org/>
-
- Copyright © 2001-2008 Python Software Foundation. All rights reserved.
- Copyright © 2000 BeOpen.com. All rights reserved.
- Copyright © 1995-2001 Corporation for National Research Initiatives. All
- rights reserved.
- Copyright © 1991-1995 Stichting Mathematisch Centrum. All rights reserved.
-
- Python is distributed under the Python Software Foundation License
- version 2. A copy of the license may be retrieved from
- http://www.python.org/psf/license/ and is repeated below under the section
- "License: PSF License for Python 2.4".
-
-libopendaap - library which enables applications to discover, and connect to,
-iTunes music shares.
-<http://craz.net/programs/itunes/libopendaap.html>
-
- Copyright © 2004 David Hammerton.
-
- Permission is hereby granted, free of charge, to any person obtaining a copy
- of this software and associated documentation files (the "Software"), to
- deal in the Software without restriction, including without limitation the
- rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- sell copies of the Software, and to permit persons to whom the Software is
- furnished to do so, subject to the following conditions:
-
- The above copyright notice and this permission notice shall be included in
- all copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
- IN THE SOFTWARE.
-
-libsamplerate - audio rate conversion library
-<http://www.mega-nerd.com/SRC/>
-
- Copyright © 2002-2008 Erik de Castro Lopo <erikd@mega-nerd.com>
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-MediaMVP Media Center
-<http://www.mvpmc.org/>
-
- Copyright © 2004-2006, Eric Lund, Jon Gettler, Sergio Slobodrian
- http://www.mvpmc.org/
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-MySQL
-<http://www.mysql.com/>
-
- Copyright © 2000-2003 MySQL AB
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-libid3tag - ID3 tag manipulation library
-<http://www.underbit.com/products/mad/>
-
- Copyright © 2000-2004 Underbit Technologies, Inc.
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-Simple DirectMedia Layer
-<http://www.libsdl.org/>
-
- Copyright © 1997-2006 Sam Lantinga
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-libfribidi - Free Implementation of the Unicode BiDi algorithm
-<http://www.fribidi.org/>
-
- Copyright © 1999,2000 Dov Grobgeld
- Copyright © 2001,2002 Behdad Esfahbod
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-CDRip - library that provides methods for extracting data from audio CDs
-<http://libcdrip.sourceforge.net/>
-
- Copyright © 1999 - 2002 Albert L. Faber
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-Platinum - UPnP library
-<http://www.plutinosoft.com/>
-
- Copyright © 2004-2008, Plutinosoft, LLC. All rights reserved.
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-SQLite - library that implements a self-contained, serverless,
-zero-configuration, transactional SQL database engine.
-<http://www.sqlite.org/>
-
- Copyright © 2004, Leo Seib, Hannover
-
- Permission is hereby granted, free of charge, to any person obtaining a copy
- of this software and associated documentation files (the "Software"), to
- deal in the Software without restriction, including without limitation the
- rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- sell copies of the Software, and to permit persons to whom the Software is
- furnished to do so, subject to the following conditions:
-
- The above copyright notice and this permission notice shall be included in
- all copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
- IN THE SOFTWARE.
-
-CxImage - C++ image processing and conversion library
-<http://www.xdp.it/cximage.htm>
-
- Copyright © 2001 - 2008, Davide Pizzolato
-
- Original CImage and CImageIterator implementation are:
- Copyright © 1995, Alejandro Aguilar Sierra
- (asierra(at)servidor(dot)unam(dot)mx)
-
- Covered code is provided under this license on an "as is" basis, without
- warranty of any kind, either expressed or implied, including, without
- limitation, warranties that the covered code is free of defects,
- merchantable, fit for a particular purpose or non-infringing. The entire
- risk as to the quality and performance of the covered code is with you.
- Should any covered code prove defective in any respect, you (not the initial
- developer or any other contributor) assume the cost of any necessary
- servicing, repair or correction. This disclaimer of warranty constitutes an
- essential part of this license. No use of any covered code is authorized
- hereunder except under this disclaimer.
-
- Permission is hereby granted to use, copy, modify, and distribute this
- source code, or portions hereof, for any purpose, including commercial
- applications, freely and without fee, subject to the following restrictions:
-
- 1. The origin of this software must not be misrepresented; you must not
- claim that you wrote the original software. If you use this software
- in a product, an acknowledgment in the product documentation would be
- appreciated but is not required.
-
- 2. Altered source versions must be plainly marked as such, and must not be
- misrepresented as being the original software.
-
- 3. This notice may not be removed or altered from any source distribution.
-
- Portions of CxImage are under different copyright and under different
- licenses.
-
- JasPer
- Copyright © 2001-2006 Michael David Adams
- Copyright © 1999-2000 Image Power, Inc.
- Copyright © 1999-2000 The University of British Columbia
- All Rights Reserved.
-
- Permission is hereby granted, free of charge, to any person (the
- "User") obtaining a copy of this software and associated documentation
- files (the "Software"), to deal in the Software without restriction,
- including without limitation the rights to use, copy, modify, merge,
- publish, distribute, and/or sell copies of the Software, and to permit
- persons to whom the Software is furnished to do so, subject to the
- following conditions:
-
- 1. The above copyright notices and this permission notice (which
- includes the disclaimer below) shall be included in all copies or
- substantial portions of the Software.
-
- 2. The name of a copyright holder shall not be used to endorse or
- promote products derived from the Software without specific prior
- written permission.
-
- THIS DISCLAIMER OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS
- LICENSE. NO USE OF THE SOFTWARE IS AUTHORIZED HEREUNDER EXCEPT UNDER
- THIS DISCLAIMER. THE SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS
- "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
- BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
- PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN NO
- EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL
- INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING
- FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
- NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
- WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. NO ASSURANCES ARE
- PROVIDED BY THE COPYRIGHT HOLDERS THAT THE SOFTWARE DOES NOT INFRINGE
- THE PATENT OR OTHER INTELLECTUAL PROPERTY RIGHTS OF ANY OTHER ENTITY.
- EACH COPYRIGHT HOLDER DISCLAIMS ANY LIABILITY TO THE USER FOR CLAIMS
- BROUGHT BY ANY OTHER ENTITY BASED ON INFRINGEMENT OF INTELLECTUAL
- PROPERTY RIGHTS OR OTHERWISE. AS A CONDITION TO EXERCISING THE RIGHTS
- GRANTED HEREUNDER, EACH USER HEREBY ASSUMES SOLE RESPONSIBILITY TO SECURE
- ANY OTHER INTELLECTUAL PROPERTY RIGHTS NEEDED, IF ANY. THE SOFTWARE
- IS NOT FAULT-TOLERANT AND IS NOT INTENDED FOR USE IN MISSION-CRITICAL
- SYSTEMS, SUCH AS THOSE USED IN THE OPERATION OF NUCLEAR FACILITIES,
- AIRCRAFT NAVIGATION OR COMMUNICATION SYSTEMS, AIR TRAFFIC CONTROL
- SYSTEMS, DIRECT LIFE SUPPORT MACHINES, OR WEAPONS SYSTEMS, IN WHICH
- THE FAILURE OF THE SOFTWARE OR SYSTEM COULD LEAD DIRECTLY TO DEATH,
- PERSONAL INJURY, OR SEVERE PHYSICAL OR ENVIRONMENTAL DAMAGE ("HIGH
- RISK ACTIVITIES"). THE COPYRIGHT HOLDERS SPECIFICALLY DISCLAIM ANY
- EXPRESS OR IMPLIED WARRANTY OF FITNESS FOR HIGH RISK ACTIVITIES.
-
- JBIG
- Copyright © Markus Kuhn -- http://www.cl.cam.ac.uk/~mgk25/
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
- MNG
- Copyright © 2000-2007 Gerard Juyn (gerard@libmng.com)
-
- For the purposes of this copyright and license, "Contributing Authors"
- is defined as the following set of individuals:
-
- Gerard Juyn
- Glenn Randers-Pehrson
-
- The MNG Library is supplied "AS IS". The Contributing Authors
- disclaim all warranties, expressed or implied, including, without
- limitation, the warranties of merchantability and of fitness for any
- purpose. The Contributing Authors assume no liability for direct,
- indirect, incidental, special, exemplary, or consequential damages,
- which may result from the use of the MNG Library, even if advised of
- the possibility of such damage.
-
- Permission is hereby granted to use, copy, modify, and distribute this
- source code, or portions hereof, for any purpose, without fee, subject
- to the following restrictions:
-
- 1. The origin of this source code must not be misrepresented;
- you must not claim that you wrote the original software.
-
- 2. Altered versions must be plainly marked as such and must not be
- misrepresented as being the original source.
-
- 3. This Copyright notice may not be removed or altered from any source
- or altered source distribution.
-
- The Contributing Authors specifically permit, without fee, and
- encourage the use of this source code as a component to supporting
- MNG and JNG file format in commercial products. If you use this
- source code in a product, acknowledgment would be highly appreciated.
-
- JPEG
- Copyright © 1994-1998, Thomas G. Lane.
-
- JPEG code is under the Independent JPEG Group License which can be found at
- http://dev.w3.org/cvsweb/Amaya/libjpeg/Attic/README?rev=1.2 and is repeated
- under the section "License: IJG License".
-
- TIFF
- Copyright © 1988-1997 Sam Leffler
- Copyright © 1991-1997 Silicon Graphics, Inc.
-
- Permission is hereby granted, free of charge, to any person obtaining a copy
- of this software and associated documentation files (the "Software"), to
- deal in the Software without restriction, including without limitation the
- rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- sell copies of the Software, and to permit persons to whom the Software is
- furnished to do so, subject to the following conditions:
-
- The above copyright notice and this permission notice shall be included in
- all copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
- IN THE SOFTWARE.
-
- PNG
- Copyright © 1998, 1999 Glenn Randers-Pehrson
-
- This software is provided 'as-is', without any express or implied
- warranty. In no event will the authors be held liable for any damages
- arising from the use of this software.
-
- Permission is granted to anyone to use this software for any purpose,
- including commercial applications, and to alter it and redistribute it
- freely, subject to the following restrictions:
-
- 1. The origin of this software must not be misrepresented; you must not
- claim that you wrote the original software. If you use this software
- in a product, an acknowledgment in the product documentation would be
- appreciated but is not required.
- 2. Altered source versions must be plainly marked as such, and must not be
- misrepresented as being the original software.
- 3. This notice may not be removed or altered from any source distribution.
-
- Dave Coffin's raw photo decoder
- Copyright © 1997-2009 by Dave Coffin, dcoffin a cybercom o net
-
- Covered code is provided under this license on an "as is" basis, without
- warranty of any kind, either expressed or implied, including, without
- limitation, warranties that the covered code is free of defects,
- merchantable, fit for a particular purpose or non-infringing. The entire
- risk as to the quality and performance of the covered code is with you.
- Should any covered code prove defective in any respect, you (not the initial
- developer or any other contributor) assume the cost of any necessary
- servicing, repair or correction. This disclaimer of warranty constitutes an
- essential part of this license. No use of any covered code is authorized
- hereunder except under this disclaimer.
-
- No license is required to download and use libdcr. However,
- to lawfully redistribute libdcr, you must either (a) offer, at
- no extra charge, full source code for all executable files
- containing RESTRICTED functions, (b) distribute this code under
- the GPL Version 2 or later, (c) remove all RESTRICTED functions,
- re-implement them, or copy them from an earlier, unrestricted
- revision of dcraw.c, or (d) purchase a license from the author
- of dcraw.c.
-
-PortAudio - portable cross-platform Audio API
-<http://www.portaudio.com/>
-
- Copyright © 1999-2002 Ross Bencina and Phil Burk
-
- Permission is hereby granted, free of charge, to any person obtaining a copy
- of this software and associated documentation files (the "Software"), to
- deal in the Software without restriction, including without limitation the
- rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- sell copies of the Software, and to permit persons to whom the Software is
- furnished to do so, subject to the following conditions:
-
- The above copyright notice and this permission notice shall be included in
- all copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
- IN THE SOFTWARE.
-
-Audioscrobbler - The Social Music Technology Playground
-<http://www.audioscrobbler.net/>
-
- Copyright © 2003 Russell Garrett (russ-scrobbler@garrett.co.uk)
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-Samba - Opening Windows to a Wider World
-<http://www.samba.org/>
-
- Copyright © Andrew Tridgell 1998
- Copyright © Richard Sharpe 2000
- Copyright © John Terpsra 2000
- Copyright © Tom Jansen (Ninja ISD) 2002
- Copyright © Derrell Lipman 2003
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-PCRE - Perl Compatible Regular Expressions
-<http://www.pcre.org/>
-
- Copyright © 1997-2007 University of Cambridge
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice,
- this list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- * Neither the name of the University of Cambridge nor the names of its
- contributors may be used to endorse or promote products derived from
- this software without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
- LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- POSSIBILITY OF SUCH DAMAGE.
-
-HDHomeRun - Networked Digital Tuner
-<http://www.silicondust.com/>
-
- Copyright © 2006-2008 Silicondust Engineering Ltd. <www.silicondust.com>
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 3 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this library. If not, see
- <http://www.gnu.org/licenses/>.
-
- As a special exception to the GNU Lesser General Public License,
- you may link, statically or dynamically, an application with a
- publicly distributed version of the Library to produce an
- executable file containing portions of the Library, and
- distribute that executable file under terms of your choice,
- without any of the additional requirements listed in clause 4 of
- the GNU Lesser General Public License.
-
- By "a publicly distributed version of the Library", we mean
- either the unmodified Library as distributed by Silicondust, or a
- modified version of the Library that is distributed under the
- conditions defined in the GNU Lesser General Public License.
-
-LibASS - portable library for SSA/ASS subtitles rendering
-<http://sourceforge.net/projects/libass/>
-
- Copyright © 2006 Evgeniy Stepanov <eugeni.stepanov@gmail.com>
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-libRTV - ReplayTV library
-
- Copyright © 2002 John Todd Larason <jtl@molehill.org>
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-libiconv - iconv() implementation
-<http://www.gnu.org/software/libiconv/>
-
- Copyright © 1999-2003 Free Software Foundation, Inc.
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Library General Public
- License as published by the Free Software Foundation; either
- version 2 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Library General Public License for more details.
-
- You should have received a copy of the GNU Library General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-Boost C++ Libraries
-<http://www.boost.org/>
-
- Copyright © 2001, 2002 Peter Dimov and Multi Media Ltd.
- Copyright © 2007 Peter Dimov
-
- Permission is hereby granted, free of charge, to any person or organization
- obtaining a copy of the software and accompanying documentation covered by
- this license (the "Software") to use, reproduce, display, distribute,
- execute, and transmit the Software, and to prepare derivative works of the
- Software, and to permit third-parties to whom the Software is furnished to
- do so, all subject to the following:
-
- The copyright notices in the Software and this entire statement, including
- the above license grant, this restriction and the following disclaimer,
- must be included in all copies of the Software, in whole or in part, and
- all derivative works of the Software, unless such copies or derivative
- works are solely in the form of machine-executable object code generated by
- a source language processor.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
- SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
- FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
- ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- DEALINGS IN THE SOFTWARE.
-
-HTS Tvheadend - Combined DVB receiver, Digital Video Recorder and Showtime
-streaming server for Linux.
-<http://www.lonelycoder.com/hts/>
-
- Copyright © 2008 Andreas Öman
-
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-GNU Compact Disc Input and Control Library
-<http://www.gnu.org/software/libcdio/index.html>
-
- Copyright © 2001 Herbert Valerio Riedel <hvr@gnu.org>
- Copyright © 2003, 2004, 2005 Rocky Bernstein <rocky@panix.com>
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-SNESAPU - SNES APU emulator library
-<http://www.alpha-ii.com/>
-
- Copyright © 2001-2006 Alpha-II
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-Musepack Decoder Library
-<http://www.musepack.net/>
-
- Copyright © 2005, The Musepack Development Team. All rights reserved.
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions are
- met:
-
- * Redistributions of source code must retain the above copyrig
- notice, this list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above
- copyright notice, this list of conditions and the following
- disclaimer in the documentation and/or other materials provided
- with the distribution.
-
- * Neither the name of the The Musepack Development Team nor the
- names of its contributors may be used to endorse or promote
- products derived from this software without specific prior
- written permission.
-
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-FLAC - Free Lossless Audio Codec
-
- Copyright © 2000,2001,2002,2003,2004,2005,2006,2007 Josh Coalson
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-Gens APU from Gens
-<http://info.sonicretro.org/Gens/GS>
-
- Copyright © 2002 by Stéphane Dallongeville
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-vgmstream - library for playback of various video game audio formats
-<http://vgmstream.sourceforge.net/>
-
- Copyright © 2008-2009 Adam Gashlin, Fastelbja, Ronny Elfert
-
- Permission to use, copy, modify, and/or distribute this software for any
- purpose with or without fee is hereby granted, provided that the above
- copyright notice and this permission notice appear in all copies.
-
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
- WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
- MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
- SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
- WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
- OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
- CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
-
-nosefart - NES sound format player
-<http://nosefart.sourceforge.net/>
-
- Copyright © 1998-2000 Matthew Conte (matt@conte.com)
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-MAD - MPEG Audio Decoder
-<http://www.underbit.com/products/mad/>
-
- Copyright © 2000-2004 Underbit Technologies, Inc
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-SID Player Music Library V2
-<http://sidplay2.sourceforge.net/>
-
- Copyright © Michael Schwendt <mschwendt@yahoo.com>
- Copyright © 2000 by Simon White
- Copyright © 2001-2002 by Jarno Paananen
- Copyright © 2004 Dag Lem <resid@nimrod.no>
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-Xbox ADPCM audio codec
-<http://www.winamp.com/plugins/details/147392>
-
- Copyright © Luigi Auriemma
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-ST-Sound - general "Nostalgic" Computer Sound Emulator
-<http://leonard.oxg.free.fr>
-
- Copyright © 1995-1999 Arnaud Carré ( http://leonard.oxg.free.fr )
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-TiMidity++ - software synthesizer
-<http://timidity.sourceforge.net/>
-
- Copyright © 1999-2002 Masanao Izumo <mo@goice.co.jp>
- Copyright © 1995 Tuukka Toivonen <tt@cgs.fi>
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-FFmpeg - complete, cross-platform solution to record, convert and stream audio
-and video
-<http://www.ffmpeg.org/>
-
- Copyright © Fabrice Bellard
- Copyright © Alex Beregszaszi
- Copyright © BERO
- Copyright © Mario Brito
- Copyright © Ronald Bultje
- Copyright © Tim Ferguson
- Copyright © Brian Foley
- Copyright © Arpad Gereoffy
- Copyright © Philip Gladstone
- Copyright © Vladimir Gneushev
- Copyright © Wolfgang Hesseler
- Copyright © Falk Hueffner
- Copyright © Zdenek Kabelac
- Copyright © Robin Kay
- Copyright © Todd Kirby
- Copyright © Nick Kurshev
- Copyright © Mike Melanson
- Copyright © Michael Niedermayer
- Copyright © François Revol
- Copyright © Roman Shaposhnik
- Copyright © Dieter Shirley
- Copyright © Juan J. Sierralta
- Copyright © Ewald Snel
- Copyright © Leon van Stuivenberg
- Copyright © Roberto Togni
- Copyright © Lionel Ulmer
-
- Falls under two licenses, the LGPL-2.1 and GPL-2.
-
- LGPL-2.1
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
- GPL-2
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-nuttcp - TCP/UDP network testing tool
-<http://www.lcp.nrl.navy.mil/nuttcp/>
-
- Copyright © 1995-1999 WIDE Project.
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions
- are met:
- 1. Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
- 2. Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
- 3. Neither the name of the project nor the names of its contributors
- may be used to endorse or promote products derived from this software
- without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``AS IS'' AND
- ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- ARE DISCLAIMED. IN NO EVENT SHALL THE PROJECT OR CONTRIBUTORS BE LIABLE
- FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- SUCH DAMAGE.
-
-libdvdnav and libdvdread - libraries to read DVDs and navigate DVD menus
-<http://www.mplayerhq.hu/>
-
- Copyright © 2001-2004 Rich Wareham <richwareham@users.sourceforge.net>
- Copyright © 2000, 2001, 2002 H�kan Hjort <d95hjort@dtek.chalmers.se>
- Copyright © 1998, 1999 Eric Smith <eric@brouhaha.com>
- Copyright © 2001, 2002 Billy Biggs <vektor@dumbterm.net>
- Copyright © 2000, 2001 Martin Norb�ck
- Copyright © 2000, 2001 Bj�rn Englund
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-libdca - free library for decoding DTS Coherent Acoustics streams
-<http://www.videolan.org/developers/libdca.html>
-
- Copyright © 2004 Gildas Bazin <gbazin@videolan.org>
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-libspucc - library that's part of the Xine project
-<http://www.xine-project.org/home>
-
- Copyright © 2000-2008 the xine project
- Copyright © Christian Vogler cvogler@gradient.cis.upenn.edu - December 2001
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-libmpeg2 - a free MPEG-2 video stream decoder
-<http://libmpeg2.sourceforge.net/>
-
- Copyright © 2000-2004 Michel Lespinasse <walken@zoy.org>
- Copyright © 1999-2000 Aaron Holtzman <aholtzma@ess.engr.uvic.ca>
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-libdvdcss - library designed for accessing encrypted DVDs
-<http://www.videolan.org/developers/libdvdcss.html>
-
- Copyright © 1999-2001 VideoLAN
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-Sample frequency change classes
-
- Copyright © Spoon (www.dbpoweramp.com) March 2002 dbpoweramp@dbpoweramp.com
-
- The code is based on original SSRC by Naoki Shibata
- <http://shibatch.sourceforge.net/
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-Kodi-xrandr.c
-
- Copyright © 2001 Keith Packard, member of The XFree86 Project, Inc.
- Copyright © 2002 Hewlett Packard Company, Inc.
- Copyright © 2006 Intel Corporation
-
- Permission to use, copy, modify, distribute, and sell this software and its
- documentation for any purpose is hereby granted without fee, provided that
- the above copyright notice appear in all copies and that both that copyright
- notice and this permission notice appear in supporting documentation, and
- that the name of the copyright holders not be used in advertising or
- publicity pertaining to distribution of the software without specific,
- written prior permission. The copyright holders make no representations
- about the suitability of this software for any purpose. It is provided "as
- is" without express or implied warranty.
-
- THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
- INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
- EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY SPECIAL, INDIRECT OR
- CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
- DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
- TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
- OF THIS SOFTWARE.
-
-Kodi/Crc32.cpp and Kodi/Crc32.h
-
- Copyright (C) 2005-2009 Team Kodi
- http://kodi.tv
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
- Portion of this code was taken from efone.
- efone - Distributed internet phone system.
-
- (c) 1999,2000 Krzysztof Dabrowski
- (c) 1999,2000 ElysiuM deeZine
-
- This program is free software; you can redistribute it and/or
- modify it under the terms of the GNU General Public License
- as published by the Free Software Foundation; either version
- 2 of the License, or (at your option) any later version.
-
- based on implementation by Finn Yannick Jacobs
-
-guilib/AnimatedGif.cpp and guilib/AnimatedGif.h
-
- Copyright (c) 2000, Juan Soulie <jsoulie@cplusplus.com>
-
- Permission to use, copy, modify, distribute and sell this software or any
- part thereof and/or its documentation for any purpose is granted without fee
- provided that the above copyright notice and this permission notice appear
- in all copies.
-
- This software is provided "as is" without express or implied warranty of
- any kind. The author shall have no liability with respect to the
- infringement of copyrights or patents that any modification to the content
- of this file or this file itself may incur.
-
-json-cpp - lightweight data-interchange format
-<http://jsoncpp.sourceforge.net/>
-
- Author is Baptiste Lepilleur <blep@users.sourceforge.net>
-
- The json-cpp library and this documentation are in Public Domain.
-
-Crystal HD
-<http://www.broadcom.com/support/crystal_hd/>
-
- Copyright(c) 2006-2009 Broadcom Corporation.
-
- The Crystal HD library is free software: you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public License as
- published by the Free Software Foundation, version 2.1 of the License.
-
- The Crystal HD library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public License
- along with this header. If not, see <http://www.gnu.org/licenses/>.
-
- The Crystal HD driver is free software; you can redistribute it and/or
- modify it under the terms of the GNU General Public License as published by
- the Free Software Foundation, version 2 of the License.
-
- The Crystal HD driver is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this driver. If not, see <http://www.gnu.org/licenses/>.
-
-OpenSSH
-<http://www.openssh.org/>
-
- Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
- All rights reserved.
-
- See the section 'License: OpenSSH' for full license terms.
-
-Enca - Extremely Naive Charset Analyser
-<http://freshmeat.net/projects/enca/>
-
- Copyright (C) 2000-2003 David Necas (Yeti) <yeti@physics.muni.cz>
- Copyright (C) 2009 Michal Cihar <michal@cihar.com>
-
- This program is free software; you can redistribute it and/or modify it
- under the terms of version 2 of the GNU General Public License as published
- by the Free Software Foundation.
-
- This program is distributed in the hope that it will be useful, but WITHOUT
- ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
- more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-C-Pluff - a plug-in framework for C
-<http://www.c-pluff.org/>
-
- Copyright 2007 Johannes Lehtinen
-
- Permission is hereby granted, free of charge, to any person obtaining a
- copy of this software and associated documentation files (the "Software"),
- to deal in the Software without restriction, including without limitation
- the rights to use, copy, modify, merge, publish, distribute, sublicense,
- and/or sell copies of the Software, and to permit persons to whom the
- Software is furnished to do so, subject to the following conditions:
-
- The above copyright notice and this permission notice shall be included
- in all copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
- IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
- CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
- TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
- SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
- C-Pluff uses data structure implementations from Kazlib library.
-
- KazLib copyright and license
- ----------------------------
-
- Hash Table Data Type
- List Abstract Data Type
- Copyright (C) 1997 Kaz Kylheku <kaz@ashi.footprints.net>
-
- Free Software License:
-
- All rights are reserved by the author, with the following exceptions:
- Permission is granted to freely reproduce and distribute this software,
- possibly in exchange for a fee, provided that this copyright notice appears
- intact. Permission is also granted to adapt this software to produce
- derivative works, as long as the modified versions carry this copyright
- notice and additional notices stating that the work has been modified.
- This source code may be translated into executable form and incorporated
- into proprietary software; there is no requirement for such software to
- contain a copyright notice related to this source.
-
-J2ME Event Client
-
- Copyright (c) 2008 topfs2
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-OSXRemote Client
-
- Created by Stephan Diederich.
- Copyright 2008 University Heidelberg. All rights reserved.
-
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-HIDRemote Classes used by OSXRemote Client
-
- Copyright (c) 2007-2009 IOSPIRIT GmbH (http://www.iospirit.com/)
- All rights reserved.
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice,
- this list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- this list of conditions and the following disclaimer in the documentation
- and/or other materials provided with the distribution.
-
- * Neither the name of IOSPIRIT GmbH nor the names of its contributors may be
- used to endorse or promote products derived from this software without
- specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
- LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- POSSIBILITY OF SUCH DAMAGE.
-
-Implementation of POSIX directory browsing functions and types for Win32.
-
- Copyright Kevlin Henney, 1997, 2003. All rights reserved.
-
- Permission to use, copy, modify, and distribute this software and its
- documentation for any purpose is hereby granted without fee, provided
- that this copyright and permissions notice appear in all copies and
- derivatives.
-
- This software is supplied "as is" without express or implied warranty.
-
- But that said, if there are any problems please get in touch.
-
-Bitstream Vera Fonts
-
- Copyright (C) 2003 Bitstream, Inc.
- All Rights Reserved. Bitstream Vera is a trademark of Bitstream, Inc.
-
- Permission is hereby granted, free of charge, to any person obtaining a
- copy of the fonts accompanying this license ("Fonts") and associated
- documentation files (the "Font Software"), to reproduce and distribute
- the Font Software, including without limitation the rights to use, copy,
- merge, publish, distribute, and/or sell copies of the Font Software, and
- to permit persons to whom the Font Software is furnished to do so,
- subject to the following conditions:
-
- The above copyright and trademark notices and this permission notice
- shall be included in all copies of one or more of the Font Software
- typefaces.
-
- The Font Software may be modified, altered, or added to, and in
- particular the designs of glyphs or characters in the Fonts may be
- modified and additional glyphs or characters may be added to the Fonts,
- only if the fonts are renamed to names not containing either the words
- "Bitstream" or the word "Vera".
-
- This License becomes null and void to the extent applicable to Fonts or
- Font Software that has been modified and is distributed under the
- "Bitstream Vera" names.
-
- The Font Software may be sold as part of a larger software package but
- no copy of one or more of the Font Software typefaces may be sold by
- itself.
-
- THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF
- COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL
- BITSTREAM OR THE GNOME FOUNDATION BE LIABLE FOR ANY CLAIM, DAMAGES OR
- OTHER LIABILITY, INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL,
- OR CONSEQUENTIAL DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR
- OTHERWISE, ARISING FROM, OUT OF THE USE OR INABILITY TO USE THE FONT
- SOFTWARE OR FROM OTHER DEALINGS IN THE FONT SOFTWARE.
-
- Except as contained in this notice, the names of Gnome, the Gnome
- Foundation, and Bitstream Inc., shall not be used in advertising or
- otherwise to promote the sale, use or other dealings in this Font
- Software without prior written authorization from the Gnome Foundation
- or Bitstream Inc., respectively. For further information, contact:
- <fonts@gnome.org>.
-
-DejaVu Fonts
-
- Fonts are (c) Bitstream (see below). DejaVu changes are in public domain.
- Glyphs imported from Arev fonts are (c) Tavmjung Bah (see below)
- Bitstream Vera Fonts Copyright
- ------------------------------
- Copyright (c) 2003 by Bitstream, Inc. All Rights Reserved. Bitstream Vera is
- a trademark of Bitstream, Inc.
- Permission is hereby granted, free of charge, to any person obtaining a copy
- of the fonts accompanying this license ("Fonts") and associated
- documentation files (the "Font Software"), to reproduce and distribute the
- Font Software, including without limitation the rights to use, copy, merge,
- publish, distribute, and/or sell copies of the Font Software, and to permit
- persons to whom the Font Software is furnished to do so, subject to the
- following conditions:
- The above copyright and trademark notices and this permission notice shall
- be included in all copies of one or more of the Font Software typefaces.
- The Font Software may be modified, altered, or added to, and in particular
- the designs of glyphs or characters in the Fonts may be modified and
- additional glyphs or characters may be added to the Fonts, only if the fonts
- are renamed to names not containing either the words "Bitstream" or the word
- "Vera".
- This License becomes null and void to the extent applicable to Fonts or Font
- Software that has been modified and is distributed under the "Bitstream
- Vera" names.
- The Font Software may be sold as part of a larger software package but no
- copy of one or more of the Font Software typefaces may be sold by itself.
- THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY,
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF COPYRIGHT, PATENT,
- TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL BITSTREAM OR THE GNOME
- FOUNDATION BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING
- ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES,
- WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
- THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM OTHER DEALINGS IN THE
- FONT SOFTWARE.
- Except as contained in this notice, the names of Gnome, the Gnome
- Foundation, and Bitstream Inc., shall not be used in advertising or
- otherwise to promote the sale, use or other dealings in this Font Software
- without prior written authorization from the Gnome Foundation or Bitstream
- Inc., respectively. For further information, contact: fonts at gnome dot
- org.
- Arev Fonts Copyright
- ------------------------------
- Copyright (c) 2006 by Tavmjong Bah. All Rights Reserved.
- Permission is hereby granted, free of charge, to any person obtaining
- a copy of the fonts accompanying this license ("Fonts") and
- associated documentation files (the "Font Software"), to reproduce
- and distribute the modifications to the Bitstream Vera Font Software,
- including without limitation the rights to use, copy, merge, publish,
- distribute, and/or sell copies of the Font Software, and to permit
- persons to whom the Font Software is furnished to do so, subject to
- the following conditions:
- The above copyright and trademark notices and this permission notice
- shall be included in all copies of one or more of the Font Software
- typefaces.
- The Font Software may be modified, altered, or added to, and in
- particular the designs of glyphs or characters in the Fonts may be
- modified and additional glyphs or characters may be added to the
- Fonts, only if the fonts are renamed to names not containing either
- the words "Tavmjong Bah" or the word "Arev".
- This License becomes null and void to the extent applicable to Fonts
- or Font Software that has been modified and is distributed under the
- "Tavmjong Bah Arev" names.
- The Font Software may be sold as part of a larger software package but
- no copy of one or more of the Font Software typefaces may be sold by
- itself.
- THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
- OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL
- TAVMJONG BAH BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
- DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
- OTHER DEALINGS IN THE FONT SOFTWARE.
- Except as contained in this notice, the name of Tavmjong Bah shall not
- be used in advertising or otherwise to promote the sale, use or other
- dealings in this Font Software without prior written authorization
- from Tavmjong Bah. For further information, contact: tavmjong @ free
-
-SlingboxLib - Library to communicate with Slingbox devices
-<http://www.stonyx.com>
-
- Copyright (C) 2010-2011 Stonyx
-
- This library is free software. You can redistribute it and/or modify it
- under the terms of the GNU General Public License Version 2 (or at your
- option any later version) as published by The Free Software Foundation.
-
- This library is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-ASAP (Another Slight Atari Player)
-<http://asap.sourceforge.net>
-
- Copyright (C) 2005-2009 Piotr Fusik
-
- ASAP is free software; you can redistribute it and/or modify it
- under the terms of the GNU General Public License as published
- by the Free Software Foundation; either version 2 of the License,
- or (at your option) any later version.
-
- ASAP is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty
- of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- See the GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-CMyth - C library for communicating with MythTv server
-<http://www.mvpmc.org>
-
- Copyright (C) 2004-2006, Eric Lund, Jon Gettler
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-libapetag - Library for manipulating APE tags.
-<http://src.gnu-darwin.org/ports/audio/easytag/work/easytag-2.1/src/libapetag/>
-
- Copyright (c) 2002 Artur Polaczynski (Ar't) All rights reserved.
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU Lesser General Public License as
- published by the Free Software Foundation; either version 2.1
- of the License, or (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-libbluray - Blu-ray disc playback support library
-
- Copyright (C) 2010, hpi1
- Copyright (C) 2010, fraxinas
- Copyright (C) 2010, John Stebbins
- Copyright (C) 2010, Joakim
- Copyright (C) 2010, Obliter0n
- Copyright (C) 2010, William Hahne
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public License
- along with this library. If not, see <http://www.gnu.org/licenses/>.
-
-libexif - library to parse EXIF files
-
- Copyright (C) 2001-2009, Lutz Müller <urc8@rz.uni-karlsruhe.de>
- Copyright (C) 2004-2009, Jan Patera <patera@users.sourceforge.net>
- Copyright (C) 2004, Joerg Hoh<joerg@devone.org>
- Copyright (C) 2005-2006, Hubert Figuiere <hub@figuiere.net>
- Copyright (C) 2002-2005, Hans Ulrich Niedermann <gp@n-dimensional.de>
- Copyright (C) 2007-2010, Dan Fandrich <dan@coneharvesters.com>
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public License
- along with this library. If not, see <http://www.gnu.org/licenses/>.
-
-libnfs - NFS client library
-
- Copyright (C) 2010-2011 Ronnie Sahlberg <ronniesahlberg@gmail.com>
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public License
- along with this library. If not, see <http://www.gnu.org/licenses/>.
-
-libsquish - Open source DXT compression library
-
- Copyright (C) 2006 Simon Brown <si@sjbrown.co.uk>
-
- Permission is hereby granted, free of charge, to any person obtaining
- a copy of this software and associated documentation files (the
- "Software"), to deal in the Software without restriction, including
- without limitation the rights to use, copy, modify, merge, publish,
- distribute, sublicense, and/or sell copies of the Software, and to
- permit persons to whom the Software is furnished to do so, subject to
- the following conditions:
-
- The above copyright notice and this permission notice shall be included
- in all copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
- IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
- CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
- TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
- SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-LZO Library - LZO real-time data compression library
-
- Copyright (C) 1996-1997 Markus Franz Xaver Johannes Oberhumer
-
- The LZO library is free software; you can redistribute it and/or
- modify it under the terms of the GNU General Public License as
- published by the Free Software Foundation; either version 2 of
- the License, or (at your option) any later version.
-
- The LZO library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-Licenses:
-
-License: GPL
-
-A copy of the GPL can be found on Debian systems at
-/usr/share/common-licenses/GPL.
-
-License: LGPL
-
-A copy of the LGPL can be found on Debian systems at
-/usr/share/common-licenses/LGPL.
-
-License: FTL
- The FreeType Project LICENSE
- ----------------------------
-
- 2006-Jan-27
-
- Copyright 1996-2002, 2006 by
- David Turner, Robert Wilhelm, and Werner Lemberg
-
-
-
-Introduction
-============
-
- The FreeType Project is distributed in several archive packages;
- some of them may contain, in addition to the FreeType font engine,
- various tools and contributions which rely on, or relate to, the
- FreeType Project.
-
- This license applies to all files found in such packages, and
- which do not fall under their own explicit license. The license
- affects thus the FreeType font engine, the test programs,
- documentation and makefiles, at the very least.
-
- This license was inspired by the BSD, Artistic, and IJG
- (Independent JPEG Group) licenses, which all encourage inclusion
- and use of free software in commercial and freeware products
- alike. As a consequence, its main points are that:
-
- o We don't promise that this software works. However, we will be
- interested in any kind of bug reports. (`as is' distribution)
-
- o You can use this software for whatever you want, in parts or
- full form, without having to pay us. (`royalty-free' usage)
-
- o You may not pretend that you wrote this software. If you use
- it, or only parts of it, in a program, you must acknowledge
- somewhere in your documentation that you have used the
- FreeType code. (`credits')
-
- We specifically permit and encourage the inclusion of this
- software, with or without modifications, in commercial products.
- We disclaim all warranties covering The FreeType Project and
- assume no liability related to The FreeType Project.
-
-
- Finally, many people asked us for a preferred form for a
- credit/disclaimer to use in compliance with this license. We thus
- encourage you to use the following text:
-
- """
- Portions of this software are copyright © <year> The FreeType
- Project (www.freetype.org). All rights reserved.
- """
-
- Please replace <year> with the value from the FreeType version you
- actually use.
-
-
-Legal Terms
-===========
-
-0. Definitions
---------------
-
- Throughout this license, the terms `package', `FreeType Project',
- and `FreeType archive' refer to the set of files originally
- distributed by the authors (David Turner, Robert Wilhelm, and
- Werner Lemberg) as the `FreeType Project', be they named as alpha,
- beta or final release.
-
- `You' refers to the licensee, or person using the project, where
- `using' is a generic term including compiling the project's source
- code as well as linking it to form a `program' or `executable'.
- This program is referred to as `a program using the FreeType
- engine'.
-
- This license applies to all files distributed in the original
- FreeType Project, including all source code, binaries and
- documentation, unless otherwise stated in the file in its
- original, unmodified form as distributed in the original archive.
- If you are unsure whether or not a particular file is covered by
- this license, you must contact us to verify this.
-
- The FreeType Project is copyright (C) 1996-2000 by David Turner,
- Robert Wilhelm, and Werner Lemberg. All rights reserved except as
- specified below.
-
-1. No Warranty
---------------
-
- THE FREETYPE PROJECT IS PROVIDED `AS IS' WITHOUT WARRANTY OF ANY
- KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
- WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- PURPOSE. IN NO EVENT WILL ANY OF THE AUTHORS OR COPYRIGHT HOLDERS
- BE LIABLE FOR ANY DAMAGES CAUSED BY THE USE OR THE INABILITY TO
- USE, OF THE FREETYPE PROJECT.
-
-2. Redistribution
------------------
-
- This license grants a worldwide, royalty-free, perpetual and
- irrevocable right and license to use, execute, perform, compile,
- display, copy, create derivative works of, distribute and
- sublicense the FreeType Project (in both source and object code
- forms) and derivative works thereof for any purpose; and to
- authorize others to exercise some or all of the rights granted
- herein, subject to the following conditions:
-
- o Redistribution of source code must retain this license file
- (`FTL.TXT') unaltered; any additions, deletions or changes to
- the original files must be clearly indicated in accompanying
- documentation. The copyright notices of the unaltered,
- original files must be preserved in all copies of source
- files.
-
- o Redistribution in binary form must provide a disclaimer that
- states that the software is based in part of the work of the
- FreeType Team, in the distribution documentation. We also
- encourage you to put an URL to the FreeType web page in your
- documentation, though this isn't mandatory.
-
- These conditions apply to any software derived from or based on
- the FreeType Project, not just the unmodified files. If you use
- our work, you must acknowledge us. However, no fee need be paid
- to us.
-
-3. Advertising
---------------
-
- Neither the FreeType authors and contributors nor you shall use
- the name of the other for commercial, advertising, or promotional
- purposes without specific prior written permission.
-
- We suggest, but do not require, that you use one or more of the
- following phrases to refer to this software in your documentation
- or advertising materials: `FreeType Project', `FreeType Engine',
- `FreeType library', or `FreeType Distribution'.
-
- As you have not signed this license, you are not required to
- accept it. However, as the FreeType Project is copyrighted
- material, only this license, or another one contracted with the
- authors, grants you the right to use, distribute, and modify it.
- Therefore, by using, distributing, or modifying the FreeType
- Project, you indicate that you understand and accept all the terms
- of this license.
-
-4. Contacts
------------
-
- There are two mailing lists related to FreeType:
-
- o freetype@nongnu.org
-
- Discusses general use and applications of FreeType, as well as
- future and wanted additions to the library and distribution.
- If you are looking for support, start in this list if you
- haven't found anything to help you in the documentation.
-
- o freetype-devel@nongnu.org
-
- Discusses bugs, as well as engine internals, design issues,
- specific licenses, porting, etc.
-
- Our home page can be found at
-
- http://www.freetype.org
-
-
---- end of FTL ---
-
-License: PSF License for Python 2.4
-
-A. HISTORY OF THE SOFTWARE
-==========================
-
-Python was created in the early 1990s by Guido van Rossum at Stichting
-Mathematisch Centrum (CWI, see http://www.cwi.nl) in the Netherlands
-as a successor of a language called ABC. Guido remains Python's
-principal author, although it includes many contributions from others.
-
-In 1995, Guido continued his work on Python at the Corporation for
-National Research Initiatives (CNRI, see http://www.cnri.reston.va.us)
-in Reston, Virginia where he released several versions of the
-software.
-
-In May 2000, Guido and the Python core development team moved to
-BeOpen.com to form the BeOpen PythonLabs team. In October of the same
-year, the PythonLabs team moved to Digital Creations (now Zope
-Corporation, see http://www.zope.com). In 2001, the Python Software
-Foundation (PSF, see http://www.python.org/psf/) was formed, a
-non-profit organization created specifically to own Python-related
-Intellectual Property. Zope Corporation is a sponsoring member of
-the PSF.
-
-All Python releases are Open Source (see http://www.opensource.org for
-the Open Source Definition). Historically, most, but not all, Python
-releases have also been GPL-compatible; the table below summarizes
-the various releases.
-
- Release Derived Year Owner GPL-
- from compatible? (1)
-
- 0.9.0 thru 1.2 1991-1995 CWI yes
- 1.3 thru 1.5.2 1.2 1995-1999 CNRI yes
- 1.6 1.5.2 2000 CNRI no
- 2.0 1.6 2000 BeOpen.com no
- 1.6.1 1.6 2001 CNRI yes (2)
- 2.1 2.0+1.6.1 2001 PSF no
- 2.0.1 2.0+1.6.1 2001 PSF yes
- 2.1.1 2.1+2.0.1 2001 PSF yes
- 2.2 2.1.1 2001 PSF yes
- 2.1.2 2.1.1 2002 PSF yes
- 2.1.3 2.1.2 2002 PSF yes
- 2.2.1 2.2 2002 PSF yes
- 2.2.2 2.2.1 2002 PSF yes
- 2.2.3 2.2.2 2003 PSF yes
- 2.3 2.2.2 2002-2003 PSF yes
- 2.3.1 2.3 2002-2003 PSF yes
- 2.3.2 2.3.1 2002-2003 PSF yes
- 2.3.3 2.3.2 2002-2003 PSF yes
- 2.3.4 2.3.3 2004 PSF yes
- 2.3.5 2.3.4 2005 PSF yes
- 2.4 2.3 2004 PSF yes
- 2.4.1 2.4 2005 PSF yes
- 2.4.2 2.4.1 2005 PSF yes
- 2.4.3 2.4.2 2006 PSF yes
- 2.4.4 2.4.3 2006 PSF yes
-
-Footnotes:
-
-(1) GPL-compatible doesn't mean that we're distributing Python under
- the GPL. All Python licenses, unlike the GPL, let you distribute
- a modified version without making your changes open source. The
- GPL-compatible licenses make it possible to combine Python with
- other software that is released under the GPL; the others don't.
-
-(2) According to Richard Stallman, 1.6.1 is not GPL-compatible,
- because its license has a choice of law clause. According to
- CNRI, however, Stallman's lawyer has told CNRI's lawyer that 1.6.1
- is "not incompatible" with the GPL.
-
-Thanks to the many outside volunteers who have worked under Guido's
-direction to make these releases possible.
-
-
-B. TERMS AND CONDITIONS FOR ACCESSING OR OTHERWISE USING PYTHON
-===============================================================
-
-PSF LICENSE AGREEMENT FOR PYTHON 2.4
-------------------------------------
-
-1. This LICENSE AGREEMENT is between the Python Software Foundation
-("PSF"), and the Individual or Organization ("Licensee") accessing and
-otherwise using Python 2.4 software in source or binary form and its
-associated documentation.
-
-2. Subject to the terms and conditions of this License Agreement, PSF
-hereby grants Licensee a nonexclusive, royalty-free, world-wide
-license to reproduce, analyze, test, perform and/or display publicly,
-prepare derivative works, distribute, and otherwise use Python 2.4
-alone or in any derivative version, provided, however, that PSF's
-License Agreement and PSF's notice of copyright, i.e., "Copyright (c)
-2001, 2002, 2003, 2004 Python Software Foundation; All Rights Reserved"
-are retained in Python 2.4 alone or in any derivative version prepared
-by Licensee.
-
-3. In the event Licensee prepares a derivative work that is based on
-or incorporates Python 2.4 or any part thereof, and wants to make
-the derivative work available to others as provided herein, then
-Licensee hereby agrees to include in any such work a brief summary of
-the changes made to Python 2.4.
-
-4. PSF is making Python 2.4 available to Licensee on an "AS IS"
-basis. PSF MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR
-IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, PSF MAKES NO AND
-DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS
-FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF PYTHON 2.4 WILL NOT
-INFRINGE ANY THIRD PARTY RIGHTS.
-
-5. PSF SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF PYTHON
-2.4 FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS
-A RESULT OF MODIFYING, DISTRIBUTING, OR OTHERWISE USING PYTHON 2.4,
-OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF.
-
-6. This License Agreement will automatically terminate upon a material
-breach of its terms and conditions.
-
-7. Nothing in this License Agreement shall be deemed to create any
-relationship of agency, partnership, or joint venture between PSF and
-Licensee. This License Agreement does not grant permission to use PSF
-trademarks or trade name in a trademark sense to endorse or promote
-products or services of Licensee, or any third party.
-
-8. By copying, installing or otherwise using Python 2.4, Licensee
-agrees to be bound by the terms and conditions of this License
-Agreement.
-
-
-BEOPEN.COM LICENSE AGREEMENT FOR PYTHON 2.0
--------------------------------------------
-
-BEOPEN PYTHON OPEN SOURCE LICENSE AGREEMENT VERSION 1
-
-1. This LICENSE AGREEMENT is between BeOpen.com ("BeOpen"), having an
-office at 160 Saratoga Avenue, Santa Clara, CA 95051, and the
-Individual or Organization ("Licensee") accessing and otherwise using
-this software in source or binary form and its associated
-documentation ("the Software").
-
-2. Subject to the terms and conditions of this BeOpen Python License
-Agreement, BeOpen hereby grants Licensee a non-exclusive,
-royalty-free, world-wide license to reproduce, analyze, test, perform
-and/or display publicly, prepare derivative works, distribute, and
-otherwise use the Software alone or in any derivative version,
-provided, however, that the BeOpen Python License is retained in the
-Software, alone or in any derivative version prepared by Licensee.
-
-3. BeOpen is making the Software available to Licensee on an "AS IS"
-basis. BEOPEN MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR
-IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, BEOPEN MAKES NO AND
-DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS
-FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE WILL NOT
-INFRINGE ANY THIRD PARTY RIGHTS.
-
-4. BEOPEN SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF THE
-SOFTWARE FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS
-AS A RESULT OF USING, MODIFYING OR DISTRIBUTING THE SOFTWARE, OR ANY
-DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF.
-
-5. This License Agreement will automatically terminate upon a material
-breach of its terms and conditions.
-
-6. This License Agreement shall be governed by and interpreted in all
-respects by the law of the State of California, excluding conflict of
-law provisions. Nothing in this License Agreement shall be deemed to
-create any relationship of agency, partnership, or joint venture
-between BeOpen and Licensee. This License Agreement does not grant
-permission to use BeOpen trademarks or trade names in a trademark
-sense to endorse or promote products or services of Licensee, or any
-third party. As an exception, the "BeOpen Python" logos available at
-http://www.pythonlabs.com/logos.html may be used according to the
-permissions granted on that web page.
-
-7. By copying, installing or otherwise using the software, Licensee
-agrees to be bound by the terms and conditions of this License
-Agreement.
-
-
-CNRI LICENSE AGREEMENT FOR PYTHON 1.6.1
----------------------------------------
-
-1. This LICENSE AGREEMENT is between the Corporation for National
-Research Initiatives, having an office at 1895 Preston White Drive,
-Reston, VA 20191 ("CNRI"), and the Individual or Organization
-("Licensee") accessing and otherwise using Python 1.6.1 software in
-source or binary form and its associated documentation.
-
-2. Subject to the terms and conditions of this License Agreement, CNRI
-hereby grants Licensee a nonexclusive, royalty-free, world-wide
-license to reproduce, analyze, test, perform and/or display publicly,
-prepare derivative works, distribute, and otherwise use Python 1.6.1
-alone or in any derivative version, provided, however, that CNRI's
-License Agreement and CNRI's notice of copyright, i.e., "Copyright (c)
-1995-2001 Corporation for National Research Initiatives; All Rights
-Reserved" are retained in Python 1.6.1 alone or in any derivative
-version prepared by Licensee. Alternately, in lieu of CNRI's License
-Agreement, Licensee may substitute the following text (omitting the
-quotes): "Python 1.6.1 is made available subject to the terms and
-conditions in CNRI's License Agreement. This Agreement together with
-Python 1.6.1 may be located on the Internet using the following
-unique, persistent identifier (known as a handle): 1895.22/1013. This
-Agreement may also be obtained from a proxy server on the Internet
-using the following URL: http://hdl.handle.net/1895.22/1013".
-
-3. In the event Licensee prepares a derivative work that is based on
-or incorporates Python 1.6.1 or any part thereof, and wants to make
-the derivative work available to others as provided herein, then
-Licensee hereby agrees to include in any such work a brief summary of
-the changes made to Python 1.6.1.
-
-4. CNRI is making Python 1.6.1 available to Licensee on an "AS IS"
-basis. CNRI MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR
-IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, CNRI MAKES NO AND
-DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS
-FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF PYTHON 1.6.1 WILL NOT
-INFRINGE ANY THIRD PARTY RIGHTS.
-
-5. CNRI SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF PYTHON
-1.6.1 FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS
-A RESULT OF MODIFYING, DISTRIBUTING, OR OTHERWISE USING PYTHON 1.6.1,
-OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF.
-
-6. This License Agreement will automatically terminate upon a material
-breach of its terms and conditions.
-
-7. This License Agreement shall be governed by the federal
-intellectual property law of the United States, including without
-limitation the federal copyright law, and, to the extent such
-U.S. federal law does not apply, by the law of the Commonwealth of
-Virginia, excluding Virginia's conflict of law provisions.
-Notwithstanding the foregoing, with regard to derivative works based
-on Python 1.6.1 that incorporate non-separable material that was
-previously distributed under the GNU General Public License (GPL), the
-law of the Commonwealth of Virginia shall govern this License
-Agreement only as to issues arising under or with respect to
-Paragraphs 4, 5, and 7 of this License Agreement. Nothing in this
-License Agreement shall be deemed to create any relationship of
-agency, partnership, or joint venture between CNRI and Licensee. This
-License Agreement does not grant permission to use CNRI trademarks or
-trade name in a trademark sense to endorse or promote products or
-services of Licensee, or any third party.
-
-8. By clicking on the "ACCEPT" button where indicated, or by copying,
-installing or otherwise using Python 1.6.1, Licensee agrees to be
-bound by the terms and conditions of this License Agreement.
-
- ACCEPT
-
-
-CWI LICENSE AGREEMENT FOR PYTHON 0.9.0 THROUGH 1.2
---------------------------------------------------
-
-Copyright (c) 1991 - 1995, Stichting Mathematisch Centrum Amsterdam,
-The Netherlands. All rights reserved.
-
-Permission to use, copy, modify, and distribute this software and its
-documentation for any purpose and without fee is hereby granted,
-provided that the above copyright notice appear in all copies and that
-both that copyright notice and this permission notice appear in
-supporting documentation, and that the name of Stichting Mathematisch
-Centrum or CWI not be used in advertising or publicity pertaining to
-distribution of the software without specific, written prior
-permission.
-
-STICHTING MATHEMATISCH CENTRUM DISCLAIMS ALL WARRANTIES WITH REGARD TO
-THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
-FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH CENTRUM BE LIABLE
-FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
-WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
-ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
-OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
-
--- End of PSF License for Python 2.4 --
-
-License: IJG License
-
-LEGAL ISSUES
-============
-
-In plain English:
-
-1. We don't promise that this software works. (But if you find any bugs,
- please let us know!)
-2. You can use this software for whatever you want. You don't have to pay us.
-3. You may not pretend that you wrote this software. If you use it in a
- program, you must acknowledge somewhere in your documentation that
- you've used the IJG code.
-
-In legalese:
-
-The authors make NO WARRANTY or representation, either express or implied,
-with respect to this software, its quality, accuracy, merchantability, or
-fitness for a particular purpose. This software is provided "AS IS", and you,
-its user, assume the entire risk as to its quality and accuracy.
-
-This software is copyright (C) 1991-1998, Thomas G. Lane.
-All Rights Reserved except as specified below.
-
-Permission is hereby granted to use, copy, modify, and distribute this
-software (or portions thereof) for any purpose, without fee, subject to these
-conditions:
-(1) If any part of the source code for this software is distributed, then this
-README file must be included, with this copyright and no-warranty notice
-unaltered; and any additions, deletions, or changes to the original files
-must be clearly indicated in accompanying documentation.
-(2) If only executable code is distributed, then the accompanying
-documentation must state that "this software is based in part on the work of
-the Independent JPEG Group".
-(3) Permission for use of this software is granted only if the user accepts
-full responsibility for any undesirable consequences; the authors accept
-NO LIABILITY for damages of any kind.
-
-These conditions apply to any software derived from or based on the IJG code,
-not just to the unmodified library. If you use our work, you ought to
-acknowledge us.
-
-Permission is NOT granted for the use of any IJG author's name or company name
-in advertising or publicity relating to this software or products derived from
-it. This software may be referred to only as "the Independent JPEG Group's
-software".
-
-We specifically permit and encourage the use of this software as the basis of
-commercial products, provided that all warranty or liability claims are
-assumed by the product vendor.
-
-
-ansi2knr.c is included in this distribution by permission of L. Peter Deutsch,
-sole proprietor of its copyright holder, Aladdin Enterprises of Menlo Park, CA.
-ansi2knr.c is NOT covered by the above copyright and conditions, but instead
-by the usual distribution terms of the Free Software Foundation; principally,
-that you must include source code if you redistribute it. (See the file
-ansi2knr.c for full details.) However, since ansi2knr.c is not needed as part
-of any program generated from the IJG code, this does not limit you more than
-the foregoing paragraphs do.
-
-The Unix configuration script "configure" was produced with GNU Autoconf.
-It is copyright by the Free Software Foundation but is freely distributable.
-The same holds for its supporting scripts (config.guess, config.sub,
-ltconfig, ltmain.sh). Another support script, install-sh, is copyright
-by M.I.T. but is also freely distributable.
-
-It appears that the arithmetic coding option of the JPEG spec is covered by
-patents owned by IBM, AT&T, and Mitsubishi. Hence arithmetic coding cannot
-legally be used without obtaining one or more licenses. For this reason,
-support for arithmetic coding has been removed from the free JPEG software.
-(Since arithmetic coding provides only a marginal gain over the unpatented
-Huffman mode, it is unlikely that very many implementations will support it.)
-So far as we are aware, there are no patent restrictions on the remaining
-code.
-
-The IJG distribution formerly included code to read and write GIF files.
-To avoid entanglement with the Unisys LZW patent, GIF reading support has
-been removed altogether, and the GIF writer has been simplified to produce
-"uncompressed GIFs". This technique does not use the LZW algorithm; the
-resulting GIF files are larger than usual, but are readable by all standard
-GIF decoders.
-
-We are required to state that
- "The Graphics Interchange Format(c) is the Copyright property of
- CompuServe Incorporated. GIF(sm) is a Service Mark property of
- CompuServe Incorporated."
-
--- End of IJG License --
-
-License: OpenSSH
-
-This file is part of the OpenSSH software.
-
-The licences which components of this software fall under are as
-follows. First, we will summarize and say that all components
-are under a BSD licence, or a licence more free than that.
-
-OpenSSH contains no GPL code.
-
-1)
- * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
- * All rights reserved
- *
- * As far as I am concerned, the code I have written for this software
- * can be used freely for any purpose. Any derived versions of this
- * software must be clearly marked as such, and if the derived work is
- * incompatible with the protocol description in the RFC file, it must be
- * called by a name other than "ssh" or "Secure Shell".
-
- [Tatu continues]
- * However, I am not implying to give any licenses to any patents or
- * copyrights held by third parties, and the software includes parts that
- * are not under my direct control. As far as I know, all included
- * source code is used in accordance with the relevant license agreements
- * and can be used freely for any purpose (the GNU license being the most
- * restrictive); see below for details.
-
- [However, none of that term is relevant at this point in time. All of
- these restrictively licenced software components which he talks about
- have been removed from OpenSSH, i.e.,
-
- - RSA is no longer included, found in the OpenSSL library
- - IDEA is no longer included, its use is deprecated
- - DES is now external, in the OpenSSL library
- - GMP is no longer used, and instead we call BN code from OpenSSL
- - Zlib is now external, in a library
- - The make-ssh-known-hosts script is no longer included
- - TSS has been removed
- - MD5 is now external, in the OpenSSL library
- - RC4 support has been replaced with ARC4 support from OpenSSL
- - Blowfish is now external, in the OpenSSL library
-
- [The licence continues]
-
- Note that any information and cryptographic algorithms used in this
- software are publicly available on the Internet and at any major
- bookstore, scientific library, and patent office worldwide. More
- information can be found e.g. at "http://www.cs.hut.fi/crypto".
-
- The legal status of this program is some combination of all these
- permissions and restrictions. Use only at your own responsibility.
- You will be responsible for any legal consequences yourself; I am not
- making any claims whether possessing or using this is legal or not in
- your country, and I am not taking any responsibility on your behalf.
-
-
- NO WARRANTY
-
- BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
- FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
- OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
- PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
- OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
- TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
- PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
- REPAIR OR CORRECTION.
-
- IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
- WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
- REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
- INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
- OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
- TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
- YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
- PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
- POSSIBILITY OF SUCH DAMAGES.
-
-2)
- The 32-bit CRC compensation attack detector in deattack.c was
- contributed by CORE SDI S.A. under a BSD-style license.
-
- * Cryptographic attack detector for ssh - source code
- *
- * Copyright (c) 1998 CORE SDI S.A., Buenos Aires, Argentina.
- *
- * All rights reserved. Redistribution and use in source and binary
- * forms, with or without modification, are permitted provided that
- * this copyright notice is retained.
- *
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES ARE DISCLAIMED. IN NO EVENT SHALL CORE SDI S.A. BE
- * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY OR
- * CONSEQUENTIAL DAMAGES RESULTING FROM THE USE OR MISUSE OF THIS
- * SOFTWARE.
- *
- * Ariel Futoransky <futo@core-sdi.com>
- * <http://www.core-sdi.com>
-
-3)
- ssh-keyscan was contributed by David Mazieres under a BSD-style
- license.
-
- * Copyright 1995, 1996 by David Mazieres <dm@lcs.mit.edu>.
- *
- * Modification and redistribution in source and binary forms is
- * permitted provided that due credit is given to the author and the
- * OpenBSD project by leaving this copyright notice intact.
-
-4)
- The Rijndael implementation by Vincent Rijmen, Antoon Bosselaers
- and Paulo Barreto is in the public domain and distributed
- with the following license:
-
- * @version 3.0 (December 2000)
- *
- * Optimised ANSI C code for the Rijndael cipher (now AES)
- *
- * @author Vincent Rijmen <vincent.rijmen@esat.kuleuven.ac.be>
- * @author Antoon Bosselaers <antoon.bosselaers@esat.kuleuven.ac.be>
- * @author Paulo Barreto <paulo.barreto@terra.com.br>
- *
- * This code is hereby placed in the public domain.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHORS ''AS IS'' AND ANY EXPRESS
- * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE
- * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
- * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
- * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
- * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-5)
- One component of the ssh source code is under a 3-clause BSD license,
- held by the University of California, since we pulled these parts from
- original Berkeley code.
-
- * Copyright (c) 1983, 1990, 1992, 1993, 1995
- * The Regents of the University of California. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE
- * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
- * THE POSSIBILITY OF SUCH DAMAGE.
-
-6)
- Remaining components of the software are provided under a standard
- 2-term BSD licence with the following names as copyright holders:
-
- Markus Friedl
- Theo de Raadt
- Niels Provos
- Dug Song
- Aaron Campbell
- Damien Miller
- Kevin Steves
- Daniel Kouril
- Wesley Griffin
- Per Allansson
- Nils Nordman
- Simon Wilkinson
-
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
- * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
- * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
- * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
--- End of OpenSSH License --
diff --git a/project/cmake/cpack/deb/lintian/overrides/kodi b/project/cmake/cpack/deb/lintian/overrides/kodi
deleted file mode 100644
index d9536c4c23..0000000000
--- a/project/cmake/cpack/deb/lintian/overrides/kodi
+++ /dev/null
@@ -1 +0,0 @@
-kodi: description-starts-with-package-name
diff --git a/project/cmake/cpack/deb/menu/kodi b/project/cmake/cpack/deb/menu/kodi
deleted file mode 100644
index 0c221a44f4..0000000000
--- a/project/cmake/cpack/deb/menu/kodi
+++ /dev/null
@@ -1,2 +0,0 @@
-?package(kodi):needs="X11" section="Applications/Video" \
- title="kodi" command="/usr/bin/kodi"
diff --git a/project/cmake/cpack/deb/package-description.txt b/project/cmake/cpack/deb/package-description.txt
deleted file mode 100644
index 961e1c8aa4..0000000000
--- a/project/cmake/cpack/deb/package-description.txt
+++ /dev/null
@@ -1,16 +0,0 @@
-Kodi, formerly known as XBMC Media Center, is an award winning free and open
-source software media-player and entertainment hub for all your digital media.
-Kodi is available for Linux, Mac OS X (Leopard, Tiger and Apple TV) and
-Microsoft Windows, as well as the original Xbox game console. Created in 2003
-by a group of like minded programmers, Kodi is a non-profit project run and
-developed by volunteers located around the world. More than 50 software
-developers have contributed to Kodi, and 100-plus translators have worked to
-expand its reach, making it available in more than 30 languages.
-.
-While Kodi functions very well as a standard media player application for your
-computer, it has been designed to be the perfect companion for your HTPC.
-Supporting an almost endless range of remote controls, and combined with its
-beautiful interface and powerful skinning engine, Kodi feels very natural to
-use from the couch and is the ideal solution for your home theater. Once
-installed, your computer will become a fully functional multimedia jukebox.
-. \ No newline at end of file
diff --git a/project/cmake/cpack/deb/packages/kodi-addon-dev.txt.in b/project/cmake/cpack/deb/packages/kodi-addon-dev.txt.in
deleted file mode 100644
index aebae7e2e0..0000000000
--- a/project/cmake/cpack/deb/packages/kodi-addon-dev.txt.in
+++ /dev/null
@@ -1,25 +0,0 @@
-# kodi-addon-dev debian package metadata
-#
-# Setting PACKAGE_SHLIBDEPS to 'ON' will cause CPack to ignore PACKAGE_DEPENDS
-# content and use dpkg-shlibdeps to automatically generate the package dependency
-# list. Only useful for packages that contain binaries.
-#
-# PACKAGE_ARCHITECTURE should be set to 'all' only if package contains
-# architecture agnostic data. CPack will set proper architecture (amd64/i386/etc)
-# based on build options.
-#
-# Remaining settings are (hopefully) self-explanatory.
-
-PACKAGE_NAME @APP_NAME_LC@-addon-dev
-PACKAGE_ARCHITECTURE all
-PACKAGE_SECTION libdevel
-PACKAGE_PRIORITY optional
-PACKAGE_SHLIBDEPS
-PACKAGE_DEPENDS
-PACKAGE_RECOMMENDS @APP_NAME_LC@-audio-dev, @APP_NAME_LC@-inputstream-dev, @APP_NAME_LC@-pvr-dev, @APP_NAME_LC@-screensaver-dev, @APP_NAME_LC@-visualization-dev
-PACKAGE_SUGGESTS
-PACKAGE_BREAKS
-PACKAGE_REPLACES
-PACKAGE_PROVIDES xbmc-addon-dev
-PACKAGE_DESCRIPTION_HEADER @APP_NAME@ Media Center (general add-on dev package)
-PACKAGE_DESCRIPTION_FOOTER This is the development package for @APP_NAME@'s add-ons.
diff --git a/project/cmake/cpack/deb/packages/kodi-audio-dev.txt.in b/project/cmake/cpack/deb/packages/kodi-audio-dev.txt.in
deleted file mode 100644
index f03a64d92d..0000000000
--- a/project/cmake/cpack/deb/packages/kodi-audio-dev.txt.in
+++ /dev/null
@@ -1,25 +0,0 @@
-# kodi-audio-dev debian package metadata
-#
-# Setting PACKAGE_SHLIBDEPS to 'ON' will cause CPack to ignore PACKAGE_DEPENDS
-# content and use dpkg-shlibdeps to automatically generate the package dependency
-# list. Only useful for packages that contain binaries.
-#
-# PACKAGE_ARCHITECTURE should be set to 'all' only if package contains
-# architecture agnostic data. CPack will set proper architecture (amd64/i386/etc)
-# based on build options.
-#
-# Remaining settings are (hopefully) self-explanatory.
-
-PACKAGE_NAME @APP_NAME_LC@-audio-dev
-PACKAGE_ARCHITECTURE all
-PACKAGE_SECTION libdevel
-PACKAGE_PRIORITY optional
-PACKAGE_SHLIBDEPS
-PACKAGE_DEPENDS @APP_NAME_LC@-addon-dev
-PACKAGE_RECOMMENDS
-PACKAGE_SUGGESTS
-PACKAGE_BREAKS
-PACKAGE_REPLACES
-PACKAGE_PROVIDES xbmc-audio-dev
-PACKAGE_DESCRIPTION_HEADER @APP_NAME@ Media Center (audio add-ons dev package)
-PACKAGE_DESCRIPTION_FOOTER This is the development package for @APP_NAME@'s audio add-ons.
diff --git a/project/cmake/cpack/deb/packages/kodi-bin.txt.in b/project/cmake/cpack/deb/packages/kodi-bin.txt.in
deleted file mode 100644
index 8ee33d3b9a..0000000000
--- a/project/cmake/cpack/deb/packages/kodi-bin.txt.in
+++ /dev/null
@@ -1,25 +0,0 @@
-# kodi-bin debian package metadata
-#
-# Setting PACKAGE_SHLIBDEPS to 'ON' will cause CPack to ignore PACKAGE_DEPENDS
-# content and use dpkg-shlibdeps to automatically generate the package dependency
-# list. Only useful for packages that contain binaries.
-#
-# PACKAGE_ARCHITECTURE should be set to 'all' only if package contains
-# architecture agnostic data. CPack will set proper architecture (amd64/i386/etc)
-# based on build options.
-#
-# Remaining settings are (hopefully) self-explanatory.
-
-PACKAGE_NAME @APP_NAME_LC@-bin
-PACKAGE_ARCHITECTURE
-PACKAGE_SECTION video
-PACKAGE_PRIORITY optional
-PACKAGE_SHLIBDEPS
-PACKAGE_DEPENDS libasound2 (>= 1.0.27), libavahi-client3 (>= 0.6.16), libavahi-common3 (>= 0.6.16), libbluetooth3 (>= 4.91), libbz2-1.0, libc6 (>= 2.15), libcdio13 (>= 0.83), libcrossguid1, libdbus-1-3 (>= 1.9.14), libdrm2 (>= 2.4.16), libegl1-mesa (>= 7.8.1) | libegl1-x11, libexpat1 (>= 2.0.1), libfreetype6 (>= 2.2.1), libfribidi0 (>= 0.19.2), libgcc1 (>= 1:3.0), libgl1-mesa-glx | libgl1, libgnutls30 (>= 3.4.2), liblzma5 (>= 5.1.1alpha+20120614), liblzo2-2, libmicrohttpd10 (>= 0.9.20), libmysqlclient20 (>= 5.7.11), libpcre3, libpcrecpp0v5 (>= 7.7), libpulse0 (>= 0.99.4), libpython2.7 (>= 2.7), libsmbclient (>= 2:4.0.3+dfsg1), libsqlite3-0 (>= 3.6.11), libssh-4 (>= 0.6.1), libstdc++6 (>= 5.2), libtag1v5 (>= 1.9.1-2.4ubuntu1), libtinyxml2.6.2v5, libudev1 (>= 183), libva-x11-1 (>= 1.0.3), libva1 (>= 1.4.0), libx11-6, libxext6, libxml2 (>= 2.7.4), libxrandr2 (>= 2:1.2.99.3), libxslt1.1 (>= 1.1.25), libyajl2 (>= 2.0.4), zlib1g (>= 1:1.2.0.2)
-PACKAGE_RECOMMENDS
-PACKAGE_SUGGESTS
-PACKAGE_BREAKS xbmc-bin (<< 2:14.0~git20141019), xbmc-common
-PACKAGE_REPLACES xbmc-bin (<< 2:14.0~git20141019), xbmc-common
-PACKAGE_PROVIDES @APP_NAME_LC@-bin, @APP_NAME_LC@-common, xbmc-bin, xbmc-common
-PACKAGE_DESCRIPTION_HEADER @APP_NAME@ Media Center (binary data package)
-PACKAGE_DESCRIPTION_FOOTER This package contains @APP_NAME@'s binary data.
diff --git a/project/cmake/cpack/deb/packages/kodi-eventclients-common.txt.in b/project/cmake/cpack/deb/packages/kodi-eventclients-common.txt.in
deleted file mode 100644
index 6559842970..0000000000
--- a/project/cmake/cpack/deb/packages/kodi-eventclients-common.txt.in
+++ /dev/null
@@ -1,25 +0,0 @@
-# kodi-eventclients-common debian package metadata
-#
-# Setting PACKAGE_SHLIBDEPS to 'ON' will cause CPack to ignore PACKAGE_DEPENDS
-# content and use dpkg-shlibdeps to automatically generate the package dependency
-# list. Only useful for packages that contain binaries.
-#
-# PACKAGE_ARCHITECTURE should be set to 'all' only if package contains
-# architecture agnostic data. CPack will set proper architecture (amd64/i386/etc)
-# based on build options.
-#
-# Remaining settings are (hopefully) self-explanatory.
-
-PACKAGE_NAME @APP_NAME_LC@-eventclients-common
-PACKAGE_ARCHITECTURE all
-PACKAGE_SECTION video
-PACKAGE_PRIORITY optional
-PACKAGE_SHLIBDEPS
-PACKAGE_DEPENDS
-PACKAGE_RECOMMENDS
-PACKAGE_SUGGESTS
-PACKAGE_BREAKS
-PACKAGE_REPLACES
-PACKAGE_PROVIDES xbmc-eventclients-common
-PACKAGE_DESCRIPTION_HEADER @APP_NAME@ Media Center (event client common package)
-PACKAGE_DESCRIPTION_FOOTER This is the common package for @APP_NAME@'s event client.
diff --git a/project/cmake/cpack/deb/packages/kodi-eventclients-dev.txt.in b/project/cmake/cpack/deb/packages/kodi-eventclients-dev.txt.in
deleted file mode 100644
index 4b166b5d1a..0000000000
--- a/project/cmake/cpack/deb/packages/kodi-eventclients-dev.txt.in
+++ /dev/null
@@ -1,25 +0,0 @@
-# kodi-eventclients-dev debian package metadata
-#
-# Setting PACKAGE_SHLIBDEPS to 'ON' will cause CPack to ignore PACKAGE_DEPENDS
-# content and use dpkg-shlibdeps to automatically generate the package dependency
-# list. Only useful for packages that contain binaries.
-#
-# PACKAGE_ARCHITECTURE should be set to 'all' only if package contains
-# architecture agnostic data. CPack will set proper architecture (amd64/i386/etc)
-# based on build options.
-#
-# Remaining settings are (hopefully) self-explanatory.
-
-PACKAGE_NAME @APP_NAME_LC@-eventclients-dev
-PACKAGE_ARCHITECTURE all
-PACKAGE_SECTION libdevel
-PACKAGE_PRIORITY optional
-PACKAGE_SHLIBDEPS
-PACKAGE_DEPENDS @APP_NAME_LC@-eventclients-common (= @CPACK_DEBIAN_PACKAGE_VERSION@)
-PACKAGE_RECOMMENDS
-PACKAGE_SUGGESTS
-PACKAGE_BREAKS
-PACKAGE_REPLACES
-PACKAGE_PROVIDES xbmc-eventclients-dev
-PACKAGE_DESCRIPTION_HEADER @APP_NAME@ Media Center (event client dev package)
-PACKAGE_DESCRIPTION_FOOTER This is the development package for @APP_NAME@'s event client.
diff --git a/project/cmake/cpack/deb/packages/kodi-eventclients-ps3.txt.in b/project/cmake/cpack/deb/packages/kodi-eventclients-ps3.txt.in
deleted file mode 100644
index bd432a29ba..0000000000
--- a/project/cmake/cpack/deb/packages/kodi-eventclients-ps3.txt.in
+++ /dev/null
@@ -1,25 +0,0 @@
-# kodi-eventclients-ps3 debian package metadata
-#
-# Setting PACKAGE_SHLIBDEPS to 'ON' will cause CPack to ignore PACKAGE_DEPENDS
-# content and use dpkg-shlibdeps to automatically generate the package dependency
-# list. Only useful for packages that contain binaries.
-#
-# PACKAGE_ARCHITECTURE should be set to 'all' only if package contains
-# architecture agnostic data. CPack will set proper architecture (amd64/i386/etc)
-# based on build options.
-#
-# Remaining settings are (hopefully) self-explanatory.
-
-PACKAGE_NAME @APP_NAME_LC@-eventclients-ps3
-PACKAGE_ARCHITECTURE all
-PACKAGE_SECTION video
-PACKAGE_PRIORITY optional
-PACKAGE_SHLIBDEPS
-PACKAGE_DEPENDS @APP_NAME_LC@-eventclients-common (= @CPACK_DEBIAN_PACKAGE_VERSION@), python-bluez | python-lightblue
-PACKAGE_RECOMMENDS
-PACKAGE_SUGGESTS
-PACKAGE_BREAKS
-PACKAGE_REPLACES
-PACKAGE_PROVIDES xbmc-eventclients-ps3
-PACKAGE_DESCRIPTION_HEADER @APP_NAME@ Media Center (PS3 event client package)
-PACKAGE_DESCRIPTION_FOOTER This is the PS3 package for @APP_NAME@'s event client.
diff --git a/project/cmake/cpack/deb/packages/kodi-eventclients-wiiremote.txt.in b/project/cmake/cpack/deb/packages/kodi-eventclients-wiiremote.txt.in
deleted file mode 100644
index 5973784ac1..0000000000
--- a/project/cmake/cpack/deb/packages/kodi-eventclients-wiiremote.txt.in
+++ /dev/null
@@ -1,25 +0,0 @@
-# kodi-eventclients-wiiremote debian package metadata
-#
-# Setting PACKAGE_SHLIBDEPS to 'ON' will cause CPack to ignore PACKAGE_DEPENDS
-# content and use dpkg-shlibdeps to automatically generate the package dependency
-# list. Only useful for packages that contain binaries.
-#
-# PACKAGE_ARCHITECTURE should be set to 'all' only if package contains
-# architecture agnostic data. CPack will set proper architecture (amd64/i386/etc)
-# based on build options.
-#
-# Remaining settings are (hopefully) self-explanatory.
-
-PACKAGE_NAME @APP_NAME_LC@-eventclients-wiiremote
-PACKAGE_ARCHITECTURE
-PACKAGE_SECTION video
-PACKAGE_PRIORITY optional
-PACKAGE_SHLIBDEPS
-PACKAGE_DEPENDS @APP_NAME_LC@-eventclients-common (= @CPACK_DEBIAN_PACKAGE_VERSION@), libbluetooth3 (>= 4.91), libc6 (>= 2.14), libcwiid1 (>= 0.6.00+svn184), libgcc1 (>= 1:3.0), libstdc++6 (>= 5.2)
-PACKAGE_RECOMMENDS
-PACKAGE_SUGGESTS
-PACKAGE_BREAKS
-PACKAGE_REPLACES
-PACKAGE_PROVIDES xbmc-eventclients-wiiremote
-PACKAGE_DESCRIPTION_HEADER @APP_NAME@ Media Center (Wii Remote event client package)
-PACKAGE_DESCRIPTION_FOOTER This is the Wii Remote package for @APP_NAME@'s event client.
diff --git a/project/cmake/cpack/deb/packages/kodi-eventclients-xbmc-send.txt.in b/project/cmake/cpack/deb/packages/kodi-eventclients-xbmc-send.txt.in
deleted file mode 100644
index 0062479dd4..0000000000
--- a/project/cmake/cpack/deb/packages/kodi-eventclients-xbmc-send.txt.in
+++ /dev/null
@@ -1,25 +0,0 @@
-# kodi-eventclients-xbmc-send debian package metadata
-#
-# Setting PACKAGE_SHLIBDEPS to 'ON' will cause CPack to ignore PACKAGE_DEPENDS
-# content and use dpkg-shlibdeps to automatically generate the package dependency
-# list. Only useful for packages that contain binaries.
-#
-# PACKAGE_ARCHITECTURE should be set to 'all' only if package contains
-# architecture agnostic data. CPack will set proper architecture (amd64/i386/etc)
-# based on build options.
-#
-# Remaining settings are (hopefully) self-explanatory.
-
-PACKAGE_NAME @APP_NAME_LC@-eventclients-xbmc-send
-PACKAGE_ARCHITECTURE all
-PACKAGE_SECTION video
-PACKAGE_PRIORITY optional
-PACKAGE_SHLIBDEPS
-PACKAGE_DEPENDS @APP_NAME_LC@-eventclients-common (= @CPACK_DEBIAN_PACKAGE_VERSION@)
-PACKAGE_RECOMMENDS
-PACKAGE_SUGGESTS
-PACKAGE_BREAKS
-PACKAGE_REPLACES
-PACKAGE_PROVIDES xbmc-eventclients-xbmc-send
-PACKAGE_DESCRIPTION_HEADER @APP_NAME@ Media Center (@APP_NAME@-send event client package)
-PACKAGE_DESCRIPTION_FOOTER This is the Kodi-SEND package for @APP_NAME@'s event client.
diff --git a/project/cmake/cpack/deb/packages/kodi-inputstream-dev.txt.in b/project/cmake/cpack/deb/packages/kodi-inputstream-dev.txt.in
deleted file mode 100644
index 3b4c381ab7..0000000000
--- a/project/cmake/cpack/deb/packages/kodi-inputstream-dev.txt.in
+++ /dev/null
@@ -1,25 +0,0 @@
-# kodi-inputstream-dev debian package metadata
-#
-# Setting PACKAGE_SHLIBDEPS to 'ON' will cause CPack to ignore PACKAGE_DEPENDS
-# content and use dpkg-shlibdeps to automatically generate the package dependency
-# list. Only useful for packages that contain binaries.
-#
-# PACKAGE_ARCHITECTURE should be set to 'all' only if package contains
-# architecture agnostic data. CPack will set proper architecture (amd64/i386/etc)
-# based on build options.
-#
-# Remaining settings are (hopefully) self-explanatory.
-
-PACKAGE_NAME @APP_NAME_LC@-inputstream-dev
-PACKAGE_ARCHITECTURE all
-PACKAGE_SECTION libdevel
-PACKAGE_PRIORITY optional
-PACKAGE_SHLIBDEPS
-PACKAGE_DEPENDS @APP_NAME_LC@-addon-dev
-PACKAGE_RECOMMENDS
-PACKAGE_SUGGESTS
-PACKAGE_BREAKS
-PACKAGE_REPLACES
-PACKAGE_PROVIDES xbmc-inputstream-dev
-PACKAGE_DESCRIPTION_HEADER @APP_NAME@ Media Center (inputstream add-ons dev package)
-PACKAGE_DESCRIPTION_FOOTER This is the development package for @APP_NAME@'s inputstream add-ons.
diff --git a/project/cmake/cpack/deb/packages/kodi-peripheral-dev.txt.in b/project/cmake/cpack/deb/packages/kodi-peripheral-dev.txt.in
deleted file mode 100644
index 1c41c5f5d2..0000000000
--- a/project/cmake/cpack/deb/packages/kodi-peripheral-dev.txt.in
+++ /dev/null
@@ -1,24 +0,0 @@
-# kodi-peripheral-dev debian package metadata
-#
-# Setting PACKAGE_SHLIBDEPS to 'ON' will cause CPack to ignore PACKAGE_DEPENDS
-# content and use dpkg-shlibdeps to automatically generate the package dependency
-# list. Only useful for packages that contain binaries.
-#
-# PACKAGE_ARCHITECTURE should be set to 'all' only if package contains
-# architecture agnostic data. CPack will set proper architecture (amd64/i386/etc)
-# based on build options.
-#
-# Remaining settings are (hopefully) self-explanatory.
-
-PACKAGE_NAME @APP_NAME_LC@-peripheral-dev
-PACKAGE_ARCHITECTURE all
-PACKAGE_SECTION libdevel
-PACKAGE_PRIORITY optional
-PACKAGE_SHLIBDEPS
-PACKAGE_DEPENDS @APP_NAME_LC@-addon-dev
-PACKAGE_RECOMMENDS
-PACKAGE_SUGGESTS
-PACKAGE_BREAKS
-PACKAGE_REPLACES
-PACKAGE_DESCRIPTION_HEADER @APP_NAME@ Media Center (peripheral add-ons dev package)
-PACKAGE_DESCRIPTION_FOOTER This is the development package for @APP_NAME@'s peripheral add-ons.
diff --git a/project/cmake/cpack/deb/packages/kodi-pvr-dev.txt.in b/project/cmake/cpack/deb/packages/kodi-pvr-dev.txt.in
deleted file mode 100644
index 90e4a1400a..0000000000
--- a/project/cmake/cpack/deb/packages/kodi-pvr-dev.txt.in
+++ /dev/null
@@ -1,25 +0,0 @@
-# kodi-pvr-dev debian package metadata
-#
-# Setting PACKAGE_SHLIBDEPS to 'ON' will cause CPack to ignore PACKAGE_DEPENDS
-# content and use dpkg-shlibdeps to automatically generate the package dependency
-# list. Only useful for packages that contain binaries.
-#
-# PACKAGE_ARCHITECTURE should be set to 'all' only if package contains
-# architecture agnostic data. CPack will set proper architecture (amd64/i386/etc)
-# based on build options.
-#
-# Remaining settings are (hopefully) self-explanatory.
-
-PACKAGE_NAME @APP_NAME_LC@-pvr-dev
-PACKAGE_ARCHITECTURE all
-PACKAGE_SECTION libdevel
-PACKAGE_PRIORITY optional
-PACKAGE_SHLIBDEPS
-PACKAGE_DEPENDS @APP_NAME_LC@-addon-dev
-PACKAGE_RECOMMENDS
-PACKAGE_SUGGESTS
-PACKAGE_BREAKS
-PACKAGE_REPLACES
-PACKAGE_PROVIDES xbmc-pvr-dev
-PACKAGE_DESCRIPTION_HEADER @APP_NAME@ Media Center (PVR add-ons dev package)
-PACKAGE_DESCRIPTION_FOOTER This is the development package for @APP_NAME@'s PVR add-ons.
diff --git a/project/cmake/cpack/deb/packages/kodi-screensaver-dev.txt.in b/project/cmake/cpack/deb/packages/kodi-screensaver-dev.txt.in
deleted file mode 100644
index 877c3ab290..0000000000
--- a/project/cmake/cpack/deb/packages/kodi-screensaver-dev.txt.in
+++ /dev/null
@@ -1,25 +0,0 @@
-# kodi-screensaver-dev debian package metadata
-#
-# Setting PACKAGE_SHLIBDEPS to 'ON' will cause CPack to ignore PACKAGE_DEPENDS
-# content and use dpkg-shlibdeps to automatically generate the package dependency
-# list. Only useful for packages that contain binaries.
-#
-# PACKAGE_ARCHITECTURE should be set to 'all' only if package contains
-# architecture agnostic data. CPack will set proper architecture (amd64/i386/etc)
-# based on build options.
-#
-# Remaining settings are (hopefully) self-explanatory.
-
-PACKAGE_NAME @APP_NAME_LC@-screensaver-dev
-PACKAGE_ARCHITECTURE all
-PACKAGE_SECTION libdevel
-PACKAGE_PRIORITY optional
-PACKAGE_SHLIBDEPS
-PACKAGE_DEPENDS @APP_NAME_LC@-addon-dev
-PACKAGE_RECOMMENDS
-PACKAGE_SUGGESTS
-PACKAGE_BREAKS
-PACKAGE_REPLACES
-PACKAGE_PROVIDES xbmc-screensaver-dev
-PACKAGE_DESCRIPTION_HEADER @APP_NAME@ Media Center (screensaver add-ons dev package)
-PACKAGE_DESCRIPTION_FOOTER This is the development package for @APP_NAME@'s screensaver add-ons.
diff --git a/project/cmake/cpack/deb/packages/kodi-tools-texturepacker.txt.in b/project/cmake/cpack/deb/packages/kodi-tools-texturepacker.txt.in
deleted file mode 100644
index c5c5f8d296..0000000000
--- a/project/cmake/cpack/deb/packages/kodi-tools-texturepacker.txt.in
+++ /dev/null
@@ -1,25 +0,0 @@
-# kodi-tools-texturepacker debian package metadata
-#
-# Setting PACKAGE_SHLIBDEPS to 'ON' will cause CPack to ignore PACKAGE_DEPENDS
-# content and use dpkg-shlibdeps to automatically generate the package dependency
-# list. Only useful for packages that contain binaries.
-#
-# PACKAGE_ARCHITECTURE should be set to 'all' only if package contains
-# architecture agnostic data. CPack will set proper architecture (amd64/i386/etc)
-# based on build options.
-#
-# Remaining settings are (hopefully) self-explanatory.
-
-PACKAGE_NAME @APP_NAME_LC@-tools-texturepacker
-PACKAGE_ARCHITECTURE
-PACKAGE_SECTION video
-PACKAGE_PRIORITY optional
-PACKAGE_SHLIBDEPS
-PACKAGE_DEPENDS
-PACKAGE_RECOMMENDS
-PACKAGE_SUGGESTS
-PACKAGE_BREAKS
-PACKAGE_REPLACES
-PACKAGE_PROVIDES
-PACKAGE_DESCRIPTION_HEADER @APP_NAME@ Media Center (skin development - TexturePacker tool)
-PACKAGE_DESCRIPTION_FOOTER This is @APP_NAME@'s TexturePacker tool for skin development.
diff --git a/project/cmake/cpack/deb/packages/kodi-visualization-dev.txt.in b/project/cmake/cpack/deb/packages/kodi-visualization-dev.txt.in
deleted file mode 100644
index ecc543613f..0000000000
--- a/project/cmake/cpack/deb/packages/kodi-visualization-dev.txt.in
+++ /dev/null
@@ -1,25 +0,0 @@
-# kodi-visualization-dev debian package metadata
-#
-# Setting PACKAGE_SHLIBDEPS to 'ON' will cause CPack to ignore PACKAGE_DEPENDS
-# content and use dpkg-shlibdeps to automatically generate the package dependency
-# list. Only useful for packages that contain binaries.
-#
-# PACKAGE_ARCHITECTURE should be set to 'all' only if package contains
-# architecture agnostic data. CPack will set proper architecture (amd64/i386/etc)
-# based on build options.
-#
-# Remaining settings are (hopefully) self-explanatory.
-
-PACKAGE_NAME @APP_NAME_LC@-visualization-dev
-PACKAGE_ARCHITECTURE all
-PACKAGE_SECTION libdevel
-PACKAGE_PRIORITY optional
-PACKAGE_SHLIBDEPS
-PACKAGE_DEPENDS @APP_NAME_LC@-addon-dev
-PACKAGE_RECOMMENDS
-PACKAGE_SUGGESTS
-PACKAGE_BREAKS
-PACKAGE_REPLACES
-PACKAGE_PROVIDES xbmc-visualization-dev
-PACKAGE_DESCRIPTION_HEADER @APP_NAME@ Media Center (visualization add-ons dev package)
-PACKAGE_DESCRIPTION_FOOTER This is the development package for @APP_NAME@'s visualization add-ons.
diff --git a/project/cmake/cpack/deb/packages/kodi.txt.in b/project/cmake/cpack/deb/packages/kodi.txt.in
deleted file mode 100644
index 4ca417b700..0000000000
--- a/project/cmake/cpack/deb/packages/kodi.txt.in
+++ /dev/null
@@ -1,25 +0,0 @@
-# kodi debian package metadata
-#
-# Setting PACKAGE_SHLIBDEPS to 'ON' will cause CPack to ignore PACKAGE_DEPENDS
-# content and use dpkg-shlibdeps to automatically generate the package dependency
-# list. Only useful for packages that contain binaries.
-#
-# PACKAGE_ARCHITECTURE should be set to 'all' only if package contains
-# architecture agnostic data. CPack will set proper architecture (amd64/i386/etc)
-# based on build options.
-#
-# Remaining settings are (hopefully) self-explanatory.
-
-PACKAGE_NAME @APP_NAME_LC@
-PACKAGE_ARCHITECTURE all
-PACKAGE_SECTION video
-PACKAGE_PRIORITY optional
-PACKAGE_SHLIBDEPS
-PACKAGE_DEPENDS @APP_NAME_LC@-bin (>= @CPACK_DEBIAN_PACKAGE_VERSION@), @APP_NAME_LC@-bin (<< @CPACK_DEBIAN_PACKAGE_VERSION@.1~), curl, libcurl3, mesa-utils, x11-utils, fonts-liberation | ttf-liberation, fonts-dejavu-core | ttf-dejavu-core, python-bluez | python-lightblue, python-imaging, python-simplejson, libass5 | libass4, libgif5 | libgif7, libssh-4 | libssh2-1, libnfs8 | libnfs4 | libnfs1, libbluray1, libshairplay0, libvorbisfile3, libaacs0, libcec4, libgnutls30 | libgnutls-deb0-28 | libgnutls28 | libgnutls26, libxslt1.1, libyajl2
-PACKAGE_RECOMMENDS libvdpau1, libva-intel-vaapi-driver, libva1
-PACKAGE_SUGGESTS @APP_NAME_LC@-pvr-mythtv, @APP_NAME_LC@-pvr-vuplus, @APP_NAME_LC@-pvr-vdr-vnsi, @APP_NAME_LC@-pvr-njoy, @APP_NAME_LC@-pvr-nextpvr, @APP_NAME_LC@-pvr-mediaportal-tvserver, @APP_NAME_LC@-pvr-tvheadend-hts, @APP_NAME_LC@-pvr-dvbviewer, @APP_NAME_LC@-pvr-argustv, @APP_NAME_LC@-pvr-iptvsimple, @APP_NAME_LC@-audioencoder-vorbis, @APP_NAME_LC@-audioencoder-flac, @APP_NAME_LC@-audioencoder-lame
-PACKAGE_BREAKS xbmc (<< 2:14.0~git20141019), xbmc-data, xbmc-standalone
-PACKAGE_REPLACES xbmc (<< 2:14.0~git20141019), xbmc-data, xbmc-standalone
-PACKAGE_PROVIDES @APP_NAME_LC@-data, @APP_NAME_LC@-skin-estuary, @APP_NAME_LC@-standalone, xbmc, xbmc-data, xbmc-standalone
-PACKAGE_DESCRIPTION_HEADER @APP_NAME@ Media Center (arch-independent data package)
-PACKAGE_DESCRIPTION_FOOTER This package contains @APP_NAME@'s architecture independent data.
diff --git a/project/cmake/cpack/deb/postinst b/project/cmake/cpack/deb/postinst
deleted file mode 100755
index 318d280f8b..0000000000
--- a/project/cmake/cpack/deb/postinst
+++ /dev/null
@@ -1,5 +0,0 @@
-#!/bin/sh
-set -e
-if [ "$1" = "configure" ] && [ -x "`which update-menus 2>/dev/null`" ]; then
- update-menus
-fi
diff --git a/project/cmake/cpack/deb/postrm b/project/cmake/cpack/deb/postrm
deleted file mode 100755
index adc11fdec8..0000000000
--- a/project/cmake/cpack/deb/postrm
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/bin/sh
-set -e
-if [ -x "`which update-menus 2>/dev/null`" ]; then update-menus ; fi
diff --git a/project/cmake/installdata/common/addons.txt b/project/cmake/installdata/common/addons.txt
deleted file mode 100644
index cd434515fd..0000000000
--- a/project/cmake/installdata/common/addons.txt
+++ /dev/null
@@ -1,42 +0,0 @@
-addons/audioencoder.xbmc.builtin.aac/*
-addons/audioencoder.xbmc.builtin.wav/*
-addons/audioencoder.xbmc.builtin.wma/*
-addons/game.controller.default/*
-addons/kodi.adsp/*
-addons/kodi.audiodecoder/*
-addons/kodi.game/*
-addons/kodi.inputstream/*
-addons/kodi.peripheral/*
-addons/kodi.resource/*
-addons/xbmc.addon/metadata.xsd
-addons/xbmc.addon/repository.xsd
-addons/xbmc.audioencoder/*
-addons/xbmc.codec/*
-addons/xbmc.core/*
-addons/xbmc.gui/*
-addons/xbmc.metadata/*
-addons/xbmc.pvr/*
-addons/xbmc.python/*
-addons/xbmc.webinterface/*
-addons/repository.xbmc.org/*
-addons/webinterface.default/*
-addons/screensaver.xbmc.builtin.dim/*
-addons/screensaver.xbmc.builtin.black/*
-addons/script.module.pil/*
-addons/script.module.pysqlite/*
-addons/resource.language.en_gb/*
-addons/resource.uisounds.kodi/*
-addons/resource.images.weathericons.default/*
-addons/service.xbmc.versioncheck/*
-addons/metadata.local/*
-addons/metadata.album.universal/*
-addons/metadata.artists.universal/*
-addons/metadata.common.allmusic.com/*
-addons/metadata.common.fanart.tv/*
-addons/metadata.common.htbackdrops.com/*
-addons/metadata.common.imdb.com/*
-addons/metadata.common.musicbrainz.org/*
-addons/metadata.common.theaudiodb.com/*
-addons/metadata.common.themoviedb.org/*
-addons/metadata.themoviedb.org/*
-addons/metadata.tvdb.com/*
diff --git a/project/cmake/installdata/common/common.txt b/project/cmake/installdata/common/common.txt
deleted file mode 100644
index c1e52f0ee5..0000000000
--- a/project/cmake/installdata/common/common.txt
+++ /dev/null
@@ -1,13 +0,0 @@
-media/*
-sounds/*
-system/keymaps/*
-system/library/*
-system/players/VideoPlayer/etc/*
-system/shaders/*
-system/settings/*
-userdata/*
-system/addon-manifest.xml
-system/colors.xml
-system/peripherals.xml
-system/playercorefactory.xml
-system/keyboardlayouts/*
diff --git a/project/cmake/installdata/ios/certificates.txt b/project/cmake/installdata/ios/certificates.txt
deleted file mode 100644
index 14e74a7536..0000000000
--- a/project/cmake/installdata/ios/certificates.txt
+++ /dev/null
@@ -1 +0,0 @@
-tools/depends/target/openssl/cacert.pem system/certs \ No newline at end of file
diff --git a/project/cmake/installdata/ios/packaging.txt b/project/cmake/installdata/ios/packaging.txt
deleted file mode 100644
index ce990b5bb7..0000000000
--- a/project/cmake/installdata/ios/packaging.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-LICENSE.gpl
-privacy-policy.txt
-xbmc/platform/darwin/Credits.html
diff --git a/project/cmake/installdata/ios/runtime.txt b/project/cmake/installdata/ios/runtime.txt
deleted file mode 100644
index 3bb546754e..0000000000
--- a/project/cmake/installdata/ios/runtime.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-tools/darwin/runtime/preflight
-tools/darwin/runtime/org.xbmc.helper.plist
diff --git a/project/cmake/installdata/linux/lirc.txt b/project/cmake/installdata/linux/lirc.txt
deleted file mode 100644
index 1b48478e14..0000000000
--- a/project/cmake/installdata/linux/lirc.txt
+++ /dev/null
@@ -1 +0,0 @@
-system/Lircmap.xml
diff --git a/project/cmake/installdata/osx/certificates.txt b/project/cmake/installdata/osx/certificates.txt
deleted file mode 100644
index 14e74a7536..0000000000
--- a/project/cmake/installdata/osx/certificates.txt
+++ /dev/null
@@ -1 +0,0 @@
-tools/depends/target/openssl/cacert.pem system/certs \ No newline at end of file
diff --git a/project/cmake/installdata/osx/packaging.txt b/project/cmake/installdata/osx/packaging.txt
deleted file mode 100644
index f869e4c146..0000000000
--- a/project/cmake/installdata/osx/packaging.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-LICENSE.gpl
-privacy-policy.txt
-xbmc/platform/darwin/Credits.html
-tools/darwin/packaging/media/osx/icon.iconset/*
diff --git a/project/cmake/installdata/osx/runtime.txt b/project/cmake/installdata/osx/runtime.txt
deleted file mode 100644
index 3bb546754e..0000000000
--- a/project/cmake/installdata/osx/runtime.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-tools/darwin/runtime/preflight
-tools/darwin/runtime/org.xbmc.helper.plist
diff --git a/project/cmake/installdata/rbpi/lirc.txt b/project/cmake/installdata/rbpi/lirc.txt
deleted file mode 120000
index e89ae50094..0000000000
--- a/project/cmake/installdata/rbpi/lirc.txt
+++ /dev/null
@@ -1 +0,0 @@
-../linux/lirc.txt \ No newline at end of file
diff --git a/project/cmake/installdata/test-reference-data.txt b/project/cmake/installdata/test-reference-data.txt
deleted file mode 100644
index 895079a05a..0000000000
--- a/project/cmake/installdata/test-reference-data.txt
+++ /dev/null
@@ -1,10 +0,0 @@
-xbmc/utils/test/CXBMCTinyXML-test.xml
-xbmc/utils/test/data/language/Spanish/strings.po
-xbmc/filesystem/test/reffile.txt
-xbmc/filesystem/test/reffile.txt.rar
-xbmc/filesystem/test/reffile.txt.zip
-xbmc/filesystem/test/refRARnormal.rar
-xbmc/filesystem/test/refRARstored.rar
-xbmc/network/test/data/test.html
-xbmc/network/test/data/test.png
-xbmc/network/test/data/test-ranges.txt
diff --git a/project/cmake/installdata/windows/addons.txt b/project/cmake/installdata/windows/addons.txt
deleted file mode 100644
index 92bf9b3ca6..0000000000
--- a/project/cmake/installdata/windows/addons.txt
+++ /dev/null
@@ -1 +0,0 @@
-addons/repository.pvr-win32.xbmc.org/*
diff --git a/project/cmake/installdata/windows/dlls.txt b/project/cmake/installdata/windows/dlls.txt
deleted file mode 100644
index 64d9756a59..0000000000
--- a/project/cmake/installdata/windows/dlls.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-system/*.dll .
-project/Win32BuildSetup/dependencies/python27.dll . \ No newline at end of file
diff --git a/project/cmake/installdata/windows/irss.txt b/project/cmake/installdata/windows/irss.txt
deleted file mode 100644
index 6fd8d484e7..0000000000
--- a/project/cmake/installdata/windows/irss.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-system/IRSSmap.xml
-system/X10-Lola-IRSSmap.xml
diff --git a/project/cmake/installdata/windows/python.txt b/project/cmake/installdata/windows/python.txt
deleted file mode 100644
index b8053187cf..0000000000
--- a/project/cmake/installdata/windows/python.txt
+++ /dev/null
@@ -1 +0,0 @@
-system/python/* \ No newline at end of file
diff --git a/project/cmake/modules/FindAML.cmake b/project/cmake/modules/FindAML.cmake
deleted file mode 100644
index 5b9a859ead..0000000000
--- a/project/cmake/modules/FindAML.cmake
+++ /dev/null
@@ -1,35 +0,0 @@
-#.rst:
-# FindAML
-# -------
-# Finds the AML codec
-#
-# This will will define the following variables::
-#
-# AML_FOUND - system has AML
-# AML_INCLUDE_DIRS - the AML include directory
-# AML_DEFINITIONS - the AML definitions
-#
-# and the following imported targets::
-#
-# AML::AML - The AML codec
-
-find_path(AML_INCLUDE_DIR codec_error.h
- PATH_SUFFIXES amcodec)
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(AML
- REQUIRED_VARS AML_INCLUDE_DIR)
-
-if(AML_FOUND)
- set(AML_INCLUDE_DIRS ${AML_INCLUDE_DIR})
- set(AML_DEFINITIONS -DHAS_LIBAMCODEC=1)
-
- if(NOT TARGET AML::AML)
- add_library(AML::AML UNKNOWN IMPORTED)
- set_target_properties(AML::AML PROPERTIES
- INTERFACE_INCLUDE_DIRECTORIES "${AML_INCLUDE_DIR}"
- INTERFACE_COMPILE_DEFINITIONS HAS_LIBAMCODEC=1)
- endif()
-endif()
-
-mark_as_advanced(AMLCODEC_INCLUDE_DIR)
diff --git a/project/cmake/modules/FindASS.cmake b/project/cmake/modules/FindASS.cmake
deleted file mode 100644
index 2d592fad15..0000000000
--- a/project/cmake/modules/FindASS.cmake
+++ /dev/null
@@ -1,44 +0,0 @@
-#.rst:
-# FindASS
-# -------
-# Finds the ASS library
-#
-# This will will define the following variables::
-#
-# ASS_FOUND - system has ASS
-# ASS_INCLUDE_DIRS - the ASS include directory
-# ASS_LIBRARIES - the ASS libraries
-#
-# and the following imported targets::
-#
-# ASS::ASS - The ASS library
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_ASS libass QUIET)
-endif()
-
-find_path(ASS_INCLUDE_DIR NAMES ass/ass.h
- PATHS ${PC_ASS_INCLUDEDIR})
-find_library(ASS_LIBRARY NAMES ass libass
- PATHS ${PC_ASS_LIBDIR})
-
-set(ASS_VERSION ${PC_ASS_VERSION})
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(ASS
- REQUIRED_VARS ASS_LIBRARY ASS_INCLUDE_DIR
- VERSION_VAR ASS_VERSION)
-
-if(ASS_FOUND)
- set(ASS_LIBRARIES ${ASS_LIBRARY})
- set(ASS_INCLUDE_DIRS ${ASS_INCLUDE_DIR})
-
- if(NOT TARGET ASS::ASS)
- add_library(ASS::ASS UNKNOWN IMPORTED)
- set_target_properties(ASS::ASS PROPERTIES
- IMPORTED_LOCATION "${ASS_LIBRARY}"
- INTERFACE_INCLUDE_DIRECTORIES "${ASS_INCLUDE_DIR}")
- endif()
-endif()
-
-mark_as_advanced(ASS_INCLUDE_DIR ASS_LIBRARY)
diff --git a/project/cmake/modules/FindAlsa.cmake b/project/cmake/modules/FindAlsa.cmake
deleted file mode 100644
index a2822431f8..0000000000
--- a/project/cmake/modules/FindAlsa.cmake
+++ /dev/null
@@ -1,46 +0,0 @@
-#.rst:
-# FindAlsa
-# --------
-# Finds the Alsa library
-#
-# This will will define the following variables::
-#
-# ALSA_FOUND - system has Alsa
-# ALSA_INCLUDE_DIRS - the Alsa include directory
-# ALSA_LIBRARIES - the Alsa libraries
-# ALSA_DEFINITIONS - the Alsa compile definitions
-#
-# and the following imported targets::
-#
-# ALSA::ALSA - The Alsa library
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_ALSA alsa QUIET)
-endif()
-
-find_path(ALSA_INCLUDE_DIR NAMES alsa/asoundlib.h
- PATHS ${PC_ALSA_INCLUDEDIR})
-find_library(ALSA_LIBRARY NAMES asound
- PATHS ${PC_ALSA_LIBDIR})
-
-set(ALSA_VERSION ${PC_ALSA_VERSION})
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(ALSA
- REQUIRED_VARS ALSA_LIBRARY ALSA_INCLUDE_DIR
- VERSION_VAR ALSA_VERSION)
-
-if(ALSA_FOUND)
- set(ALSA_INCLUDE_DIRS "") # Don't want these added as 'timer.h' is a dangerous file
- set(ALSA_LIBRARIES ${ALSA_LIBRARY})
- set(ALSA_DEFINITIONS -DHAVE_ALSA=1 -DUSE_ALSA=1)
-
- if(NOT TARGET ALSA::ALSA)
- add_library(ALSA::ALSA UNKNOWN IMPORTED)
- set_target_properties(ALSA::ALSA PROPERTIES
- IMPORTED_LOCATION "${ALSA_LIBRARY}"
- INTERFACE_COMPILE_DEFINITIONS "${ALSA_DEFINITIONS}")
- endif()
-endif()
-
-mark_as_advanced(ALSA_INCLUDE_DIR ALSA_LIBRARY)
diff --git a/project/cmake/modules/FindAvahi.cmake b/project/cmake/modules/FindAvahi.cmake
deleted file mode 100644
index 77c3e4d67a..0000000000
--- a/project/cmake/modules/FindAvahi.cmake
+++ /dev/null
@@ -1,63 +0,0 @@
-#.rst:
-# FindAvahi
-# ---------
-# Finds the avahi library
-#
-# This will will define the following variables::
-#
-# AVAHI_FOUND - system has avahi
-# AVAHI_INCLUDE_DIRS - the avahi include directory
-# AVAHI_LIBRARIES - the avahi libraries
-# AVAHI_DEFINITIONS - the avahi definitions
-#
-# and the following imported targets::
-#
-# Avahi::Avahi - The avahi library
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_AVAHI avahi-client QUIET)
-endif()
-
-find_path(AVAHI_CLIENT_INCLUDE_DIR NAMES avahi-client/client.h
- PATHS ${PC_AVAHI_INCLUDEDIR})
-find_path(AVAHI_COMMON_INCLUDE_DIR NAMES avahi-common/defs.h
- PATHS ${PC_AVAHI_INCLUDEDIR})
-find_library(AVAHI_CLIENT_LIBRARY NAMES avahi-client
- PATHS ${PC_AVAHI_LIBDIR})
-find_library(AVAHI_COMMON_LIBRARY NAMES avahi-common
- PATHS ${PC_AVAHI_LIBDIR})
-
-set(AVAHI_VERSION ${PC_AVAHI_VERSION})
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(Avahi
- REQUIRED_VARS AVAHI_CLIENT_LIBRARY AVAHI_COMMON_LIBRARY
- AVAHI_CLIENT_INCLUDE_DIR AVAHI_COMMON_INCLUDE_DIR
- VERSION_VAR AVAHI_VERSION)
-
-if(AVAHI_FOUND)
- set(AVAHI_INCLUDE_DIRS ${AVAHI_CLIENT_INCLUDE_DIR}
- ${AVAHI_COMMON_INCLUDE_DIR})
- set(AVAHI_LIBRARIES ${AVAHI_CLIENT_LIBRARY}
- ${AVAHI_COMMON_LIBRARY})
- set(AVAHI_DEFINITIONS -DHAVE_LIBAVAHI_CLIENT=1 -DHAVE_LIBAVAHI_COMMON=1)
-
- if(NOT TARGET Avahi::Avahi)
- add_library(Avahi::Avahi UNKNOWN IMPORTED)
- set_target_properties(Avahi::Avahi PROPERTIES
- IMPORTED_LOCATION "${AVAHI_CLIENT_LIBRARY}"
- INTERFACE_INCLUDE_DIRECTORIES "${AVAHI_CLIENT_INCLUDE_DIR}"
- INTERFACE_COMPILE_DEFINITIONS HAVE_LIBAVAHI_CLIENT=1)
- endif()
- if(NOT TARGET Avahi::AvahiCommon)
- add_library(Avahi::AvahiCommon UNKNOWN IMPORTED)
- set_target_properties(Avahi::AvahiCommon PROPERTIES
- IMPORTED_LOCATION "${AVAHI_COMMON_LIBRARY}"
- INTERFACE_INCLUDE_DIRECTORIES "${AVAHI_COMMON_INCLUDE_DIR}"
- INTERFACE_COMPILE_DEFINITIONS HAVE_LIBAVAHI_COMMON=1
- INTERFACE_LINK_LIBRARIES Avahi::Avahi)
- endif()
-endif()
-
-mark_as_advanced(AVAHI_CLIENT_INCLUDE_DIR AVAHI_COMMON_INCLUDE_DIR
- AVAHI_CLIENT_LIBRARY AVAHI_COMMON_LIBRARY)
diff --git a/project/cmake/modules/FindBluetooth.cmake b/project/cmake/modules/FindBluetooth.cmake
deleted file mode 100644
index a69980dc74..0000000000
--- a/project/cmake/modules/FindBluetooth.cmake
+++ /dev/null
@@ -1,44 +0,0 @@
-#.rst:
-# FindBluetooth
-# ---------
-# Finds the Bluetooth library
-#
-# This will will define the following variables::
-#
-# BLUETOOTH_FOUND - system has Bluetooth
-# BLUETOOTH_INCLUDE_DIRS - the Bluetooth include directory
-# BLUETOOTH_LIBRARIES - the Bluetooth libraries
-#
-# and the following imported targets::
-#
-# Bluetooth::Bluetooth - The Bluetooth library
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_BLUETOOTH bluez bluetooth QUIET)
-endif()
-
-find_path(BLUETOOTH_INCLUDE_DIR NAMES bluetooth/bluetooth.h
- PATHS ${PC_BLUETOOTH_INCLUDEDIR})
-find_library(BLUETOOTH_LIBRARY NAMES bluetooth libbluetooth
- PATHS ${PC_BLUETOOTH_LIBDIR})
-
-set(BLUETOOTH_VERSION ${PC_BLUETOOTH_VERSION})
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(Bluetooth
- REQUIRED_VARS BLUETOOTH_LIBRARY BLUETOOTH_INCLUDE_DIR
- VERSION_VAR BLUETOOTH_VERSION)
-
-if(BLUETOOTH_FOUND)
- set(BLUETOOTH_INCLUDE_DIRS ${BLUETOOTH_INCLUDE_DIR})
- set(BLUETOOTH_LIBRARIES ${BLUETOOTH_LIBRARY})
-
- if(NOT TARGET Bluetooth::Bluetooth)
- add_library(Bluetooth::Bluetooth UNKNOWN IMPORTED)
- set_target_properties(Bluetooth::Bluetooth PROPERTIES
- IMPORTED_LOCATION "${BLUETOOTH_LIBRARY}"
- INTERFACE_INCLUDE_DIRECTORIES "${BLUETOOTH_INCLUDE_DIR}")
- endif()
-endif()
-
-mark_as_advanced(BLUETOOTH_INCLUDE_DIR BLUETOOTH_LIBRARY)
diff --git a/project/cmake/modules/FindBluray.cmake b/project/cmake/modules/FindBluray.cmake
deleted file mode 100644
index b8422ed207..0000000000
--- a/project/cmake/modules/FindBluray.cmake
+++ /dev/null
@@ -1,58 +0,0 @@
-#.rst:
-# FindBluray
-# ----------
-# Finds the libbluray library
-#
-# This will will define the following variables::
-#
-# BLURAY_FOUND - system has libbluray
-# BLURAY_INCLUDE_DIRS - the libbluray include directory
-# BLURAY_LIBRARIES - the libbluray libraries
-# BLURAY_DEFINITIONS - the libbluray compile definitions
-#
-# and the following imported targets::
-#
-# Bluray::Bluray - The libblueray library
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_BLURAY libbluray>=0.7.0 QUIET)
-endif()
-
-find_path(BLURAY_INCLUDE_DIR libbluray/bluray.h
- PATHS ${PC_BLURAY_INCLUDEDIR})
-
-set(BLURAY_VERSION ${PC_BLURAY_VERSION})
-
-include(FindPackageHandleStandardArgs)
-if(NOT WIN32)
- find_library(BLURAY_LIBRARY NAMES bluray
- PATHS ${PC_BLURAY_LIBDIR})
-
- find_package_handle_standard_args(Bluray
- REQUIRED_VARS BLURAY_LIBRARY BLURAY_INCLUDE_DIR
- VERSION_VAR BLURAY_VERSION)
-else()
- # Dynamically loaded DLL
- find_package_handle_standard_args(Bluray
- REQUIRED_VARS BLURAY_INCLUDE_DIR
- VERSION_VAR BLURAY_VERSION)
-endif()
-
-if(BLURAY_FOUND)
- set(BLURAY_LIBRARIES ${BLURAY_LIBRARY})
- set(BLURAY_INCLUDE_DIRS ${BLURAY_INCLUDE_DIR})
- set(BLURAY_DEFINITIONS -DHAVE_LIBBLURAY=1)
-
- if(NOT TARGET Bluray::Bluray)
- add_library(Bluray::Bluray UNKNOWN IMPORTED)
- if(BLURAY_LIBRARY)
- set_target_properties(Bluray::Bluray PROPERTIES
- IMPORTED_LOCATION "${BLURAY_LIBRARY}")
- endif()
- set_target_properties(Bluray::Bluray PROPERTIES
- INTERFACE_INCLUDE_DIRECTORIES "${BLURAY_INCLUDE_DIR}"
- INTERFACE_COMPILE_DEFINITIONS HAVE_LIBBLURAY=1)
- endif()
-endif()
-
-mark_as_advanced(BLURAY_INCLUDE_DIR BLURAY_LIBRARY)
diff --git a/project/cmake/modules/FindCAP.cmake b/project/cmake/modules/FindCAP.cmake
deleted file mode 100644
index 04e8378ea4..0000000000
--- a/project/cmake/modules/FindCAP.cmake
+++ /dev/null
@@ -1,44 +0,0 @@
-#.rst:
-# FindCAP
-# -----------
-# Finds the POSIX 1003.1e capabilities library
-#
-# This will define the following variables::
-#
-# CAP_FOUND - system has LibCap
-# CAP_INCLUDE_DIRS - the LibCap include directory
-# CAP_LIBRARIES - the LibCap libraries
-#
-# and the following imported targets::
-#
-# CAP::CAP - The LibCap library
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_CAP libcap QUIET)
-endif()
-
-find_path(CAP_INCLUDE_DIR NAMES sys/capability.h
- PATHS ${PC_CAP_INCLUDEDIR})
-find_library(CAP_LIBRARY NAMES cap libcap
- PATHS ${PC_CAP_LIBDIR})
-
-set(CAP_VERSION ${PC_CAP_VERSION})
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(CAP
- REQUIRED_VARS CAP_LIBRARY CAP_INCLUDE_DIR
- VERSION_VAR CAP_VERSION)
-
-if(CAP_FOUND)
- set(CAP_LIBRARIES ${CAP_LIBRARY})
- set(CAP_INCLUDE_DIRS ${CAP_INCLUDE_DIR})
-
- if(NOT TARGET CAP::CAP)
- add_library(CAP::CAP UNKNOWN IMPORTED)
- set_target_properties(CAP::CAP PROPERTIES
- IMPORTED_LOCATION "${CAP_LIBRARY}"
- INTERFACE_INCLUDE_DIRECTORIES "${CAP_INCLUDE_DIR}")
- endif()
-endif()
-
-mark_as_advanced(CAP_INCLUDE_DIR CAP_LIBRARY)
diff --git a/project/cmake/modules/FindCCache.cmake b/project/cmake/modules/FindCCache.cmake
deleted file mode 100644
index a7fd29faba..0000000000
--- a/project/cmake/modules/FindCCache.cmake
+++ /dev/null
@@ -1,18 +0,0 @@
-#.rst:
-# FindCCache
-# ----------
-# Finds ccache and sets it up as compiler wrapper.
-# This should ideally be called before the call to project().
-#
-# See: https://crascit.com/2016/04/09/using-ccache-with-cmake/
-
-find_program(CCACHE_PROGRAM ccache)
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(CCACHE REQUIRED_VARS CCACHE_PROGRAM)
-
-if(CCACHE_FOUND)
- # Supports Unix Makefiles and Ninja
- set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE "${CCACHE_PROGRAM}")
- set_property(GLOBAL PROPERTY RULE_LAUNCH_LINK "${CCACHE_PROGRAM}")
-endif()
diff --git a/project/cmake/modules/FindCEC.cmake b/project/cmake/modules/FindCEC.cmake
deleted file mode 100644
index bd6fd1d2da..0000000000
--- a/project/cmake/modules/FindCEC.cmake
+++ /dev/null
@@ -1,68 +0,0 @@
-#.rst:
-# FindCEC
-# -------
-# Finds the libCEC library
-#
-# This will will define the following variables::
-#
-# CEC_FOUND - system has libCEC
-# CEC_INCLUDE_DIRS - the libCEC include directory
-# CEC_LIBRARIES - the libCEC libraries
-# CEC_DEFINITIONS - the libCEC compile definitions
-#
-# and the following imported targets::
-#
-# CEC::CEC - The libCEC library
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_CEC libcec QUIET)
-endif()
-
-find_path(CEC_INCLUDE_DIR NAMES libcec/cec.h libCEC/CEC.h
- PATHS ${PC_CEC_INCLUDEDIR})
-
-if(PC_CEC_VERSION)
- set(CEC_VERSION ${PC_CEC_VERSION})
-elseif(CEC_INCLUDE_DIR AND EXISTS "${CEC_INCLUDE_DIR}/libcec/version.h")
- file(STRINGS "${CEC_INCLUDE_DIR}/libcec/version.h" cec_version_str REGEX "^[\t ]+LIBCEC_VERSION_TO_UINT\\(.*\\)")
- string(REGEX REPLACE "^[\t ]+LIBCEC_VERSION_TO_UINT\\(([0-9]+), ([0-9]+), ([0-9]+)\\)" "\\1.\\2.\\3" CEC_VERSION "${cec_version_str}")
- unset(cec_version_str)
-endif()
-
-if(NOT CEC_FIND_VERSION)
- set(CEC_FIND_VERSION 4.0.0)
-endif()
-
-include(FindPackageHandleStandardArgs)
-if(NOT WIN32)
- find_library(CEC_LIBRARY NAMES cec
- PATHS ${PC_CEC_LIBDIR})
-
- find_package_handle_standard_args(CEC
- REQUIRED_VARS CEC_LIBRARY CEC_INCLUDE_DIR
- VERSION_VAR CEC_VERSION)
-else()
- # Dynamically loaded DLL
- find_package_handle_standard_args(CEC
- REQUIRED_VARS CEC_INCLUDE_DIR
- VERSION_VAR CEC_VERSION)
-endif()
-
-if(CEC_FOUND)
- set(CEC_LIBRARIES ${CEC_LIBRARY})
- set(CEC_INCLUDE_DIRS ${CEC_INCLUDE_DIR})
- set(CEC_DEFINITIONS -DHAVE_LIBCEC=1)
-
- if(NOT TARGET CEC::CEC)
- add_library(CEC::CEC UNKNOWN IMPORTED)
- if(CEC_LIBRARY)
- set_target_properties(CEC::CEC PROPERTIES
- IMPORTED_LOCATION "${CEC_LIBRARY}")
- endif()
- set_target_properties(CEC::CEC PROPERTIES
- INTERFACE_INCLUDE_DIRECTORIES "${CEC_INCLUDE_DIR}"
- INTERFACE_COMPILE_DEFINITIONS HAVE_LIBCEC=1)
- endif()
-endif()
-
-mark_as_advanced(CEC_INCLUDE_DIR CEC_LIBRARY)
diff --git a/project/cmake/modules/FindCWiid.cmake b/project/cmake/modules/FindCWiid.cmake
deleted file mode 100644
index 88cfbef038..0000000000
--- a/project/cmake/modules/FindCWiid.cmake
+++ /dev/null
@@ -1,44 +0,0 @@
-#.rst:
-# FindCWiid
-# ---------
-# Finds the CWiid library
-#
-# This will will define the following variables::
-#
-# CWIID_FOUND - system has CWiid
-# CWIID_INCLUDE_DIRS - the CWiid include directory
-# CWIID_LIBRARIES - the CWiid libraries
-#
-# and the following imported targets::
-#
-# CWiid::CWiid - The CWiid library
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_CWIID cwiid QUIET)
-endif()
-
-find_path(CWIID_INCLUDE_DIR NAMES cwiid.h
- PATHS ${PC_CWIID_INCLUDEDIR})
-find_library(CWIID_LIBRARY NAMES cwiid
- PATHS ${PC_CWIID_LIBDIR})
-
-set(CWIID_VERSION ${PC_CWIID_VERSION})
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(CWIID
- REQUIRED_VARS CWIID_LIBRARY CWIID_INCLUDE_DIR
- VERSION_VAR CWIID_VERSION)
-
-if(CWIID_FOUND)
- set(CWIID_INCLUDE_DIRS ${CWIID_INCLUDE_DIR})
- set(CWIID_LIBRARIES ${CWIID_LIBRARY})
-
- if(NOT TARGET CWiid::CWiid)
- add_library(CWiid::CWiid UNKNOWN IMPORTED)
- set_target_properties(CWiid::CWiid PROPERTIES
- IMPORTED_LOCATION "${CWIID_LIBRARY}"
- INTERFACE_INCLUDE_DIRECTORIES "${CWIID_INCLUDE_DIR}")
- endif()
-endif()
-
-mark_as_advanced(CWIID_INCLUDE_DIR CWIID_LIBRARY)
diff --git a/project/cmake/modules/FindCXX11.cmake b/project/cmake/modules/FindCXX11.cmake
deleted file mode 100644
index c0b9a52d20..0000000000
--- a/project/cmake/modules/FindCXX11.cmake
+++ /dev/null
@@ -1,18 +0,0 @@
-include(TestCXXAcceptsFlag)
-
-# try to use compiler flag -std=c++11
-check_cxx_accepts_flag("-std=c++11" CXX_FLAG_CXX11)
-if(CXX_FLAG_CXX11)
- add_options (CXX ALL_BUILDS "-std=c++11")
- set(CXX_STD11_FLAGS "-std=c++11")
-else()
- # try to use compiler flag -std=c++0x for older compilers
- check_cxx_accepts_flag("-std=c++0x" CXX_FLAG_CXX0X)
- if(CXX_FLAG_CXX0X)
- add_options (CXX ALL_BUILDS "-std=c++0x")
- set(CXX_STD11_FLAGS "-std=c++0x")
- endif()
-endif()
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(CXX11 DEFAULT_MSG CXX_STD11_FLAGS)
diff --git a/project/cmake/modules/FindCdio.cmake b/project/cmake/modules/FindCdio.cmake
deleted file mode 100644
index aa089c26e6..0000000000
--- a/project/cmake/modules/FindCdio.cmake
+++ /dev/null
@@ -1,45 +0,0 @@
-#.rst:
-# FindCdio
-# --------
-# Finds the cdio library
-#
-# This will will define the following variables::
-#
-# CDIO_FOUND - system has cdio
-# CDIO_INCLUDE_DIRS - the cdio include directory
-# CDIO_LIBRARIES - the cdio libraries
-#
-# and the following imported targets::
-#
-# CDIO::CDIO - The cdio library
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_CDIO libcdio libiso9660 QUIET)
-endif()
-
-find_path(CDIO_INCLUDE_DIR NAMES cdio/cdio.h
- PATHS ${PC_CDIO_libcdio_INCLUDEDIR}
- ${PC_CDIO_libiso9660_INCLUDEDIR})
-find_library(CDIO_LIBRARY NAMES cdio
- PATHS ${CDIO_libcdio_LIBDIR} ${CDIO_libiso9660_LIBDIR})
-
-set(CDIO_VERSION ${PC_CDIO_libcdio_VERSION})
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(CDIO
- REQUIRED_VARS CDIO_LIBRARY CDIO_INCLUDE_DIR
- VERSION_VAR CDIO_VERSION)
-
-if(CDIO_FOUND)
- set(CDIO_LIBRARIES ${CDIO_LIBRARY})
- set(CDIO_INCLUDE_DIRS ${CDIO_INCLUDE_DIR})
-
- if(NOT TARGET CDIO::CDIO)
- add_library(CDIO::CDIO UNKNOWN IMPORTED)
- set_target_properties(CDIO::CDIO PROPERTIES
- IMPORTED_LOCATION "${CDIO_LIBRARY}"
- INTERFACE_INCLUDE_DIRECTORIES "${CDIO_INCLUDE_DIR}")
- endif()
-endif()
-
-mark_as_advanced(CDIO_INCLUDE_DIR CDIO_LIBRARY)
diff --git a/project/cmake/modules/FindCpluff.cmake b/project/cmake/modules/FindCpluff.cmake
deleted file mode 100644
index ce6c127cb5..0000000000
--- a/project/cmake/modules/FindCpluff.cmake
+++ /dev/null
@@ -1,61 +0,0 @@
-# - Builds Cpluff as external project
-# Once done this will define
-#
-# CPLUFF_FOUND - system has cpluff
-# CPLUFF_INCLUDE_DIRS - the cpluff include directories
-#
-# and link Kodi against the cpluff libraries.
-
-if(NOT WIN32)
- string(REPLACE ";" " " defines "${CMAKE_C_FLAGS} ${SYSTEM_DEFINES} -I${EXPAT_INCLUDE_DIR}")
- get_filename_component(expat_dir ${EXPAT_LIBRARY} DIRECTORY)
- set(ldflags "-L${expat_dir}")
-
- # iOS: Without specifying -arch, configure tries to use /bin/cpp as C-preprocessor
- # http://stackoverflow.com/questions/38836754/cant-cross-compile-c-library-for-arm-ios
- if(CORE_SYSTEM_NAME STREQUAL ios)
- set(cppflags "-arch ${CPU}")
- endif()
-
- ExternalProject_Add(libcpluff SOURCE_DIR ${CORE_SOURCE_DIR}/lib/cpluff
- BUILD_IN_SOURCE 1
- PREFIX ${CORE_BUILD_DIR}/cpluff
- CONFIGURE_COMMAND CC=${CMAKE_C_COMPILER} ${CORE_SOURCE_DIR}/lib/cpluff/configure
- --disable-nls
- --enable-static
- --disable-shared
- --with-pic
- --prefix=<INSTALL_DIR>
- --libdir=<INSTALL_DIR>/lib
- --host=${ARCH}
- CFLAGS=${defines}
- CPPFLAGS=${cppflags}
- LDFLAGS=${ldflags})
- ExternalProject_Add_Step(libcpluff autoreconf
- DEPENDEES download update patch
- DEPENDERS configure
- COMMAND rm -f config.status
- COMMAND PATH=${NATIVEPREFIX}/bin:$ENV{PATH} autoreconf -vif
- WORKING_DIRECTORY <SOURCE_DIR>)
-
- set(ldflags "${ldflags};-lexpat")
- core_link_library(${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/cpluff/lib/libcpluff.a
- system/libcpluff libcpluff extras "${ldflags}")
- set(CPLUFF_INCLUDE_DIRS ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/cpluff/include)
- set(CPLUFF_FOUND 1)
- mark_as_advanced(CPLUFF_INCLUDE_DIRS CPLUFF_FOUND)
-else()
- find_path(CPLUFF_INCLUDE_DIR cpluff.h)
-
- include(FindPackageHandleStandardArgs)
- find_package_handle_standard_args(CPLUFF
- REQUIRED_VARS CPLUFF_INCLUDE_DIR)
-
- if(CPLUFF_FOUND)
- set(CPLUFF_INCLUDE_DIRS ${CPLUFF_INCLUDE_DIR})
- endif()
- mark_as_advanced(CPLUFF_INCLUDE_DIRS CPLUFF_FOUND)
-
- add_custom_target(libcpluff)
-endif()
-set_target_properties(libcpluff PROPERTIES FOLDER "External Projects")
diff --git a/project/cmake/modules/FindCrossGUID.cmake b/project/cmake/modules/FindCrossGUID.cmake
deleted file mode 100644
index ba2823a7ae..0000000000
--- a/project/cmake/modules/FindCrossGUID.cmake
+++ /dev/null
@@ -1,78 +0,0 @@
-if(ENABLE_INTERNAL_CROSSGUID)
- include(ExternalProject)
- file(STRINGS ${CORE_SOURCE_DIR}/tools/depends/target/crossguid/Makefile VER)
- string(REGEX MATCH "VERSION=[^ ]*" CGUID_VER "${VER}")
- list(GET CGUID_VER 0 CGUID_VER)
- string(SUBSTRING "${CGUID_VER}" 8 -1 CGUID_VER)
-
- # allow user to override the download URL with a local tarball
- # needed for offline build envs
- if(CROSSGUID_URL)
- get_filename_component(CROSSGUID_URL "${CROSSGUID_URL}" ABSOLUTE)
- else()
- set(CROSSGUID_URL http://mirrors.kodi.tv/build-deps/sources/crossguid-${CGUID_VER}.tar.gz)
- endif()
- if(VERBOSE)
- message(STATUS "CROSSGUID_URL: ${CROSSGUID_URL}")
- endif()
-
- if(APPLE)
- set(EXTRA_ARGS "-DCMAKE_OSX_ARCHITECTURES=${CMAKE_OSX_ARCHITECTURES}")
- endif()
-
- set(CROSSGUID_LIBRARY ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/lib/libcrossguid.a)
- set(CROSSGUID_INCLUDE_DIR ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/include)
- externalproject_add(crossguid
- URL ${CROSSGUID_URL}
- DOWNLOAD_DIR ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/download
- PREFIX ${CORE_BUILD_DIR}/crossguid
- CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}
- -DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE}
- "${EXTRA_ARGS}"
- PATCH_COMMAND ${CMAKE_COMMAND} -E copy
- ${CORE_SOURCE_DIR}/tools/depends/target/crossguid/CMakeLists.txt
- <SOURCE_DIR> &&
- ${CMAKE_COMMAND} -E copy
- ${CORE_SOURCE_DIR}/tools/depends/target/crossguid/FindUUID.cmake
- <SOURCE_DIR> &&
- ${CMAKE_COMMAND} -E copy
- ${CORE_SOURCE_DIR}/tools/depends/target/crossguid/FindCXX11.cmake
- <SOURCE_DIR>
- BUILD_BYPRODUCTS ${CROSSGUID_LIBRARY})
- set_target_properties(crossguid PROPERTIES FOLDER "External Projects")
-
- include(FindPackageHandleStandardArgs)
- find_package_handle_standard_args(CrossGuid
- REQUIRED_VARS CROSSGUID_LIBRARY CROSSGUID_INCLUDE_DIR
- VERSION_VAR CGUID_VER)
-
- set(CROSSGUID_LIBRARIES ${CROSSGUID_LIBRARY})
- set(CROSSGUID_INCLUDE_DIRS ${CROSSGUID_INCLUDE_DIR})
-else()
- find_path(CROSSGUID_INCLUDE_DIR NAMES guid.h)
-
- find_library(CROSSGUID_LIBRARY_RELEASE NAMES crossguid)
- find_library(CROSSGUID_LIBRARY_DEBUG NAMES crossguidd)
-
- include(SelectLibraryConfigurations)
- select_library_configurations(CROSSGUID)
-
- include(FindPackageHandleStandardArgs)
- find_package_handle_standard_args(CrossGuid
- REQUIRED_VARS CROSSGUID_LIBRARY CROSSGUID_INCLUDE_DIR)
-
- if(CROSSGUID_FOUND)
- set(CROSSGUID_LIBRARIES ${CROSSGUID_LIBRARY})
- set(CROSSGUID_INCLUDE_DIRS ${CROSSGUID_INCLUDE_DIR})
-
- add_custom_target(crossguid)
- set_target_properties(crossguid PROPERTIES FOLDER "External Projects")
- endif()
- mark_as_advanced(CROSSGUID_INCLUDE_DIR CROSSGUID_LIBRARY)
-endif()
-
-if(NOT WIN32 AND NOT APPLE)
- find_package(UUID REQUIRED)
- list(APPEND CROSSGUID_INCLUDE_DIRS ${UUID_INCLUDE_DIRS})
- list(APPEND CROSSGUID_LIBRARIES ${UUID_LIBRARIES})
-endif()
diff --git a/project/cmake/modules/FindCurl.cmake b/project/cmake/modules/FindCurl.cmake
deleted file mode 100644
index ed4d81f387..0000000000
--- a/project/cmake/modules/FindCurl.cmake
+++ /dev/null
@@ -1,83 +0,0 @@
-#.rst:
-# FindCurl
-# --------
-# Finds the Curl library
-#
-# This will will define the following variables::
-#
-# CURL_FOUND - system has Curl
-# CURL_INCLUDE_DIRS - the Curl include directory
-# CURL_LIBRARIES - the Curl libraries
-# CURL_DEFINITIONS - the Curl definitions
-#
-# and the following imported targets::
-#
-# Curl::Curl - The Curl library
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_CURL libcurl QUIET)
-endif()
-
-find_path(CURL_INCLUDE_DIR NAMES curl/curl.h
- PATHS ${PC_CURL_INCLUDEDIR})
-find_library(CURL_LIBRARY NAMES curl libcurl
- PATHS ${PC_CURL_LIBDIR})
-
-set(CURL_VERSION ${PC_CURL_VERSION})
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(Curl
- REQUIRED_VARS CURL_LIBRARY CURL_INCLUDE_DIR
- VERSION_VAR CURL_VERSION)
-
-if(CURL_FOUND)
- set(CURL_INCLUDE_DIRS ${CURL_INCLUDE_DIR})
- set(CURL_LIBRARIES ${CURL_LIBRARY})
-
- # Check whether OpenSSL inside libcurl is static.
- if(UNIX)
- if(NOT DEFINED HAS_CURL_STATIC)
- get_filename_component(CURL_LIBRARY_DIR ${CURL_LIBRARY} DIRECTORY)
- find_soname(CURL REQUIRED)
-
- if(APPLE)
- set(libchecker nm)
- set(searchpattern "T [_]?CRYPTO_set_locking_call")
- else()
- set(libchecker readelf -s)
- set(searchpattern "CRYPTO_set_locking_call")
- endif()
- execute_process(
- COMMAND ${libchecker} ${CURL_LIBRARY_DIR}/${CURL_SONAME}
- COMMAND grep -Eq ${searchpattern}
- RESULT_VARIABLE HAS_CURL_STATIC)
- unset(libchecker)
- unset(searchpattern)
- if(HAS_CURL_STATIC EQUAL 0)
- set(HAS_CURL_STATIC TRUE)
- else()
- set(HAS_CURL_STATIC FALSE)
- endif()
- set(HAS_CURL_STATIC ${HAS_CURL_STATIC} CACHE INTERNAL
- "OpenSSL is statically linked into Curl")
- message(STATUS "OpenSSL is statically linked into Curl: ${HAS_CURL_STATIC}")
- endif()
- endif()
-
- if(HAS_CURL_STATIC)
- set(CURL_DEFINITIONS -DHAS_CURL_STATIC=1)
- endif()
-
- if(NOT TARGET Curl::Curl)
- add_library(Curl::Curl UNKNOWN IMPORTED)
- set_target_properties(Curl::Curl PROPERTIES
- IMPORTED_LOCATION "${CURL_LIBRARY}"
- INTERFACE_INCLUDE_DIRECTORIES "${CURL_INCLUDE_DIR}")
- if(HAS_CURL_STATIC)
- set_target_properties(Curl::Curl PROPERTIES
- INTERFACE_COMPILE_DEFINITIONS HAS_CURL_STATIC=1)
- endif()
- endif()
-endif()
-
-mark_as_advanced(CURL_INCLUDE_DIR CURL_LIBRARY)
diff --git a/project/cmake/modules/FindD3DX11Effects.cmake b/project/cmake/modules/FindD3DX11Effects.cmake
deleted file mode 100644
index d7468e1db1..0000000000
--- a/project/cmake/modules/FindD3DX11Effects.cmake
+++ /dev/null
@@ -1,30 +0,0 @@
-# - Finds D3DX11 dependencies
-# Once done this will define
-#
-# D3DCOMPILER_DLL - Path to the Direct3D Compiler
-# FXC - Path to the DirectX Effects Compiler (FXC)
-
-find_file(D3DCOMPILER_DLL
- NAMES d3dcompiler_47.dll d3dcompiler_46.dll
- PATHS
- "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\Microsoft\\Microsoft SDKs\\Windows\\v10.0;InstallationFolder]/Redist/D3D/x86"
- "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\Microsoft\\Microsoft SDKs\\Windows\\v8.1;InstallationFolder]/Redist/D3D/x86"
- "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\Microsoft\\Microsoft SDKs\\Windows\\v8.0;InstallationFolder]/Redist/D3D/x86"
- "$ENV{WindowsSdkDir}Redist/d3d/x86"
- NO_DEFAULT_PATH)
-if(NOT D3DCOMPILER_DLL)
- message(WARNING "Could NOT find Direct3D Compiler")
-endif()
-mark_as_advanced(D3DCOMPILER_DLL)
-copy_file_to_buildtree(${D3DCOMPILER_DLL} DIRECTORY .)
-
-find_program(FXC fxc
- PATHS
- "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\Microsoft\\Microsoft SDKs\\Windows\\v10.0;InstallationFolder]/bin/x86"
- "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\Microsoft\\Microsoft SDKs\\Windows\\v8.1;InstallationFolder]/bin/x86"
- "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\Microsoft\\Microsoft SDKs\\Windows\\v8.0;InstallationFolder]/bin/x86"
- "$ENV{WindowsSdkDir}bin/x86")
-if(NOT FXC)
- message(WARNING "Could NOT find DirectX Effects Compiler (FXC)")
-endif()
-mark_as_advanced(FXC)
diff --git a/project/cmake/modules/FindDBus.cmake b/project/cmake/modules/FindDBus.cmake
deleted file mode 100644
index 2d64af4ca2..0000000000
--- a/project/cmake/modules/FindDBus.cmake
+++ /dev/null
@@ -1,52 +0,0 @@
-#.rst:
-# FindDBUS
-# -------
-# Finds the DBUS library
-#
-# This will will define the following variables::
-#
-# DBUS_FOUND - system has DBUS
-# DBUS_INCLUDE_DIRS - the DBUS include directory
-# DBUS_LIBRARIES - the DBUS libraries
-# DBUS_DEFINITIONS - the DBUS definitions
-#
-# and the following imported targets::
-#
-# DBus::DBus - The DBUS library
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_DBUS dbus-1 QUIET)
-endif()
-
-find_path(DBUS_INCLUDE_DIR NAMES dbus/dbus.h
- PATH_SUFFIXES dbus-1.0
- PATHS ${PC_DBUS_INCLUDE_DIR})
-find_path(DBUS_ARCH_INCLUDE_DIR NAMES dbus/dbus-arch-deps.h
- PATH_SUFFIXES dbus-1.0/include
- PATHS ${PC_DBUS_LIBDIR}
- /usr/lib/${CMAKE_LIBRARY_ARCHITECTURE})
-find_library(DBUS_LIBRARY NAMES dbus-1
- PATHS ${PC_DBUS_LIBDIR})
-
-set(DBUS_VERSION ${PC_DBUS_VERSION})
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(DBus
- REQUIRED_VARS DBUS_LIBRARY DBUS_INCLUDE_DIR DBUS_ARCH_INCLUDE_DIR
- VERSION_VAR DBUS_VERSION)
-
-if(DBUS_FOUND)
- set(DBUS_LIBRARIES ${DBUS_LIBRARY})
- set(DBUS_INCLUDE_DIRS ${DBUS_INCLUDE_DIR} ${DBUS_ARCH_INCLUDE_DIR})
- set(DBUS_DEFINITIONS -DHAVE_DBUS=1)
-
- if(NOT TARGET DBus::DBus)
- add_library(DBus::DBus UNKNOWN IMPORTED)
- set_target_properties(DBus::DBus PROPERTIES
- IMPORTED_LOCATION "${DBUS_LIBRARY}"
- INTERFACE_INCLUDE_DIRECTORIES "${DBUS_INCLUDE_DIR}"
- INTERFACE_COMPILE_DEFINITIONS HAVE_DBUS=1)
- endif()
-endif()
-
-mark_as_advanced(DBUS_INCLUDE_DIR DBUS_LIBRARY)
diff --git a/project/cmake/modules/FindEGL.cmake b/project/cmake/modules/FindEGL.cmake
deleted file mode 100644
index 79bb176fe8..0000000000
--- a/project/cmake/modules/FindEGL.cmake
+++ /dev/null
@@ -1,48 +0,0 @@
-#.rst:
-# FindEGL
-# -------
-# Finds the EGL library
-#
-# This will will define the following variables::
-#
-# EGL_FOUND - system has EGL
-# EGL_INCLUDE_DIRS - the EGL include directory
-# EGL_LIBRARIES - the EGL libraries
-# EGL_DEFINITIONS - the EGL definitions
-#
-# and the following imported targets::
-#
-# EGL::EGL - The EGL library
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_EGL egl QUIET)
-endif()
-
-find_path(EGL_INCLUDE_DIR EGL/egl.h
- PATHS ${PC_EGL_INCLUDEDIR})
-
-find_library(EGL_LIBRARY NAMES EGL egl
- PATHS ${PC_EGL_LIBDIR})
-
-set(EGL_VERSION ${PC_EGL_VERSION})
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(EGL
- REQUIRED_VARS EGL_LIBRARY EGL_INCLUDE_DIR
- VERSION_VAR EGL_VERSION)
-
-if(EGL_FOUND)
- set(EGL_LIBRARIES ${EGL_LIBRARY})
- set(EGL_INCLUDE_DIRS ${EGL_INCLUDE_DIR})
- set(EGL_DEFINITIONS -DHAVE_LIBEGL=1)
-
- if(NOT TARGET EGL::EGL)
- add_library(EGL::EGL UNKNOWN IMPORTED)
- set_target_properties(EGL::EGL PROPERTIES
- IMPORTED_LOCATION "${EGL_LIBRARY}"
- INTERFACE_INCLUDE_DIRECTORIES "${EGL_INCLUDE_DIR}"
- INTERFACE_COMPILE_DEFINITIONS HAVE_LIBEGL=1)
- endif()
-endif()
-
-mark_as_advanced(EGL_INCLUDE_DIR EGL_LIBRARY)
diff --git a/project/cmake/modules/FindEMBEDDED.cmake b/project/cmake/modules/FindEMBEDDED.cmake
deleted file mode 100644
index 5e49716549..0000000000
--- a/project/cmake/modules/FindEMBEDDED.cmake
+++ /dev/null
@@ -1,16 +0,0 @@
-# - Try to find embedded platforms (RPI/IMX6)
-# Once done this will define
-#
-# EMBEDDED_FOUND - system is RPI / IMX6 and we most probably want to compile for GLES2 support
-# (don't configure for OpenGL)
-
-if(NOT CMAKE_SYSTEM_PROCESSOR)
- set(CMAKE_SYSTEM_PROCESSOR ${CPU})
-endif()
-
-string(REGEX MATCH "^arm" TARGET_ARCH_ARM "${CMAKE_SYSTEM_PROCESSOR}")
-if(NOT KODI_DEPENDSBUILD AND NOT TARGET_ARCH_ARM)
- return()
-endif()
-
-find_path(EMBEDDED_FOUND NAMES include/linux/imxfb.h include/bcm_host.h PATHS /opt/vc)
diff --git a/project/cmake/modules/FindFFMPEG.cmake b/project/cmake/modules/FindFFMPEG.cmake
deleted file mode 100644
index 3d7fcc8ca3..0000000000
--- a/project/cmake/modules/FindFFMPEG.cmake
+++ /dev/null
@@ -1,292 +0,0 @@
-# FindFFMPEG
-# --------
-# Finds FFmpeg libraries
-#
-# This module will first look for the required library versions on the system.
-# If they are not found, it will fall back to downloading and building kodi's own version
-#
-# --------
-# the following variables influence behaviour:
-# ENABLE_INTERNAL_FFMPEG - if enabled, kodi's own version will always be built
-#
-# FFMPEG_PATH - use external ffmpeg not found in system paths
-# usage: -DFFMPEG_PATH=/path/to/ffmpeg_install_prefix
-#
-# WITH_FFMPEG - use external ffmpeg not found in system paths
-# WARNING: this option is for developers as it will _disable ffmpeg version checks_!
-# Consider using FFMPEG_PATH instead, which _does_ check library versions
-# usage: -DWITH_FFMPEG=/path/to/ffmpeg_install_prefix
-#
-# --------
-# This module will will define the following variables:
-#
-# FFMPEG_FOUND - system has FFmpeg
-# FFMPEG_INCLUDE_DIRS - FFmpeg include directory
-# FFMPEG_LIBRARIES - FFmpeg libraries
-# FFMPEG_DEFINITIONS - pre-processor definitions
-# FFMPEG_LDFLAGS - linker flags
-#
-# and the following imported targets::
-#
-# ffmpeg - The FFmpeg libraries
-# --------
-#
-
-# required ffmpeg library versions
-set(REQUIRED_FFMPEG_VERSION 3.1)
-set(_avcodec_ver ">=57.48.101")
-set(_avfilter_ver ">=6.47.100")
-set(_avformat_ver ">=57.41.100")
-set(_avutil_ver ">=55.28.100")
-set(_swscale_ver ">=4.1.100")
-set(_swresample_ver ">=2.1.100")
-set(_postproc_ver ">=54.0.100")
-
-
-# Allows building with external ffmpeg not found in system paths,
-# without library version checks
-if(WITH_FFMPEG)
- set(FFMPEG_PATH ${WITH_FFMPEG})
- message(STATUS "Warning: FFmpeg version checking disabled")
- set(REQUIRED_FFMPEG_VERSION undef)
- unset(_avcodec_ver)
- unset(_avfilter_ver)
- unset(_avformat_ver)
- unset(_avutil_ver)
- unset(_swscale_ver)
- unset(_swresample_ver)
- unset(_postproc_ver)
-endif()
-
-# Allows building with external ffmpeg not found in system paths,
-# with library version checks
-if(FFMPEG_PATH)
- set(ENABLE_INTERNAL_FFMPEG OFF)
-endif()
-
-# external FFMPEG
-if(NOT ENABLE_INTERNAL_FFMPEG OR KODI_DEPENDSBUILD)
- if(FFMPEG_PATH)
- set(ENV{PKG_CONFIG_PATH} "${FFMPEG_PATH}/lib/pkgconfig")
- list(APPEND CMAKE_PREFIX_PATH ${FFMPEG_PATH})
- endif()
-
- set(FFMPEG_PKGS libavcodec${_avcodec_ver}
- libavfilter${_avfilter_ver}
- libavformat${_avformat_ver}
- libavutil${_avutil_ver}
- libswscale${_swscale_ver}
- libswresample${_swresample_ver}
- libpostproc${_postproc_ver})
-
- if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_FFMPEG ${FFMPEG_PKGS} QUIET)
- string(REGEX REPLACE "framework;" "framework " PC_FFMPEG_LDFLAGS "${PC_FFMPEG_LDFLAGS}")
- endif()
-
- find_path(FFMPEG_INCLUDE_DIRS libavcodec/avcodec.h libavfilter/avfilter.h libavformat/avformat.h
- libavutil/avutil.h libswscale/swscale.h libpostproc/postprocess.h
- PATH_SUFFIXES ffmpeg
- PATHS ${PC_FFMPEG_INCLUDE_DIRS}
- NO_DEFAULT_PATH)
- find_path(FFMPEG_INCLUDE_DIRS libavcodec/avcodec.h libavfilter/avfilter.h libavformat/avformat.h
- libavutil/avutil.h libswscale/swscale.h libpostproc/postprocess.h)
-
- find_library(FFMPEG_LIBAVCODEC
- NAMES avcodec libavcodec
- PATH_SUFFIXES ffmpeg/libavcodec
- PATHS ${PC_FFMPEG_libavcodec_LIBDIR}
- NO_DEFAULT_PATH)
- find_library(FFMPEG_LIBAVCODEC NAMES avcodec libavcodec PATH_SUFFIXES ffmpeg/libavcodec)
-
- find_library(FFMPEG_LIBAVFILTER
- NAMES avfilter libavfilter
- PATH_SUFFIXES ffmpeg/libavfilter
- PATHS ${PC_FFMPEG_libavfilter_LIBDIR}
- NO_DEFAULT_PATH)
- find_library(FFMPEG_LIBAVFILTER NAMES avfilter libavfilter PATH_SUFFIXES ffmpeg/libavfilter)
-
- find_library(FFMPEG_LIBAVFORMAT
- NAMES avformat libavformat
- PATH_SUFFIXES ffmpeg/libavformat
- PATHS ${PC_FFMPEG_libavformat_LIBDIR}
- NO_DEFAULT_PATH)
- find_library(FFMPEG_LIBAVFORMAT NAMES avformat libavformat PATH_SUFFIXES ffmpeg/libavformat)
-
- find_library(FFMPEG_LIBAVUTIL
- NAMES avutil libavutil
- PATH_SUFFIXES ffmpeg/libavutil
- PATHS ${PC_FFMPEG_libavutil_LIBDIR}
- NO_DEFAULT_PATH)
- find_library(FFMPEG_LIBAVUTIL NAMES avutil libavutil PATH_SUFFIXES ffmpeg/libavutil)
-
- find_library(FFMPEG_LIBSWSCALE
- NAMES swscale libswscale
- PATH_SUFFIXES ffmpeg/libswscale
- PATHS ${PC_FFMPEG_libswscale_LIBDIR}
- NO_DEFAULT_PATH)
- find_library(FFMPEG_LIBSWSCALE NAMES swscale libswscale PATH_SUFFIXES ffmpeg/libswscale)
-
- find_library(FFMPEG_LIBSWRESAMPLE
- NAMES swresample libswresample
- PATH_SUFFIXES ffmpeg/libswresample
- PATHS ${PC_FFMPEG_libswresample_LIBDIR}
- NO_DEFAULT_PATH)
- find_library(FFMPEG_LIBSWRESAMPLE NAMES NAMES swresample libswresample PATH_SUFFIXES ffmpeg/libswresample)
-
- find_library(FFMPEG_LIBPOSTPROC
- NAMES postproc libpostproc
- PATH_SUFFIXES ffmpeg/libpostproc
- PATHS ${PC_FFMPEG_libpostproc_LIBDIR}
- NO_DEFAULT_PATH)
- find_library(FFMPEG_LIBPOSTPROC NAMES postproc libpostproc PATH_SUFFIXES ffmpeg/libpostproc)
-
- if((PC_FFMPEG_FOUND
- AND PC_FFMPEG_libavcodec_VERSION
- AND PC_FFMPEG_libavfilter_VERSION
- AND PC_FFMPEG_libavformat_VERSION
- AND PC_FFMPEG_libavutil_VERSION
- AND PC_FFMPEG_libswscale_VERSION
- AND PC_FFMPEG_libswresample_VERSION
- AND PC_FFMPEG_libpostproc_VERSION)
- OR WIN32)
- set(FFMPEG_VERSION ${REQUIRED_FFMPEG_VERSION})
-
-
- include(FindPackageHandleStandardArgs)
- find_package_handle_standard_args(FFMPEG
- VERSION_VAR FFMPEG_VERSION
- REQUIRED_VARS FFMPEG_INCLUDE_DIRS
- FFMPEG_LIBAVCODEC
- FFMPEG_LIBAVFILTER
- FFMPEG_LIBAVFORMAT
- FFMPEG_LIBAVUTIL
- FFMPEG_LIBSWSCALE
- FFMPEG_LIBSWRESAMPLE
- FFMPEG_LIBPOSTPROC
- FFMPEG_VERSION
- FAIL_MESSAGE "FFmpeg ${REQUIRED_FFMPEG_VERSION} not found, please consider using -DENABLE_INTERNAL_FFMPEG=ON")
-
- else()
- message(STATUS "FFmpeg ${REQUIRED_FFMPEG_VERSION} not found, falling back to internal build")
- unset(FFMPEG_INCLUDE_DIRS)
- unset(FFMPEG_INCLUDE_DIRS CACHE)
- unset(FFMPEG_LIBRARIES)
- unset(FFMPEG_LIBRARIES CACHE)
- unset(FFMPEG_DEFINITIONS)
- unset(FFMPEG_DEFINITIONS CACHE)
- endif()
-
- if(FFMPEG_FOUND)
- set(FFMPEG_LDFLAGS ${PC_FFMPEG_LDFLAGS} CACHE STRING "ffmpeg linker flags")
-
- # check if ffmpeg libs are statically linked
- set(FFMPEG_LIB_TYPE SHARED)
- foreach(_fflib IN LISTS FFMPEG_LIBRARIES)
- if(${_fflib} MATCHES ".+\.a$" AND PC_FFMPEG_STATIC_LDFLAGS)
- set(FFMPEG_LDFLAGS ${PC_FFMPEG_STATIC_LDFLAGS} CACHE STRING "ffmpeg linker flags" FORCE)
- set(FFMPEG_LIB_TYPE STATIC)
- break()
- endif()
- endforeach()
-
- set(FFMPEG_LIBRARIES ${FFMPEG_LIBAVCODEC} ${FFMPEG_LIBAVFILTER}
- ${FFMPEG_LIBAVFORMAT} ${FFMPEG_LIBAVUTIL}
- ${FFMPEG_LIBSWSCALE} ${FFMPEG_LIBSWRESAMPLE}
- ${FFMPEG_LIBPOSTPROC} ${FFMPEG_LDFLAGS})
- list(APPEND FFMPEG_DEFINITIONS -DFFMPEG_VER_SHA=\"${FFMPEG_VERSION}\")
-
- if(NOT TARGET ffmpeg)
- add_library(ffmpeg ${FFMPEG_LIB_TYPE} IMPORTED)
- set_target_properties(ffmpeg PROPERTIES
- FOLDER "External Projects"
- IMPORTED_LOCATION "${FFMPEG_LIBRARIES}"
- INTERFACE_INCLUDE_DIRECTORIES "${FFMPEG_INCLUDE_DIRS}"
- INTERFACE_LINK_LIBRARIES "${FFMPEG_LDFLAGS}"
- INTERFACE_COMPILE_DEFINITIONS "${FFMPEG_DEFINITIONS}")
- endif()
- endif()
-endif()
-
-# Internal FFMPEG
-if(NOT FFMPEG_FOUND)
- include(ExternalProject)
- file(STRINGS ${CORE_SOURCE_DIR}/tools/depends/target/ffmpeg/FFMPEG-VERSION VER)
- string(REGEX MATCH "VERSION=[^ ]*$.*" FFMPEG_VER "${VER}")
- list(GET FFMPEG_VER 0 FFMPEG_VER)
- string(SUBSTRING "${FFMPEG_VER}" 8 -1 FFMPEG_VER)
- string(REGEX MATCH "BASE_URL=([^ ]*)" FFMPEG_BASE_URL "${VER}")
- list(GET FFMPEG_BASE_URL 0 FFMPEG_BASE_URL)
- string(SUBSTRING "${FFMPEG_BASE_URL}" 9 -1 FFMPEG_BASE_URL)
-
- # allow user to override the download URL with a local tarball
- # needed for offline build envs
- if(FFMPEG_URL)
- get_filename_component(FFMPEG_URL "${FFMPEG_URL}" ABSOLUTE)
- else()
- set(FFMPEG_URL ${FFMPEG_BASE_URL}/${FFMPEG_VER}.tar.gz)
- endif()
- if(VERBOSE)
- message(STATUS "FFMPEG_URL: ${FFMPEG_URL}")
- endif()
-
- if(KODI_DEPENDSBUILD)
- set(CROSS_ARGS -DDEPENDS_PATH=${DEPENDS_PATH}
- -DPKG_CONFIG_EXECUTABLE=${PKG_CONFIG_EXECUTABLE}
- -DCROSSCOMPILING=${CMAKE_CROSSCOMPILING}
- -DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE}
- -DCORE_SYSTEM_NAME=${CORE_SYSTEM_NAME}
- -DCPU=${WITH_CPU}
- -DOS=${OS}
- -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}
- -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}
- -DCMAKE_AR=${CMAKE_AR}
- -DCMAKE_C_FLAGS=${CMAKE_C_FLAGS}
- -DCMAKE_EXE_LINKER_FLAGS=${CMAKE_EXE_LINKER_FLAGS})
- endif()
-
- externalproject_add(ffmpeg
- URL ${FFMPEG_URL}
- DOWNLOAD_NAME ffmpeg-${FFMPEG_VER}.tar.gz
- DOWNLOAD_DIR ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/download
- PREFIX ${CORE_BUILD_DIR}/ffmpeg
- CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}
- -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
- -DFFMPEG_VER=${FFMPEG_VER}
- -DCORE_SYSTEM_NAME=${CORE_SYSTEM_NAME}
- ${CROSS_ARGS}
- PATCH_COMMAND ${CMAKE_COMMAND} -E copy
- ${CORE_SOURCE_DIR}/tools/depends/target/ffmpeg/CMakeLists.txt
- <SOURCE_DIR> &&
- ${CMAKE_COMMAND} -E copy
- ${CORE_SOURCE_DIR}/tools/depends/target/ffmpeg/FindGnuTls.cmake
- <SOURCE_DIR>)
-
- file(WRITE ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/ffmpeg/ffmpeg-link-wrapper
-"#!/bin/bash
-if [[ $@ == *${APP_NAME_LC}.bin* || $@ == *${APP_NAME_LC}.so* || $@ == *${APP_NAME_LC}-test* ]]
-then
- avformat=`PKG_CONFIG_PATH=${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/lib/pkgconfig ${PKG_CONFIG_EXECUTABLE} --libs --static libavcodec`
- avcodec=`PKG_CONFIG_PATH=${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/lib/pkgconfig ${PKG_CONFIG_EXECUTABLE} --libs --static libavformat`
- avfilter=`PKG_CONFIG_PATH=${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/lib/pkgconfig ${PKG_CONFIG_EXECUTABLE} --libs --static libavfilter`
- avutil=`PKG_CONFIG_PATH=${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/lib/pkgconfig ${PKG_CONFIG_EXECUTABLE} --libs --static libavutil`
- swscale=`PKG_CONFIG_PATH=${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/lib/pkgconfig ${PKG_CONFIG_EXECUTABLE} --libs --static libswscale`
- swresample=`PKG_CONFIG_PATH=${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/lib/pkgconfig ${PKG_CONFIG_EXECUTABLE} --libs --static libswresample`
- gnutls=`PKG_CONFIG_PATH=${DEPENDS_PATH}/lib/pkgconfig/ ${PKG_CONFIG_EXECUTABLE} --libs-only-l --static --silence-errors gnutls`
- $@ $avcodec $avformat $avcodec $avfilter $swscale $swresample -lpostproc $gnutls
-else
- $@
-fi")
- file(COPY ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/ffmpeg/ffmpeg-link-wrapper
- DESTINATION ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}
- FILE_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE)
- set(FFMPEG_LINK_EXECUTABLE "${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/ffmpeg-link-wrapper <CMAKE_CXX_COMPILER> <FLAGS> <CMAKE_CXX_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> -o <TARGET> <LINK_LIBRARIES>" PARENT_SCOPE)
- set(FFMPEG_CREATE_SHARED_LIBRARY "${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/ffmpeg-link-wrapper <CMAKE_CXX_COMPILER> <CMAKE_SHARED_LIBRARY_CXX_FLAGS> <LANGUAGE_COMPILE_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS> <SONAME_FLAG><TARGET_SONAME> -o <TARGET> <OBJECTS> <LINK_LIBRARIES>" PARENT_SCOPE)
- set(FFMPEG_INCLUDE_DIRS ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/include)
- list(APPEND FFMPEG_DEFINITIONS -DFFMPEG_VER_SHA=\"${FFMPEG_VER}\"
- -DUSE_STATIC_FFMPEG=1)
- set(FFMPEG_FOUND 1)
- set_target_properties(ffmpeg PROPERTIES FOLDER "External Projects")
-endif()
-
-mark_as_advanced(FFMPEG_INCLUDE_DIRS FFMPEG_LIBRARIES FFMPEG_LDFLAGS FFMPEG_DEFINITIONS FFMPEG_FOUND)
diff --git a/project/cmake/modules/FindFreeType.cmake b/project/cmake/modules/FindFreeType.cmake
deleted file mode 100644
index fb4c668b7b..0000000000
--- a/project/cmake/modules/FindFreeType.cmake
+++ /dev/null
@@ -1,45 +0,0 @@
-#.rst:
-# FindFreetype
-# ------------
-# Finds the FreeType library
-#
-# This will will define the following variables::
-#
-# FREETYPE_FOUND - system has FreeType
-# FREETYPE_INCLUDE_DIRS - the FreeType include directory
-# FREETYPE_LIBRARIES - the FreeType libraries
-#
-# and the following imported targets::
-#
-# FreeType::FreeType - The FreeType library
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_FREETYPE freetype2 QUIET)
-endif()
-
-find_path(FREETYPE_INCLUDE_DIR NAMES freetype/freetype.h freetype.h
- PATHS ${PC_FREETYPE_INCLUDEDIR}
- ${PC_FREETYPE_INCLUDE_DIRS})
-find_library(FREETYPE_LIBRARY NAMES freetype freetype246MT
- PATHS ${PC_FREETYPE_LIBDIR})
-
-set(FREETYPE_VERSION ${PC_FREETYPE_VERSION})
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(FreeType
- REQUIRED_VARS FREETYPE_LIBRARY FREETYPE_INCLUDE_DIR
- VERSION_VAR FREETYPE_VERSION)
-
-if(FREETYPE_FOUND)
- set(FREETYPE_LIBRARIES ${FREETYPE_LIBRARY})
- set(FREETYPE_INCLUDE_DIRS ${FREETYPE_INCLUDE_DIR})
-
- if(NOT TARGET FreeType::FreeType)
- add_library(FreeType::FreeType UNKNOWN IMPORTED)
- set_target_properties(FreeType::FreeType PROPERTIES
- IMPORTED_LOCATION "${FREETYPE_LIBRARY}"
- INTERFACE_INCLUDE_DIRECTORIES "${FREETYPE_INCLUDE_DIR}")
- endif()
-endif()
-
-mark_as_advanced(FREETYPE_INCLUDE_DIR FREETYPE_LIBRARY)
diff --git a/project/cmake/modules/FindFribidi.cmake b/project/cmake/modules/FindFribidi.cmake
deleted file mode 100644
index dcaeb48b7d..0000000000
--- a/project/cmake/modules/FindFribidi.cmake
+++ /dev/null
@@ -1,48 +0,0 @@
-#.rst:
-# FindFribidi
-# -----------
-# Finds the GNU FriBidi library
-#
-# This will will define the following variables::
-#
-# FRIBIDI_FOUND - system has FriBidi
-# FRIBIDI_INCLUDE_DIRS - the FriBidi include directory
-# FRIBIDI_LIBRARIES - the FriBidi libraries
-#
-# and the following imported targets::
-#
-# FriBidi::FriBidi - The FriBidi library
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_FRIBIDI fribidi QUIET)
-endif()
-
-find_path(FRIBIDI_INCLUDE_DIR NAMES fribidi/fribidi.h
- PATHS ${PC_FRIBIDI_INCLUDEDIR})
-find_library(FRIBIDI_LIBRARY NAMES fribidi libfribidi
- PATHS ${PC_FRIBIDI_LIBDIR})
-
-set(FRIBIDI_VERSION ${PC_FRIBIDI_VERSION})
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(FriBidi
- REQUIRED_VARS FRIBIDI_LIBRARY FRIBIDI_INCLUDE_DIR
- VERSION_VAR FRIBIDI_VERSION)
-
-if(FRIBIDI_FOUND)
- set(FRIBIDI_LIBRARIES ${FRIBIDI_LIBRARY})
- set(FRIBIDI_INCLUDE_DIRS ${FRIBIDI_INCLUDE_DIR})
- if(PC_FRIBIDI_CFLAGS)
- set(FRIBIDI_DEFINITIONS ${PC_FRIBIDI_CFLAGS})
- endif()
-
- if(NOT TARGET FriBidi::FriBidi)
- add_library(FriBidi::FriBidi UNKNOWN IMPORTED)
- set_target_properties(FriBidi::FriBidi PROPERTIES
- IMPORTED_LOCATION "${FRIBIDI_LIBRARY}"
- INTERFACE_INCLUDE_DIRECTORIES "${FRIBIDI_INCLUDE_DIR}"
- INTERFACE_COMPILE_OPTIONS "${FRIBIDI_DEFINITIONS}")
- endif()
-endif()
-
-mark_as_advanced(FRIBIDI_INCLUDE_DIR FRIBIDI_LIBRARY)
diff --git a/project/cmake/modules/FindGIF.cmake b/project/cmake/modules/FindGIF.cmake
deleted file mode 100644
index 8649bd4f47..0000000000
--- a/project/cmake/modules/FindGIF.cmake
+++ /dev/null
@@ -1,46 +0,0 @@
-#.rst:
-# FindGIF
-# -------
-# Finds the libgif library
-#
-# This will will define the following variables::
-#
-# GIF_FOUND - system has libgif
-# GIF_INCLUDE_DIRS - the libgif include directory
-# GIF_LIBRARIES - the libgif libraries
-#
-# and the following imported targets::
-#
-# GIF::GIF - The libgif library
-
-find_path(GIF_INCLUDE_DIR gif_lib.h)
-
-include(FindPackageHandleStandardArgs)
-if(NOT WIN32)
- find_library(GIF_LIBRARY NAMES gif)
- find_package_handle_standard_args(GIF
- REQUIRED_VARS GIF_LIBRARY GIF_INCLUDE_DIR)
-else()
- # Dynamically loaded DLL
- find_package_handle_standard_args(GIF
- REQUIRED_VARS GIF_INCLUDE_DIR)
-endif()
-
-if(GIF_FOUND)
- set(GIF_LIBRARIES ${GIF_LIBRARY})
- set(GIF_INCLUDE_DIRS ${GIF_INCLUDE_DIR})
- set(GIF_DEFINITIONS -DHAVE_LIBGIF=1)
-
- if(NOT TARGET GIF::GIF)
- add_library(GIF::GIF UNKNOWN IMPORTED)
- if(GIF_LIBRARY)
- set_target_properties(GIF::GIF PROPERTIES
- IMPORTED_LOCATION "${GIF_LIBRARY}")
- endif()
- set_target_properties(GIF::GIF PROPERTIES
- INTERFACE_INCLUDE_DIRECTORIES "${GIF_INCLUDE_DIR}"
- INTERFACE_COMPILE_DEFINITIONS HAVE_LIBGIF=1)
- endif()
-endif()
-
-mark_as_advanced(GIF_INCLUDE_DIR GIF_LIBRARY)
diff --git a/project/cmake/modules/FindJsonSchemaBuilder.cmake b/project/cmake/modules/FindJsonSchemaBuilder.cmake
deleted file mode 100644
index 3bffb4831c..0000000000
--- a/project/cmake/modules/FindJsonSchemaBuilder.cmake
+++ /dev/null
@@ -1,21 +0,0 @@
-#.rst:
-# FindJsonSchemaBuilder
-# ---------------------
-# Finds the JsonSchemaBuilder
-#
-# This will define the following (imported) targets::
-#
-# JsonSchemaBuilder::JsonSchemaBuilder - The JsonSchemaBuilder executable
-
-if(NOT TARGET JsonSchemaBuilder::JsonSchemaBuilder)
- if(KODI_DEPENDSBUILD OR CMAKE_CROSSCOMPILING)
- add_executable(JsonSchemaBuilder::JsonSchemaBuilder IMPORTED GLOBAL)
- set_target_properties(JsonSchemaBuilder::JsonSchemaBuilder PROPERTIES
- IMPORTED_LOCATION "${NATIVEPREFIX}/bin/JsonSchemaBuilder")
- set_target_properties(JsonSchemaBuilder::JsonSchemaBuilder PROPERTIES FOLDER Tools)
- else()
- add_subdirectory(${CORE_SOURCE_DIR}/tools/depends/native/JsonSchemaBuilder build/jsonschemabuilder)
- add_executable(JsonSchemaBuilder::JsonSchemaBuilder ALIAS JsonSchemaBuilder)
- set_target_properties(JsonSchemaBuilder PROPERTIES FOLDER Tools)
- endif()
-endif()
diff --git a/project/cmake/modules/FindLibDRM.cmake b/project/cmake/modules/FindLibDRM.cmake
deleted file mode 100644
index 35d632e7f3..0000000000
--- a/project/cmake/modules/FindLibDRM.cmake
+++ /dev/null
@@ -1,45 +0,0 @@
-#.rst:
-# FindLibDRM
-# ----------
-# Finds the LibDRM library
-#
-# This will will define the following variables::
-#
-# LIBDRM_FOUND - system has LibDRM
-# LIBDRM_INCLUDE_DIRS - the LibDRM include directory
-# LIBDRM_LIBRARIES - the LibDRM libraries
-#
-# and the following imported targets::
-#
-# LibDRM::LibDRM - The LibDRM library
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_LIBDRM libdrm QUIET)
-endif()
-
-find_path(LIBDRM_INCLUDE_DIR NAMES drm.h
- PATH_SUFFIXES libdrm drm
- PATHS ${PC_LIBDRM_INCLUDEDIR})
-find_library(LIBDRM_LIBRARY NAMES drm
- PATHS ${PC_LIBDRM_LIBDIR})
-
-set(LIBDRM_VERSION ${PC_LIBDRM_VERSION})
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(LibDRM
- REQUIRED_VARS LIBDRM_LIBRARY LIBDRM_INCLUDE_DIR
- VERSION_VAR LIBDRM_VERSION)
-
-if(LIBDRM_FOUND)
- set(LIBDRM_LIBRARIES ${LIBDRM_LIBRARY})
- set(LIBDRM_INCLUDE_DIRS ${LIBDRM_INCLUDE_DIR})
-
- if(NOT TARGET LIBDRM::LIBDRM)
- add_library(LIBDRM::LIBDRM UNKNOWN IMPORTED)
- set_target_properties(LIBDRM::LIBDRM PROPERTIES
- IMPORTED_LOCATION "${LIBDRM_LIBRARY}"
- INTERFACE_INCLUDE_DIRECTORIES "${LIBDRM_INCLUDE_DIR}")
- endif()
-endif()
-
-mark_as_advanced(LIBDRM_INCLUDE_DIR LIBDRM_LIBRARY)
diff --git a/project/cmake/modules/FindLibDvd.cmake b/project/cmake/modules/FindLibDvd.cmake
deleted file mode 100644
index 1f02b5f226..0000000000
--- a/project/cmake/modules/FindLibDvd.cmake
+++ /dev/null
@@ -1,219 +0,0 @@
-if(NOT WIN32)
- if(KODI_DEPENDSBUILD)
- set(_dvdlibs dvdread dvdnav)
- set(_handlevars LIBDVD_INCLUDE_DIRS DVDREAD_LIBRARY DVDNAV_LIBRARY)
- if(ENABLE_DVDCSS)
- list(APPEND _dvdlibs libdvdcss)
- list(APPEND _handlevars DVDCSS_LIBRARY)
- endif()
-
- if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_DVD ${_dvdlibs} QUIET)
- endif()
-
- find_path(LIBDVD_INCLUDE_DIRS dvdnav/dvdnav.h PATHS ${PC_DVD_INCLUDE_DIRS})
- find_library(DVDREAD_LIBRARY NAMES dvdread libdvdread PATHS ${PC_DVD_dvdread_LIBDIR})
- find_library(DVDNAV_LIBRARY NAMES dvdnav libdvdnav PATHS ${PC_DVD_dvdnav_LIBDIR})
- if(ENABLE_DVDCSS)
- find_library(DVDCSS_LIBRARY NAMES dvdcss libdvdcss PATHS ${PC_DVD_libdvdcss_LIBDIR})
- endif()
-
- include(FindPackageHandleStandardArgs)
- find_package_handle_standard_args(LIBDVD REQUIRED_VARS ${_handlevars})
- if(LIBDVD_FOUND)
- add_library(dvdnav UNKNOWN IMPORTED)
- set_target_properties(dvdnav PROPERTIES
- FOLDER "External Projects"
- IMPORTED_LOCATION "${DVDNAV_LIBRARY}")
-
- add_library(dvdread UNKNOWN IMPORTED)
- set_target_properties(dvdread PROPERTIES
- FOLDER "External Projects"
- IMPORTED_LOCATION "${DVDREAD_LIBRARY}")
- add_library(dvdcss UNKNOWN IMPORTED)
- set_target_properties(dvdcss PROPERTIES
- FOLDER "External Projects"
- IMPORTED_LOCATION "${DVDCSS_LIBRARY}")
-
- set(_linklibs ${DVDREAD_LIBRARY})
- if(ENABLE_DVDCSS)
- list(APPEND _linklibs ${DVDCSS_LIBRARY})
- endif()
- core_link_library(${DVDNAV_LIBRARY} system/players/VideoPlayer/libdvdnav dvdnav archives "${_linklibs}")
- set(LIBDVD_LIBRARIES ${DVDNAV_LIBRARY})
- mark_as_advanced(LIBDVD_INCLUDE_DIRS LIBDVD_LIBRARIES)
- endif()
- else()
- set(dvdlibs libdvdread libdvdnav)
- if(ENABLE_DVDCSS)
- list(APPEND dvdlibs libdvdcss)
- endif()
- foreach(dvdlib ${dvdlibs})
- file(GLOB VERSION_FILE ${CORE_SOURCE_DIR}/tools/depends/target/${dvdlib}/DVD*-VERSION)
- file(STRINGS ${VERSION_FILE} VER)
- string(REGEX MATCH "VERSION=[^ ]*$.*" ${dvdlib}_VER "${VER}")
- list(GET ${dvdlib}_VER 0 ${dvdlib}_VER)
- string(SUBSTRING "${${dvdlib}_VER}" 8 -1 ${dvdlib}_VER)
- string(REGEX MATCH "BASE_URL=([^ ]*)" ${dvdlib}_BASE_URL "${VER}")
- list(GET ${dvdlib}_BASE_URL 0 ${dvdlib}_BASE_URL)
- string(SUBSTRING "${${dvdlib}_BASE_URL}" 9 -1 ${dvdlib}_BASE_URL)
- string(TOUPPER ${dvdlib} DVDLIB)
-
- # allow user to override the download URL with a local tarball
- # needed for offline build envs
- # allow upper and lowercase var name
- if(${dvdlib}_URL)
- set(${DVDLIB}_URL ${${dvdlib}_URL})
- endif()
- if(${DVDLIB}_URL)
- get_filename_component(${DVDLIB}_URL "${${DVDLIB}_URL}" ABSOLUTE)
- else()
- set(${DVDLIB}_URL ${${dvdlib}_BASE_URL}/archive/${${dvdlib}_VER}.tar.gz)
- endif()
- if(VERBOSE)
- message(STATUS "${DVDLIB}_URL: ${${DVDLIB}_URL}")
- endif()
- endforeach()
-
- set(DVDREAD_CFLAGS "${DVDREAD_CFLAGS} -I${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/libdvd/include")
- if(CMAKE_CROSSCOMPILING)
- set(EXTRA_FLAGS "CC=${CMAKE_C_COMPILER}")
- endif()
-
- if(APPLE)
- set(CMAKE_LD_FLAGS "-framework IOKit -framework CoreFoundation")
- endif()
-
- set(HOST_ARCH ${ARCH})
- if(CORE_SYSTEM_NAME STREQUAL android)
- if(ARCH STREQUAL arm)
- set(HOST_ARCH arm-linux-androideabi)
- elseif(ARCH STREQUAL aarch64)
- set(HOST_ARCH aarch64-linux-android)
- elseif(ARCH STREQUAL i486-linux)
- set(HOST_ARCH i686-linux-android)
- endif()
- endif()
-
- if(ENABLE_DVDCSS)
- set(DVDCSS_LIBRARY ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/libdvd/lib/libdvdcss.a)
- ExternalProject_Add(dvdcss URL ${LIBDVDCSS_URL}
- DOWNLOAD_NAME libdvdcss-${libdvdcss_VER}.tar.gz
- DOWNLOAD_DIR ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/download
- PREFIX ${CORE_BUILD_DIR}/libdvd
- CONFIGURE_COMMAND ac_cv_path_GIT= <SOURCE_DIR>/configure
- --target=${HOST_ARCH}
- --host=${HOST_ARCH}
- --disable-doc
- --enable-static
- --disable-shared
- --with-pic
- --prefix=<INSTALL_DIR>
- --libdir=<INSTALL_DIR>/lib
- "${EXTRA_FLAGS}"
- "CFLAGS=${CMAKE_C_FLAGS} ${DVDREAD_CFLAGS}"
- "LDFLAGS=${CMAKE_LD_FLAGS}"
- BUILD_BYPRODUCTS ${DVDCSS_LIBRARY})
- ExternalProject_Add_Step(dvdcss autoreconf
- DEPENDEES download update patch
- DEPENDERS configure
- COMMAND PATH=${NATIVEPREFIX}/bin:$ENV{PATH} autoreconf -vif
- WORKING_DIRECTORY <SOURCE_DIR>)
-
- set_target_properties(dvdcss PROPERTIES FOLDER "External Projects")
- endif()
-
- set(DVDREAD_CFLAGS "-D_XBMC")
- if(ENABLE_DVDCSS)
- set(DVDREAD_CFLAGS "${DVDREAD_CFLAGS} -DHAVE_DVDCSS_DVDCSS_H -I${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/libdvd/include")
- endif()
-
- set(DVDREAD_LIBRARY ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/libdvd/lib/libdvdread.a)
- ExternalProject_Add(dvdread URL ${LIBDVDREAD_URL}
- DOWNLOAD_NAME libdvdread-${libdvdread_VER}.tar.gz
- DOWNLOAD_DIR ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/download
- PREFIX ${CORE_BUILD_DIR}/libdvd
- CONFIGURE_COMMAND ac_cv_path_GIT= <SOURCE_DIR>/configure
- --target=${HOST_ARCH}
- --host=${HOST_ARCH}
- --enable-static
- --disable-shared
- --with-pic
- --prefix=<INSTALL_DIR>
- --libdir=<INSTALL_DIR>/lib
- "${EXTRA_FLAGS}"
- "CFLAGS=${CMAKE_C_FLAGS} ${DVDREAD_CFLAGS}"
- "LDFLAGS=${CMAKE_LD_FLAGS}"
- BUILD_BYPRODUCTS ${DVDREAD_LIBRARY})
- ExternalProject_Add_Step(dvdread autoreconf
- DEPENDEES download update patch
- DEPENDERS configure
- COMMAND PATH=${NATIVEPREFIX}/bin:$ENV{PATH} autoreconf -vif
- WORKING_DIRECTORY <SOURCE_DIR>)
- if(ENABLE_DVDCSS)
- add_dependencies(dvdread dvdcss)
- endif()
-
- set_target_properties(dvdread PROPERTIES FOLDER "External Projects")
-
- if(ENABLE_DVDCSS)
- set(DVDNAV_LIBS -ldvdcss)
- endif()
-
- set(DVDNAV_LIBRARY ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/libdvd/lib/libdvdnav.a)
- ExternalProject_Add(dvdnav URL ${LIBDVDNAV_URL}
- DOWNLOAD_NAME libdvdnav-${libdvdnav_VER}.tar.gz
- DOWNLOAD_DIR ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/download
- PREFIX ${CORE_BUILD_DIR}/libdvd
- CONFIGURE_COMMAND ac_cv_path_GIT= <SOURCE_DIR>/configure
- --target=${HOST_ARCH}
- --host=${HOST_ARCH}
- --enable-static
- --disable-shared
- --with-pic
- --prefix=${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/libdvd
- --libdir=${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/libdvd/lib
- "${EXTRA_FLAGS}"
- "LDFLAGS=${CMAKE_LD_FLAGS} -L${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/libdvd/lib"
- "CFLAGS=${CMAKE_C_FLAGS} ${DVDREAD_CFLAGS}"
- "DVDREAD_CFLAGS=${DVDREAD_CFLAGS}"
- "DVDREAD_LIBS=${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/libdvd/lib/libdvdread.la"
- "LIBS=${DVDNAV_LIBS}"
- BUILD_BYPRODUCTS ${DVDNAV_LIBRARY})
- ExternalProject_Add_Step(dvdnav autoreconf
- DEPENDEES download update patch
- DEPENDERS configure
- COMMAND PATH=${NATIVEPREFIX}/bin:$ENV{PATH} autoreconf -vif
- WORKING_DIRECTORY <SOURCE_DIR>)
- add_dependencies(dvdnav dvdread)
- set_target_properties(dvdnav PROPERTIES FOLDER "External Projects")
-
- set(_dvdlibs ${DVDREAD_LIBRARY} ${DVDCSS_LIBRARY})
- # link a shared dvdnav library that includes the whole archives of dvdread and dvdcss as well
- # the quotes around _dvdlibs are on purpose, since we want to pass a list to the function that will be unpacked automatically
- core_link_library(${DVDNAV_LIBRARY} system/players/VideoPlayer/libdvdnav dvdnav archives "${_dvdlibs}")
-
- set(LIBDVD_INCLUDE_DIRS ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/libdvd/include)
- set(LIBDVD_LIBRARIES ${DVDNAV_LIBRARY} ${DVDREAD_LIBRARY})
- if(ENABLE_DVDCSS)
- list(APPEND LIBDVD_LIBRARIES ${DVDCSS_LIBRARY})
- endif()
- set(LIBDVD_LIBRARIES ${LIBDVD_LIBRARIES} CACHE STRING "libdvd libraries" FORCE)
- set(LIBDVD_FOUND 1 CACHE BOOL "libdvd found" FORCE)
- endif()
-else()
- # Dynamically loaded on Windows
- find_path(LIBDVD_INCLUDE_DIR dvdcss/dvdcss.h PATHS ${CORE_SOURCE_DIR}/lib/libdvd/include)
-
- include(FindPackageHandleStandardArgs)
- find_package_handle_standard_args(LIBDVD REQUIRED_VARS LIBDVD_INCLUDE_DIR)
-
- if(LIBDVD_FOUND)
- set(LIBDVD_INCLUDE_DIRS ${LIBDVD_INCLUDE_DIR})
-
- add_custom_target(dvdnav)
- set_target_properties(dvdnav PROPERTIES FOLDER "External Projects")
- endif()
-
- mark_as_advanced(LIBDVD_INCLUDE_DIR)
-endif()
diff --git a/project/cmake/modules/FindLibUSB.cmake b/project/cmake/modules/FindLibUSB.cmake
deleted file mode 100644
index e976bf48e4..0000000000
--- a/project/cmake/modules/FindLibUSB.cmake
+++ /dev/null
@@ -1,45 +0,0 @@
-#.rst:
-# FindLibUSB
-# ----------
-# Finds the USB library
-#
-# This will will define the following variables::
-#
-# LIBUSB_FOUND - system has LibUSB
-# LIBUSB_INCLUDE_DIRS - the USB include directory
-# LIBUSB_LIBRARIES - the USB libraries
-#
-# and the following imported targets::
-#
-# LibUSB::LibUSB - The USB library
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_LIBUSB libusb QUIET)
-endif()
-
-find_path(LIBUSB_INCLUDE_DIR usb.h
- PATHS ${PC_LIBUSB_INCLUDEDIR})
-find_library(LIBUSB_LIBRARY NAMES usb
- PATHS ${PC_LIBUSB_INCLUDEDIR})
-set(LIBUSB_VERSION ${PC_LIBUSB_VERSION})
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(LIBUSB
- REQUIRED_VARS LIBUSB_LIBRARY LIBUSB_INCLUDE_DIR
- VERSION_VAR LIBUSB_VERSION)
-
-if(LIBUSB_FOUND)
- set(LIBUSB_INCLUDE_DIRS ${LIBUSB_INCLUDE_DIR})
- set(LIBUSB_LIBRARIES ${LIBUSB_LIBRARY})
- set(LIBUSB_DEFINITIONS -DUSE_LIBUSB=1)
-
- if(NOT TARGET LibUSB::LibUSB)
- add_library(LibUSB::LibUSB UNKNOWN IMPORTED)
- set_target_properties(LibUSB::LibUSB PROPERTIES
- IMPORTED_LOCATION "${LIBUSB_LIBRARY}"
- INTERFACE_INCLUDE_DIRECTORIES "${LIBUSB_INCLUDE_DIR}"
- INTERFACE_COMPILE_DEFINITIONS USE_LIBUSB=1)
- endif()
-endif()
-
-mark_as_advanced(USB_INCLUDE_DIR USB_LIBRARY)
diff --git a/project/cmake/modules/FindLibXml2.cmake b/project/cmake/modules/FindLibXml2.cmake
deleted file mode 100644
index caeb9459fa..0000000000
--- a/project/cmake/modules/FindLibXml2.cmake
+++ /dev/null
@@ -1,84 +0,0 @@
-#.rst:
-# FindLibXml2
-# -----------
-#
-# Try to find the LibXml2 xml processing library
-#
-# Once done this will define
-#
-# ::
-#
-# LIBXML2_FOUND - System has LibXml2
-# LIBXML2_INCLUDE_DIR - The LibXml2 include directory
-# LIBXML2_LIBRARIES - The libraries needed to use LibXml2
-# LIBXML2_DEFINITIONS - Compiler switches required for using LibXml2
-# LIBXML2_XMLLINT_EXECUTABLE - The XML checking tool xmllint coming with LibXml2
-# LIBXML2_VERSION_STRING - the version of LibXml2 found (since CMake 2.8.8)
-
-#=============================================================================
-# Copyright 2006-2009 Kitware, Inc.
-# Copyright 2006 Alexander Neundorf <neundorf@kde.org>
-# Copyright 2016 Team Kodi
-#
-# Distributed under the OSI-approved BSD License (the "License");
-# see accompanying file Copyright.txt for details.
-#
-# This software is distributed WITHOUT ANY WARRANTY; without even the
-# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the License for more information.
-#=============================================================================
-# (To distribute this file outside of CMake, substitute the full
-# License text for the above reference.)
-
-# use pkg-config to get the directories and then use these values
-# in the find_path() and find_library() calls
-find_package(PkgConfig QUIET)
-PKG_CHECK_MODULES(PC_LIBXML QUIET libxml-2.0)
-set(LIBXML2_DEFINITIONS ${PC_LIBXML_CFLAGS_OTHER})
-
-find_path(LIBXML2_INCLUDE_DIR NAMES libxml/xpath.h
- HINTS
- ${PC_LIBXML_INCLUDEDIR}
- ${PC_LIBXML_INCLUDE_DIRS}
- PATH_SUFFIXES libxml2
- )
-
-find_library(LIBXML2_LIBRARY NAMES xml2 libxml2
- HINTS
- ${PC_LIBXML_LIBDIR}
- ${PC_LIBXML_LIBRARY_DIRS}
- )
-
-find_program(LIBXML2_XMLLINT_EXECUTABLE xmllint)
-# for backwards compat. with KDE 4.0.x:
-set(XMLLINT_EXECUTABLE "${LIBXML2_XMLLINT_EXECUTABLE}")
-
-# Make sure to use static flags if apropriate
-if(PC_LIBXML_FOUND)
- if(${LIBXML2_LIBRARY} MATCHES ".+\.a$" AND PC_LIBXML_STATIC_LDFLAGS)
- set(LIBXML2_LIBRARY ${LIBXML2_LIBRARY} ${PC_LIBXML_STATIC_LDFLAGS})
- endif()
-endif()
-
-if(PC_LIBXML_VERSION)
- set(LIBXML2_VERSION_STRING ${PC_LIBXML_VERSION})
-elseif(LIBXML2_INCLUDE_DIR AND EXISTS "${LIBXML2_INCLUDE_DIR}/libxml/xmlversion.h")
- file(STRINGS "${LIBXML2_INCLUDE_DIR}/libxml/xmlversion.h" libxml2_version_str
- REGEX "^#define[\t ]+LIBXML_DOTTED_VERSION[\t ]+\".*\"")
- string(REGEX REPLACE "^#define[\t ]+LIBXML_DOTTED_VERSION[\t ]+\"([^\"]*)\".*" "\\1"
- LIBXML2_VERSION_STRING "${libxml2_version_str}")
- unset(libxml2_version_str)
-endif()
-
-
-include(FindPackageHandleStandardArgs)
-FIND_PACKAGE_HANDLE_STANDARD_ARGS(LibXml2
- REQUIRED_VARS LIBXML2_LIBRARY LIBXML2_INCLUDE_DIR
- VERSION_VAR LIBXML2_VERSION_STRING)
-
-if(LibXml2_FOUND)
- set(LIBXML2_LIBRARIES ${LIBXML2_LIBRARY})
- set(LIBXML2_INCLUDE_DIRS ${LIBXML2_INCLUDE_DIR})
-endif()
-
-mark_as_advanced(LIBXML2_INCLUDE_DIRS LIBXML2_LIBRARIES LIBXML2_XMLLINT_EXECUTABLE)
diff --git a/project/cmake/modules/FindLzo2.cmake b/project/cmake/modules/FindLzo2.cmake
deleted file mode 100644
index 4f7313f7fb..0000000000
--- a/project/cmake/modules/FindLzo2.cmake
+++ /dev/null
@@ -1,37 +0,0 @@
-#.rst:
-# FindLzo2
-# --------
-# Finds the Lzo2 library
-#
-# This will will define the following variables::
-#
-# LZO2_FOUND - system has Lzo2
-# LZO2_INCLUDE_DIRS - the Lzo2 include directory
-# LZO2_LIBRARIES - the Lzo2 libraries
-#
-# and the following imported targets::
-#
-# Lzo2::Lzo2 - The Lzo2 library
-
-find_path(LZO2_INCLUDE_DIR NAMES lzo1x.h
- PATH_SUFFIXES lzo)
-
-find_library(LZO2_LIBRARY NAMES lzo2 liblzo2)
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(Lzo2
- REQUIRED_VARS LZO2_LIBRARY LZO2_INCLUDE_DIR)
-
-if(LZO2_FOUND)
- set(LZO2_LIBRARIES ${LZO2_LIBRARY})
- set(LZO2_INCLUDE_DIRS ${LZO2_INCLUDE_DIR})
-
- if(NOT TARGET Lzo2::Lzo2)
- add_library(Lzo2::Lzo2 UNKNOWN IMPORTED)
- set_target_properties(Lzo2::Lzo2 PROPERTIES
- IMPORTED_LOCATION "${LZO2_LIBRARY}"
- INTERFACE_INCLUDE_DIRECTORIES "${LZO2_INCLUDE_DIR}")
- endif()
-endif()
-
-mark_as_advanced(LZO2_INCLUDE_DIR LZO2_LIBRARY)
diff --git a/project/cmake/modules/FindMMAL.cmake b/project/cmake/modules/FindMMAL.cmake
deleted file mode 100644
index 0b5f5564ec..0000000000
--- a/project/cmake/modules/FindMMAL.cmake
+++ /dev/null
@@ -1,55 +0,0 @@
-# - Try to find MMAL
-# Once done this will define
-#
-# MMAL_FOUND - system has MMAL
-# MMAL_INCLUDE_DIRS - the MMAL include directory
-# MMAL_LIBRARIES - The MMAL libraries
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_MMAL mmal QUIET)
-endif()
-
-
-find_path(MMAL_INCLUDE_DIR NAMES interface/mmal/mmal.h PATHS ${PC_MMAL_INCLUDEDIR})
-find_library(MMAL_LIBRARY NAMES mmal libmmal PATHS ${PC_MMAL_LIBDIR})
-find_library(MMALCORE_LIBRARY NAMES mmal_core libmmal_core PATHS ${PC_MMAL_LIBDIR})
-find_library(MMALUTIL_LIBRARY NAMES mmal_util libmmal_util PATHS ${PC_MMAL_LIBDIR})
-find_library(MMALCLIENT_LIBRARY NAMES mmal_vc_client libmmal_vc_client PATHS ${PC_MMAL_LIBDIR})
-find_library(MMALCOMPONENT_LIBRARY NAMES mmal_components libmmal_components PATHS ${PC_MMAL_LIBDIR})
-find_library(BCM_LIBRARY NAMES bcm_host libbcm_host PATHS ${PC_MMAL_LIBDIR})
-find_library(VCHIQ_LIBRARY NAMES vchiq_arm libvchiq_arm PATHS ${PC_MMAL_LIBDIR})
-find_library(VCHOSTIF_LIBRARY NAMES vchostif libvchostif PATHS ${PC_MMAL_LIBDIR})
-find_library(VCILCS_LIBRARY NAMES vcilcs libvcilcs PATHS ${PC_MMAL_LIBDIR})
-find_library(VCOS_LIBRARY NAMES vcos libvcos PATHS ${PC_MMAL_LIBDIR})
-find_library(VCSM_LIBRARY NAMES vcsm libvcsm PATHS ${PC_MMAL_LIBDIR})
-find_library(CONTAINER_LIBRARY NAMES containers libcontainers PATHS ${PC_MMAL_LIBDIR})
-
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(MMAL REQUIRED_VARS MMAL_INCLUDE_DIR
- MMAL_LIBRARY MMALCORE_LIBRARY MMALUTIL_LIBRARY
- MMALCLIENT_LIBRARY MMALCOMPONENT_LIBRARY BCM_LIBRARY
- VCHIQ_LIBRARY VCOS_LIBRARY VCSM_LIBRARY VCHOSTIF_LIBRARY
- VCILCS_LIBRARY CONTAINER_LIBRARY)
-
-
-if(MMAL_FOUND)
- set(MMAL_INCLUDE_DIRS ${MMAL_INCLUDE_DIR})
- set(MMAL_LIBRARIES ${MMAL_LIBRARY} ${MMALCORE_LIBRARY} ${MMALUTIL_LIBRARY}
- ${MMALCLIENT_LIBRARY} ${MMALCOMPONENT_LIBRARY}
- ${BCM_LIBRARY} ${VCHIQ_LIBRARY} ${VCOS_LIBRARY} ${VCSM_LIBRARY}
- ${VCHOSTIF_LIBRARY} ${VCILCS_LIBRARY} ${CONTAINER_LIBRARY}
- CACHE STRING "mmal libraries" FORCE)
- list(APPEND MMAL_DEFINITIONS -DHAVE_MMAL=1 -DHAS_MMAL=1)
-
- if(NOT TARGET MMAL::MMAL)
- add_library(MMAL::MMAL UNKNOWN IMPORTED)
- set_target_properties(MMAL::MMAL PROPERTIES
- IMPORTED_LOCATION "${MMAL_LIBRARIES}"
- INTERFACE_INCLUDE_DIRECTORIES "${MMAL_INCLUDE_DIR}")
- endif()
-endif()
-
-mark_as_advanced(MMAL_INCLUDE_DIRS MMAL_LIBRARIES MMAL_DEFINITIONS
- MMAL_LIBRARY MMALCORE_LIBRARY MMALUTIL_LIBRARY MMALCLIENT_LIBRARY MMALCOMPONENT_LIBRARY BCM_LIBRARY
- VCHIQ_LIBRARY VCOS_LIBRARY VCSM_LIBRARY VCHOSTIF_LIBRARY VCILCS_LIBRARY CONTAINER_LIBRARY)
diff --git a/project/cmake/modules/FindMicroHttpd.cmake b/project/cmake/modules/FindMicroHttpd.cmake
deleted file mode 100644
index 8eecbc4e0a..0000000000
--- a/project/cmake/modules/FindMicroHttpd.cmake
+++ /dev/null
@@ -1,51 +0,0 @@
-#.rst:
-# FindMicroHttpd
-# --------------
-# Finds the MicroHttpd library
-#
-# This will will define the following variables::
-#
-# MICROHTTPD_FOUND - system has MicroHttpd
-# MICROHTTPD_INCLUDE_DIRS - the MicroHttpd include directory
-# MICROHTTPD_LIBRARIES - the MicroHttpd libraries
-# MICROHTTPD_DEFINITIONS - the MicroHttpd definitions
-#
-# and the following imported targets::
-#
-# MicroHttpd::MicroHttpd - The MicroHttpd library
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_MICROHTTPD libmicrohttpd>=0.4 QUIET)
-endif()
-
-find_path(MICROHTTPD_INCLUDE_DIR NAMES microhttpd.h
- PATHS ${PC_MICROHTTPD_INCLUDEDIR})
-find_library(MICROHTTPD_LIBRARY NAMES microhttpd libmicrohttpd
- PATHS ${PC_MICROHTTPD_LIBDIR})
-
-set(MICROHTTPD_VERSION ${PC_MICROHTTPD_VERSION})
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(MicroHttpd
- REQUIRED_VARS MICROHTTPD_LIBRARY MICROHTTPD_INCLUDE_DIR
- VERSION_VAR MICROHTTPD_VERSION)
-
-if(MICROHTTPD_FOUND)
- set(MICROHTTPD_LIBRARIES ${MICROHTTPD_LIBRARY})
- set(MICROHTTPD_INCLUDE_DIRS ${MICROHTTPD_INCLUDE_DIR})
- set(MICROHTTPD_DEFINITIONS -DHAVE_LIBMICROHTTPD=1)
-
- if(KODI_DEPENDSBUILD AND NOT WIN32)
- find_library(GCRYPT_LIBRARY gcrypt)
- find_library(GPGERROR_LIBRARY gpg-error)
- list(APPEND MICROHTTPD_LIBRARIES ${GCRYPT_LIBRARY} ${GPGERROR_LIBRARY})
- mark_as_advanced(GCRYPT_LIBRARY GPGERROR_LIBRARY)
- if(NOT APPLE AND NOT CORE_SYSTEM_NAME STREQUAL android)
- list(APPEND MICROHTTPD_LIBRARIES rt)
- endif()
- else()
- list(APPEND MICROHTTPD_LIBRARIES ${PC_MICROHTTPD_STATIC_LIBRARIES})
- endif()
-endif()
-
-mark_as_advanced(MICROHTTPD_LIBRARY MICROHTTPD_INCLUDE_DIR)
diff --git a/project/cmake/modules/FindMir.cmake b/project/cmake/modules/FindMir.cmake
deleted file mode 100644
index 8847a617fd..0000000000
--- a/project/cmake/modules/FindMir.cmake
+++ /dev/null
@@ -1,33 +0,0 @@
-# FindMir
-# -------
-# Finds the Mir library
-#
-# This will will define the following variables::
-#
-# MIR_FOUND - the system has Mir
-# MIR_INCLUDE_DIRS - the Mir include directory
-# MIR_LIBRARIES - the Mir libraries
-# MIR_DEFINITIONS - the Mir definitions
-
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules (PC_MIR mirclient QUIET)
-endif()
-
-find_path(MIR_INCLUDE_DIR NAMES mir_toolkit/mir_client_library.h
- PATHS ${PC_MIR_INCLUDE_DIRS})
-
-find_library(MIR_LIBRARY NAMES mirclient
- PATHS ${PC_MIR_LIBRARIES} ${PC_MIR_LIBRARY_DIRS})
-
-include (FindPackageHandleStandardArgs)
-find_package_handle_standard_args (MIR
- REQUIRED_VARS MIR_LIBRARY MIR_INCLUDE_DIR)
-
-if (MIR_FOUND)
- set(MIR_LIBRARIES ${MIR_LIBRARY})
- set(MIR_INCLUDE_DIRS ${PC_MIR_INCLUDE_DIRS})
- set(MIR_DEFINITIONS -DHAVE_MIR=1)
-endif()
-
-mark_as_advanced (MIR_LIBRARY MIR_INCLUDE_DIR)
diff --git a/project/cmake/modules/FindMySqlClient.cmake b/project/cmake/modules/FindMySqlClient.cmake
deleted file mode 100644
index ceccea39b1..0000000000
--- a/project/cmake/modules/FindMySqlClient.cmake
+++ /dev/null
@@ -1,69 +0,0 @@
-#.rst:
-# FindMySqlClient
-# ---------------
-# Finds the MySqlClient library
-#
-# This will will define the following variables::
-#
-# MYSQLCLIENT_FOUND - system has MySqlClient
-# MYSQLCLIENT_INCLUDE_DIRS - the MySqlClient include directory
-# MYSQLCLIENT_LIBRARIES - the MySqlClient libraries
-# MYSQLCLIENT_DEFINITIONS - the MySqlClient compile definitions
-#
-# and the following imported targets::
-#
-# MySqlClient::MySqlClient - The MySqlClient library
-
-# Don't find system wide installed version on Windows
-if(WIN32)
- set(EXTRA_FIND_ARGS NO_SYSTEM_ENVIRONMENT_PATH)
-else()
- set(EXTRA_FIND_ARGS)
-endif()
-
-find_path(MYSQLCLIENT_INCLUDE_DIR mysql/mysql_time.h)
-find_library(MYSQLCLIENT_LIBRARY_RELEASE NAMES mysqlclient libmysql
- PATH_SUFFIXES mysql
- ${EXTRA_FIND_ARGS})
-find_library(MYSQLCLIENT_LIBRARY_DEBUG NAMES mysqlclient libmysql
- PATH_SUFFIXES mysql
- ${EXTRA_FIND_ARGS})
-
-if(MYSQLCLIENT_INCLUDE_DIR AND EXISTS "${MYSQLCLIENT_INCLUDE_DIR}/mysql/mysql_version.h")
- file(STRINGS "${MYSQLCLIENT_INCLUDE_DIR}/mysql/mysql_version.h" mysql_version_str REGEX "^#define[\t ]+LIBMYSQL_VERSION[\t ]+\".*\".*")
- string(REGEX REPLACE "^#define[\t ]+LIBMYSQL_VERSION[\t ]+\"([^\"]+)\".*" "\\1" MYSQLCLIENT_VERSION_STRING "${mysql_version_str}")
- unset(mysql_version_str)
-endif()
-
-include(SelectLibraryConfigurations)
-select_library_configurations(MYSQLCLIENT)
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(MySqlClient
- REQUIRED_VARS MYSQLCLIENT_LIBRARY MYSQLCLIENT_INCLUDE_DIR
- VERSION_VAR MYSQLCLIENT_VERSION_STRING)
-
-if(MYSQLCLIENT_FOUND)
- set(MYSQLCLIENT_LIBRARIES ${MYSQLCLIENT_LIBRARY})
- set(MYSQLCLIENT_INCLUDE_DIRS ${MYSQLCLIENT_INCLUDE_DIR})
- set(MYSQLCLIENT_DEFINITIONS -DHAVE_MYSQL=1)
-
- if(NOT TARGET MySqlClient::MySqlClient)
- add_library(MySqlClient::MySqlClient UNKNOWN IMPORTED)
- if(MYSQLCLIENT_LIBRARY_RELEASE)
- set_target_properties(MySqlClient::MySqlClient PROPERTIES
- IMPORTED_CONFIGURATIONS RELEASE
- IMPORTED_LOCATION "${MYSQLCLIENT_LIBRARY_RELEASE}")
- endif()
- if(MYSQLCLIENT_LIBRARY_DEBUG)
- set_target_properties(MySqlClient::MySqlClient PROPERTIES
- IMPORTED_CONFIGURATIONS DEBUG
- IMPORTED_LOCATION "${MYSQLCLIENT_LIBRARY_DEBUG}")
- endif()
- set_target_properties(MySqlClient::MySqlClient PROPERTIES
- INTERFACE_INCLUDE_DIRECTORIES "${MYSQLCLIENT_INCLUDE_DIR}"
- INTERFACE_COMPILE_DEFINITIONS HAVE_MYSQL=1)
- endif()
-endif()
-
-mark_as_advanced(MYSQLCLIENT_INCLUDE_DIR MYSQLCLIENT_LIBRARY)
diff --git a/project/cmake/modules/FindNFS.cmake b/project/cmake/modules/FindNFS.cmake
deleted file mode 100644
index 646ee33c84..0000000000
--- a/project/cmake/modules/FindNFS.cmake
+++ /dev/null
@@ -1,58 +0,0 @@
-#.rst:
-# FindNFS
-# -------
-# Finds the libnfs library
-#
-# This will will define the following variables::
-#
-# NFS_FOUND - system has libnfs
-# NFS_INCLUDE_DIRS - the libnfs include directory
-# NFS_LIBRARIES - the libnfs libraries
-# NFS_DEFINITIONS - the libnfs compile definitions
-#
-# and the following imported targets::
-#
-# NFS::NFS - The libnfs library
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_NFS libnfs QUIET)
-endif()
-
-find_path(NFS_INCLUDE_DIR nfsc/libnfs.h
- PATHS ${PC_NFS_INCLUDEDIR})
-
-set(NFS_VERSION ${PC_NFS_VERSION})
-
-include(FindPackageHandleStandardArgs)
-if(NOT WIN32)
- find_library(NFS_LIBRARY NAMES nfs
- PATHS ${PC_NFS_LIBDIR})
-
- find_package_handle_standard_args(NFS
- REQUIRED_VARS NFS_LIBRARY NFS_INCLUDE_DIR
- VERSION_VAR NFS_VERSION)
-else()
- # Dynamically loaded DLL
- find_package_handle_standard_args(NFS
- REQUIRED_VARS NFS_INCLUDE_DIR
- VERSION_VAR NFS_VERSION)
-endif()
-
-if(NFS_FOUND)
- set(NFS_LIBRARIES ${NFS_LIBRARY})
- set(NFS_INCLUDE_DIRS ${NFS_INCLUDE_DIR})
- set(NFS_DEFINITIONS -DHAVE_LIBNFS=1)
-
- if(NOT TARGET NFS::NFS)
- add_library(NFS::NFS UNKNOWN IMPORTED)
- if(NFS_LIBRARY)
- set_target_properties(NFS::NFS PROPERTIES
- IMPORTED_LOCATION "${NFS_LIBRARY_RELEASE}")
- endif()
- set_target_properties(NFS::NFS PROPERTIES
- INTERFACE_INCLUDE_DIRECTORIES "${NFS_INCLUDE_DIR}"
- INTERFACE_COMPILE_DEFINITIONS HAVE_LIBNFS=1)
- endif()
-endif()
-
-mark_as_advanced(NFS_INCLUDE_DIR NFS_LIBRARY)
diff --git a/project/cmake/modules/FindOpenGLES.cmake b/project/cmake/modules/FindOpenGLES.cmake
deleted file mode 100644
index ab06f968b3..0000000000
--- a/project/cmake/modules/FindOpenGLES.cmake
+++ /dev/null
@@ -1,48 +0,0 @@
-#.rst:
-# FindOpenGLES
-# ------------
-# Finds the OpenGLES2 library
-#
-# This will will define the following variables::
-#
-# OPENGLES_FOUND - system has OpenGLES
-# OPENGLES_INCLUDE_DIRS - the OpenGLES include directory
-# OPENGLES_LIBRARIES - the OpenGLES libraries
-# OPENGLES_DEFINITIONS - the OpenGLES definitions
-
-find_package(EMBEDDED)
-
-if(PKG_CONFIG_FOUND AND NOT PLATFORM STREQUAL "raspberry-pi")
- pkg_check_modules(PC_OPENGLES glesv2 QUIET)
- if(NOT OPENGLES_FOUND AND EMBEDDED_FOUND)
- set(CMAKE_PREFIX_PATH ${EMBEDDED_FOUND} ${CMAKE_PREFIX_PATH})
- endif()
-endif()
-
-if(NOT CORE_SYSTEM_NAME STREQUAL ios)
- find_path(OPENGLES_INCLUDE_DIR GLES2/gl2.h
- PATHS ${PC_OPENGLES_INCLUDEDIR})
- find_library(OPENGLES_gl_LIBRARY NAMES GLESv2
- PATHS ${PC_OPENGLES_LIBDIR})
- find_library(OPENGLES_egl_LIBRARY NAMES EGL
- PATHS ${PC_OPENGLES_LIBDIR})
-else()
- find_library(OPENGLES_gl_LIBRARY NAMES OpenGLES
- PATHS ${CMAKE_OSX_SYSROOT}/System/Library
- PATH_SUFFIXES Frameworks
- NO_DEFAULT_PATH)
- set(OPENGLES_INCLUDE_DIR ${OPENGLES_gl_LIBRARY}/Headers)
- set(OPENGLES_egl_LIBRARY ${OPENGLES_gl_LIBRARY})
-endif()
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(OpenGLES
- REQUIRED_VARS OPENGLES_gl_LIBRARY OPENGLES_egl_LIBRARY OPENGLES_INCLUDE_DIR)
-
-if(OPENGLES_FOUND)
- set(OPENGLES_INCLUDE_DIRS ${OPENGLES_INCLUDE_DIR})
- set(OPENGLES_LIBRARIES ${OPENGLES_gl_LIBRARY} ${OPENGLES_egl_LIBRARY})
- set(OPENGLES_DEFINITIONS -DHAVE_LIBGLESV2 -DHAVE_LIBEGL=1)
-endif()
-
-mark_as_advanced(OPENGLES_INCLUDE_DIR OPENGLES_gl_LIBRARY OPENGLES_egl_LIBRARY)
diff --git a/project/cmake/modules/FindOpenGl.cmake b/project/cmake/modules/FindOpenGl.cmake
deleted file mode 100644
index b8cff79daf..0000000000
--- a/project/cmake/modules/FindOpenGl.cmake
+++ /dev/null
@@ -1,43 +0,0 @@
-#.rst:
-# FindOpenGl
-# ----------
-# Finds the FindOpenGl library
-#
-# This will will define the following variables::
-#
-# OPENGL_FOUND - system has OpenGl
-# OPENGL_INCLUDE_DIRS - the OpenGl include directory
-# OPENGL_LIBRARIES - the OpenGl libraries
-# OPENGL_DEFINITIONS - the OpenGl definitions
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_OPENGL gl glu QUIET)
-endif()
-
-if(NOT CORE_SYSTEM_NAME STREQUAL osx)
- find_path(OPENGL_INCLUDE_DIR GL/gl.h
- PATHS ${PC_OPENGL_gl_INCLUDEDIR})
- find_library(OPENGL_gl_LIBRARY NAMES GL
- PATHS ${PC_OPENGL_gl_LIBDIR})
- find_library(OPENGL_glu_LIBRARY NAMES GLU
- PATHS ${PC_OPENGL_glu_LIBDIR})
-else()
- find_library(OPENGL_gl_LIBRARY NAMES OpenGL
- PATHS ${CMAKE_OSX_SYSROOT}/System/Library
- PATH_SUFFIXES Frameworks
- NO_DEFAULT_PATH)
- set(OPENGL_INCLUDE_DIR ${OPENGL_gl_LIBRARY}/Headers)
- set(OPENGL_glu_LIBRARY ${OPENGL_gl_LIBRARY})
-endif()
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(OpenGl
- REQUIRED_VARS OPENGL_gl_LIBRARY OPENGL_glu_LIBRARY OPENGL_INCLUDE_DIR)
-
-if(OPENGL_FOUND)
- set(OPENGL_INCLUDE_DIRS ${OPENGL_INCLUDE_DIR})
- set(OPENGL_LIBRARIES ${OPENGL_gl_LIBRARY} ${OPENGL_glu_LIBRARY})
- set(OPENGL_DEFINITIONS -DHAVE_LIBGL=1)
-endif()
-
-mark_as_advanced(OPENGL_INCLUDE_DIR OPENGL_gl_LIBRARY OPENGL_glu_LIBRARY)
diff --git a/project/cmake/modules/FindPCRE.cmake b/project/cmake/modules/FindPCRE.cmake
deleted file mode 100644
index 8babed3b60..0000000000
--- a/project/cmake/modules/FindPCRE.cmake
+++ /dev/null
@@ -1,87 +0,0 @@
-#.rst:
-# FindPCRE
-# --------
-# Finds the PCRECPP library
-#
-# This will will define the following variables::
-#
-# PCRE_FOUND - system has libpcrecpp
-# PCRE_INCLUDE_DIRS - the libpcrecpp include directory
-# PCRE_LIBRARIES - the libpcrecpp libraries
-# PCRE_DEFINITIONS - the libpcrecpp definitions
-#
-# and the following imported targets::
-#
-# PCRE::PCRECPP - The PCRECPP library
-# PCRE::PCRE - The PCRE library
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_PCRE libpcrecpp QUIET)
-endif()
-
-find_path(PCRE_INCLUDE_DIR pcrecpp.h
- PATHS ${PC_PCRE_INCLUDEDIR})
-find_library(PCRECPP_LIBRARY_RELEASE NAMES pcrecpp
- PATHS ${PC_PCRE_LIBDIR})
-find_library(PCRE_LIBRARY_RELEASE NAMES pcre
- PATHS ${PC_PCRE_LIBDIR})
-find_library(PCRECPP_LIBRARY_DEBUG NAMES pcrecppd
- PATHS ${PC_PCRE_LIBDIR})
-find_library(PCRE_LIBRARY_DEBUG NAMES pcred
- PATHS ${PC_PCRE_LIBDIR})
-set(PCRE_VERSION ${PC_PCRE_VERSION})
-
-include(SelectLibraryConfigurations)
-select_library_configurations(PCRECPP)
-select_library_configurations(PCRE)
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(PCRE
- REQUIRED_VARS PCRECPP_LIBRARY PCRE_LIBRARY PCRE_INCLUDE_DIR
- VERSION_VAR PCRE_VERSION)
-
-if(PCRE_FOUND)
- set(PCRE_LIBRARIES ${PCRECPP_LIBRARY} ${PCRE_LIBRARY})
- set(PCRE_INCLUDE_DIRS ${PCRE_INCLUDE_DIR})
- if(WIN32)
- set(PCRE_DEFINITIONS -DPCRE_STATIC=1)
- endif()
-
- if(NOT TARGET PCRE::PCRE)
- add_library(PCRE::PCRE UNKNOWN IMPORTED)
- if(PCRE_LIBRARY_RELEASE)
- set_target_properties(PCRE::PCRE PROPERTIES
- IMPORTED_CONFIGURATIONS RELEASE
- IMPORTED_LOCATION "${PCRE_LIBRARY_RELEASE}")
- endif()
- if(PCRE_LIBRARY_DEBUG)
- set_target_properties(PCRE::PCRE PROPERTIES
- IMPORTED_CONFIGURATIONS DEBUG
- IMPORTED_LOCATION "${PCRE_LIBRARY_DEBUG}")
- endif()
- set_target_properties(PCRE::PCRE PROPERTIES
- INTERFACE_INCLUDE_DIRECTORIES "${PCRE_INCLUDE_DIR}")
- if(WIN32)
- set_target_properties(PCRE::PCRE PROPERTIES
- INTERFACE_COMPILE_DEFINITIONS PCRE_STATIC=1)
- endif()
-
- endif()
- if(NOT TARGET PCRE::PCRECPP)
- add_library(PCRE::PCRECPP UNKNOWN IMPORTED)
- if(PCRE_LIBRARY_RELEASE)
- set_target_properties(PCRE::PCRECPP PROPERTIES
- IMPORTED_CONFIGURATIONS RELEASE
- IMPORTED_LOCATION "${PCRECPP_LIBRARY_RELEASE}")
- endif()
- if(PCRE_LIBRARY_DEBUG)
- set_target_properties(PCRE::PCRECPP PROPERTIES
- IMPORTED_CONFIGURATIONS DEBUG
- IMPORTED_LOCATION "${PCRECPP_LIBRARY_DEBUG}")
- endif()
- set_target_properties(PCRE::PCRECPP PROPERTIES
- INTERFACE_LINK_LIBRARIES PCRE::PCRE)
- endif()
-endif()
-
-mark_as_advanced(PCRE_INCLUDE_DIR PCRECPP_LIBRARY PCRE_LIBRARY)
diff --git a/project/cmake/modules/FindPlist.cmake b/project/cmake/modules/FindPlist.cmake
deleted file mode 100644
index d7a6c48e36..0000000000
--- a/project/cmake/modules/FindPlist.cmake
+++ /dev/null
@@ -1,58 +0,0 @@
-#.rst:
-# FindPlist
-# ---------
-# Finds the Plist library
-#
-# This will will define the following variables::
-#
-# PLIST_FOUND - system has Plist library
-# PLIST_INCLUDE_DIRS - the Plist library include directory
-# PLIST_LIBRARIES - the Plist libraries
-# PLIST_DEFINITIONS - the Plist compile definitions
-#
-# and the following imported targets::
-#
-# Plist::Plist - The Plist library
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_PLIST libplist QUIET)
-endif()
-
-find_path(PLIST_INCLUDE_DIR plist/plist.h
- PATHS ${PC_PLIST_INCLUDEDIR})
-
-set(PLIST_VERSION ${PC_PLIST_VERSION})
-
-include(FindPackageHandleStandardArgs)
-if(NOT WIN32)
- find_library(PLIST_LIBRARY NAMES plist
- PATHS ${PC_PLIST_LIBDIR})
-
- find_package_handle_standard_args(PLIST
- REQUIRED_VARS PLIST_LIBRARY PLIST_INCLUDE_DIR
- VERSION_VAR PLIST_VERSION)
-else()
- # Dynamically loaded DLL
- find_package_handle_standard_args(PLIST
- REQUIRED_VARS PLIST_INCLUDE_DIR
- VERSION_VAR PLIST_VERSION)
-endif()
-
-if(PLIST_FOUND)
- set(PLIST_LIBRARIES ${PLIST_LIBRARY})
- set(PLIST_INCLUDE_DIRS ${PLIST_INCLUDE_DIR})
- set(PLIST_DEFINITIONS -DHAVE_LIBPLIST=1)
-
- if(NOT TARGET Plist::Plist)
- add_library(Plist::Plist UNKNOWN IMPORTED)
- if(PLIST_LIBRARY)
- set_target_properties(Plist::Plist PROPERTIES
- IMPORTED_LOCATION "${PLIST_LIBRARY}")
- endif()
- set_target_properties(Plist::Plist PROPERTIES
- INTERFACE_INCLUDE_DIRECTORIES "${PLIST_INCLUDE_DIR}"
- INTERFACE_COMPILE_DEFINITIONS HAVE_LIBPLIST=1)
- endif()
-endif()
-
-mark_as_advanced(PLIST_INCLUDE_DIR PLIST_LIBRARY)
diff --git a/project/cmake/modules/FindPulseAudio.cmake b/project/cmake/modules/FindPulseAudio.cmake
deleted file mode 100644
index 5761005e7a..0000000000
--- a/project/cmake/modules/FindPulseAudio.cmake
+++ /dev/null
@@ -1,68 +0,0 @@
-#.rst:
-# FindPulseAudio
-# --------------
-# Finds the PulseAudio library
-#
-# This will define the following variables::
-#
-# PULSEAUDIO_FOUND - system has the PulseAudio library
-# PULSEAUDIO_INCLUDE_DIRS - the PulseAudio include directory
-# PULSEAUDIO_LIBRARIES - the libraries needed to use PulseAudio
-# PULSEAUDIO_DEFINITIONS - the definitions needed to use PulseAudio
-#
-# and the following imported targets::
-#
-# PulseAudio::PulseAudio - The PulseAudio library
-
-if(NOT PulseAudio_FIND_VERSION)
- set(PulseAudio_FIND_VERSION 2.0.0)
-endif()
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_PULSEAUDIO libpulse>=${PulseAudio_FIND_VERSION} QUIET)
- pkg_check_modules(PC_PULSEAUDIO_MAINLOOP libpulse-mainloop-glib QUIET)
-endif()
-
-find_path(PULSEAUDIO_INCLUDE_DIR NAMES pulse/pulseaudio.h
- PATHS ${PC_PULSEAUDIO_INCLUDEDIR} ${PC_PULSEAUDIO_INCLUDE_DIRS})
-
-find_library(PULSEAUDIO_LIBRARY NAMES pulse libpulse
- PATHS ${PC_PULSEAUDIO_LIBDIR} ${PC_PULSEAUDIO_LIBRARY_DIRS})
-
-find_library(PULSEAUDIO_MAINLOOP_LIBRARY NAMES pulse-mainloop pulse-mainloop-glib libpulse-mainloop-glib
- PATHS ${PC_PULSEAUDIO_LIBDIR} ${PC_PULSEAUDIO_LIBRARY_DIRS})
-
-if(PC_PULSEAUDIO_VERSION)
- set(PULSEAUDIO_VERSION_STRING ${PC_PULSEAUDIO_VERSION})
-elseif(PULSEAUDIO_INCLUDE_DIR AND EXISTS "${PULSEAUDIO_INCLUDE_DIR}/pulse/version.h")
- file(STRINGS "${PULSEAUDIO_INCLUDE_DIR}/pulse/version.h" pulseaudio_version_str REGEX "^#define[\t ]+pa_get_headers_version\\(\\)[\t ]+\\(\".*\"\\).*")
- string(REGEX REPLACE "^#define[\t ]+pa_get_headers_version\\(\\)[\t ]+\\(\"([^\"]+)\"\\).*" "\\1" PULSEAUDIO_VERSION_STRING "${pulseaudio_version_str}")
- unset(pulseaudio_version_str)
-endif()
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(PulseAudio
- REQUIRED_VARS PULSEAUDIO_LIBRARY PULSEAUDIO_MAINLOOP_LIBRARY PULSEAUDIO_INCLUDE_DIR
- VERSION_VAR PULSEAUDIO_VERSION_STRING)
-
-if(PULSEAUDIO_FOUND)
- set(PULSEAUDIO_INCLUDE_DIRS ${PULSEAUDIO_INCLUDE_DIR})
- set(PULSEAUDIO_LIBRARIES ${PULSEAUDIO_LIBRARY} ${PULSEAUDIO_MAINLOOP_LIBRARY})
- set(PULSEAUDIO_DEFINITIONS -DHAVE_LIBPULSE=1)
-
- if(NOT TARGET PulseAudio::PulseAudioMainloop)
- add_library(PulseAudio::PulseAudioMainloop UNKNOWN IMPORTED)
- set_target_properties(PulseAudio::PulseAudioMainloop PROPERTIES
- IMPORTED_LOCATION "${PULSEAUDIO_MAINLOOP_LIBRARY}")
- endif()
- if(NOT TARGET PulseAudio::PulseAudio)
- add_library(PulseAudio::PulseAudio UNKNOWN IMPORTED)
- set_target_properties(PulseAudio::PulseAudio PROPERTIES
- IMPORTED_LOCATION "${PULSEAUDIO_LIBRARY}"
- INTERFACE_INCLUDE_DIRECTORIES "${PULSEAUDIO_INCLUDE_DIR}"
- INTERFACE_COMPILE_DEFINITIONS HAVE_LIBPULSE=1
- INTERFACE_LINK_LIBRARIES PulseAudio::PulseAudioMainloop)
- endif()
-endif()
-
-mark_as_advanced(PULSEAUDIO_INCLUDE_DIR PULSEAUDIO_LIBRARY PULSEAUDIO_MAINLOOP_LIBRARY)
diff --git a/project/cmake/modules/FindPython.cmake b/project/cmake/modules/FindPython.cmake
deleted file mode 100644
index 75dcd6cfbb..0000000000
--- a/project/cmake/modules/FindPython.cmake
+++ /dev/null
@@ -1,39 +0,0 @@
-# - Try to find python
-# Once done this will define
-#
-# PYTHON_FOUND - system has PYTHON
-# PYTHON_INCLUDE_DIRS - the python include directory
-# PYTHON_LIBRARIES - The python libraries
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_PYTHON python>=2.7 QUIET)
-endif()
-
-find_program(PYTHON_EXECUTABLE python ONLY_CMAKE_FIND_ROOT_PATH)
-find_library(PYTHON_LIBRARY NAMES python2.7 PATHS ${PC_PYTHON_LIBDIR})
-find_path(PYTHON_INCLUDE_DIR NAMES Python.h PATHS ${PC_PYTHON_INCLUDE_DIRS} ${DEPENDS_PATH}/include/python2.7)
-
-if(KODI_DEPENDSBUILD)
- find_library(FFI_LIBRARY ffi REQUIRED)
- find_library(EXPAT_LIBRARY expat REQUIRED)
- find_library(INTL_LIBRARY intl REQUIRED)
- find_library(GMP_LIBRARY gmp REQUIRED)
-
- if(NOT CORE_SYSTEM_NAME STREQUAL android)
- set(PYTHON_DEP_LIBRARIES pthread dl util)
- endif()
-
- set(PYTHON_LIBRARIES ${PYTHON_LIBRARY} ${FFI_LIBRARY} ${EXPAT_LIBRARY} ${INTL_LIBRARY} ${GMP_LIBRARY} ${PYTHON_DEP_LIBRARIES})
-else()
- find_package(PythonLibs 2.7 REQUIRED)
- list(APPEND PYTHON_LIBRARIES ${PC_PYTHON_STATIC_LIBRARIES})
-endif()
-
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(PYTHON REQUIRED_VARS PYTHON_INCLUDE_DIR PYTHON_LIBRARY PYTHON_LIBRARIES)
-if(PYTHON_FOUND)
- set(PYTHON_INCLUDE_DIRS ${PYTHON_INCLUDE_DIR})
-endif()
-
-mark_as_advanced(PYTHON_EXECUTABLE PYTHON_INCLUDE_DIRS PYTHON_INCLUDE_DIR PYTHON_LIBRARY PYTHON_LIBRARIES PYTHON_LDFLAGS FFI_LIBRARY EXPAT_LIBRARY INTL_LIBRARY GMP_LIBRARY)
diff --git a/project/cmake/modules/FindSSE.cmake b/project/cmake/modules/FindSSE.cmake
deleted file mode 100644
index 055466367b..0000000000
--- a/project/cmake/modules/FindSSE.cmake
+++ /dev/null
@@ -1,143 +0,0 @@
-# Check if SSE instructions are available on the machine where
-# the project is compiled.
-include(TestCXXAcceptsFlag)
-
-if(CMAKE_SYSTEM_NAME MATCHES "Linux")
- if(CPU MATCHES "x86_64" OR CPU MATCHES "i.86")
- exec_program(cat ARGS "/proc/cpuinfo" OUTPUT_VARIABLE CPUINFO)
-
- string(REGEX REPLACE "^.*(sse).*$" "\\1" _SSE_THERE ${CPUINFO})
- string(COMPARE EQUAL "sse" "${_SSE_THERE}" _SSE_TRUE)
- CHECK_CXX_ACCEPTS_FLAG("-msse" _SSE_OK)
-
- string(REGEX REPLACE "^.*(sse2).*$" "\\1" _SSE_THERE ${CPUINFO})
- string(COMPARE EQUAL "sse2" "${_SSE_THERE}" _SSE2_TRUE)
- CHECK_CXX_ACCEPTS_FLAG("-msse2" _SSE2_OK)
-
- # /proc/cpuinfo apparently omits sse3 :(
- string(REGEX REPLACE "^.*[^s](sse3).*$" "\\1" _SSE_THERE ${CPUINFO})
- string(COMPARE EQUAL "sse3" "${_SSE_THERE}" _SSE3_TRUE)
- if(NOT _SSE3_TRUE)
- string(REGEX REPLACE "^.*(T2300).*$" "\\1" _SSE_THERE ${CPUINFO})
- string(COMPARE EQUAL "T2300" "${_SSE_THERE}" _SSE3_TRUE)
- endif()
- CHECK_CXX_ACCEPTS_FLAG("-msse3" _SSE3_OK)
-
- string(REGEX REPLACE "^.*(ssse3).*$" "\\1" _SSE_THERE ${CPUINFO})
- string(COMPARE EQUAL "ssse3" "${_SSE_THERE}" _SSSE3_TRUE)
- CHECK_CXX_ACCEPTS_FLAG("-mssse3" _SSSE3_OK)
-
- string(REGEX REPLACE "^.*(sse4_1).*$" "\\1" _SSE_THERE ${CPUINFO})
- string(COMPARE EQUAL "sse4_1" "${_SSE_THERE}" _SSE41_TRUE)
- CHECK_CXX_ACCEPTS_FLAG("-msse4.1" _SSE41_OK)
-
- string(REGEX REPLACE "^.*(sse4_2).*$" "\\1" _SSE_THERE ${CPUINFO})
- string(COMPARE EQUAL "sse4_2" "${_SSE_THERE}" _SSE42_TRUE)
- CHECK_CXX_ACCEPTS_FLAG("-msse4.2" _SSE42_OK)
-
- string(REGEX REPLACE "^.*(avx).*$" "\\1" _SSE_THERE ${CPUINFO})
- string(COMPARE EQUAL "avx" "${_SSE_THERE}" _AVX_TRUE)
- CHECK_CXX_ACCEPTS_FLAG("-mavx" _AVX_OK)
-
- string(REGEX REPLACE "^.*(avx2).*$" "\\1" _SSE_THERE ${CPUINFO})
- string(COMPARE EQUAL "avx2" "${_SSE_THERE}" _AVX2_TRUE)
- CHECK_CXX_ACCEPTS_FLAG("-mavx2" _AVX2_OK)
- endif()
-elseif(CMAKE_SYSTEM_NAME MATCHES "Darwin")
- if(NOT CPU MATCHES "arm")
- exec_program("/usr/sbin/sysctl -n machdep.cpu.features machdep.cpu.leaf7_features" OUTPUT_VARIABLE CPUINFO)
-
- string(REGEX REPLACE "^.*[^S](SSE).*$" "\\1" _SSE_THERE ${CPUINFO})
- string(COMPARE EQUAL "SSE" "${_SSE_THERE}" _SSE_TRUE)
- CHECK_CXX_ACCEPTS_FLAG("-msse" _SSE_OK)
-
- string(REGEX REPLACE "^.*[^S](SSE2).*$" "\\1" _SSE_THERE ${CPUINFO})
- string(COMPARE EQUAL "SSE2" "${_SSE_THERE}" _SSE2_TRUE)
- CHECK_CXX_ACCEPTS_FLAG("-msse2" _SSE2_OK)
-
- string(REGEX REPLACE "^.*[^S](SSE3).*$" "\\1" _SSE_THERE ${CPUINFO})
- string(COMPARE EQUAL "SSE3" "${_SSE_THERE}" _SSE3_TRUE)
- CHECK_CXX_ACCEPTS_FLAG("-msse3" _SSE3_OK)
-
- string(REGEX REPLACE "^.*(SSSE3).*$" "\\1" _SSE_THERE ${CPUINFO})
- string(COMPARE EQUAL "SSSE3" "${_SSE_THERE}" _SSSE3_TRUE)
- CHECK_CXX_ACCEPTS_FLAG("-mssse3" _SSSE3_OK)
-
- string(REGEX REPLACE "^.*(SSE4.1).*$" "\\1" _SSE_THERE ${CPUINFO})
- string(COMPARE EQUAL "SSE4.1" "${_SSE_THERE}" _SSE41_TRUE)
- CHECK_CXX_ACCEPTS_FLAG("-msse4.1" _SSE41_OK)
-
- string(REGEX REPLACE "^.*(SSE4.2).*$" "\\1" _SSE_THERE ${CPUINFO})
- string(COMPARE EQUAL "SSE4.2" "${_SSE_THERE}" _SSE42_TRUE)
- CHECK_CXX_ACCEPTS_FLAG("-msse4.2" _SSE42_OK)
-
- string(REGEX REPLACE "^.*(AVX).*$" "\\1" _SSE_THERE ${CPUINFO})
- string(COMPARE EQUAL "AVX" "${_SSE_THERE}" _AVX_TRUE)
- CHECK_CXX_ACCEPTS_FLAG("-mavx" _AVX_OK)
-
- string(REGEX REPLACE "^.*(AVX2).*$" "\\1" _SSE_THERE ${CPUINFO})
- string(COMPARE EQUAL "AVX2" "${_SSE_THERE}" _AVX2_TRUE)
- CHECK_CXX_ACCEPTS_FLAG("-mavx2" _AVX2_OK)
- endif()
-elseif(CMAKE_SYSTEM_NAME MATCHES "Windows")
- # TODO
- set(_SSE_TRUE true)
- set(_SSE_OK true)
- set(_SSE2_TRUE true)
- set(_SSE2_OK true)
-endif()
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(SSE
- REQUIRED_VARS _SSE_TRUE _SSE_OK
- FAIL_MESSAGE "Could not find hardware support for SSE")
-find_package_handle_standard_args(SSE2
- REQUIRED_VARS _SSE2_TRUE _SSE2_OK
- FAIL_MESSAGE "Could not find hardware support for SSE2")
-find_package_handle_standard_args(SSE3
- REQUIRED_VARS _SSE3_TRUE _SSE3_OK
- FAIL_MESSAGE "Could not find hardware support for SSE3")
-find_package_handle_standard_args(SSSE3
- REQUIRED_VARS _SSSE3_TRUE _SSSE3_OK
- FAIL_MESSAGE "Could not find hardware support for SSSE3")
-find_package_handle_standard_args(SSE4_1
- REQUIRED_VARS _SSE41_TRUE _SSE41_OK
- FAIL_MESSAGE "Could not find hardware support for SSE4.1")
-find_package_handle_standard_args(SSE4_2
- REQUIRED_VARS _SSE42_TRUE _SSE42_OK
- FAIL_MESSAGE "Could not find hardware support for SSE4.2")
-find_package_handle_standard_args(AVX
- REQUIRED_VARS _AVX_TRUE _AVX_OK
- FAIL_MESSAGE "Could not find hardware support for AVX")
-find_package_handle_standard_args(AVX2
- REQUIRED_VARS _AVX2_TRUE _AVX2_OK
- FAIL_MESSAGE "Could not find hardware support for AVX2")
-
-mark_as_advanced(SSE2_FOUND SSE3_FOUND SSSE3_FOUND SSE4_1_FOUND SSE4_2_FOUND AVX_FOUND AVX2_FOUND)
-
-unset(_SSE_THERE)
-unset(_SSE_TRUE)
-unset(_SSE_OK)
-unset(_SSE_OK CACHE)
-unset(_SSE2_TRUE)
-unset(_SSE2_OK)
-unset(_SSE2_OK CACHE)
-unset(_SSE3_TRUE)
-unset(_SSE3_OK)
-unset(_SSE3_OK CACHE)
-unset(_SSSE3_TRUE)
-unset(_SSSE3_OK)
-unset(_SSSE3_OK CACHE)
-unset(_SSE4_1_TRUE)
-unset(_SSE41_OK)
-unset(_SSE41_OK CACHE)
-unset(_SSE4_2_TRUE)
-unset(_SSE42_OK)
-unset(_SSE42_OK CACHE)
-unset(_AVX_TRUE)
-unset(_AVX_OK)
-unset(_AVX_OK CACHE)
-unset(_AVX2_TRUE)
-unset(_AVX2_OK)
-unset(_AVX2_OK CACHE)
-
diff --git a/project/cmake/modules/FindSSH.cmake b/project/cmake/modules/FindSSH.cmake
deleted file mode 100644
index 538c699a2d..0000000000
--- a/project/cmake/modules/FindSSH.cmake
+++ /dev/null
@@ -1,47 +0,0 @@
-#.rst:
-# FindSSH
-# -------
-# Finds the SSH library
-#
-# This will will define the following variables::
-#
-# SSH_FOUND - system has SSH
-# SSH_INCLUDE_DIRS - the SSH include directory
-# SSH_LIBRARIES - the SSH libraries
-# SSH_DEFINITIONS - the SSH definitions
-#
-# and the following imported targets::
-#
-# SSH::SSH - The SSH library
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_SSH libssh QUIET)
-endif()
-
-find_path(SSH_INCLUDE_DIR NAMES libssh/libssh.h
- PATHS ${PC_SSH_INCLUDEDIR})
-find_library(SSH_LIBRARY NAMES ssh
- PATHS ${PC_SSH_LIBDIR})
-
-set(SSH_VERSION ${PC_SSH_VERSION})
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(SSH
- REQUIRED_VARS SSH_LIBRARY SSH_INCLUDE_DIR
- VERSION_VAR SSH_VERSION)
-
-if(SSH_FOUND)
- set(SSH_LIBRARIES ${SSH_LIBRARY})
- set(SSH_INCLUDE_DIRS ${SSH_INCLUDE_DIR})
- set(SSH_DEFINITIONS -DHAVE_LIBSSH=1)
-
- if(NOT TARGET SSH::SSH)
- add_library(SSH::SSH UNKNOWN IMPORTED)
- set_target_properties(SSH::SSH PROPERTIES
- IMPORTED_LOCATION "${SSH_LIBRARY}"
- INTERFACE_INCLUDE_DIRECTORIES "${SSH_INCLUDE_DIR}"
- INTERFACE_COMPILE_DEFINITIONS HAVE_LIBSSH=1)
- endif()
-endif()
-
-mark_as_advanced(SSH_INCLUDE_DIR SSH_LIBRARY)
diff --git a/project/cmake/modules/FindSWIG.cmake b/project/cmake/modules/FindSWIG.cmake
deleted file mode 100644
index 523b49bd82..0000000000
--- a/project/cmake/modules/FindSWIG.cmake
+++ /dev/null
@@ -1,29 +0,0 @@
-#.rst:
-# FindSWIG
-# --------
-# Finds the SWIG executable
-#
-# This will will define the following variables::
-#
-# SWIG_FOUND - system has SWIG
-# SWIG_EXECUTABLE - the SWIG executable
-
-find_program(SWIG_EXECUTABLE NAMES swig3.0 swig2.0 swig
- PATH_SUFFIXES swig)
-if(SWIG_EXECUTABLE)
- execute_process(COMMAND ${SWIG_EXECUTABLE} -swiglib
- OUTPUT_VARIABLE SWIG_DIR
- ERROR_VARIABLE SWIG_swiglib_error
- RESULT_VARIABLE SWIG_swiglib_result)
- execute_process(COMMAND ${SWIG_EXECUTABLE} -version
- OUTPUT_VARIABLE SWIG_version_output
- ERROR_VARIABLE SWIG_version_output
- RESULT_VARIABLE SWIG_version_result)
- string(REGEX REPLACE ".*SWIG Version[^0-9.]*\([0-9.]+\).*" "\\1"
- SWIG_VERSION "${SWIG_version_output}")
-endif()
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(SWIG
- REQUIRED_VARS SWIG_EXECUTABLE SWIG_DIR
- VERSION_VAR SWIG_VERSION)
diff --git a/project/cmake/modules/FindSdl.cmake b/project/cmake/modules/FindSdl.cmake
deleted file mode 100644
index 91bcac5bf7..0000000000
--- a/project/cmake/modules/FindSdl.cmake
+++ /dev/null
@@ -1,46 +0,0 @@
-#.rst:
-# FindSDL
-# -------
-# Finds the SDL library
-#
-# This will will define the following variables::
-#
-# SDL_FOUND - system has SDL
-# SDL_INCLUDE_DIRS - the SDL include directory
-# SDL_LIBRARIES - the SDL libraries
-# SDL_DEFINITIONS - the SDL compile definitions
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_SDL2 sdl2 QUIET)
- if(PC_SDL2_FOUND)
- set(SDL_VERSION ${PC_SDL2_VERSION})
- else()
- pkg_check_modules(PC_SDL1 sdl QUIET)
- if(PC_SDL1_FOUND)
- set(SDL_VERSION ${PC_SDL1_VERSION})
- endif()
- endif()
-endif()
-
-find_path(SDL_INCLUDE_DIR SDL/SDL.h
- PATHS ${PC_SDL2_INCLUDE_DIR} ${PC_SDL1_INCLUDE_DIR})
-find_library(SDL_LIBRARY NAMES SDL2 SDL
- PATHS ${PC_SDL2_LIBDIR} ${PC_SDL1_LIBDIR})
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(Sdl REQUIRED_VARS SDL_LIBRARY SDL_INCLUDE_DIR
- VERSION_VAR SDL_VERSION)
-
-if(SDL_FOUND)
- set(SDL_LIBRARIES ${SDL_LIBRARY})
- set(SDL_INCLUDE_DIRS ${SDL_INCLUDE_DIR})
- set(SDL_DEFINITIONS -DHAVE_SDL=1)
-
- if(SDL_VERSION VERSION_GREATER 2)
- list(APPEND SDL_DEFINITIONS -DHAVE_SDL_VERSION=2)
- elseif(SDL_VERSION VERSION_GREATER 1)
- list(APPEND SDL_DEFINITIONS -DHAVE_SDL_VERSION=1)
- endif()
-endif()
-
-mark_as_advanced(SDL_LIBRARY SDL_INCLUDE_DIR)
diff --git a/project/cmake/modules/FindShairplay.cmake b/project/cmake/modules/FindShairplay.cmake
deleted file mode 100644
index 87d3107f60..0000000000
--- a/project/cmake/modules/FindShairplay.cmake
+++ /dev/null
@@ -1,63 +0,0 @@
-#.rst:
-# FindShairplay
-# -------------
-# Finds the Shairplay library
-#
-# This will will define the following variables::
-#
-# SHAIRPLAY_FOUND - system has Shairplay
-# SHAIRPLAY_INCLUDE_DIRS - the Shairplay include directory
-# SHAIRPLAY_LIBRARIES - the Shairplay libraries
-# SHAIRPLAY_DEFINITIONS - the Shairplay compile definitions
-#
-# and the following imported targets::
-#
-# Shairplay::Shairplay - The Shairplay library
-
-find_path(SHAIRPLAY_INCLUDE_DIR shairplay/raop.h)
-
-include(FindPackageHandleStandardArgs)
-if(NOT WIN32)
- find_library(SHAIRPLAY_LIBRARY NAMES shairplay)
-
- if(SHAIRPLAY_INCLUDE_DIR AND SHAIRPLAY_LIBRARY)
- include(CheckCSourceCompiles)
- set(CMAKE_REQUIRED_INCLUDES ${SHAIRPLAY_INCLUDE_DIRS})
- set(CMAKE_REQUIRED_LIBRARIES ${SHAIRPLAY_LIBRARIES})
- check_c_source_compiles("#include <shairplay/raop.h>
-
- int main()
- {
- struct raop_callbacks_s foo;
- foo.cls;
- return 0;
- }
- " HAVE_SHAIRPLAY_CALLBACK_CLS)
- endif()
-
- find_package_handle_standard_args(Shairplay
- REQUIRED_VARS SHAIRPLAY_LIBRARY SHAIRPLAY_INCLUDE_DIR HAVE_SHAIRPLAY_CALLBACK_CLS)
-else()
- # Dynamically loaded DLL
- find_package_handle_standard_args(Shairplay
- REQUIRED_VARS SHAIRPLAY_INCLUDE_DIR)
-endif()
-
-if(SHAIRPLAY_FOUND)
- set(SHAIRPLAY_LIBRARIES ${SHAIRPLAY_LIBRARY})
- set(SHAIRPLAY_INCLUDE_DIRS ${SHAIRPLAY_INCLUDE_DIR})
- set(SHAIRPLAY_DEFINITIONS -DHAVE_LIBSHAIRPLAY=1)
-
- if(NOT TARGET Shairplay::Shairplay)
- add_library(Shairplay::Shairplay UNKNOWN IMPORTED)
- if(SHAIRPLAY_LIBRARY)
- set_target_properties(Shairplay::Shairplay PROPERTIES
- IMPORTED_LOCATION "${SHAIRPLAY_LIBRARY}")
- endif()
- set_target_properties(Shairplay::Shairplay PROPERTIES
- INTERFACE_INCLUDE_DIRECTORIES "${SHAIRPLAY_INCLUDE_DIR}"
- INTERFACE_COMPILE_DEFINITIONS HAVE_LIBSHAIRPLAY=1)
- endif()
-endif()
-
-mark_as_advanced(SHAIRPLAY_INCLUDE_DIR SHAIRPLAY_LIBRARY)
diff --git a/project/cmake/modules/FindSmbClient.cmake b/project/cmake/modules/FindSmbClient.cmake
deleted file mode 100644
index 6455cce3a1..0000000000
--- a/project/cmake/modules/FindSmbClient.cmake
+++ /dev/null
@@ -1,47 +0,0 @@
-#.rst:
-# FindSmbClient
-# -------------
-# Finds the SMB Client library
-#
-# This will will define the following variables::
-#
-# SMBCLIENT_FOUND - system has SmbClient
-# SMBCLIENT_INCLUDE_DIRS - the SmbClient include directory
-# SMBCLIENT_LIBRARIES - the SmbClient libraries
-# SMBCLIENT_DEFINITIONS - the SmbClient definitions
-#
-# and the following imported targets::
-#
-# SmbClient::SmbClient - The SmbClient library
-
-if(PKGCONFIG_FOUND)
- pkg_check_modules(PC_SMBCLIENT smbclient QUIET)
-endif()
-
-find_path(SMBCLIENT_INCLUDE_DIR NAMES libsmbclient.h
- PATHS ${PC_SMBCLIENT_INCLUDEDIR})
-find_library(SMBCLIENT_LIBRARY NAMES smbclient
- PATHS ${PC_SMBCLIENT_LIBDIR})
-
-set(SMBCLIENT_VERSION ${PC_SMBCLIENT_VERSION})
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(SmbClient
- REQUIRED_VARS SMBCLIENT_LIBRARY SMBCLIENT_INCLUDE_DIR
- VERSION_VAR SMBCLIENT_VERSION)
-
-if(SMBCLIENT_FOUND)
- set(SMBCLIENT_LIBRARIES ${SMBCLIENT_LIBRARY})
- set(SMBCLIENT_INCLUDE_DIRS ${SMBCLIENT_INCLUDE_DIR})
- set(SMBCLIENT_DEFINITIONS -DHAVE_LIBSMBCLIENT=1)
-
- if(NOT TARGET SmbClient::SmbClient)
- add_library(SmbClient::SmbClient UNKNOWN IMPORTED)
- set_target_properties(SmbClient::SmbClient PROPERTIES
- IMPORTED_LOCATION "${SMBCLIENT_LIBRARY}"
- INTERFACE_INCLUDE_DIRECTORIES "${SMBCLIENT_INCLUDE_DIR}"
- INTERFACE_COMPILE_DEFINITIONS HAVE_LIBSMBCLIENT=1)
- endif()
-endif()
-
-mark_as_advanced(LIBSMBCLIENT_INCLUDE_DIR LIBSMBCLIENT_LIBRARY)
diff --git a/project/cmake/modules/FindSqlite3.cmake b/project/cmake/modules/FindSqlite3.cmake
deleted file mode 100644
index abde0cff0a..0000000000
--- a/project/cmake/modules/FindSqlite3.cmake
+++ /dev/null
@@ -1,44 +0,0 @@
-#.rst:
-# FindSqlite3
-# -----------
-# Finds the SQLite3 library
-#
-# This will will define the following variables::
-#
-# SQLITE3_FOUND - system has SQLite3
-# SQLITE3_INCLUDE_DIRS - the SQLite3 include directory
-# SQLITE3_LIBRARIES - the SQLite3 libraries
-#
-# and the following imported targets::
-#
-# SQLite3::SQLite3 - The SQLite3 library
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_SQLITE3 sqlite3 QUIET)
-endif()
-
-find_path(SQLITE3_INCLUDE_DIR NAMES sqlite3.h
- PATHS ${PC_SQLITE3_INCLUDEDIR})
-find_library(SQLITE3_LIBRARY NAMES sqlite3
- PATHS ${PC_SQLITE3_LIBDIR})
-
-set(SQLITE3_VERSION ${PC_SQLITE3_VERSION})
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(Sqlite3
- REQUIRED_VARS SQLITE3_LIBRARY SQLITE3_INCLUDE_DIR
- VERSION_VAR SQLITE3_VERSION)
-
-if(SQLITE3_FOUND)
- set(SQLITE3_INCLUDE_DIRS ${SQLITE3_INCLUDE_DIR})
- set(SQLITE3_LIBRARIES ${SQLITE3_LIBRARY})
-
- if(NOT TARGET SQLite3::SQLite3)
- add_library(SQLite3::SQLite3 UNKNOWN IMPORTED)
- set_target_properties(SQLite3::SQLite3 PROPERTIES
- IMPORTED_LOCATION "${SQLITE3_LIBRARY}"
- INTERFACE_INCLUDE_DIRECTORIES "${SQLITE3_INCLUDE_DIR}")
- endif()
-endif()
-
-mark_as_advanced(SQLITE3_INCLUDE_DIR SQLITE3_LIBRARY)
diff --git a/project/cmake/modules/FindTagLib.cmake b/project/cmake/modules/FindTagLib.cmake
deleted file mode 100644
index 8c8c2f30a1..0000000000
--- a/project/cmake/modules/FindTagLib.cmake
+++ /dev/null
@@ -1,60 +0,0 @@
-#.rst:
-# FindTagLib
-# ----------
-# Finds the TagLib library
-#
-# This will will define the following variables::
-#
-# TAGLIB_FOUND - system has TagLib
-# TAGLIB_INCLUDE_DIRS - the TagLib include directory
-# TAGLIB_LIBRARIES - the TagLib libraries
-#
-# and the following imported targets::
-#
-# TagLib::TagLib - The TagLib library
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_TAGLIB taglib>=1.9.0 QUIET)
-endif()
-
-find_path(TAGLIB_INCLUDE_DIR taglib/tag.h
- PATHS ${PC_TAGLIB_INCLUDEDIR})
-find_library(TAGLIB_LIBRARY_RELEASE NAMES tag
- PATHS ${PC_TAGLIB_LIBDIR})
-find_library(TAGLIB_LIBRARY_DEBUG NAMES tagd
- PATHS ${PC_TAGLIB_LIBDIR})
-set(TAGLIB_VERSION ${PC_TAGLIB_VERSION})
-
-include(SelectLibraryConfigurations)
-select_library_configurations(TAGLIB)
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(TagLib
- REQUIRED_VARS TAGLIB_LIBRARY TAGLIB_INCLUDE_DIR
- VERSION_VAR TAGLIB_VERSION)
-
-if(TAGLIB_FOUND)
- set(TAGLIB_LIBRARIES ${TAGLIB_LIBRARY})
-
- # Workaround broken .pc file
- list(APPEND TAGLIB_LIBRARIES ${PC_TAGLIB_ZLIB_LIBRARIES})
-
- set(TAGLIB_INCLUDE_DIRS ${TAGLIB_INCLUDE_DIR})
- if(NOT TARGET TagLib::TagLib)
- add_library(TagLib::TagLib UNKNOWN IMPORTED)
- if(TAGLIB_LIBRARY_RELEASE)
- set_target_properties(TagLib::TagLib PROPERTIES
- IMPORTED_CONFIGURATIONS RELEASE
- IMPORTED_LOCATION "${TAGLIB_LIBRARY_RELEASE}")
- endif()
- if(TAGLIB_LIBRARY_DEBUG)
- set_target_properties(TagLib::TagLib PROPERTIES
- IMPORTED_CONFIGURATIONS DEBUG
- IMPORTED_LOCATION "${TAGLIB_LIBRARY_DEBUG}")
- endif()
- set_target_properties(TagLib::TagLib PROPERTIES
- INTERFACE_INCLUDE_DIRECTORIES "${TAGLIB_INCLUDE_DIR}")
- endif()
-endif()
-
-mark_as_advanced(TAGLIB_INCLUDE_DIR TAGLIB_LIBRARY)
diff --git a/project/cmake/modules/FindTexturePacker.cmake b/project/cmake/modules/FindTexturePacker.cmake
deleted file mode 100644
index 677b4d983b..0000000000
--- a/project/cmake/modules/FindTexturePacker.cmake
+++ /dev/null
@@ -1,41 +0,0 @@
-#.rst:
-# FindTexturePacker
-# -----------------
-# Finds the TexturePacker
-#
-# If WITH_TEXTUREPACKER is defined and points to a directory,
-# this path will be used to search for the Texturepacker binary
-#
-#
-# This will define the following (imported) targets::
-#
-# TexturePacker::TexturePacker - The TexturePacker executable
-
-if(NOT TARGET TexturePacker::TexturePacker)
- if(KODI_DEPENDSBUILD)
- add_executable(TexturePacker::TexturePacker IMPORTED GLOBAL)
- set_target_properties(TexturePacker::TexturePacker PROPERTIES
- IMPORTED_LOCATION "${NATIVEPREFIX}/bin/TexturePacker")
- elseif(WIN32)
- add_executable(TexturePacker::TexturePacker IMPORTED GLOBAL)
- set_target_properties(TexturePacker::TexturePacker PROPERTIES
- IMPORTED_LOCATION "${CORE_SOURCE_DIR}/tools/TexturePacker/TexturePacker.exe")
- else()
- if(WITH_TEXTUREPACKER)
- get_filename_component(_tppath ${WITH_TEXTUREPACKER} ABSOLUTE)
- find_program(TEXTUREPACKER_EXECUTABLE TexturePacker PATHS ${_tppath})
-
- include(FindPackageHandleStandardArgs)
- find_package_handle_standard_args(TexturePacker DEFAULT_MSG TEXTUREPACKER_EXECUTABLE)
- if(TEXTUREPACKER_FOUND)
- add_executable(TexturePacker::TexturePacker IMPORTED GLOBAL)
- set_target_properties(TexturePacker::TexturePacker PROPERTIES
- IMPORTED_LOCATION "${TEXTUREPACKER_EXECUTABLE}")
- endif()
- mark_as_advanced(TEXTUREPACKER)
- else()
- add_subdirectory(${CORE_SOURCE_DIR}/tools/depends/native/TexturePacker build/texturepacker)
- add_executable(TexturePacker::TexturePacker ALIAS TexturePacker)
- endif()
- endif()
-endif()
diff --git a/project/cmake/modules/FindTinyXML.cmake b/project/cmake/modules/FindTinyXML.cmake
deleted file mode 100644
index 1220a94387..0000000000
--- a/project/cmake/modules/FindTinyXML.cmake
+++ /dev/null
@@ -1,68 +0,0 @@
-#.rst:
-# FindTinyXML
-# -----------
-# Finds the TinyXML library
-#
-# This will will define the following variables::
-#
-# TINYXML_FOUND - system has TinyXML
-# TINYXML_INCLUDE_DIRS - the TinyXML include directory
-# TINYXML_LIBRARIES - the TinyXML libraries
-# TINYXML_DEFINITIONS - the TinyXML definitions
-#
-# and the following imported targets::
-#
-# TinyXML::TinyXML - The TinyXML library
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_TINYXML tinyxml QUIET)
-endif()
-
-find_path(TINYXML_INCLUDE_DIR tinyxml.h
- PATH_SUFFIXES tinyxml
- PATHS ${PC_TINYXML_INCLUDEDIR})
-find_library(TINYXML_LIBRARY_RELEASE NAMES tinyxml tinyxmlSTL
- PATH_SUFFIXES tinyxml
- PATHS ${PC_TINYXML_LIBDIR})
-find_library(TINYXML_LIBRARY_DEBUG NAMES tinyxmld tinyxmlSTLd
- PATH_SUFFIXES tinyxml
- PATHS ${PC_TINYXML_LIBDIR})
-set(TINYXML_VERSION ${PC_TINYXML_VERSION})
-
-include(SelectLibraryConfigurations)
-select_library_configurations(TINYXML)
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(TinyXML
- REQUIRED_VARS TINYXML_LIBRARY TINYXML_INCLUDE_DIR
- VERSION_VAR TINYXML_VERSION)
-
-if(TINYXML_FOUND)
- set(TINYXML_LIBRARIES ${TINYXML_LIBRARY})
- set(TINYXML_INCLUDE_DIRS ${TINYXML_INCLUDE_DIR})
- if(WIN32)
- set(TINYXML_DEFINITIONS -DTIXML_USE_STL=1)
- endif()
-
- if(NOT TARGET TinyXML::TinyXML)
- add_library(TinyXML::TinyXML UNKNOWN IMPORTED)
- if(TINYXML_LIBRARY_RELEASE)
- set_target_properties(TinyXML::TinyXML PROPERTIES
- IMPORTED_CONFIGURATIONS RELEASE
- IMPORTED_LOCATION "${TINYXML_LIBRARY_RELEASE}")
- endif()
- if(TINYXML_LIBRARY_DEBUG)
- set_target_properties(TinyXML::TinyXML PROPERTIES
- IMPORTED_CONFIGURATIONS DEBUG
- IMPORTED_LOCATION "${TINYXML_LIBRARY_DEBUG}")
- endif()
- set_target_properties(TinyXML::TinyXML PROPERTIES
- INTERFACE_INCLUDE_DIRECTORIES "${TINYXML_INCLUDE_DIR}")
- if(WIN32)
- set_target_properties(TinyXML::TinyXML PROPERTIES
- INTERFACE_COMPILE_DEFINITIONS TIXML_USE_STL=1)
- endif()
- endif()
-endif()
-
-mark_as_advanced(TINYXML_INCLUDE_DIR TINYXML_LIBRARY)
diff --git a/project/cmake/modules/FindUDEV.cmake b/project/cmake/modules/FindUDEV.cmake
deleted file mode 100644
index 422c437d91..0000000000
--- a/project/cmake/modules/FindUDEV.cmake
+++ /dev/null
@@ -1,47 +0,0 @@
-#.rst:
-# FindUDEV
-# -------
-# Finds the UDEV library
-#
-# This will will define the following variables::
-#
-# UDEV_FOUND - system has UDEV
-# UDEV_INCLUDE_DIRS - the UDEV include directory
-# UDEV_LIBRARIES - the UDEV libraries
-# UDEV_DEFINITIONS - the UDEV definitions
-#
-# and the following imported targets::
-#
-# UDEV::UDEV - The UDEV library
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_UDEV libudev QUIET)
-endif()
-
-find_path(UDEV_INCLUDE_DIR NAMES libudev.h
- PATHS ${PC_UDEV_INCLUDEDIR})
-find_library(UDEV_LIBRARY NAMES udev
- PATHS ${PC_UDEV_LIBDIR})
-
-set(UDEV_VERSION ${PC_UDEV_VERSION})
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(UDEV
- REQUIRED_VARS UDEV_LIBRARY UDEV_INCLUDE_DIR
- VERSION_VAR UDEV_VERSION)
-
-if(UDEV_FOUND)
- set(UDEV_LIBRARIES ${UDEV_LIBRARY})
- set(UDEV_INCLUDE_DIRS ${UDEV_INCLUDE_DIR})
- set(UDEV_DEFINITIONS -DHAVE_LIBUDEV=1)
-
- if(NOT TARGET UDEV::UDEV)
- add_library(UDEV::UDEV UNKNOWN IMPORTED)
- set_target_properties(UDEV::UDEV PROPERTIES
- IMPORTED_LOCATION "${UDEV_LIBRARY}"
- INTERFACE_INCLUDE_DIRECTORIES "${UDEV_INCLUDE_DIR}"
- INTERFACE_COMPILE_DEFINITIONS HAVE_LIBUDEV=1)
- endif()
-endif()
-
-mark_as_advanced(UDEV_INCLUDE_DIR UDEV_LIBRARY)
diff --git a/project/cmake/modules/FindUUID.cmake b/project/cmake/modules/FindUUID.cmake
deleted file mode 100644
index 173fac277d..0000000000
--- a/project/cmake/modules/FindUUID.cmake
+++ /dev/null
@@ -1,43 +0,0 @@
-#.rst:
-# FindUUID
-# --------
-# Finds the libuuid library
-#
-# This will will define the following variables::
-#
-# UUID_FOUND - system has libuuid
-# UUID_INCLUDE_DIRS - the libuuid include directory
-# UUID_LIBRARIES - the libuuid libraries
-#
-# and the following imported targets::
-#
-# UUID::UUID - The libuuid library
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_UUID uuid QUIET)
-endif()
-
-find_path(UUID_INCLUDE_DIR uuid/uuid.h
- PATHS ${PC_UUID_INCLUDEDIR})
-find_library(UUID_LIBRARY uuid
- PATHS ${PC_UUID_LIBRARY})
-set(UUID_VERSION ${PC_UUID_VERSION})
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(UUID
- REQUIRED_VARS UUID_LIBRARY UUID_INCLUDE_DIR
- VERSION_VAR UUID_VERSION)
-
-if(UUID_FOUND)
- set(UUID_LIBRARIES ${UUID_LIBRARY})
- set(UUID_INCLUDE_DIRS ${UUID_INCLUDE_DIR})
-
- if(NOT TARGET UUID::UUID)
- add_library(UUID::UUID UNKNOWN IMPORTED)
- set_target_properties(UUID::UUID PROPERTIES
- IMPORTED_LOCATION "${UUID_LIBRARY}"
- INTERFACE_INCLUDE_DIRECTORIES "${UUID_INCLUDE_DIR}")
- endif()
-endif()
-
-mark_as_advanced(UUID_INCLUDE_DIR UUID_LIBRARY)
diff --git a/project/cmake/modules/FindVAAPI.cmake b/project/cmake/modules/FindVAAPI.cmake
deleted file mode 100644
index ea9a3c9558..0000000000
--- a/project/cmake/modules/FindVAAPI.cmake
+++ /dev/null
@@ -1,72 +0,0 @@
-#.rst:
-# FindVAAPI
-# ---------
-# Finds the VAAPI library
-#
-# This will will define the following variables::
-#
-# VAAPI_FOUND - system has VAAPI
-# VAAPI_INCLUDE_DIRS - the VAAPI include directory
-# VAAPI_LIBRARIES - the VAAPI libraries
-# VAAPI_DEFINITIONS - the VAAPI definitions
-#
-# and the following imported targets::
-#
-# VAAPI::VAAPI - The VAAPI library
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_VAAPI libva libva-x11 QUIET)
-endif()
-
-find_path(VAAPI_INCLUDE_DIR va/va.h
- PATHS ${PC_VAAPI_libva_INCLUDEDIR})
-find_library(VAAPI_libva_LIBRARY NAMES va
- PATHS ${PC_VAAPI_libva_LIBDIR})
-find_library(VAAPI_libva-x11_LIBRARY NAMES va-x11
- PATHS ${PC_VAAPI_libva_LIBDIR})
-find_library(VAAPI_libva-drm_LIBRARY NAMES va-drm
- PATHS ${PC_VAAPI_libva_LIBDIR})
-
-if(PC_VAAPI_libva_VERSION)
- set(VAAPI_VERSION_STRING ${PC_VAAPI_libva_VERSION})
-elseif(VAAPI_INCLUDE_DIR AND EXISTS "${VAAPI_INCLUDE_DIR}/va/va_version.h")
- file(STRINGS "${VAAPI_INCLUDE_DIR}/va/va_version.h" vaapi_version_str REGEX "^#define[\t ]+VA_VERSION_S[\t ]+\".*\".*")
- string(REGEX REPLACE "^#define[\t ]+VA_VERSION_S[\t ]+\"([^\"]+)\".*" "\\1" VAAPI_VERSION_STRING "${vaapi_version_str}")
- unset(vaapi_version_str)
-endif()
-
-if(NOT VAAPI_FIND_VERSION)
- set(VAAPI_FIND_VERSION 0.38.0)
-endif()
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(VAAPI
- REQUIRED_VARS VAAPI_libva_LIBRARY VAAPI_libva-x11_LIBRARY VAAPI_libva-drm_LIBRARY VAAPI_INCLUDE_DIR
- VERSION_VAR VAAPI_VERSION_STRING)
-
-if(VAAPI_FOUND)
- set(VAAPI_INCLUDE_DIRS ${VAAPI_INCLUDE_DIR})
- set(VAAPI_LIBRARIES ${VAAPI_libva_LIBRARY} ${VAAPI_libva-x11_LIBRARY} ${VAAPI_libva-drm_LIBRARY})
- set(VAAPI_DEFINITIONS -DHAVE_LIBVA=1)
-
- if(NOT TARGET VAAPI::VAAPI_X11)
- add_library(VAAPI::VAAPI_X11 UNKNOWN IMPORTED)
- set_target_properties(VAAPI::VAAPI_X11 PROPERTIES
- IMPORTED_LOCATION "${VAAPI_libva-x11_LIBRARY}")
- endif()
- if (NOT TARGET VAAPI::VAAPI_DRM)
- add_library(VAAPI::VAAPI_DRM UNKNOWN IMPORTED)
- set_target_properties(VAAPI::VAAPI_DRM PROPERTIES
- IMPORTED_LOCATION "${VAAPI_libva-drm_LIBRARY}")
- endif()
- if(NOT TARGET VAAPI::VAAPI)
- add_library(VAAPI::VAAPI UNKNOWN IMPORTED)
- set_target_properties(VAAPI::VAAPI PROPERTIES
- IMPORTED_LOCATION "${VAAPI_libva_LIBRARY}"
- INTERFACE_INCLUDE_DIRECTORIES "${VAAPI_INCLUDE_DIR}"
- INTERFACE_COMPILE_DEFINITIONS HAVE_LIBVA=1
- INTERFACE_LINK_LIBRARIES "VAAPI::VAAPI_X11 VAAPI::VAAPI_DRM")
- endif()
-endif()
-
-mark_as_advanced(VAAPI_INCLUDE_DIR VAAPI_libva_LIBRARY VAAPI_libva-x11_LIBRARY VAAPI_libva-drm_LIBRARY)
diff --git a/project/cmake/modules/FindVDPAU.cmake b/project/cmake/modules/FindVDPAU.cmake
deleted file mode 100644
index b99e03f49b..0000000000
--- a/project/cmake/modules/FindVDPAU.cmake
+++ /dev/null
@@ -1,47 +0,0 @@
-#.rst:
-# FindVDPAU
-# ---------
-# Finds the VDPAU library
-#
-# This will will define the following variables::
-#
-# VDPAU_FOUND - system has VDPAU
-# VDPAU_INCLUDE_DIRS - the VDPAU include directory
-# VDPAU_LIBRARIES - the VDPAU libraries
-# VDPAU_DEFINITIONS - the VDPAU definitions
-#
-# and the following imported targets::
-#
-# VDPAU::VDPAU - The VDPAU library
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_VDPAU vdpau QUIET)
-endif()
-
-find_path(VDPAU_INCLUDE_DIR NAMES vdpau/vdpau.h vdpau/vdpau_x11.h
- PATHS ${PC_VDPAU_INCLUDEDIR})
-find_library(VDPAU_LIBRARY NAMES vdpau
- PATHS ${PC_VDPAU_LIBDIR})
-
-set(VDPAU_VERSION ${PC_VDPAU_VERSION})
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(VDPAU
- REQUIRED_VARS VDPAU_LIBRARY VDPAU_INCLUDE_DIR
- VERSION_VAR VDPAU_VERSION)
-
-if(VDPAU_FOUND)
- set(VDPAU_INCLUDE_DIRS ${VDPAU_INCLUDE_DIR})
- set(VDPAU_LIBRARIES ${VDPAU_LIBRARY})
- set(VDPAU_DEFINITIONS -DHAVE_LIBVDPAU=1)
-
- if(NOT TARGET VDPAU::VDPAU)
- add_library(VDPAU::VDPAU UNKNOWN IMPORTED)
- set_target_properties(VDPAU::VDPAU PROPERTIES
- IMPORTED_LOCATION "${VDPAU_LIBRARY}"
- INTERFACE_INCLUDE_DIRECTORIES "${VDPAU_INCLUDE_DIR}"
- INTERFACE_COMPILE_DEFINITIONS HAVE_LIBVDPAU=1)
- endif()
-endif()
-
-mark_as_advanced(VDPAU_INCLUDE_DIR VDPAU_LIBRARY)
diff --git a/project/cmake/modules/FindX.cmake b/project/cmake/modules/FindX.cmake
deleted file mode 100644
index 19bb770cfa..0000000000
--- a/project/cmake/modules/FindX.cmake
+++ /dev/null
@@ -1,57 +0,0 @@
-#.rst:
-# FindX
-# -----
-# Finds the X11 library
-#
-# This will will define the following variables::
-#
-# X_FOUND - system has X11
-# X_INCLUDE_DIRS - the X11 include directory
-# X_LIBRARIES - the X11 libraries
-# X_DEFINITIONS - the X11 definitions
-#
-# and the following imported targets::
-#
-# X::X - The X11 library
-# X::Xext - The X11 extension library
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_X x11 xext QUIET)
-endif()
-
-find_path(X_INCLUDE_DIR NAMES X11/Xlib.h
- PATHS ${PC_X_x11_INCLUDEDIR})
-find_library(X_LIBRARY NAMES X11
- PATHS ${PC_X_x11_LIBDIR})
-find_library(X_EXT_LIBRARY NAMES Xext
- PATHS ${PC_X_xext_LIBDIR})
-
-set(X_VERSION ${PC_X_x11_VERSION})
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(X
- REQUIRED_VARS X_LIBRARY X_EXT_LIBRARY X_INCLUDE_DIR
- VERSION_VAR X_VERSION)
-
-if(X_FOUND)
- set(X_LIBRARIES ${X_LIBRARY} ${X_EXT_LIBRARY})
- set(X_INCLUDE_DIRS ${X_INCLUDE_DIR})
- set(X_DEFINITIONS -DHAVE_X11=1)
-
- if(NOT TARGET X::X)
- add_library(X::X UNKNOWN IMPORTED)
- set_target_properties(X::X PROPERTIES
- IMPORTED_LOCATION "${X_LIBRARY}"
- INTERFACE_INCLUDE_DIRECTORIES "${X_INCLUDE_DIR}"
- INTERFACE_COMPILE_DEFINITIONS HAVE_X11=1)
- endif()
- if(NOT TARGET X::Xext)
- add_library(X::Xext UNKNOWN IMPORTED)
- set_target_properties(X::Xext PROPERTIES
- IMPORTED_LOCATION "${X_EXT_LIBRARY}"
- INTERFACE_INCLUDE_DIRECTORIES "${X_INCLUDE_DIR}"
- INTERFACE_LINK_LIBRARIES X::X)
- endif()
-endif()
-
-mark_as_advanced(X_INCLUDE_DIR X_LIBRARY X_EXT_LIBRARY)
diff --git a/project/cmake/modules/FindXRandR.cmake b/project/cmake/modules/FindXRandR.cmake
deleted file mode 100644
index 9feaedc6f7..0000000000
--- a/project/cmake/modules/FindXRandR.cmake
+++ /dev/null
@@ -1,47 +0,0 @@
-#.rst:
-# FindXRandR
-# ----------
-# Finds the XRandR library
-#
-# This will will define the following variables::
-#
-# XRANDR_FOUND - system has XRANDR
-# XRANDR_INCLUDE_DIRS - the XRANDR include directory
-# XRANDR_LIBRARIES - the XRANDR libraries
-# XRANDR_DEFINITIONS - the XRANDR definitions
-#
-# and the following imported targets::
-#
-# XRandR::XRandR - The XRANDR library
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_XRANDR xrandr QUIET)
-endif()
-
-find_path(XRANDR_INCLUDE_DIR NAMES X11/extensions/Xrandr.h
- PATHS ${PC_XRANDR_INCLUDEDIR})
-find_library(XRANDR_LIBRARY NAMES Xrandr
- PATHS ${PC_XRANDR_LIBDIR})
-
-set(XRANDR_VERSION ${PC_XRANDR_VERSION})
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(XRandR
- REQUIRED_VARS XRANDR_LIBRARY XRANDR_INCLUDE_DIR
- VERSION_VAR XRANDR_VERSION)
-
-if(XRANDR_FOUND)
- set(XRANDR_LIBRARIES ${XRANDR_LIBRARY})
- set(XRANDR_INCLUDE_DIRS ${XRANDR_INCLUDE_DIR})
- set(XRANDR_DEFINITIONS -DHAVE_LIBXRANDR=1)
-
- if(NOT TARGET XRandR::XRandR)
- add_library(XRandR::XRandR UNKNOWN IMPORTED)
- set_target_properties(XRandR::XRandR PROPERTIES
- IMPORTED_LOCATION "${XRANDR_LIBRARY}"
- INTERFACE_INCLUDE_DIRECTORIES "${XRANDR_INCLUDE_DIR}"
- INTERFACE_COMPILE_DEFINITIONS HAVE_LIBXRANDR=1)
- endif()
-endif()
-
-mark_as_advanced(XRANDR_INCLUDE_DIR XRANDR_LIBRARY)
diff --git a/project/cmake/modules/FindXSLT.cmake b/project/cmake/modules/FindXSLT.cmake
deleted file mode 100644
index f7fea9e343..0000000000
--- a/project/cmake/modules/FindXSLT.cmake
+++ /dev/null
@@ -1,50 +0,0 @@
-#.rst:
-# FindXSLT
-# --------
-# Finds the XSLT library
-#
-# This will will define the following variables::
-#
-# XSLT_FOUND - system has XSLT
-# XSLT_INCLUDE_DIRS - the XSLT include directory
-# XSLT_LIBRARIES - the XSLT libraries
-# XSLT_DEFINITIONS - the XSLT definitions
-#
-# and the following imported targets::
-#
-# XSLT::XSLT - The XSLT library
-
-find_package(LibXml2 REQUIRED)
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_XSLT libxslt QUIET)
-endif()
-
-find_path(XSLT_INCLUDE_DIR NAMES libxslt/xslt.h
- PATHS ${PC_XSLT_INCLUDEDIR})
-find_library(XSLT_LIBRARY NAMES xslt libxslt
- PATHS ${PC_XSLT_LIBDIR})
-
-set(XSLT_VERSION ${PC_XSLT_VERSION})
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(XSLT
- REQUIRED_VARS XSLT_LIBRARY XSLT_INCLUDE_DIR
- VERSION_VAR XSLT_VERSION)
-
-if(XSLT_FOUND)
- set(XSLT_LIBRARIES ${XSLT_LIBRARY} ${LIBXML2_LIBRARIES})
- set(XSLT_INCLUDE_DIRS ${XSLT_INCLUDE_DIR} ${LIBXML2_INCLUDE_DIR})
- set(XSLT_DEFINITIONS -DHAVE_LIBXSLT=1)
-
- if(NOT TARGET XSLT::XSLT)
- add_library(XSLT::XSLT UNKNOWN IMPORTED)
- set_target_properties(XSLT::XSLT PROPERTIES
- IMPORTED_LOCATION "${XSLT_LIBRARY}"
- INTERFACE_INCLUDE_DIRECTORIES "${XSLT_INCLUDE_DIR} ${LIBXML2_INCLUDE_DIR}"
- INTERFACE_COMPILE_DEFINITIONS HAVE_LIBXSLT=1
- INTERFACE_LINK_LIBRARIES "${LIBXML2_LIBRARIES}")
- endif()
-endif()
-
-mark_as_advanced(XSLT_INCLUDE_DIR XSLT_LIBRARY)
diff --git a/project/cmake/modules/FindYajl.cmake b/project/cmake/modules/FindYajl.cmake
deleted file mode 100644
index c73a67b809..0000000000
--- a/project/cmake/modules/FindYajl.cmake
+++ /dev/null
@@ -1,62 +0,0 @@
-#.rst:
-# FindYajl
-# --------
-# Finds the Yajl library
-#
-# This will will define the following variables::
-#
-# YAJL_FOUND - system has Yajl
-# YAJL_INCLUDE_DIRS - Yajl include directory
-# YAJL_LIBRARIES - the Yajl libraries
-#
-# and the following imported targets::
-#
-# Yajl::Yajl - The Yajl library
-
-if(NOT Yajl_FIND_VERSION)
- set(Yajl_FIND_VERSION 2.0.0)
-endif()
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_YAJL yajl>=${Yajl_FIND_VERSION} QUIET)
-endif()
-
-find_path(YAJL_INCLUDE_DIR NAMES yajl/yajl_common.h
- PATHS ${PC_YAJL_INCLUDEDIR})
-find_library(YAJL_LIBRARY NAMES yajl
- PATHS ${PC_YAJL_LIBDIR})
-
-if(PC_YAJL_VERSION)
- set(YAJL_VERSION_STRING ${PC_YAJL_VERSION})
-elseif(YAJL_INCLUDE_DIR AND EXISTS "${YAJL_INCLUDE_DIR}/yajl/yajl_version.h")
- file(STRINGS "${YAJL_INCLUDE_DIR}/yajl/yajl_version.h" yajl_version_str REGEX "^[ \t]*#define[ \t]+YAJL_(MAJOR|MINOR|MICRO)")
- string(REGEX REPLACE "YAJL_MAJOR ([0-9]+)" "\\1" YAJL_VERSION_MAJOR "${YAJL_VERSION_MAJOR}")
-
- string(REGEX REPLACE ".*YAJL_MAJOR ([0-9]+).*" "\\1" yajl_major "${yajl_version_str}")
- string(REGEX REPLACE ".*YAJL_MINOR ([0-9]+).*" "\\1" yajl_minor "${yajl_version_str}")
- string(REGEX REPLACE ".*YAJL_MICRO ([0-9]+).*" "\\1" yajl_micro "${yajl_version_str}")
- set(YAJL_VERSION_STRING "${yajl_major}.${yajl_minor}.${yajl_micro}")
- unset(yajl_version_str)
- unset(yajl_major)
- unset(yajl_minor)
- unset(yajl_micro)
-endif()
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(Yajl
- REQUIRED_VARS YAJL_LIBRARY YAJL_INCLUDE_DIR
- VERSION_VAR YAJL_VERSION_STRING)
-
-if(YAJL_FOUND)
- set(YAJL_INCLUDE_DIRS ${YAJL_INCLUDE_DIR})
- set(YAJL_LIBRARIES ${YAJL_LIBRARY})
-
- if(NOT TARGET Yajl::Yajl)
- add_library(Yajl::Yajl UNKNOWN IMPORTED)
- set_target_properties(Yajl::Yajl PROPERTIES
- IMPORTED_LOCATION "${YAJL_LIBRARY}"
- INTERFACE_INCLUDE_DIRECTORIES "${YAJL_INCLUDE_DIR}")
- endif()
-endif()
-
-mark_as_advanced(YAJL_INCLUDE_DIR YAJL_LIBRARY)
diff --git a/project/cmake/modules/FindZip.cmake b/project/cmake/modules/FindZip.cmake
deleted file mode 100644
index e0a38c1290..0000000000
--- a/project/cmake/modules/FindZip.cmake
+++ /dev/null
@@ -1,46 +0,0 @@
-#.rst:
-# FindZip
-# -----------
-# Finds the Zip library
-#
-# This will will define the following variables::
-#
-# ZIP_FOUND - system has Zip
-# ZIP_INCLUDE_DIRS - the Zip include directory
-# ZIP_LIBRARIES - the Zip libraries
-# ZIP_DEFINITIONS - the Zip libraries
-#
-# and the following imported targets::
-#
-# ZIP::ZIP - The Zip library
-
-if(PKG_CONFIG_FOUND)
- pkg_check_modules(PC_ZIP libzip QUIET)
-endif()
-
-find_path(ZIP_INCLUDE_DIR zip.h
- PATHS ${PC_ZIP_INCLUDEDIR})
-find_library(ZIP_LIBRARY NAMES zip
- PATHS ${PC_ZIP_LIBDIR})
-set(ZIP_VERSION ${PC_ZIP_VERSION})
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(ZIP
- REQUIRED_VARS ZIP_LIBRARY ZIP_INCLUDE_DIR
- VERSION_VAR ZIP_VERSION)
-
-if(ZIP_FOUND)
- set(ZIP_LIBRARIES ${ZIP_LIBRARY})
- set(ZIP_INCLUDE_DIRS ${ZIP_INCLUDE_DIR})
- set(ZIP_DEFINITIONS "${PC_ZIP_CFLAGS}")
-
- if(NOT TARGET ZIP::ZIP)
- add_library(ZIP::ZIP UNKNOWN IMPORTED)
- set_target_properties(ZIP::ZIP PROPERTIES
- IMPORTED_LOCATION "${ZIP_LIBRARY}"
- INTERFACE_INCLUDE_DIRECTORIES "${ZIP_INCLUDE_DIR}"
- INTERFACE_COMPILE_DEFINITIONS "${PC_ZIP_CFLAGS}")
- endif()
-endif()
-
-mark_as_advanced(ZIP_INCLUDE_DIR ZIP_LIBRARY)
diff --git a/project/cmake/modules/LDGOLD.cmake b/project/cmake/modules/LDGOLD.cmake
deleted file mode 100644
index ad19c6b349..0000000000
--- a/project/cmake/modules/LDGOLD.cmake
+++ /dev/null
@@ -1,45 +0,0 @@
-option(ENABLE_LDGOLD "Use GNU gold linker" ON)
-
-set(LDGOLD_FOUND FALSE)
-if(ENABLE_LDGOLD)
- execute_process(COMMAND ${CMAKE_C_COMPILER} -fuse-ld=gold -Wl,--version ERROR_QUIET OUTPUT_VARIABLE LD_VERSION)
- if(LD_VERSION MATCHES "GNU gold")
- set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -fuse-ld=gold")
- set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -fuse-ld=gold")
- set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -fuse-ld=gold")
- set(LDGOLD_FOUND TRUE)
- message(STATUS "Linker: GNU gold")
- else()
- message(WARNING "GNU gold linker is not available, falling back to default system linker")
- endif()
-else()
- message(STATUS "Linker: Default system linker")
-endif()
-
-set(DEFAULT_ENABLE_DEBUGFISSION FALSE)
-if(CMAKE_BUILD_TYPE STREQUAL Debug OR
- CMAKE_BUILD_TYPE STREQUAL RelWithDebInfo AND
- LDGOLD_FOUND)
- set(DEFAULT_ENABLE_DEBUGFISSION TRUE)
-endif()
-
-include(CMakeDependentOption)
-cmake_dependent_option(ENABLE_DEBUGFISSION "Enable Debug Fission support" ON
- "DEFAULT_ENABLE_DEBUGFISSION" OFF)
-
-set(DEBUGFISSION_FOUND FALSE)
-if(ENABLE_DEBUGFISSION)
- include(TestCXXAcceptsFlag)
- check_cxx_accepts_flag(-gsplit-dwarf CXX_ACCEPTS_GSPLIT_DWARF)
- if(CXX_ACCEPTS_GSPLIT_DWARF)
- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -gsplit-dwarf")
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -gsplit-dwarf")
- set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--gdb-index")
- set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--gdb-index")
- set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--gdb-index")
- set(DEBUGFISSION_FOUND TRUE)
- message(STATUS "Debug Fission enabled")
- else()
- message(WARNING "Debug Fission is not available")
- endif()
-endif()
diff --git a/project/cmake/modules/extra/ECMEnableSanitizers.cmake b/project/cmake/modules/extra/ECMEnableSanitizers.cmake
deleted file mode 100644
index aa7092df18..0000000000
--- a/project/cmake/modules/extra/ECMEnableSanitizers.cmake
+++ /dev/null
@@ -1,149 +0,0 @@
-#.rst:
-# ECMEnableSanitizers
-# -------------------
-#
-# Enable compiler sanitizer flags.
-#
-# The following sanitizers are supported:
-#
-# - Address Sanitizer
-# - Memory Sanitizer
-# - Thread Sanitizer
-# - Leak Sanitizer
-# - Undefined Behaviour Sanitizer
-#
-# All of them are implemented in Clang, depending on your version, and
-# there is an work in progress in GCC, where some of them are currently
-# implemented.
-#
-# This module will check your current compiler version to see if it
-# supports the sanitizers that you want to enable
-#
-# Usage
-# =====
-#
-# Simply add::
-#
-# include(ECMEnableSanitizers)
-#
-# to your ``CMakeLists.txt``. Note that this module is included in
-# KDECompilerSettings, so projects using that module do not need to also
-# include this one.
-#
-# The sanitizers are not enabled by default. Instead, you must set
-# ``ECM_ENABLE_SANITIZERS`` (either in your ``CMakeLists.txt`` or on the
-# command line) to a semicolon-separated list of sanitizers you wish to enable.
-# The options are:
-#
-# - address
-# - memory
-# - thread
-# - leak
-# - undefined
-#
-# The sanitizers "address", "memory" and "thread" are mutually exclusive. You
-# cannot enable two of them in the same build.
-#
-# "leak" requires the "address" sanitizer.
-#
-# .. note::
-#
-# To reduce the overhead induced by the instrumentation of the sanitizers, it
-# is advised to enable compiler optimizations (``-O1`` or higher).
-#
-# Example
-# =======
-#
-# This is an example of usage::
-#
-# mkdir build
-# cd build
-# cmake -DECM_ENABLE_SANITIZERS='address;leak;undefined' ..
-#
-# .. note::
-#
-# Most of the sanitizers will require Clang. To enable it, use::
-#
-# -DCMAKE_CXX_COMPILER=clang++
-#
-# Since 1.3.0.
-
-#=============================================================================
-# Copyright 2014 Mathieu Tarral <mathieu.tarral@gmail.com>
-#
-# Distributed under the OSI-approved BSD License (the "License");
-# see accompanying file COPYING-CMAKE-SCRIPTS for details.
-#
-# This software is distributed WITHOUT ANY WARRANTY; without even the
-# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the License for more information.
-#=============================================================================
-# (To distribute this file outside of extra-cmake-modules, substitute the full
-# License text for the above reference.)
-
-# MACRO check_compiler_version
-#-----------------------------
-macro (check_compiler_version gcc_required_version clang_required_version)
- if (
- (
- CMAKE_CXX_COMPILER_ID MATCHES "GNU"
- AND
- CMAKE_CXX_COMPILER_VERSION VERSION_LESS ${gcc_required_version}
- )
- OR
- (
- CMAKE_CXX_COMPILER_ID MATCHES "Clang"
- AND
- CMAKE_CXX_COMPILER_VERSION VERSION_LESS ${clang_required_version}
- )
- )
- # error !
- message(FATAL_ERROR "You ask to enable the sanitizer ${CUR_SANITIZER},
- but your compiler ${CMAKE_CXX_COMPILER_ID} version ${CMAKE_CXX_COMPILER_VERSION}
- does not support it !
- You should use at least GCC ${gcc_required_version} or Clang ${clang_required_version}
- (99.99 means not implemented yet)")
- endif ()
-endmacro ()
-
-# MACRO check_compiler_support
-#------------------------------
-macro (enable_sanitizer_flags sanitize_option)
- if (${sanitize_option} MATCHES "address")
- check_compiler_version("4.8" "3.1")
- set(XSAN_COMPILE_FLAGS "-fsanitize=address -fno-omit-frame-pointer -fno-optimize-sibling-calls")
- set(XSAN_LINKER_FLAGS "asan")
- elseif (${sanitize_option} MATCHES "thread")
- check_compiler_version("4.8" "3.1")
- set(XSAN_COMPILE_FLAGS "-fsanitize=thread")
- set(XSAN_LINKER_FLAGS "tsan")
- elseif (${sanitize_option} MATCHES "memory")
- check_compiler_version("99.99" "3.1")
- set(XSAN_COMPILE_FLAGS "-fsanitize=memory")
- elseif (${sanitize_option} MATCHES "leak")
- check_compiler_version("4.9" "3.4")
- set(XSAN_COMPILE_FLAGS "-fsanitize=leak")
- set(XSAN_LINKER_FLAGS "lsan")
- elseif (${sanitize_option} MATCHES "undefined")
- check_compiler_version("4.9" "3.1")
- set(XSAN_COMPILE_FLAGS "-fsanitize=undefined -fno-omit-frame-pointer -fno-optimize-sibling-calls")
- else ()
- message(FATAL_ERROR "Compiler sanitizer option \"${sanitize_option}\" not supported.")
- endif ()
-endmacro ()
-
-# for each element of the ECM_ENABLE_SANITIZERS list
-foreach ( CUR_SANITIZER ${ECM_ENABLE_SANITIZERS} )
- # lowercase filter
- string(TOLOWER ${CUR_SANITIZER} CUR_SANITIZER)
- # check option and enable appropriate flags
- enable_sanitizer_flags ( ${CUR_SANITIZER} )
- set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${XSAN_COMPILE_FLAGS}" )
- if(CMAKE_CXX_COMPILER_ID MATCHES "GNU")
- link_libraries(${XSAN_LINKER_FLAGS})
- endif()
- if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
- string(REPLACE "-Wl,--no-undefined" "" CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS}")
- string(REPLACE "-Wl,--no-undefined" "" CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS}")
- endif ()
-endforeach ()
diff --git a/project/cmake/platform/android/defines.txt b/project/cmake/platform/android/defines.txt
deleted file mode 100644
index fa103d0060..0000000000
--- a/project/cmake/platform/android/defines.txt
+++ /dev/null
@@ -1 +0,0 @@
--DTARGET_POSIX -DTARGET_LINUX -D_LINUX -DTARGET_ANDROID
diff --git a/project/cmake/platform/freebsd/defines.txt b/project/cmake/platform/freebsd/defines.txt
deleted file mode 100644
index 94835971a3..0000000000
--- a/project/cmake/platform/freebsd/defines.txt
+++ /dev/null
@@ -1 +0,0 @@
--DTARGET_POSIX -DTARGET_FREEBSD -D_LINUX
diff --git a/project/cmake/platform/ios/defines.txt b/project/cmake/platform/ios/defines.txt
deleted file mode 100644
index d0989ea1ce..0000000000
--- a/project/cmake/platform/ios/defines.txt
+++ /dev/null
@@ -1 +0,0 @@
--DTARGET_POSIX -DTARGET_DARWIN -DTARGET_DARWIN_IOS -D_LINUX
diff --git a/project/cmake/platform/linux/defines.txt b/project/cmake/platform/linux/defines.txt
deleted file mode 100644
index 3fe9c5caad..0000000000
--- a/project/cmake/platform/linux/defines.txt
+++ /dev/null
@@ -1 +0,0 @@
--DTARGET_POSIX -DTARGET_LINUX -D_LINUX -fPIC
diff --git a/project/cmake/platform/osx/defines.txt b/project/cmake/platform/osx/defines.txt
deleted file mode 100644
index 33b009e3a7..0000000000
--- a/project/cmake/platform/osx/defines.txt
+++ /dev/null
@@ -1 +0,0 @@
--DTARGET_POSIX -DTARGET_DARWIN -DTARGET_DARWIN_OSX -D_LINUX
diff --git a/project/cmake/platform/rbpi/defines.txt b/project/cmake/platform/rbpi/defines.txt
deleted file mode 100644
index 08fe4cbdd2..0000000000
--- a/project/cmake/platform/rbpi/defines.txt
+++ /dev/null
@@ -1 +0,0 @@
--DTARGET_POSIX -DTARGET_LINUX -D_LINUX -D_ARMEL -DTARGET_RASPBERRY_PI
diff --git a/project/cmake/platform/windows/defines.txt b/project/cmake/platform/windows/defines.txt
deleted file mode 100644
index 5ccd98a9c1..0000000000
--- a/project/cmake/platform/windows/defines.txt
+++ /dev/null
@@ -1 +0,0 @@
--DTARGET_WINDOWS -DNOMINMAX -D_CRT_SECURE_NO_WARNINGS -D_USE_32BIT_TIME_T -D_WINSOCKAPI_ \ No newline at end of file
diff --git a/project/cmake/scripts/android/ArchSetup.cmake b/project/cmake/scripts/android/ArchSetup.cmake
deleted file mode 100644
index 281f94f869..0000000000
--- a/project/cmake/scripts/android/ArchSetup.cmake
+++ /dev/null
@@ -1,35 +0,0 @@
-if(NOT CMAKE_TOOLCHAIN_FILE)
- message(FATAL_ERROR "CMAKE_TOOLCHAIN_FILE required for android. See ${PROJECT_SOURCE_DIR}/README.md")
-elseif(NOT SDK_PLATFORM)
- message(FATAL_ERROR "Toolchain did not define SDK_PLATFORM. Possibly outdated depends.")
-endif()
-
-set(ARCH_DEFINES -DTARGET_POSIX -DTARGET_LINUX -D_LINUX -DTARGET_ANDROID)
-set(SYSTEM_DEFINES -D__STDC_CONSTANT_MACROS -D_FILE_DEFINED
- -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64)
-set(PLATFORM_DIR linux)
-if(WITH_ARCH)
- set(ARCH ${WITH_ARCH})
-else()
- if(CPU STREQUAL armeabi-v7a)
- set(ARCH arm)
- set(NEON True)
- elseif(CPU STREQUAL arm64-v8a)
- set(ARCH aarch64)
- elseif(CPU STREQUAL i686)
- set(ARCH i486-linux)
- set(NEON False)
- else()
- message(SEND_ERROR "Unknown CPU: ${CPU}")
- endif()
-endif()
-
-set(FFMPEG_OPTS --enable-cross-compile --cpu=cortex-a9 --arch=arm --target-os=linux --enable-neon
- --disable-vdpau --cc=${CMAKE_C_COMPILER} --host-cc=${CMAKE_C_COMPILER}
- --strip=${CMAKE_STRIP})
-set(ENABLE_SDL OFF CACHE BOOL "" FORCE)
-set(ENABLE_X11 OFF CACHE BOOL "" FORCE)
-set(ENABLE_AML OFF CACHE BOOL "" FORCE)
-set(ENABLE_OPTICAL OFF CACHE BOOL "" FORCE)
-
-list(APPEND DEPLIBS android log jnigraphics)
diff --git a/project/cmake/scripts/android/Install.cmake b/project/cmake/scripts/android/Install.cmake
deleted file mode 100644
index 025f194cb5..0000000000
--- a/project/cmake/scripts/android/Install.cmake
+++ /dev/null
@@ -1,122 +0,0 @@
-# Android packaging
-
-find_program(AAPT_EXECUTABLE aapt PATHS ${SDK_BUILDTOOLS_PATH})
-if(NOT AAPT_EXECUTABLE)
- message(FATAL_ERROR "Could NOT find aapt executable")
-endif()
-find_program(DX_EXECUTABLE dx PATHS ${SDK_BUILDTOOLS_PATH})
-if(NOT DX_EXECUTABLE)
- message(FATAL_ERROR "Could NOT find dx executable")
-endif()
-find_program(ZIPALIGN_EXECUTABLE zipalign PATHS ${SDK_BUILDTOOLS_PATH})
-if(NOT ZIPALIGN_EXECUTABLE)
- message(FATAL_ERROR "Could NOT find zipalign executable")
-endif()
-
-# Configure files into packaging environment.
-configure_file(${CORE_SOURCE_DIR}/tools/android/packaging/Makefile.in
- ${CMAKE_BINARY_DIR}/tools/android/packaging/Makefile @ONLY)
-configure_file(${CORE_SOURCE_DIR}/tools/android/packaging/apksign
- ${CMAKE_BINARY_DIR}/tools/android/packaging/apksign COPYONLY)
-configure_file(${CORE_SOURCE_DIR}/tools/android/packaging/make_symbols.sh
- ${CMAKE_BINARY_DIR}/tools/android/packaging/make_symbols.sh COPYONLY)
-file(WRITE ${CMAKE_BINARY_DIR}/tools/depends/Makefile.include
- "$(PREFIX)/lib/${APP_NAME_LC}/lib${APP_NAME_LC}.so: ;\n")
-
-set(package_files strings.xml
- activity_main.xml
- AndroidManifest.xml
- src/org/xbmc/kodi/XBMCOnAudioFocusChangeListener.java
- src/org/xbmc/kodi/XBMCInputDeviceListener.java
- src/org/xbmc/kodi/Main.java
- src/org/xbmc/kodi/XBMCSettingsContentObserver.java
- src/org/xbmc/kodi/XBMCOnFrameAvailableListener.java
- src/org/xbmc/kodi/XBMCVideoView.java
- src/org/xbmc/kodi/Splash.java
- src/org/xbmc/kodi/XBMCBroadcastReceiver.java)
-foreach(file IN LISTS package_files)
- configure_file(${CORE_SOURCE_DIR}/tools/android/packaging/xbmc/${file}.in
- ${CMAKE_BINARY_DIR}/tools/android/packaging/xbmc/${file} @ONLY)
-endforeach()
-
-# Copy files to the location expected by the Android packaging scripts.
-add_custom_target(bundle
- COMMAND ${CMAKE_COMMAND} -E copy_directory ${CORE_SOURCE_DIR}/tools/android/packaging/media
- ${CMAKE_BINARY_DIR}/tools/android/packaging/media
- COMMAND ${CMAKE_COMMAND} -E copy_directory ${CORE_SOURCE_DIR}/tools/android/packaging/xbmc/res
- ${CMAKE_BINARY_DIR}/tools/android/packaging/xbmc/res
- COMMAND ${CMAKE_COMMAND} -E copy_directory ${DEPENDS_PATH}/lib/python2.7 ${libdir}/python2.7
- COMMAND ${CMAKE_COMMAND} -E copy_directory ${DEPENDS_PATH}/share/${APP_NAME_LC} ${datadir}/${APP_NAME_LC}
- COMMAND ${CMAKE_COMMAND} -E copy $<TARGET_FILE:${APP_NAME_LC}>
- ${libdir}/${APP_NAME_LC}/$<TARGET_FILE_NAME:${APP_NAME_LC}>)
-add_dependencies(bundle ${APP_NAME_LC})
-
-# This function is used to prepare a prefix expected by the Android packaging
-# scripts. It creates a bundle_files command that is added to the bundle target.
-function(add_bundle_file file destination relative)
- if(NOT TARGET bundle_files)
- file(REMOVE ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/BundleFiles.cmake)
- add_custom_target(bundle_files COMMAND ${CMAKE_COMMAND} -P ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/BundleFiles.cmake)
- add_dependencies(bundle bundle_files)
- endif()
-
- string(REPLACE "${relative}/" "" outfile ${file})
- get_filename_component(file ${file} REALPATH)
- get_filename_component(outdir ${outfile} DIRECTORY)
- file(APPEND ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/BundleFiles.cmake
- "file(COPY \"${file}\" DESTINATION \"${destination}/${outdir}\")\n")
- if(file MATCHES "\\.so\\..+$")
- get_filename_component(srcfile "${file}" NAME)
- string(REGEX REPLACE "\\.so\\..+$" "\.so" destfile ${srcfile})
- file(APPEND ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/BundleFiles.cmake
- "file(RENAME \"${destination}/${outdir}/${srcfile}\" \"${destination}/${outdir}/${destfile}\")\n")
- endif()
-endfunction()
-
-# Copy files into prefix
-foreach(file IN LISTS XBT_FILES install_data)
- string(REPLACE "${CMAKE_BINARY_DIR}/" "" file ${file})
- add_bundle_file(${CMAKE_BINARY_DIR}/${file} ${datarootdir}/${APP_NAME_LC} ${CMAKE_BINARY_DIR})
-endforeach()
-
-foreach(library IN LISTS LIBRARY_FILES)
- add_bundle_file(${library} ${libdir}/${APP_NAME_LC} ${CMAKE_BINARY_DIR})
-endforeach()
-
-foreach(lib IN LISTS required_dyload dyload_optional ITEMS Shairplay)
- string(TOUPPER ${lib} lib_up)
- set(lib_so ${${lib_up}_SONAME})
- if(lib_so AND EXISTS ${DEPENDS_PATH}/lib/${lib_so})
- add_bundle_file(${DEPENDS_PATH}/lib/${lib_so} ${libdir} "")
- endif()
-endforeach()
-add_bundle_file(${SMBCLIENT_LIBRARY} ${libdir} "")
-
-# Main targets from Makefile.in
-if(CPU MATCHES i686)
- set(CPU x86)
- set(ARCH x86)
-endif()
-foreach(target apk obb apk-unsigned apk-obb apk-obb-unsigned apk-noobb apk-clean apk-sign)
- add_custom_target(${target}
- COMMAND PATH=${NATIVEPREFIX}/bin:$ENV{PATH} ${CMAKE_MAKE_PROGRAM}
- -C ${CMAKE_BINARY_DIR}/tools/android/packaging
- CORE_SOURCE_DIR=${CORE_SOURCE_DIR}
- CC=${CMAKE_C_COMPILER}
- CPU=${CPU}
- ARCH=${ARCH}
- PREFIX=${prefix}
- NDKROOT=${NDKROOT}
- SDKROOT=${SDKROOT}
- SDK_PLATFORM=${SDK_PLATFORM}
- STRIP=${CMAKE_STRIP}
- AAPT=${AAPT_EXECUTABLE}
- DX=${DX_EXECUTABLE}
- ZIPALIGN=${ZIPALIGN_EXECUTABLE}
- ${target}
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/tools/android/packaging
- )
- if(NOT target STREQUAL apk-clean)
- add_dependencies(${target} bundle)
- endif()
-endforeach()
diff --git a/project/cmake/scripts/android/Macros.cmake b/project/cmake/scripts/android/Macros.cmake
deleted file mode 120000
index 2fdbb255f9..0000000000
--- a/project/cmake/scripts/android/Macros.cmake
+++ /dev/null
@@ -1 +0,0 @@
-../linux/Macros.cmake \ No newline at end of file
diff --git a/project/cmake/scripts/android/PathSetup.cmake b/project/cmake/scripts/android/PathSetup.cmake
deleted file mode 100644
index 69de88318e..0000000000
--- a/project/cmake/scripts/android/PathSetup.cmake
+++ /dev/null
@@ -1,33 +0,0 @@
-if(NOT prefix)
- set(prefix ${CMAKE_BINARY_DIR}/install)
-endif()
-set(CMAKE_INSTALL_PREFIX ${prefix})
-if(NOT exec_prefix)
- set(exec_prefix ${prefix})
-endif()
-if(NOT libdir)
- set(libdir ${prefix}/lib)
-endif()
-if(NOT bindir)
- set(bindir ${prefix}/bin)
-endif()
-if(NOT includedir)
- set(includedir ${prefix}/include)
-endif()
-if(NOT datarootdir)
- set(datarootdir ${prefix}/share)
-endif()
-if(NOT datadir)
- set(datadir ${datarootdir})
-endif()
-
-list(APPEND final_message "-- PATH config --")
-list(APPEND final_message "Prefix: ${prefix}")
-list(APPEND final_message "Libdir: ${libdir}")
-list(APPEND final_message "Bindir: ${bindir}")
-list(APPEND final_message "Includedir: ${includedir}")
-list(APPEND final_message "Datarootdir: ${datarootdir}")
-list(APPEND final_message "Datadir: ${datadir}")
-
-set(PATH_DEFINES -DBIN_INSTALL_PATH=\"${libdir}/kodi\"
- -DINSTALL_PATH=\"${datarootdir}/kodi\")
diff --git a/project/cmake/scripts/common/AddOptions.cmake b/project/cmake/scripts/common/AddOptions.cmake
deleted file mode 100644
index 96837c1673..0000000000
--- a/project/cmake/scripts/common/AddOptions.cmake
+++ /dev/null
@@ -1,78 +0,0 @@
-# - Add options without repeating them on the command line
-#
-# Synopsis:
-#
-# add_options (lang build opts)
-#
-# where:
-#
-# lang Name of the language whose compiler should receive the
-# options, e.g. CXX. If a comma-separated list is received
-# then the option is added for all those languages. Use the
-# special value ALL_LANGUAGES for these languages: CXX, C
-# and Fortran
-#
-# build Kind of build to which this options should apply,
-# such as DEBUG and RELEASE. This can also be a comma-
-# separated list. Use the special value ALL_BUILDS to apply
-# to all builds.
-#
-# opts List of options to add. Each should be quoted.
-#
-# Example:
-#
-# add_options (CXX RELEASE "-O3" "-DNDEBUG" "-Wall")
-
-function(add_options langs builds)
- # special handling of empty language specification
- if("${langs}" STREQUAL "ALL_LANGUAGES")
- set(langs CXX C Fortran)
- endif()
- foreach(lang IN LISTS langs)
- # prepend underscore if necessary
- foreach(build IN LISTS builds)
- if(NOT ("${build}" STREQUAL "ALL_BUILDS"))
- set(_bld "_${build}")
- string(TOUPPER "${_bld}" _bld)
- else()
- set(_bld "")
- endif()
- foreach(_opt IN LISTS ARGN)
- set(_var "CMAKE_${lang}_FLAGS${_bld}")
- #message(STATUS "Adding \"${_opt}\" to \${${_var}}")
- # remove it first
- string(REPLACE "${_opt}" "" _without "${${_var}}")
- string(STRIP "${_without}" _without)
- # we need to strip this one as well, so they are comparable
- string(STRIP "${${_var}}" _stripped)
- # if it wasn't there, then add it at the end
- if("${_without}" STREQUAL "${_stripped}")
- # don't add any extra spaces if no options yet are set
- if(NOT ${_stripped} STREQUAL "")
- set(${_var} "${_stripped} ${_opt}")
- else()
- set(${_var} "${_opt}")
- endif()
- set(${_var} "${${_var}}" PARENT_SCOPE)
- endif()
- endforeach()
- endforeach()
- endforeach()
-endfunction()
-
-# set varname to flag unless user has specified something that matches regex
-function(set_default_option varname flag regex)
- if(NOT "$ENV{CXXFLAGS}" MATCHES "${regex}"
- AND NOT "${CMAKE_CXX_FLAGS}" MATCHES "${regex}"
- AND NOT "${CMAKE_CXX_FLAGS_${CMAKE_BUILD_TYPE}}" MATCHES "${regex}")
- set(${varname} ${flag} PARENT_SCOPE)
- else()
- set(${varname} PARENT_SCOPE)
- endif()
-endfunction()
-
-# note: this must be called before project()
-macro(no_default_options)
- # prevent the platform probe to set options
- set(CMAKE_NOT_USING_CONFIG_FLAGS TRUE)
-endmacro()
diff --git a/project/cmake/scripts/common/AddonHelpers.cmake b/project/cmake/scripts/common/AddonHelpers.cmake
deleted file mode 100644
index 317230a318..0000000000
--- a/project/cmake/scripts/common/AddonHelpers.cmake
+++ /dev/null
@@ -1,268 +0,0 @@
-# Workaround for the fact that cpack's filenames are not customizable.
-# Each add-on is added as a separate component to facilitate zip/tgz packaging.
-# The filenames are always of the form basename-component, which is
-# incompatible with the addonid-version scheme we want. This hack renames
-# the files from the file names generated by the 'package' target.
-# Sadly we cannot extend the 'package' target, as it is a builtin target, see
-# http://public.kitware.com/Bug/view.php?id=8438
-# Thus, we have to add an 'addon-package' target.
-add_custom_target(addon-package
- COMMAND ${CMAKE_COMMAND} --build ${CMAKE_BINARY_DIR} --target package)
-
-macro(add_cpack_workaround target version ext)
- if(NOT PACKAGE_DIR)
- set(PACKAGE_DIR "${CMAKE_INSTALL_PREFIX}/zips")
- endif()
-
- add_custom_command(TARGET addon-package PRE_BUILD
- COMMAND ${CMAKE_COMMAND} -E make_directory ${PACKAGE_DIR}
- COMMAND ${CMAKE_COMMAND} -E copy ${CPACK_PACKAGE_DIRECTORY}/addon-${target}-${version}.${ext} ${PACKAGE_DIR}/${target}-${version}.${ext})
-endmacro()
-
-# Grab the version from a given add-on's addon.xml
-macro (addon_version dir prefix)
- if(EXISTS ${PROJECT_SOURCE_DIR}/${dir}/addon.xml.in)
- file(READ ${PROJECT_SOURCE_DIR}/${dir}/addon.xml.in ADDONXML)
- else()
- file(READ ${dir}/addon.xml ADDONXML)
- endif()
-
- string(REGEX MATCH "<addon[^>]*version.?=.?.[0-9\\.]+" VERSION_STRING ${ADDONXML})
- string(REGEX REPLACE ".*version=.([0-9\\.]+).*" "\\1" ${prefix}_VERSION ${VERSION_STRING})
- message(STATUS ${prefix}_VERSION=${${prefix}_VERSION})
-endmacro()
-
-# Build, link and optionally package an add-on
-macro (build_addon target prefix libs)
- addon_version(${target} ${prefix})
- if(${prefix}_SOURCES)
- add_library(${target} ${${prefix}_SOURCES})
- target_link_libraries(${target} ${${libs}})
- set_target_properties(${target} PROPERTIES VERSION ${${prefix}_VERSION}
- SOVERSION ${APP_VERSION_MAJOR}.${APP_VERSION_MINOR}
- PREFIX "")
- if(OS STREQUAL "android")
- set_target_properties(${target} PROPERTIES PREFIX "lib")
- endif()
- elseif(${prefix}_CUSTOM_BINARY)
- add_custom_target(${target} ALL)
- endif()
-
- # get the library's location
- if(${prefix}_CUSTOM_BINARY)
- list(GET ${prefix}_CUSTOM_BINARY 0 LIBRARY_LOCATION)
- list(GET ${prefix}_CUSTOM_BINARY 1 LIBRARY_FILENAME)
- else()
- set(LIBRARY_LOCATION $<TARGET_FILE:${target}>)
- # get the library's filename
- if("${CORE_SYSTEM_NAME}" STREQUAL "android")
- # for android we need the filename without any version numbers
- set(LIBRARY_FILENAME $<TARGET_LINKER_FILE_NAME:${target}>)
- else()
- set(LIBRARY_FILENAME $<TARGET_FILE_NAME:${target}>)
- endif()
- endif()
-
- # if there's an addon.xml.in we need to generate the addon.xml
- if(EXISTS ${PROJECT_SOURCE_DIR}/${target}/addon.xml.in)
- set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS ${PROJECT_SOURCE_DIR}/${target}/addon.xml.in)
- set(PLATFORM ${CORE_SYSTEM_NAME})
-
- file(READ ${PROJECT_SOURCE_DIR}/${target}/addon.xml.in addon_file)
- string(CONFIGURE "${addon_file}" addon_file_conf @ONLY)
- file(GENERATE OUTPUT ${PROJECT_SOURCE_DIR}/${target}/addon.xml CONTENT "${addon_file_conf}")
- if(${APP_NAME_UC}_BUILD_DIR)
- file(GENERATE OUTPUT ${${APP_NAME_UC}_BUILD_DIR}/addons/${target}/addon.xml CONTENT "${addon_file_conf}")
- endif()
- endif()
-
- # if there's an settings.xml.in we need to generate the settings.xml
- if(EXISTS ${PROJECT_SOURCE_DIR}/${target}/resources/settings.xml.in)
- set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS ${PROJECT_SOURCE_DIR}/${target}/resources/settings.xml.in)
- set(PLATFORM ${CORE_SYSTEM_NAME})
-
- file(READ ${PROJECT_SOURCE_DIR}/${target}/resources/settings.xml.in settings_file)
- string(CONFIGURE "${settings_file}" settings_file_conf @ONLY)
- file(GENERATE OUTPUT ${PROJECT_SOURCE_DIR}/${target}/resources/settings.xml CONTENT "${settings_file_conf}")
- if(${APP_NAME_UC}_BUILD_DIR)
- file(GENERATE OUTPUT ${${APP_NAME_UC}_BUILD_DIR}/addons/${target}/resources/settings.xml CONTENT "${settings_file_conf}")
- endif()
- endif()
-
- # set zip as default if addon-package is called without PACKAGE_XXX
- set(CPACK_GENERATOR "ZIP")
- set(ext "zip")
- if(PACKAGE_ZIP OR PACKAGE_TGZ)
- if(PACKAGE_TGZ)
- set(CPACK_GENERATOR "TGZ")
- set(ext "tar.gz")
- endif()
- set(CPACK_INCLUDE_TOPLEVEL_DIRECTORY OFF)
- set(CPACK_PACKAGE_FILE_NAME addon)
- if(CMAKE_BUILD_TYPE STREQUAL "Release")
- set(CPACK_STRIP_FILES TRUE)
- endif()
- set(CPACK_ARCHIVE_COMPONENT_INSTALL ON)
- set(CPACK_COMPONENTS_IGNORE_GROUPS 1)
- list(APPEND CPACK_COMPONENTS_ALL ${target}-${${prefix}_VERSION})
- # Pack files together to create an archive
- install(DIRECTORY ${target} DESTINATION ./ COMPONENT ${target}-${${prefix}_VERSION} PATTERN "xml.in" EXCLUDE)
- if(WIN32)
- if(NOT CPACK_PACKAGE_DIRECTORY)
- # determine the temporary path
- file(TO_CMAKE_PATH "$ENV{TEMP}" WIN32_TEMP_PATH)
- string(LENGTH "${WIN32_TEMP_PATH}" WIN32_TEMP_PATH_LENGTH)
- string(LENGTH "${PROJECT_BINARY_DIR}" PROJECT_BINARY_DIR_LENGTH)
-
- # check if the temporary path is shorter than the default packaging directory path
- if(WIN32_TEMP_PATH_LENGTH GREATER 0 AND WIN32_TEMP_PATH_LENGTH LESS PROJECT_BINARY_DIR_LENGTH)
- # set the directory used by CPack for packaging to the temp directory
- set(CPACK_PACKAGE_DIRECTORY ${WIN32_TEMP_PATH})
- endif()
- endif()
-
- # in case of a VC++ project the installation location contains a $(Configuration) VS variable
- # we replace it with ${CMAKE_BUILD_TYPE} (which doesn't cover the case when the build configuration
- # is changed within Visual Studio)
- string(REPLACE "$(Configuration)" "${CMAKE_BUILD_TYPE}" LIBRARY_LOCATION "${LIBRARY_LOCATION}")
-
- if(${prefix}_SOURCES)
- # install the generated DLL file
- install(PROGRAMS ${LIBRARY_LOCATION} DESTINATION ${target}
- COMPONENT ${target}-${${prefix}_VERSION})
-
- if(CMAKE_BUILD_TYPE MATCHES Debug)
- # for debug builds also install the PDB file
- get_filename_component(LIBRARY_DIR ${LIBRARY_LOCATION} DIRECTORY)
- install(FILES ${LIBRARY_DIR}/${target}.pdb DESTINATION ${target}
- COMPONENT ${target}-${${prefix}_VERSION})
- endif()
- endif()
- if (${prefix}_CUSTOM_BINARY)
- list(GET ${prefix}_CUSTOM_BINARY 0 FROM_BINARY)
- list(GET ${prefix}_CUSTOM_BINARY 1 TO_BINARY)
- install(FILES ${FROM_BINARY} DESTINATION ${target} RENAME ${TO_BINARY})
- endif()
- if(${prefix}_CUSTOM_DATA)
- install(DIRECTORY ${${prefix}_CUSTOM_DATA} DESTINATION ${target}/resources)
- endif()
- else()
- if(NOT CPACK_PACKAGE_DIRECTORY)
- set(CPACK_PACKAGE_DIRECTORY ${CMAKE_BINARY_DIR})
- endif()
- if(${prefix}_SOURCES)
- install(TARGETS ${target} DESTINATION ${target}
- COMPONENT ${target}-${${prefix}_VERSION})
- endif()
- if (${prefix}_CUSTOM_BINARY)
- list(GET ${prefix}_CUSTOM_BINARY 0 FROM_BINARY)
- list(GET ${prefix}_CUSTOM_BINARY 1 TO_BINARY)
- if(OS STREQUAL "android")
- set(TO_BINARY "lib${TO_BINARY}")
- endif()
- install(FILES ${FROM_BINARY} DESTINATION ${target} RENAME ${TO_BINARY}
- COMPONENT ${target}-${${prefix}_VERSION})
- endif()
- if(${prefix}_CUSTOM_DATA)
- install(DIRECTORY ${${prefix}_CUSTOM_DATA} DESTINATION ${target}/resources)
- endif()
- endif()
- add_cpack_workaround(${target} ${${prefix}_VERSION} ${ext})
- else()
- if(CORE_SYSTEM_NAME STREQUAL linux OR CORE_SYSTEM_NAME STREQUAL rbpi OR CORE_SYSTEM_NAME STREQUAL freebsd)
- if(NOT OVERRIDE_PATHS)
- if(CMAKE_INSTALL_PREFIX AND NOT CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT AND NOT CMAKE_INSTALL_PREFIX STREQUAL "${${APP_NAME_UC}_PREFIX}")
- message(WARNING "CMAKE_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX} differs from ${APP_NAME} prefix, changing to ${${APP_NAME_UC}_PREFIX}. Please pass -DOVERRIDE_PATHS=1 to skip this check")
- endif()
- if(CMAKE_INSTALL_LIBDIR AND NOT CMAKE_INSTALL_LIBDIR STREQUAL "${${APP_NAME_UC}_LIB_DIR}")
- message(WARNING "CMAKE_INSTALL_LIBDIR ${CMAKE_INSTALL_LIBDIR} differs from ${APP_NAME} libdir, changing to ${${APP_NAME_UC}_LIB_DIR}. Please pass -DOVERRIDE_PATHS=1 to skip this check")
- endif()
- if(CMAKE_INSTALL_DATADIR AND NOT CMAKE_INSTALL_DATADIR STREQUAL "${${APP_NAME_UC}_DATA_DIR}")
- message(WARNING "CMAKE_INSTALL_DATADIR ${CMAKE_INSTALL_DATADIR} differs from ${APP_NAME} datadir, changing to ${${APP_NAME_UC}_DATA_DIR}. Please pass -DOVERRIDE_PATHS=1 to skip this check")
- endif()
- set(CMAKE_INSTALL_PREFIX "${${APP_NAME_UC}_PREFIX}" CACHE PATH "${APP_NAME} install prefix" FORCE)
- set(CMAKE_INSTALL_LIBDIR "${${APP_NAME_UC}_LIB_DIR}" CACHE PATH "${APP_NAME} install libdir" FORCE)
- set(CMAKE_INSTALL_DATADIR "${${APP_NAME_UC}_DATA_DIR}" CACHE PATH "${APP_NAME} install datadir" FORCE)
- else()
- if(NOT CMAKE_INSTALL_LIBDIR)
- set(CMAKE_INSTALL_LIBDIR "${CMAKE_INSTALL_PREFIX}/lib/${APP_NAME_LC}")
- endif()
- if(NOT CMAKE_INSTALL_DATADIR)
- set(CMAKE_INSTALL_DATADIR "${CMAKE_INSTALL_PREFIX}/share/${APP_NAME_LC}")
- endif()
- endif()
- else()
- set(CMAKE_INSTALL_LIBDIR "lib/${APP_NAME_LC}")
- set(CMAKE_INSTALL_DATADIR "share/${APP_NAME_LC}")
- endif()
- if(${prefix}_SOURCES)
- install(TARGETS ${target} DESTINATION ${CMAKE_INSTALL_LIBDIR}/addons/${target})
- endif()
- if (${prefix}_CUSTOM_BINARY)
- list(GET ${prefix}_CUSTOM_BINARY 0 FROM_BINARY)
- list(GET ${prefix}_CUSTOM_BINARY 1 TO_BINARY)
- if(OS STREQUAL "android")
- set(TO_BINARY "lib${TO_BINARY}")
- endif()
- install(FILES ${FROM_BINARY} DESTINATION ${CMAKE_INSTALL_LIBDIR}/addons/${target} RENAME ${TO_BINARY})
- endif()
- install(DIRECTORY ${target} DESTINATION ${CMAKE_INSTALL_DATADIR}/addons PATTERN "xml.in" EXCLUDE)
- if(${prefix}_CUSTOM_DATA)
- install(DIRECTORY ${${prefix}_CUSTOM_DATA} DESTINATION ${CMAKE_INSTALL_DATADIR}/addons/${target}/resources)
- endif()
- endif()
- if(${APP_NAME_UC}_BUILD_DIR)
- file(GLOB_RECURSE files ${CMAKE_CURRENT_SOURCE_DIR}/${target}/*)
- if(${prefix}_CUSTOM_DATA)
- add_custom_command(TARGET ${target} POST_BUILD
- COMMAND ${CMAKE_COMMAND} -E copy_directory
- ${${prefix}_CUSTOM_DATA}
- ${${APP_NAME_UC}_BUILD_DIR}/addons/${target}/resources)
- endif()
- foreach(file ${files})
- string(REPLACE "${CMAKE_CURRENT_SOURCE_DIR}/${target}/" "" name "${file}")
- # A good way to deal with () in filenames
- if(NOT ${file} MATCHES xml.in)
- configure_file(${file} ${${APP_NAME_UC}_BUILD_DIR}/addons/${target}/${name} COPYONLY)
- endif()
- endforeach()
- add_custom_command(TARGET ${target} POST_BUILD
- COMMAND ${CMAKE_COMMAND} -E copy
- ${LIBRARY_LOCATION}
- ${${APP_NAME_UC}_BUILD_DIR}/addons/${target}/${LIBRARY_FILENAME})
- endif()
-endmacro()
-
-# finds a path to a given file (recursive)
-function (kodi_find_path var_name filename search_path strip_file)
- file(GLOB_RECURSE PATH_TO_FILE ${search_path} ${filename})
- if(strip_file)
- string(REPLACE ${filename} "" PATH_TO_FILE ${PATH_TO_FILE})
- endif()
- set (${var_name} ${PATH_TO_FILE} PARENT_SCOPE)
-endfunction()
-
-# Cmake build options
-include(AddOptions)
-include(TestCXXAcceptsFlag)
-option(PACKAGE_ZIP "Package Zip file?" OFF)
-option(PACKAGE_TGZ "Package TGZ file?" OFF)
-option(BUILD_SHARED_LIBS "Build shared libs?" ON)
-
-# LTO support?
-CHECK_CXX_ACCEPTS_FLAG("-flto" HAVE_LTO)
-if(HAVE_LTO)
- option(USE_LTO "use link time optimization" OFF)
- if(USE_LTO)
- add_options(ALL_LANGUAGES ALL_BUILDS "-flto")
- endif()
-endif()
-
-# set this to try linking dependencies as static as possible
-if(ADDONS_PREFER_STATIC_LIBS)
- set(CMAKE_FIND_LIBRARY_SUFFIXES .lib .a ${CMAKE_FIND_LIBRARY_SUFFIXES})
-endif()
-
-if(${APP_NAME_UC}_BUILD_DIR)
- list(APPEND CMAKE_PREFIX_PATH ${${APP_NAME_UC}_BUILD_DIR}/build)
-endif()
diff --git a/project/cmake/scripts/common/ArchSetup.cmake b/project/cmake/scripts/common/ArchSetup.cmake
deleted file mode 100644
index 4b862c8b50..0000000000
--- a/project/cmake/scripts/common/ArchSetup.cmake
+++ /dev/null
@@ -1,156 +0,0 @@
-# This script configures the build for a given architecture.
-# Flags and stringified arch is set up.
-# General compiler tests belongs here.
-#
-# On return, the following variables are set:
-# CMAKE_SYSTEM_NAME - a lowercased system name
-# CPU - the CPU on the target
-# ARCH - the system architecture
-# ARCH_DEFINES - list of compiler definitions for this architecture
-# SYSTEM_DEFINES - list of compiler definitions for this system
-# DEP_DEFINES - compiler definitions for system dependencies (e.g. LIRC)
-# + the results of compiler tests etc.
-
-include(CheckCXXSourceCompiles)
-include(CheckSymbolExists)
-include(CheckFunctionExists)
-include(CheckIncludeFile)
-
-# Macro to check if a given type exists in a given header
-# Arguments:
-# header the header to check
-# type the type to check for existence
-# var the compiler definition to set if type exists
-# On return:
-# If type was found, the definition is added to SYSTEM_DEFINES
-macro(check_type header type var)
- check_cxx_source_compiles("#include <${header}>
- int main()
- {
- ${type} s;
- }" ${var})
- if(${var})
- list(APPEND SYSTEM_DEFINES -D${var}=1)
- endif()
-endmacro()
-
-# Macro to check if a given builtin function exists
-# Arguments:
-# func the function to check
-# var the compiler definition to set if type exists
-# On return:
-# If type was found, the definition is added to SYSTEM_DEFINES
-macro(check_builtin func var)
- check_cxx_source_compiles("
- int main()
- {
- ${func};
- }" ${var})
- if(${var})
- list(APPEND SYSTEM_DEFINES -D${var}=1)
- endif()
-endmacro()
-
-
-# -------- Main script ---------
-message(STATUS "System type: ${CMAKE_SYSTEM_NAME}")
-if(NOT CORE_SYSTEM_NAME)
- string(TOLOWER ${CMAKE_SYSTEM_NAME} CORE_SYSTEM_NAME)
-endif()
-
-if(WITH_CPU)
- set(CPU ${WITH_CPU})
-elseif(NOT KODI_DEPENDSBUILD)
- set(CPU ${CMAKE_SYSTEM_PROCESSOR})
-endif()
-
-if(CMAKE_TOOLCHAIN_FILE)
- if(NOT EXISTS "${CMAKE_TOOLCHAIN_FILE}")
- message(FATAL_ERROR "Toolchain file ${CMAKE_TOOLCHAIN_FILE} does not exist.")
- elseif(KODI_DEPENDSBUILD AND (NOT DEPENDS_PATH OR NOT NATIVEPREFIX))
- message(FATAL_ERROR "Toolchain did not define DEPENDS_PATH or NATIVEPREFIX. Possibly outdated depends.")
- endif()
-endif()
-
-# While CMAKE_CROSSCOMPILING is set unconditionally if there's a toolchain file,
-# this variable is set if we can execute build artefacts on the host system (for example unit tests).
-if(CMAKE_HOST_SYSTEM_PROCESSOR STREQUAL CMAKE_SYSTEM_PROCESSOR AND
- CMAKE_HOST_SYSTEM_NAME STREQUAL CMAKE_SYSTEM_NAME)
- set(CORE_HOST_IS_TARGET TRUE)
-else()
- set(CORE_HOST_IS_TARGET FALSE)
-endif()
-
-# Main cpp
-set(CORE_MAIN_SOURCE ${CORE_SOURCE_DIR}/xbmc/platform/posix/main.cpp)
-
-# system specific arch setup
-if(NOT EXISTS ${PROJECT_SOURCE_DIR}/scripts/${CORE_SYSTEM_NAME}/ArchSetup.cmake)
- message(FATAL_ERROR "Couldn't find configuration for '${CORE_SYSTEM_NAME}' "
- "Either the platform is not (yet) supported "
- "or a toolchain file has to be specified. "
- "Consult ${CMAKE_SOURCE_DIR}/README.md for instructions. "
- "Note: Specifying a toolchain requires a clean build directory!")
-endif()
-include(${PROJECT_SOURCE_DIR}/scripts/${CORE_SYSTEM_NAME}/ArchSetup.cmake)
-
-message(STATUS "Core system type: ${CORE_SYSTEM_NAME}")
-message(STATUS "Platform: ${PLATFORM}")
-message(STATUS "CPU: ${CPU}, ARCH: ${ARCH}")
-message(STATUS "Cross-Compiling: ${CMAKE_CROSSCOMPILING}")
-message(STATUS "Execute build artefacts on host: ${CORE_HOST_IS_TARGET}")
-message(STATUS "Depends based build: ${KODI_DEPENDSBUILD}")
-
-check_type(string std::u16string HAVE_STD__U16_STRING)
-check_type(string std::u32string HAVE_STD__U32_STRING)
-check_type(string char16_t HAVE_CHAR16_T)
-check_type(string char32_t HAVE_CHAR32_T)
-check_type(stdint.h uint_least16_t HAVE_STDINT_H)
-check_symbol_exists(posix_fadvise fcntl.h HAVE_POSIX_FADVISE)
-check_symbol_exists(PRIdMAX inttypes.h HAVE_INTTYPES_H)
-check_builtin("long* temp=0; long ret=__sync_add_and_fetch(temp, 1)" HAS_BUILTIN_SYNC_ADD_AND_FETCH)
-check_builtin("long* temp=0; long ret=__sync_sub_and_fetch(temp, 1)" HAS_BUILTIN_SYNC_SUB_AND_FETCH)
-check_builtin("long* temp=0; long ret=__sync_val_compare_and_swap(temp, 1, 1)" HAS_BUILTIN_SYNC_VAL_COMPARE_AND_SWAP)
-check_include_file(sys/inotify.h HAVE_INOTIFY)
-if(HAVE_INOTIFY)
- list(APPEND SYSTEM_DEFINES -DHAVE_INOTIFY=1)
-endif()
-if(HAVE_POSIX_FADVISE)
- list(APPEND SYSTEM_DEFINES -DHAVE_POSIX_FADVISE=1)
-endif()
-check_function_exists(localtime_r HAVE_LOCALTIME_R)
-if(HAVE_LOCALTIME_R)
- list(APPEND SYSTEM_DEFINES -DHAVE_LOCALTIME_R=1)
-endif()
-if(HAVE_INTTYPES_H)
- list(APPEND SYSTEM_DEFINES -DHAVE_INTTYPES_H=1)
-endif()
-
-find_package(SSE)
-foreach(_sse SSE SSE2 SSE3 SSSE3 SSE4_1 SSE4_2 AVX AVX2)
- if(${${_sse}_FOUND})
- # enable SSE versions up to 4.1 by default, if available
- if(NOT ${_sse} MATCHES "AVX" AND NOT ${_sse} STREQUAL "SSE4_2")
- option(ENABLE_${_sse} "Enable ${_sse}" ON)
- else()
- option(ENABLE_${_sse} "Enable ${_sse}" OFF)
- endif()
- endif()
- if(ENABLE_${_sse})
- set(HAVE_${_sse} TRUE CACHE STRING "${_sse} enabled")
- list(APPEND ARCH_DEFINES -DHAVE_${_sse}=1)
- endif()
-endforeach()
-
-if(NOT DEFINED NEON OR NEON)
- option(ENABLE_NEON "Enable NEON optimization" ${NEON})
- if(ENABLE_NEON)
- message(STATUS "NEON optimization enabled")
- add_options(CXX ALL_BUILDS "-mfpu=neon -mvectorize-with-neon-quad")
- endif()
-endif()
-
-if(CMAKE_BUILD_TYPE STREQUAL "Debug")
- add_options (ALL_LANGUAGES DEBUG "-g" "-D_DEBUG" "-Wall")
-endif()
-
diff --git a/project/cmake/scripts/common/CMakeHelpers.cmake b/project/cmake/scripts/common/CMakeHelpers.cmake
deleted file mode 100644
index 995c38ab2b..0000000000
--- a/project/cmake/scripts/common/CMakeHelpers.cmake
+++ /dev/null
@@ -1,54 +0,0 @@
-# This file contains functions that support the debugging of the CMake files.
-
-# This file shouldn't be included per default in any CMake file. It should be
-# included and used only on demand. All functions are prefixed with "debug_".
-#
-# Usage:
-# include(scripts/common/CMakeHelpers.cmake)
-# debug_print_variables()
-
-# Print all CMake variables.
-macro(debug_print_variables)
- get_cmake_property(_variableNames VARIABLES)
- foreach(_variableName ${_variableNames})
- message(STATUS "${_variableName} = ${${_variableName}}")
- endforeach()
-endmacro()
-
-# Get all properties that CMake supports and convert them to a list.
-function(debug_get_properties VAR)
- execute_process(COMMAND cmake --help-property-list
- OUTPUT_VARIABLE _properties)
- string(REGEX REPLACE ";" "\\\\;" _properties "${_properties}")
- string(REGEX REPLACE "\n" ";" _properties "${_properties}")
- list(REMOVE_DUPLICATES _properties)
- list(REMOVE_ITEM _properties LOCATION)
- set(${VAR} ${_properties} PARENT_SCOPE)
-endfunction()
-
-# List all properties.
-function(debug_list_properties)
- debug_get_properties(_properties)
- message("CMake properties = ${_properties}")
-endfunction()
-
-# Print all set properties of a specified target.
-function(debug_print_target_properties target)
- if(NOT TARGET ${target})
- message(FATAL_ERROR "There is no target named '${target}'")
- endif()
-
- debug_get_properties(_properties)
-
- # Reading LOCATION property is deprecated and triggers a fatal error.
- string(REGEX REPLACE ";LOCATION;|LOCATION" "" _properties "${_properties}")
- string(REGEX REPLACE "<CONFIG>" "${CMAKE_BUILD_TYPE}" _properties
- "${_properties}")
- foreach(_property ${_properties})
- get_property(_value TARGET ${target} PROPERTY ${_property} SET)
- if(_value)
- get_target_property(_value ${target} ${_property})
- message("${target} ${_property} = ${_value}")
- endif()
- endforeach()
-endfunction()
diff --git a/project/cmake/scripts/common/CheckCommits.cmake b/project/cmake/scripts/common/CheckCommits.cmake
deleted file mode 100644
index 304e623ae8..0000000000
--- a/project/cmake/scripts/common/CheckCommits.cmake
+++ /dev/null
@@ -1,75 +0,0 @@
-find_package(Git REQUIRED)
-
-macro(sanity_check message)
- if(status_code)
- message(FATAL_ERROR "${message}")
- endif()
-endmacro()
-
-# Check that there are no changes in working-tree
-execute_process(COMMAND ${GIT_EXECUTABLE} diff --quiet
- RESULT_VARIABLE status_code)
-sanity_check("Cannot run with working tree changes. Commit, stash or drop them.")
-
-# Setup base of tests
-set(check_base $ENV{CHECK_BASE})
-if(NOT check_base)
- set(check_base origin/master)
-endif()
-
-# Setup end of tests
-set(check_head $ENV{CHECK_HEAD})
-if(NOT check_head)
- set(check_head HEAD)
-endif()
-
-# Setup target to build
-set(check_target $ENV{CHECK_TARGET})
-if(NOT check_target)
- set(check_target check)
-endif()
-
-# Build threads
-set(build_threads $ENV{CHECK_THREADS})
-if(NOT build_threads)
- if(UNIX)
- execute_process(COMMAND nproc
- OUTPUT_VARIABLE build_threads)
- string(REGEX REPLACE "(\r?\n)+$" "" build_threads "${build_threads}")
- endif()
-endif()
-
-# Record current HEAD
-execute_process(COMMAND ${GIT_EXECUTABLE} rev-parse --abbrev-ref HEAD
- OUTPUT_VARIABLE current_branch)
-
-string(REGEX REPLACE "(\r?\n)+$" "" current_branch "${current_branch}")
-
-# Grab revision list
-execute_process(COMMAND ${GIT_EXECUTABLE} rev-list ${check_base}..${check_head} --reverse
- OUTPUT_VARIABLE rev_list)
-
-string(REPLACE "\n" ";" rev_list ${rev_list})
-foreach(rev ${rev_list})
- # Checkout
- message("Testing revision ${rev}")
- execute_process(COMMAND ${GIT_EXECUTABLE} checkout ${rev}
- RESULT_VARIABLE status_code)
- sanity_check("Failed to checkout ${rev}")
-
- # Build
- if(build_threads GREATER 2)
- execute_process(COMMAND ${CMAKE_COMMAND} "--build" "${CMAKE_BINARY_DIR}" "--target" "${check_target}" "--use-stderr" "--" "-j${build_threads}"
- RESULT_VARIABLE status_code)
- else()
- execute_process(COMMAND ${CMAKE_COMMAND} "--build" "${CMAKE_BINARY_DIR}" "--target" "${check_target}" "--use-stderr"
- RESULT_VARIABLE status_code)
- endif()
- if(status_code)
- execute_process(COMMAND ${GIT_EXECUTABLE} checkout ${current_branch})
- endif()
- sanity_check("Failed to build target for revision ${rev}")
-endforeach()
-
-message("Everything checks out fine")
-execute_process(COMMAND ${GIT_EXECUTABLE} checkout ${current_branch})
diff --git a/project/cmake/scripts/common/CheckTargetPlatform.cmake b/project/cmake/scripts/common/CheckTargetPlatform.cmake
deleted file mode 100644
index 82ee668c03..0000000000
--- a/project/cmake/scripts/common/CheckTargetPlatform.cmake
+++ /dev/null
@@ -1,67 +0,0 @@
-# handle target platforms
-function(check_target_platform dir target_platform build)
- # param[in] dir path/directory of the addon/dependency
- # param[in] target_platform target platform of the build
- # param[out] build Result whether the addon/dependency should be built for the specified target platform
-
- set(${build} FALSE)
- # check if the given directory exists and contains a platforms.txt
- if(EXISTS ${dir} AND EXISTS ${dir}/platforms.txt)
- # get all the specified platforms
- file(STRINGS ${dir}/platforms.txt platforms)
-
- list( LENGTH platforms listlen )
- if(${listlen} EQUAL 1)
- string(REPLACE " " ";" platforms ${platforms})
- endif()
-
- # check if the addon/dependency should be built for the current platform
- foreach(platform ${platforms})
- if(${platform} STREQUAL "all" OR ${platform} STREQUAL ${target_platform})
- set(${build} TRUE)
- else()
- # check if the platform is defined as "!<platform>"
- string(SUBSTRING ${platform} 0 1 platform_first)
- if(${platform_first} STREQUAL "!")
- # extract the platform
- string(LENGTH ${platform} platform_length)
- math(EXPR platform_length "${platform_length} - 1")
- string(SUBSTRING ${platform} 1 ${platform_length} platform)
-
- # check if the current platform does not match the extracted platform
- if(NOT ${platform} STREQUAL ${target_platform})
- set(${build} TRUE)
- endif()
- endif()
- endif()
- endforeach()
- else()
- set(${build} TRUE)
- endif()
-
- # make the ${build} variable available to the calling script
- set(${build} "${${build}}" PARENT_SCOPE)
-endfunction()
-
-function(check_install_permissions install_dir have_perms)
- # param[in] install_dir directory to check for write permissions
- # param[out] have_perms wether we have permissions to install to install_dir
-
- set(testfile_lib ${install_dir}/lib/kodi/.cmake-inst-test)
- set(testfile_share ${install_dir}/share/kodi/.cmake-inst-test)
- get_filename_component(testdir_lib ${testfile_lib} DIRECTORY)
- get_filename_component(testdir_share ${testfile_share} DIRECTORY)
-
- execute_process(COMMAND ${CMAKE_COMMAND} -E make_directory ${testdir_lib})
- execute_process(COMMAND ${CMAKE_COMMAND} -E make_directory ${testdir_share})
- execute_process(COMMAND ${CMAKE_COMMAND} -E touch ${testfile_lib})
- execute_process(COMMAND ${CMAKE_COMMAND} -E touch ${testfile_share})
-
- if(EXISTS ${testfile_lib} AND EXISTS ${testfile_share})
- set(${have_perms} True PARENT_SCOPE)
- else()
- message(STATUS "check_install_permissions ${install_dir}: failed to create files")
- set(${have_perms} False PARENT_SCOPE)
- endif()
- file(REMOVE ${testfile_lib} ${testfile_share})
-endfunction()
diff --git a/project/cmake/scripts/common/GenerateVersionedFiles.cmake b/project/cmake/scripts/common/GenerateVersionedFiles.cmake
deleted file mode 100644
index e105b277e8..0000000000
--- a/project/cmake/scripts/common/GenerateVersionedFiles.cmake
+++ /dev/null
@@ -1,18 +0,0 @@
-include(${CORE_SOURCE_DIR}/project/cmake/scripts/common/Macros.cmake)
-
-core_find_versions()
-file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/addons/xbmc.addon)
-file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/addons/kodi.guilib)
-
-# configure_file without dependency tracking
-# configure_file would register additional file dependencies that interfere
-# with the ones from add_custom_command (and the generation would happen twice)
-function(generate_versioned_file _SRC _DEST)
- file(READ ${CORE_SOURCE_DIR}/${_SRC} file_content)
- string(CONFIGURE "${file_content}" file_content @ONLY)
- file(WRITE ${CMAKE_BINARY_DIR}/${_DEST} "${file_content}")
-endfunction()
-
-generate_versioned_file(addons/xbmc.addon/addon.xml.in addons/xbmc.addon/addon.xml)
-generate_versioned_file(addons/kodi.guilib/addon.xml.in addons/kodi.guilib/addon.xml)
-generate_versioned_file(xbmc/CompileInfo.cpp.in ${CORE_BUILD_DIR}/xbmc/CompileInfo.cpp)
diff --git a/project/cmake/scripts/common/GeneratorSetup.cmake b/project/cmake/scripts/common/GeneratorSetup.cmake
deleted file mode 100644
index 304b5042e7..0000000000
--- a/project/cmake/scripts/common/GeneratorSetup.cmake
+++ /dev/null
@@ -1,49 +0,0 @@
-# Configure single-/multiconfiguration generators and variables
-#
-# CORE_BUILD_CONFIG that is set to
-# - CMAKE_BUILD_TYPE for single configuration generators such as make, nmake
-# - a variable that expands on build time to the current configuration for
-# multi configuration generators such as VS or Xcode
-if(CMAKE_CONFIGURATION_TYPES)
- if(CMAKE_BUILD_TYPE)
- message(FATAL_ERROR "CMAKE_BUILD_TYPE must not be defined for multi-configuration generators")
- endif()
- set(CORE_BUILD_CONFIG ${CMAKE_CFG_INTDIR})
- message(STATUS "Generator: Multi-configuration (${CMAKE_GENERATOR})")
-else()
- if(CMAKE_BUILD_TYPE)
- set(CMAKE_BUILD_TYPE ${CMAKE_BUILD_TYPE}
- CACHE STRING "Choose build type (${CMAKE_BUILD_TYPES})" FORCE)
- else()
- # Set default
- set(CMAKE_BUILD_TYPE Release
- CACHE STRING "Choose build type (${CMAKE_BUILD_TYPES})" FORCE)
- endif()
- set(CORE_BUILD_CONFIG ${CMAKE_BUILD_TYPE})
- message(STATUS "Generator: Single-configuration: ${CMAKE_BUILD_TYPE} (${CMAKE_GENERATOR})")
-endif()
-
-# Print CMake version
-message(STATUS "CMake Version: ${CMAKE_VERSION}")
-
-# Deal with CMake special cases
-if(CMAKE_VERSION VERSION_EQUAL 3.5.1)
- message(WARNING "CMake 3.5.1 introduced a crash during configuration. "
- "Please consider upgrading to 3.5.2 (cmake.org/Bug/view.php?id=16044)")
-endif()
-
-# Darwin needs CMake 3.4
-if(APPLE AND CMAKE_VERSION VERSION_LESS 3.4)
- message(WARNING "Build on Darwin requires CMake 3.4 or later (tdb library support) "
- "or the usage of the patched version in depends.")
-endif()
-
-# Windows needs CMake 3.6 (VS_STARTUP_PROJECT)
-if(WIN32 AND CMAKE_VERSION VERSION_LESS 3.6)
- message(FATAL_ERROR "Build on Windows needs CMake 3.6 or later")
-endif()
-
-# Ninja needs CMake 3.2 due to ExternalProject BUILD_BYPRODUCTS usage
-if(CMAKE_GENERATOR STREQUAL Ninja AND CMAKE_VERSION VERSION_LESS 3.2)
- message(FATAL_ERROR "Generator: Ninja requires CMake 3.2 or later")
-endif()
diff --git a/project/cmake/scripts/common/HandleDepends.cmake b/project/cmake/scripts/common/HandleDepends.cmake
deleted file mode 100644
index adc105bf31..0000000000
--- a/project/cmake/scripts/common/HandleDepends.cmake
+++ /dev/null
@@ -1,252 +0,0 @@
-include(${CORE_SOURCE_DIR}/project/cmake/scripts/common/CheckTargetPlatform.cmake)
-
-# handle addon depends
-function(add_addon_depends addon searchpath)
- # input: string addon string searchpath
-
- set(OUTPUT_DIR ${ADDON_DEPENDS_PATH})
- # look for platform-specific dependencies
- file(GLOB_RECURSE cmake_input_files ${searchpath}/${CORE_SYSTEM_NAME}/*.txt)
- file(GLOB_RECURSE cmake_input_files2 ${searchpath}/common/*.txt)
- list(APPEND cmake_input_files ${cmake_input_files2})
-
- foreach(file ${cmake_input_files})
- set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS ${file})
- if(NOT (file MATCHES CMakeLists.txt OR
- file MATCHES install.txt OR
- file MATCHES noinstall.txt OR
- file MATCHES flags.txt OR
- file MATCHES deps.txt OR
- file MATCHES "[a-z]+-deps[.]txt" OR
- file MATCHES platforms.txt))
- message(STATUS "Processing ${file}")
- file(STRINGS ${file} def)
- string(REPLACE " " ";" def ${def})
- list(LENGTH def deflength)
- get_filename_component(dir ${file} DIRECTORY)
-
- # get the id of the dependency
- if(NOT "${def}" STREQUAL "")
- # read the id from the file
- list(GET def 0 id)
- else()
- # read the id from the filename
- get_filename_component(id ${file} NAME_WE)
- endif()
-
- # check if the dependency has a platforms.txt
- set(platform_found FALSE)
- check_target_platform(${dir} ${CORE_SYSTEM_NAME} platform_found)
-
- if(${platform_found} AND NOT TARGET ${id})
- # determine the download URL of the dependency
- set(url "")
- if(deflength GREATER 1)
- list(GET def 1 url)
- message(STATUS "${id} url: ${url}")
- endif()
-
- # check if there are any library specific flags that need to be passed on
- if(EXISTS ${dir}/flags.txt)
- set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS ${dir}/flags.txt)
- file(STRINGS ${dir}/flags.txt extraflags)
-
- # replace some custom placeholders
- string(REPLACE "@MINGW_TOOLCHAIN_FILE@" "${OUTPUT_DIR}/Toolchain_mingw32.cmake" extraflags "${extraflags}")
- string(REPLACE " " ";" extraflags ${extraflags})
-
- message(STATUS "${id} extraflags: ${extraflags}")
- endif()
-
- set(BUILD_ARGS -DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH}
- -DOUTPUT_DIR=${OUTPUT_DIR}
- -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
- -DCMAKE_USER_MAKE_RULES_OVERRIDE=${CMAKE_USER_MAKE_RULES_OVERRIDE}
- -DCMAKE_USER_MAKE_RULES_OVERRIDE_CXX=${CMAKE_USER_MAKE_RULES_OVERRIDE_CXX}
- -DCMAKE_INSTALL_PREFIX=${OUTPUT_DIR}
- -DCORE_SYSTEM_NAME=${CORE_SYSTEM_NAME}
- -DENABLE_STATIC=1
- -DBUILD_SHARED_LIBS=0)
- # if there are no make rules override files available take care of manually passing on ARCH_DEFINES
- if(NOT CMAKE_USER_MAKE_RULES_OVERRIDE AND NOT CMAKE_USER_MAKE_RULES_OVERRIDE_CXX)
- # make sure we create strings, not lists
- set(TMP_C_FLAGS "${CMAKE_C_FLAGS} ${ARCH_DEFINES}")
- set(TMP_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${ARCH_DEFINES}")
- list(APPEND BUILD_ARGS -DCMAKE_C_FLAGS=${TMP_C_FLAGS}
- -DCMAKE_CXX_FLAGS=${TMP_CXX_FLAGS})
- endif()
-
- if(CMAKE_TOOLCHAIN_FILE)
- list(APPEND BUILD_ARGS -DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE})
- message("toolchain specified")
- message(${BUILD_ARGS})
- endif()
-
- # prepare patchfile. ensure we have a clean file after reconfiguring
- set(PATCH_FILE ${BUILD_DIR}/${id}/tmp/patch.cmake)
- file(REMOVE ${PATCH_FILE})
-
- # if there's a CMakeLists.txt use it to prepare the build
- if(EXISTS ${dir}/CMakeLists.txt)
- set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS ${dir}/CMakeLists.txt)
- file(APPEND ${PATCH_FILE}
- "file(COPY ${dir}/CMakeLists.txt
- DESTINATION ${BUILD_DIR}/${id}/src/${id})\n")
- endif()
-
- # check if we have patches to apply
- file(GLOB patches ${dir}/*.patch)
- list(SORT patches)
- foreach(patch ${patches})
- if(NOT PATCH_PROGRAM OR "${PATCH_PROGRAM}" STREQUAL "")
- if(NOT PATCH_EXECUTABLE)
- # find the path to the patch executable
- find_program(PATCH_EXECUTABLE NAMES patch)
-
- if(NOT PATCH_EXECUTABLE)
- message(FATAL_ERROR "Missing patch command (we looked in ${CMAKE_PREFIX_PATH})")
- endif()
- endif()
-
- set(PATCH_PROGRAM ${PATCH_EXECUTABLE})
-
- # On Windows "patch.exe" can only handle CR-LF line-endings.
- # Our patches have LF-only line endings - except when they
- # have been checked out as part of a dependency hosted on Git
- # and core.autocrlf=true.
- if(WIN32)
- file(READ ${patch} patch_content_hex HEX)
- # Force handle LF-only line endings
- if(NOT patch_content_hex MATCHES "0d0a")
- set(PATCH_PROGRAM "\"${PATCH_PROGRAM}\" --binary")
- endif()
- endif()
- endif()
-
- set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS ${patch})
- file(APPEND ${PATCH_FILE}
- "execute_process(COMMAND ${PATCH_PROGRAM} -p1 -i \"${patch}\")\n")
- endforeach()
-
-
- # if there's an install.txt use it to properly install the built files
- set(INSTALL_COMMAND "")
- if(EXISTS ${dir}/install.txt)
- set(INSTALL_COMMAND INSTALL_COMMAND ${CMAKE_COMMAND}
- -DINPUTDIR=${BUILD_DIR}/${id}/src/${id}-build/
- -DINPUTFILE=${dir}/install.txt
- -DDESTDIR=${OUTPUT_DIR}
- -DENABLE_STATIC=1
- "${extraflags}"
- -P ${PROJECT_SOURCE_DIR}/install.cmake)
- elseif(EXISTS ${dir}/noinstall.txt)
- set(INSTALL_COMMAND INSTALL_COMMAND "")
- endif()
-
- # check if there's a platform-specific or generic deps.txt containing dependencies on other libraries
- if(EXISTS ${dir}/${CORE_SYSTEM_NAME}-deps.txt)
- file(STRINGS ${dir}/${CORE_SYSTEM_NAME}-deps.txt deps)
- message(STATUS "${id} depends: ${deps}")
- elseif(EXISTS ${dir}/deps.txt)
- set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS ${dir}/deps.txt)
- file(STRINGS ${dir}/deps.txt deps)
- message(STATUS "${id} depends: ${deps}")
- else()
- set(deps)
- endif()
-
- if(CROSS_AUTOCONF AND AUTOCONF_FILES)
- foreach(afile ${AUTOCONF_FILES})
- set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS ${afile})
- file(APPEND ${PATCH_FILE}
- "message(STATUS \"AUTOCONF: copying ${afile} to ${BUILD_DIR}/${id}/src/${id}\")\n
- file(COPY ${afile} DESTINATION ${BUILD_DIR}/${id}/src/${id})\n")
- endforeach()
- endif()
-
- # if the patch file exists we need to set the PATCH_COMMAND
- set(PATCH_COMMAND "")
- if(EXISTS ${PATCH_FILE})
- set(PATCH_COMMAND ${CMAKE_COMMAND} -P ${PATCH_FILE})
- endif()
-
- # prepare the setup of the call to externalproject_add()
- set(EXTERNALPROJECT_SETUP PREFIX ${BUILD_DIR}/${id}
- CMAKE_ARGS ${extraflags} ${BUILD_ARGS}
- PATCH_COMMAND ${PATCH_COMMAND}
- "${INSTALL_COMMAND}")
-
- if(CMAKE_VERSION VERSION_GREATER 3.5.9)
- list(APPEND EXTERNALPROJECT_SETUP GIT_SHALLOW 1)
- endif()
-
- # if there's an url defined we need to pass that to externalproject_add()
- if(DEFINED url AND NOT "${url}" STREQUAL "")
- # check if there's a third parameter in the file
- if(deflength GREATER 2)
- # the third parameter is considered as a revision of a git repository
- list(GET def 2 revision)
-
- externalproject_add(${id}
- GIT_REPOSITORY ${url}
- GIT_TAG ${revision}
- "${EXTERNALPROJECT_SETUP}")
-
- # For patchfiles to work, disable (users globally set) autocrlf=true
- if(CMAKE_MINIMUM_REQUIRED_VERSION VERSION_GREATER 3.7)
- message(AUTHOR_WARNING "Make use of GIT_CONFIG")
- endif()
- if(WIN32 AND patches)
- externalproject_add_step(${id} gitconfig
- COMMAND git config core.autocrlf false
- COMMAND git rm -rf --cached .
- COMMAND git reset --hard HEAD
- COMMENT "Performing gitconfig step: Disabling autocrlf to enable patching for '${id}'"
- DEPENDERS patch
- WORKING_DIRECTORY <SOURCE_DIR>)
- endif()
- else()
- set(CONFIGURE_COMMAND "")
- if(NOT WIN32)
- # manually specify the configure command to be able to pass in the custom PKG_CONFIG_PATH
- set(CONFIGURE_COMMAND PKG_CONFIG_PATH=${OUTPUT_DIR}/lib/pkgconfig
- ${CMAKE_COMMAND} -DCMAKE_LIBRARY_PATH=${OUTPUT_DIR}/lib ${extraflags} ${BUILD_ARGS}
- ${BUILD_DIR}/${id}/src/${id}
- -DPACKAGE_CONFIG_PATH=${OUTPUT_DIR}/lib/pkgconfig
- -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
- -DOUTPUT_DIR=${OUTPUT_DIR}
- -DCMAKE_PREFIX_PATH=${OUTPUT_DIR}
- -DCMAKE_INSTALL_PREFIX=${OUTPUT_DIR}
- -DCMAKE_EXE_LINKER_FLAGS=-L${OUTPUT_DIR}/lib
- -DCMAKE_INCLUDE_PATH=${OUTPUT_DIR}/include)
- endif()
-
- externalproject_add(${id}
- URL ${url}
- DOWNLOAD_DIR ${BUILD_DIR}/download
- CONFIGURE_COMMAND ${CONFIGURE_COMMAND}
- "${EXTERNALPROJECT_SETUP}")
- endif()
- else()
- externalproject_add(${id}
- SOURCE_DIR ${dir}
- "${EXTERNALPROJECT_SETUP}")
- endif()
-
- if(deps)
- add_dependencies(${id} ${deps})
- endif()
- endif()
-
- # if the dependency is available for the target platform add it to the list of the addon's dependencies
- # (even if the target already exists as it still has to be built before the addon)
- if(${platform_found})
- list(APPEND ${addon}_DEPS ${id})
- endif()
- endif()
- endforeach()
-
- # make the ${addon}_DEPS variable available to the calling script
- set(${addon}_DEPS "${${addon}_DEPS}" PARENT_SCOPE)
-endfunction()
-
diff --git a/project/cmake/scripts/common/Macros.cmake b/project/cmake/scripts/common/Macros.cmake
deleted file mode 100644
index 62dfb873b5..0000000000
--- a/project/cmake/scripts/common/Macros.cmake
+++ /dev/null
@@ -1,622 +0,0 @@
-# This script holds the main functions used to construct the build system
-
-# include system specific macros
-include(${CORE_SOURCE_DIR}/project/cmake/scripts/${CORE_SYSTEM_NAME}/Macros.cmake)
-
-# IDEs: Group source files in target in folders (file system hierarchy)
-# Source: http://blog.audio-tk.com/2015/09/01/sorting-source-files-and-projects-in-folders-with-cmake-and-visual-studioxcode/
-# Arguments:
-# target The target that shall be grouped by folders.
-# Optional Arguments:
-# RELATIVE allows to specify a different reference folder.
-function(source_group_by_folder target)
- if(NOT TARGET ${target})
- message(FATAL_ERROR "There is no target named '${target}'")
- endif()
-
- set(SOURCE_GROUP_DELIMITER "/")
-
- cmake_parse_arguments(arg "" "RELATIVE" "" ${ARGN})
- if(arg_RELATIVE)
- set(relative_dir ${arg_RELATIVE})
- else()
- set(relative_dir ${CMAKE_CURRENT_SOURCE_DIR})
- endif()
-
- get_property(files TARGET ${target} PROPERTY SOURCES)
- if(files)
- list(SORT files)
-
- if(CMAKE_GENERATOR STREQUAL Xcode)
- set_target_properties(${target} PROPERTIES SOURCES "${files}")
- endif()
- endif()
- foreach(file ${files})
- if(NOT IS_ABSOLUTE ${file})
- set(file ${CMAKE_CURRENT_SOURCE_DIR}/${file})
- endif()
- file(RELATIVE_PATH relative_file ${relative_dir} ${file})
- get_filename_component(dir "${relative_file}" DIRECTORY)
- if(NOT dir STREQUAL "${last_dir}")
- if(files)
- source_group("${last_dir}" FILES ${files})
- endif()
- set(files "")
- endif()
- set(files ${files} ${file})
- set(last_dir "${dir}")
- endforeach(file)
- if(files)
- source_group("${last_dir}" FILES ${files})
- endif()
-endfunction()
-
-# Add sources to main application
-# Arguments:
-# name name of the library to add
-# Implicit arguments:
-# ENABLE_STATIC_LIBS Build static libraries per directory
-# SOURCES the sources of the library
-# HEADERS the headers of the library (only for IDE support)
-# OTHERS other library related files (only for IDE support)
-# On return:
-# Library will be built, optionally added to ${core_DEPENDS}
-# Sets CORE_LIBRARY for calls for setting target specific options
-function(core_add_library name)
- if(ENABLE_STATIC_LIBS)
- add_library(${name} STATIC ${SOURCES} ${HEADERS} ${OTHERS})
- set_target_properties(${name} PROPERTIES PREFIX "")
- set(core_DEPENDS ${name} ${core_DEPENDS} CACHE STRING "" FORCE)
- add_dependencies(${name} libcpluff ffmpeg dvdnav crossguid)
- set(CORE_LIBRARY ${name} PARENT_SCOPE)
-
- # Add precompiled headers to Kodi main libraries
- if(CORE_SYSTEM_NAME STREQUAL windows)
- add_precompiled_header(${name} pch.h ${CORE_SOURCE_DIR}/xbmc/platform/win32/pch.cpp PCH_TARGET kodi)
- set_language_cxx(${name})
- target_link_libraries(${name} PUBLIC effects11)
- endif()
- else()
- foreach(src IN LISTS SOURCES HEADERS OTHERS)
- get_filename_component(src_path "${src}" ABSOLUTE)
- list(APPEND FILES ${src_path})
- endforeach()
- target_sources(lib${APP_NAME_LC} PRIVATE ${FILES})
- set(CORE_LIBRARY lib${APP_NAME_LC} PARENT_SCOPE)
- endif()
-endfunction()
-
-# Add a test library, and add sources to list for gtest integration macros
-function(core_add_test_library name)
- if(ENABLE_STATIC_LIBS)
- add_library(${name} STATIC ${SOURCES} ${SUPPORTED_SOURCES} ${HEADERS} ${OTHERS})
- set_target_properties(${name} PROPERTIES PREFIX ""
- EXCLUDE_FROM_ALL 1
- FOLDER "Build Utilities/tests")
- add_dependencies(${name} libcpluff ffmpeg dvdnav crossguid)
- set(test_archives ${test_archives} ${name} CACHE STRING "" FORCE)
- endif()
- foreach(src IN LISTS SOURCES SUPPORTED_SOURCES HEADERS OTHERS)
- get_filename_component(src_path "${src}" ABSOLUTE)
- set(test_sources "${src_path}" ${test_sources} CACHE STRING "" FORCE)
- endforeach()
-endfunction()
-
-# Add an addon callback library
-# Arguments:
-# name name of the library to add
-# Implicit arguments:
-# SOURCES the sources of the library
-# HEADERS the headers of the library (only for IDE support)
-# OTHERS other library related files (only for IDE support)
-# On return:
-# Library target is defined and added to LIBRARY_FILES
-function(core_add_addon_library name)
- get_filename_component(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} NAME)
- list(APPEND SOURCES lib${name}.cpp)
- core_add_shared_library(${name} OUTPUT_DIRECTORY addons/${DIRECTORY})
- set_target_properties(${name} PROPERTIES FOLDER addons)
- target_include_directories(${name} PRIVATE
- ${CMAKE_CURRENT_SOURCE_DIR}
- ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi
- ${CORE_SOURCE_DIR}/xbmc)
-endfunction()
-
-# Add an dl-loaded shared library
-# Arguments:
-# name name of the library to add
-# Optional arguments:
-# WRAPPED wrap this library on POSIX platforms to add VFS support for
-# libraries that would otherwise not support it.
-# OUTPUT_DIRECTORY where to create the library in the build dir
-# (default: system)
-# Implicit arguments:
-# SOURCES the sources of the library
-# HEADERS the headers of the library (only for IDE support)
-# OTHERS other library related files (only for IDE support)
-# On return:
-# Library target is defined and added to LIBRARY_FILES
-function(core_add_shared_library name)
- cmake_parse_arguments(arg "WRAPPED" "OUTPUT_DIRECTORY" "" ${ARGN})
- if(arg_OUTPUT_DIRECTORY)
- set(OUTPUT_DIRECTORY ${arg_OUTPUT_DIRECTORY})
- else()
- if(NOT CORE_SYSTEM_NAME STREQUAL windows)
- set(OUTPUT_DIRECTORY system)
- endif()
- endif()
- if(CORE_SYSTEM_NAME STREQUAL windows)
- set(OUTPUT_NAME lib${name})
- else()
- set(OUTPUT_NAME lib${name}-${ARCH})
- endif()
-
- if(NOT arg_WRAPPED OR CORE_SYSTEM_NAME STREQUAL windows)
- add_library(${name} SHARED ${SOURCES} ${HEADERS} ${OTHERS})
- set_target_properties(${name} PROPERTIES LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/${OUTPUT_DIRECTORY}
- RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/${OUTPUT_DIRECTORY}
- OUTPUT_NAME ${OUTPUT_NAME} PREFIX "")
- foreach(OUTPUTCONFIG ${CMAKE_CONFIGURATION_TYPES})
- string(TOUPPER ${OUTPUTCONFIG} OUTPUTCONFIG)
- set_target_properties(${name} PROPERTIES LIBRARY_OUTPUT_DIRECTORY_${OUTPUTCONFIG} ${CMAKE_BINARY_DIR}/${OUTPUT_DIRECTORY}
- RUNTIME_OUTPUT_DIRECTORY_${OUTPUTCONFIG} ${CMAKE_BINARY_DIR}/${OUTPUT_DIRECTORY})
- endforeach()
-
- set(LIBRARY_FILES ${LIBRARY_FILES} ${CMAKE_BINARY_DIR}/${OUTPUT_DIRECTORY}/${OUTPUT_NAME}${CMAKE_SHARED_LIBRARY_SUFFIX} CACHE STRING "" FORCE)
- add_dependencies(${APP_NAME_LC}-libraries ${name})
- else()
- add_library(${name} STATIC ${SOURCES} ${HEADERS} ${OTHERS})
- set_target_properties(${name} PROPERTIES POSITION_INDEPENDENT_CODE 1)
- core_link_library(${name} ${OUTPUT_DIRECTORY}/lib${name})
- endif()
-endfunction()
-
-# Sets the compile language for all C source files in a target to CXX.
-# Needs to be called from the CMakeLists.txt that defines the target.
-# Arguments:
-# target target
-function(set_language_cxx target)
- get_property(sources TARGET ${target} PROPERTY SOURCES)
- foreach(file IN LISTS sources)
- if(file MATCHES "\.c$")
- set_source_files_properties(${file} PROPERTIES LANGUAGE CXX)
- endif()
- endforeach()
-endfunction()
-
-# Add a data file to installation list with a mirror in build tree
-# Mirroring files in the buildtree allows to execute the app from there.
-# Arguments:
-# file full path to file to mirror
-# Optional Arguments:
-# NO_INSTALL: exclude file from installation target (only mirror)
-# DIRECTORY: directory where the file should be mirrored to
-# (default: preserve tree structure relative to CORE_SOURCE_DIR)
-# On return:
-# Files is mirrored to the build tree and added to ${install_data}
-# (if NO_INSTALL is not given).
-function(copy_file_to_buildtree file)
- cmake_parse_arguments(arg "NO_INSTALL" "DIRECTORY" "" ${ARGN})
- if(arg_DIRECTORY)
- set(outdir ${arg_DIRECTORY})
- get_filename_component(outfile ${file} NAME)
- set(outfile ${outdir}/${outfile})
- else()
- string(REPLACE "${CORE_SOURCE_DIR}/" "" outfile ${file})
- get_filename_component(outdir ${outfile} DIRECTORY)
- endif()
-
- if(NOT TARGET export-files)
- file(REMOVE ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/ExportFiles.cmake)
- add_custom_target(export-files ALL COMMENT "Copying files into build tree"
- COMMAND ${CMAKE_COMMAND} -P ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/ExportFiles.cmake)
- set_target_properties(export-files PROPERTIES FOLDER "Build Utilities")
- file(APPEND ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/ExportFiles.cmake "# Export files to build tree\n")
- endif()
-
- # Exclude autotools build artefacts and other blacklisted files in source tree.
- if(file MATCHES "(Makefile|\.in|\.xbt|\.so|\.dylib|\.gitignore)$")
- if(VERBOSE)
- message(STATUS "copy_file_to_buildtree - ignoring file: ${file}")
- endif()
- return()
- endif()
-
- if(NOT file STREQUAL ${CMAKE_BINARY_DIR}/${outfile})
- if(VERBOSE)
- message(STATUS "copy_file_to_buildtree - copying file: ${file} -> ${CMAKE_BINARY_DIR}/${outfile}")
- endif()
- file(APPEND ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/ExportFiles.cmake
- "file(COPY \"${file}\" DESTINATION \"${CMAKE_BINARY_DIR}/${outdir}\")\n")
- endif()
-
- if(NOT arg_NO_INSTALL)
- list(APPEND install_data ${outfile})
- set(install_data ${install_data} PARENT_SCOPE)
- endif()
-endfunction()
-
-# Add data files to installation list with a mirror in build tree.
-# reads list of files to install from a given list of text files.
-# Arguments:
-# pattern globbing pattern for text files to read
-# Optional Arguments:
-# NO_INSTALL: exclude files from installation target
-# Implicit arguments:
-# CORE_SOURCE_DIR - root of source tree
-# On return:
-# Files are mirrored to the build tree and added to ${install_data}
-# (if NO_INSTALL is not given).
-function(copy_files_from_filelist_to_buildtree pattern)
- # copies files listed in text files to the buildtree
- # Input: [glob pattern: filepattern]
- cmake_parse_arguments(arg "NO_INSTALL" "" "" ${ARGN})
- list(APPEND pattern ${ARGN})
- list(SORT pattern)
- if(VERBOSE)
- message(STATUS "copy_files_from_filelist_to_buildtree - got pattern: ${pattern}")
- endif()
- foreach(pat ${pattern})
- file(GLOB filenames ${pat})
- foreach(filename ${filenames})
- string(STRIP ${filename} filename)
- core_file_read_filtered(fstrings ${filename})
- foreach(dir ${fstrings})
- string(REPLACE " " ";" dir ${dir})
- list(GET dir 0 src)
- list(LENGTH dir len)
- if(len EQUAL 1)
- set(dest)
- else()
- list(GET dir -1 dest)
- endif()
-
- # If the full path to an existing file is specified then add that single file.
- # Don't recursively add all files with the given name.
- if(EXISTS ${CORE_SOURCE_DIR}/${src} AND NOT IS_DIRECTORY ${CORE_SOURCE_DIR}/${src})
- set(files ${src})
- else()
- file(GLOB_RECURSE files RELATIVE ${CORE_SOURCE_DIR} ${CORE_SOURCE_DIR}/${src})
- endif()
-
- foreach(file ${files})
- if(arg_NO_INSTALL)
- copy_file_to_buildtree(${CORE_SOURCE_DIR}/${file} DIRECTORY ${dest} NO_INSTALL)
- else()
- copy_file_to_buildtree(${CORE_SOURCE_DIR}/${file} DIRECTORY ${dest})
- endif()
- endforeach()
- endforeach()
- endforeach()
- endforeach()
- set(install_data ${install_data} PARENT_SCOPE)
-endfunction()
-
-# helper macro to set modified variables in parent scope
-macro(export_dep)
- set(SYSTEM_INCLUDES ${SYSTEM_INCLUDES} PARENT_SCOPE)
- set(DEPLIBS ${DEPLIBS} PARENT_SCOPE)
- set(DEP_DEFINES ${DEP_DEFINES} PARENT_SCOPE)
- set(${depup}_FOUND ${${depup}_FOUND} PARENT_SCOPE)
- mark_as_advanced(${depup}_LIBRARIES)
-endmacro()
-
-# add a required dependency of main application
-# Arguments:
-# dep name of find rule for dependency, used uppercased for variable prefix
-# On return:
-# dependency added to ${SYSTEM_INCLUDES}, ${DEPLIBS} and ${DEP_DEFINES}
-function(core_require_dep dep)
- find_package(${dep} REQUIRED)
- string(TOUPPER ${dep} depup)
- list(APPEND SYSTEM_INCLUDES ${${depup}_INCLUDE_DIRS})
- list(APPEND DEPLIBS ${${depup}_LIBRARIES})
- list(APPEND DEP_DEFINES ${${depup}_DEFINITIONS})
- export_dep()
-endfunction()
-
-# add a required dyloaded dependency of main application
-# Arguments:
-# dep name of find rule for dependency, used uppercased for variable prefix
-# On return:
-# dependency added to ${SYSTEM_INCLUDES}, ${dep}_SONAME is set up
-function(core_require_dyload_dep dep)
- find_package(${dep} REQUIRED)
- string(TOUPPER ${dep} depup)
- list(APPEND SYSTEM_INCLUDES ${${depup}_INCLUDE_DIRS})
- list(APPEND DEP_DEFINES ${${depup}_DEFINITIONS})
- find_soname(${depup} REQUIRED)
- export_dep()
- set(${depup}_SONAME ${${depup}_SONAME} PARENT_SCOPE)
-endfunction()
-
-# helper macro for optional deps
-macro(setup_enable_switch)
- string(TOUPPER ${dep} depup)
- if(ARGV1)
- set(enable_switch ${ARGV1})
- else()
- set(enable_switch ENABLE_${depup})
- endif()
- # normal options are boolean, so we override set our ENABLE_FOO var to allow "auto" handling
- set(${enable_switch} "AUTO" CACHE STRING "Enable ${depup} support?")
-endmacro()
-
-# add an optional dependency of main application
-# Arguments:
-# dep name of find rule for dependency, used uppercased for variable prefix
-# On return:
-# dependency optionally added to ${SYSTEM_INCLUDES}, ${DEPLIBS} and ${DEP_DEFINES}
-function(core_optional_dep dep)
- setup_enable_switch()
- if(${enable_switch} STREQUAL AUTO)
- find_package(${dep})
- elseif(${${enable_switch}})
- find_package(${dep} REQUIRED)
- endif()
-
- if(${depup}_FOUND)
- list(APPEND SYSTEM_INCLUDES ${${depup}_INCLUDE_DIRS})
- list(APPEND DEPLIBS ${${depup}_LIBRARIES})
- list(APPEND DEP_DEFINES ${${depup}_DEFINITIONS})
- set(final_message ${final_message} "${depup} enabled: Yes" PARENT_SCOPE)
- export_dep()
- else()
- set(final_message ${final_message} "${depup} enabled: No" PARENT_SCOPE)
- endif()
-endfunction()
-
-# add an optional dyloaded dependency of main application
-# Arguments:
-# dep name of find rule for dependency, used uppercased for variable prefix
-# On return:
-# dependency optionally added to ${SYSTEM_INCLUDES}, ${DEP_DEFINES}, ${dep}_SONAME is set up
-function(core_optional_dyload_dep dep)
- setup_enable_switch()
- if(${enable_switch})
- find_package(${dep})
- if(${depup}_FOUND)
- list(APPEND SYSTEM_INCLUDES ${${depup}_INCLUDE_DIRS})
- find_soname(${depup} REQUIRED)
- list(APPEND DEP_DEFINES ${${depup}_DEFINITIONS})
- set(final_message ${final_message} "${depup} enabled: Yes" PARENT_SCOPE)
- export_dep()
- set(${depup}_SONAME ${${depup}_SONAME} PARENT_SCOPE)
- endif()
- endif()
-endfunction()
-
-function(core_file_read_filtered result filepattern)
- # Reads STRINGS from text files
- # with comments filtered out
- # Result: [list: result]
- # Input: [glob pattern: filepattern]
- file(GLOB filenames ${filepattern})
- list(SORT filenames)
- foreach(filename ${filenames})
- if(VERBOSE)
- message(STATUS "core_file_read_filtered - filename: ${filename}")
- endif()
- set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS ${filename})
- file(STRINGS ${filename} fstrings REGEX "^[^#//]")
- foreach(fstring ${fstrings})
- string(REGEX REPLACE "^(.*)#(.*)" "\\1" fstring ${fstring})
- string(REGEX REPLACE "[ \n\r\t]//.*" "" fstring ${fstring})
- string(STRIP ${fstring} fstring)
- list(APPEND filename_strings ${fstring})
- endforeach()
- endforeach()
- set(${result} ${filename_strings} PARENT_SCOPE)
-endfunction()
-
-function(core_add_subdirs_from_filelist files)
- # Adds subdirectories from a sorted list of files
- # Input: [list: filenames] [bool: sort]
- foreach(arg ${ARGN})
- list(APPEND files ${arg})
- endforeach()
- list(SORT files)
- if(VERBOSE)
- message(STATUS "core_add_subdirs_from_filelist - got pattern: ${files}")
- endif()
- foreach(filename ${files})
- string(STRIP ${filename} filename)
- core_file_read_filtered(fstrings ${filename})
- foreach(subdir ${fstrings})
- string(REPLACE " " ";" subdir ${subdir})
- list(GET subdir 0 subdir_src)
- list(GET subdir -1 subdir_dest)
- if(VERBOSE)
- message(STATUS " core_add_subdirs_from_filelist - adding subdir: ${CORE_SOURCE_DIR}/${subdir_src} -> ${CORE_BUILD_DIR}/${subdir_dest}")
- endif()
- add_subdirectory(${CORE_SOURCE_DIR}/${subdir_src} ${CORE_BUILD_DIR}/${subdir_dest})
- endforeach()
- endforeach()
-endfunction()
-
-macro(core_add_optional_subdirs_from_filelist pattern)
- # Adds subdirectories from text files
- # if the option(s) in the 3rd field are enabled
- # Input: [glob pattern: filepattern]
- foreach(arg ${ARGN})
- list(APPEND pattern ${arg})
- endforeach()
- foreach(elem ${pattern})
- string(STRIP ${elem} elem)
- list(APPEND filepattern ${elem})
- endforeach()
-
- file(GLOB filenames ${filepattern})
- list(SORT filenames)
- if(VERBOSE)
- message(STATUS "core_add_optional_subdirs_from_filelist - got pattern: ${filenames}")
- endif()
-
- foreach(filename ${filenames})
- if(VERBOSE)
- message(STATUS "core_add_optional_subdirs_from_filelist - reading file: ${filename}")
- endif()
- set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS ${filename})
- file(STRINGS ${filename} fstrings REGEX "^[^#//]")
- foreach(line ${fstrings})
- string(REPLACE " " ";" line "${line}")
- list(GET line 0 subdir_src)
- list(GET line 1 subdir_dest)
- list(GET line 3 opts)
- foreach(opt ${opts})
- if(ENABLE_${opt})
- if(VERBOSE)
- message(STATUS " core_add_optional_subdirs_from_filelist - adding subdir: ${CORE_SOURCE_DIR}/${subdir_src} -> ${CORE_BUILD_DIR}/${subdir_dest}")
- endif()
- add_subdirectory(${CORE_SOURCE_DIR}/${subdir_src} ${CORE_BUILD_DIR}/${subdir_dest})
- else()
- if(VERBOSE)
- message(STATUS " core_add_optional_subdirs_from_filelist: OPTION ${opt} not enabled for ${subdir_src}, skipping subdir")
- endif()
- endif()
- endforeach()
- endforeach()
- endforeach()
-endmacro()
-
-# Generates an RFC2822 timestamp
-#
-# The following variable is set:
-# RFC2822_TIMESTAMP
-function(rfc2822stamp)
- execute_process(COMMAND date -R
- OUTPUT_VARIABLE RESULT)
- set(RFC2822_TIMESTAMP ${RESULT} PARENT_SCOPE)
-endfunction()
-
-# Generates an user stamp from git config info
-#
-# The following variable is set:
-# PACKAGE_MAINTAINER - user stamp in the form of "username <username@example.com>"
-# if no git tree is found, value is set to "nobody <nobody@example.com>"
-function(userstamp)
- find_package(Git)
- if(GIT_FOUND AND EXISTS ${CORE_SOURCE_DIR}/.git)
- execute_process(COMMAND ${GIT_EXECUTABLE} config user.name
- OUTPUT_VARIABLE username
- WORKING_DIRECTORY ${CORE_SOURCE_DIR}
- OUTPUT_STRIP_TRAILING_WHITESPACE)
- execute_process(COMMAND ${GIT_EXECUTABLE} config user.email
- OUTPUT_VARIABLE useremail
- WORKING_DIRECTORY ${CORE_SOURCE_DIR}
- OUTPUT_STRIP_TRAILING_WHITESPACE)
- set(PACKAGE_MAINTAINER "${username} <${useremail}>" PARENT_SCOPE)
- else()
- set(PACKAGE_MAINTAINER "nobody <nobody@example.com>" PARENT_SCOPE)
- endif()
-endfunction()
-
-# Parses git info and sets variables used to identify the build
-# Arguments:
-# stamp variable name to return
-# Optional Arguments:
-# FULL: generate git HEAD commit in the form of 'YYYYMMDD-hash'
-# if git tree is dirty, value is set in the form of 'YYYYMMDD-hash-dirty'
-# if no git tree is found, value is set in the form of 'YYYYMMDD-nogitfound'
-# if FULL is not given, stamp is generated following the same process as above
-# but without 'YYYYMMDD'
-# On return:
-# Variable is set with generated stamp to PARENT_SCOPE
-function(core_find_git_rev stamp)
- # allow manual setting GIT_VERSION
- if(GIT_VERSION)
- set(${stamp} ${GIT_VERSION} PARENT_SCOPE)
- else()
- find_package(Git)
- if(GIT_FOUND AND EXISTS ${CORE_SOURCE_DIR}/.git)
- execute_process(COMMAND ${GIT_EXECUTABLE} diff-files --ignore-submodules --quiet --
- RESULT_VARIABLE status_code
- WORKING_DIRECTORY ${CORE_SOURCE_DIR})
- if(NOT status_code)
- execute_process(COMMAND ${GIT_EXECUTABLE} diff-index --ignore-submodules --quiet HEAD --
- RESULT_VARIABLE status_code
- WORKING_DIRECTORY ${CORE_SOURCE_DIR})
- endif()
- if(status_code)
- execute_process(COMMAND ${GIT_EXECUTABLE} log -n 1 --pretty=format:"%h-dirty" HEAD
- OUTPUT_VARIABLE HASH
- WORKING_DIRECTORY ${CORE_SOURCE_DIR})
- string(SUBSTRING ${HASH} 1 13 HASH)
- else()
- execute_process(COMMAND ${GIT_EXECUTABLE} log -n 1 --pretty=format:"%h" HEAD
- OUTPUT_VARIABLE HASH
- WORKING_DIRECTORY ${CORE_SOURCE_DIR})
- string(SUBSTRING ${HASH} 1 7 HASH)
- endif()
- execute_process(COMMAND ${GIT_EXECUTABLE} log -1 --pretty=format:"%cd" --date=short HEAD
- OUTPUT_VARIABLE DATE
- WORKING_DIRECTORY ${CORE_SOURCE_DIR})
- string(SUBSTRING ${DATE} 1 10 DATE)
- string(REPLACE "-" "" DATE ${DATE})
- else()
- string(TIMESTAMP DATE "%Y%m%d" UTC)
- set(HASH "nogitfound")
- endif()
- cmake_parse_arguments(arg "FULL" "" "" ${ARGN})
- if(arg_FULL)
- set(${stamp} ${DATE}-${HASH} PARENT_SCOPE)
- else()
- set(${stamp} ${HASH} PARENT_SCOPE)
- endif()
- endif()
-endfunction()
-
-# Parses version.txt and libKODI_guilib.h and sets variables
-# used to construct dirs structure, file naming, API version, etc.
-#
-# The following variables are set from version.txt:
-# APP_NAME - app name
-# APP_NAME_LC - lowercased app name
-# APP_NAME_UC - uppercased app name
-# COMPANY_NAME - company name
-# APP_VERSION_MAJOR - the app version major
-# APP_VERSION_MINOR - the app version minor
-# APP_VERSION_TAG - the app version tag
-# APP_VERSION_TAG_LC - lowercased app version tag
-# APP_VERSION - the app version (${APP_VERSION_MAJOR}.${APP_VERSION_MINOR}-${APP_VERSION_TAG})
-# APP_ADDON_API - the addon API version in the form of 16.9.702
-# FILE_VERSION - file version in the form of 16,9,702,0 - Windows only
-#
-# The following variables are set from libKODI_guilib.h:
-# guilib_version - current ADDONGUI API version
-# guilib_version_min - minimal ADDONGUI API version
-macro(core_find_versions)
- include(CMakeParseArguments)
- core_file_read_filtered(version_list ${CORE_SOURCE_DIR}/version.txt)
- string(REPLACE " " ";" version_list "${version_list}")
- cmake_parse_arguments(APP "" "APP_NAME;COMPANY_NAME;WEBSITE;VERSION_MAJOR;VERSION_MINOR;VERSION_TAG;VERSION_CODE;ADDON_API" "" ${version_list})
-
- set(APP_NAME ${APP_APP_NAME}) # inconsistency but APP_APP_NAME looks weird
- string(TOLOWER ${APP_APP_NAME} APP_NAME_LC)
- string(TOUPPER ${APP_APP_NAME} APP_NAME_UC)
- set(COMPANY_NAME ${APP_COMPANY_NAME})
- set(APP_VERSION ${APP_VERSION_MAJOR}.${APP_VERSION_MINOR})
- if(APP_VERSION_TAG)
- set(APP_VERSION ${APP_VERSION}-${APP_VERSION_TAG})
- string(TOLOWER ${APP_VERSION_TAG} APP_VERSION_TAG_LC)
- endif()
- string(REPLACE "." "," FILE_VERSION ${APP_ADDON_API}.0)
- file(STRINGS ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/libKODI_guilib.h guilib_version REGEX "^.*GUILIB_API_VERSION (.*)$")
- string(REGEX REPLACE ".*\"(.*)\"" "\\1" guilib_version ${guilib_version})
- file(STRINGS ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/libKODI_guilib.h guilib_version_min REGEX "^.*GUILIB_MIN_API_VERSION (.*)$")
- string(REGEX REPLACE ".*\"(.*)\"" "\\1" guilib_version_min ${guilib_version_min})
- # unset variables not used anywhere else
- unset(version_list)
- unset(APP_APP_NAME)
-
- # bail if we can't parse version.txt
- if(NOT DEFINED APP_VERSION_MAJOR OR NOT DEFINED APP_VERSION_MINOR)
- message(FATAL_ERROR "Could not determine app version! Make sure that ${CORE_SOURCE_DIR}/version.txt exists")
- endif()
-
- # bail if we can't parse libKODI_guilib.h
- if(NOT DEFINED guilib_version OR NOT DEFINED guilib_version_min)
- message(FATAL_ERROR "Could not determine add-on API version! Make sure that ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/libKODI_guilib.h exists")
- endif()
-endmacro()
-
diff --git a/project/cmake/scripts/common/PrepareEnv.cmake b/project/cmake/scripts/common/PrepareEnv.cmake
deleted file mode 100644
index 51be7395a8..0000000000
--- a/project/cmake/scripts/common/PrepareEnv.cmake
+++ /dev/null
@@ -1,64 +0,0 @@
-# parse version.txt and libKODI_guilib.h to get the version and API info
-include(${CORE_SOURCE_DIR}/project/cmake/scripts/common/Macros.cmake)
-core_find_versions()
-
-# in case we need to download something, set KODI_MIRROR to the default if not alread set
-if(NOT DEFINED KODI_MIRROR)
- set(KODI_MIRROR "http://mirrors.kodi.tv")
-endif()
-
-### copy all the addon binding header files to include/kodi
-# make sure include/kodi exists and is empty
-set(APP_LIB_DIR ${ADDON_DEPENDS_PATH}/lib/${APP_NAME_LC})
-if(NOT EXISTS "${APP_LIB_DIR}/")
- file(MAKE_DIRECTORY ${APP_LIB_DIR})
-endif()
-
-set(APP_DATA_DIR ${ADDON_DEPENDS_PATH}/share/${APP_NAME_LC})
-if(NOT EXISTS "${APP_DATA_DIR}/")
- file(MAKE_DIRECTORY ${APP_DATA_DIR})
-endif()
-
-set(APP_INCLUDE_DIR ${ADDON_DEPENDS_PATH}/include/${APP_NAME_LC})
-if(NOT EXISTS "${APP_INCLUDE_DIR}/")
- file(MAKE_DIRECTORY ${APP_INCLUDE_DIR})
-endif()
-
-# make sure C++11 is always set
-if(NOT WIN32)
- string(REGEX MATCH "-std=(gnu|c)\\+\\+11" cxx11flag "${CMAKE_CXX_FLAGS}")
- if(NOT cxx11flag)
- set(CXX11_SWITCH "-std=c++11")
- endif()
-endif()
-
-# generate the proper KodiConfig.cmake file
-configure_file(${CORE_SOURCE_DIR}/project/cmake/KodiConfig.cmake.in ${APP_LIB_DIR}/KodiConfig.cmake @ONLY)
-
-# copy cmake helpers to lib/kodi
-file(COPY ${CORE_SOURCE_DIR}/project/cmake/scripts/common/AddonHelpers.cmake
- ${CORE_SOURCE_DIR}/project/cmake/scripts/common/AddOptions.cmake
- DESTINATION ${APP_LIB_DIR})
-
-### copy all the addon binding header files to include/kodi
-# parse addon-bindings.mk to get the list of header files to copy
-core_file_read_filtered(bindings ${CORE_SOURCE_DIR}/xbmc/addons/addon-bindings.mk)
-foreach(binding ${bindings})
- string(REPLACE " =" ";" binding "${binding}")
- string(REPLACE "+=" ";" binding "${binding}")
- list(GET binding 1 header)
- # copy the header file to include/kodi
- configure_file(${CORE_SOURCE_DIR}/${header} ${APP_INCLUDE_DIR} COPYONLY)
-endforeach()
-
-### processing additional tools required by the platform
-if(EXISTS ${CORE_SOURCE_DIR}/project/cmake/scripts/${CORE_SYSTEM_NAME}/tools/)
- file(GLOB platform_tools ${CORE_SOURCE_DIR}/project/cmake/scripts/${CORE_SYSTEM_NAME}/tools/*.cmake)
- foreach(platform_tool ${platform_tools})
- get_filename_component(platform_tool_name ${platform_tool} NAME_WE)
- message(STATUS "Processing ${CORE_SYSTEM_NAME} specific tool: ${platform_tool_name}")
-
- # include the file
- include(${platform_tool})
- endforeach()
-endif()
diff --git a/project/cmake/scripts/common/ProjectMacros.cmake b/project/cmake/scripts/common/ProjectMacros.cmake
deleted file mode 100644
index e73ef903ed..0000000000
--- a/project/cmake/scripts/common/ProjectMacros.cmake
+++ /dev/null
@@ -1,89 +0,0 @@
-# This script holds macros which are project specific
-
-# Pack a skin xbt file
-# Arguments:
-# input input directory to pack
-# output ouput xbt file
-# On return:
-# xbt is added to ${XBT_FILES}
-function(pack_xbt input output)
- file(GLOB_RECURSE MEDIA_FILES ${input}/*)
- get_filename_component(dir ${output} DIRECTORY)
- add_custom_command(OUTPUT ${output}
- COMMAND ${CMAKE_COMMAND} -E make_directory ${dir}
- COMMAND TexturePacker::TexturePacker
- ARGS -input ${input}
- -output ${output}
- -dupecheck
- DEPENDS ${MEDIA_FILES})
- list(APPEND XBT_FILES ${output})
- set(XBT_FILES ${XBT_FILES} PARENT_SCOPE)
-endfunction()
-
-# Add a skin to installation list, mirroring it in build tree, packing textures
-# Arguments:
-# skin skin directory
-# On return:
-# xbt is added to ${XBT_FILES}, data added to ${install_data}, mirror in build tree
-function(copy_skin_to_buildtree skin)
- file(GLOB_RECURSE FILES ${skin}/*)
- file(GLOB_RECURSE MEDIA_FILES ${skin}/media/*)
- list(REMOVE_ITEM FILES ${MEDIA_FILES})
- foreach(file ${FILES})
- copy_file_to_buildtree(${file})
- endforeach()
- file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/${dest}/media)
- string(REPLACE "${CORE_SOURCE_DIR}/" "" dest ${skin})
- pack_xbt(${skin}/media ${CMAKE_BINARY_DIR}/${dest}/media/Textures.xbt)
-
- file(GLOB THEMES RELATIVE ${skin}/themes ${skin}/themes/*)
- foreach(theme ${THEMES})
- pack_xbt(${skin}/themes/${theme} ${CMAKE_BINARY_DIR}/${dest}/media/${theme}.xbt)
- endforeach()
-
- set(XBT_FILES ${XBT_FILES} PARENT_SCOPE)
- set(install_data ${install_data} PARENT_SCOPE)
-endfunction()
-
-# Get GTest tests as CMake tests.
-# Copied from FindGTest.cmake
-# Thanks to Daniel Blezek <blezek@gmail.com> for the GTEST_ADD_TESTS code
-function(GTEST_ADD_TESTS executable extra_args)
- if(NOT ARGN)
- message(FATAL_ERROR "Missing ARGN: Read the documentation for GTEST_ADD_TESTS")
- endif()
- foreach(source ${ARGN})
- # This assumes that every source file passed in exists. Consider using
- # SUPPORT_SOURCES for source files which do not contain tests and might
- # have to be generated.
- file(READ "${source}" contents)
- string(REGEX MATCHALL "TEST_?[F]?\\(([A-Za-z_0-9 ,]+)\\)" found_tests ${contents})
- foreach(hit ${found_tests})
- string(REGEX REPLACE ".*\\( *([A-Za-z_0-9]+), *([A-Za-z_0-9]+) *\\).*" "\\1.\\2" test_name ${hit})
- add_test(${test_name} ${executable} --gtest_filter=${test_name} ${extra_args})
- endforeach()
- # Groups parametrized tests under a single ctest entry
- string(REGEX MATCHALL "INSTANTIATE_TEST_CASE_P\\(([^,]+), *([^,]+)" found_tests2 ${contents})
- foreach(hit ${found_tests2})
- string(SUBSTRING ${hit} 24 -1 test_name)
- string(REPLACE "," ";" test_name "${test_name}")
- list(GET test_name 0 filter_name)
- list(GET test_name 1 test_prefix)
- string(STRIP ${test_prefix} test_prefix)
- add_test(${test_prefix}.${filter_name} ${executable} --gtest_filter=${filter_name}* ${extra_args})
- endforeach()
- endforeach()
-endfunction()
-
-function(whole_archive output)
- if(CMAKE_CXX_COMPILER_ID STREQUAL GNU OR CMAKE_CXX_COMPILER_ID STREQUAL Clang)
- set(${output} -Wl,--whole-archive ${ARGN} -Wl,--no-whole-archive PARENT_SCOPE)
- elseif(CMAKE_CXX_COMPILER_ID STREQUAL AppleClang)
- foreach(library ${ARGN})
- list(APPEND ${output} -Wl,-force_load ${library})
- set(${output} ${${output}} PARENT_SCOPE)
- endforeach()
- else()
- set(${output} ${ARGN} PARENT_SCOPE)
- endif()
-endfunction()
diff --git a/project/cmake/scripts/common/Uninstall.cmake b/project/cmake/scripts/common/Uninstall.cmake
deleted file mode 100644
index 5660e19d82..0000000000
--- a/project/cmake/scripts/common/Uninstall.cmake
+++ /dev/null
@@ -1,22 +0,0 @@
-# Uninstall target
-set(MANIFEST ${CMAKE_CURRENT_BINARY_DIR}/install_manifest.txt)
-if(EXISTS ${MANIFEST})
- file(STRINGS ${MANIFEST} files)
- foreach(file IN LISTS files)
- if(EXISTS $ENV{DESTDIR}${file})
- message(STATUS "Uninstalling: ${file}")
- execute_process(
- COMMAND ${CMAKE_COMMAND} -E remove $ENV{DESTDIR}${file}
- OUTPUT_VARIABLE rm_out
- RESULT_VARIABLE rm_retval
- )
- if(NOT "${rm_retval}" STREQUAL 0)
- message(FATAL_ERROR "Failed to remove file: $ENV{DESTDIR}${file}")
- endif()
- else()
- message(STATUS "File does not exist: $ENV{DESTDIR}${file}")
- endif()
- endforeach(file)
-else()
- message(STATUS "Cannot find install manifest: '${MANIFEST}'")
-endif()
diff --git a/project/cmake/scripts/freebsd/ArchSetup.cmake b/project/cmake/scripts/freebsd/ArchSetup.cmake
deleted file mode 100644
index 013205c6a0..0000000000
--- a/project/cmake/scripts/freebsd/ArchSetup.cmake
+++ /dev/null
@@ -1,16 +0,0 @@
-set(ARCH_DEFINES -D_LINUX -DTARGET_POSIX -DTARGET_FREEBSD)
-set(SYSTEM_DEFINES -D__STDC_CONSTANT_MACROS -D_FILE_DEFINED
- -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64)
-set(PLATFORM_DIR linux)
-set(SYSTEM_LDFLAGS -L/usr/local/lib)
-if(WITH_ARCH)
- set(ARCH ${WITH_ARCH})
-else()
- if(CMAKE_SYSTEM_PROCESSOR STREQUAL amd64)
- set(ARCH x86_64-freebsd)
- elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "i.86")
- set(ARCH x86-freebsd)
- else()
- message(WARNING "unknown CPU: ${CPU}")
- endif()
-endif()
diff --git a/project/cmake/scripts/freebsd/Install.cmake b/project/cmake/scripts/freebsd/Install.cmake
deleted file mode 120000
index 28ce0129b9..0000000000
--- a/project/cmake/scripts/freebsd/Install.cmake
+++ /dev/null
@@ -1 +0,0 @@
-../linux/Install.cmake \ No newline at end of file
diff --git a/project/cmake/scripts/freebsd/Macros.cmake b/project/cmake/scripts/freebsd/Macros.cmake
deleted file mode 120000
index 2fdbb255f9..0000000000
--- a/project/cmake/scripts/freebsd/Macros.cmake
+++ /dev/null
@@ -1 +0,0 @@
-../linux/Macros.cmake \ No newline at end of file
diff --git a/project/cmake/scripts/freebsd/PathSetup.cmake b/project/cmake/scripts/freebsd/PathSetup.cmake
deleted file mode 120000
index 6786c1c131..0000000000
--- a/project/cmake/scripts/freebsd/PathSetup.cmake
+++ /dev/null
@@ -1 +0,0 @@
-../linux/PathSetup.cmake \ No newline at end of file
diff --git a/project/cmake/scripts/ios/ArchSetup.cmake b/project/cmake/scripts/ios/ArchSetup.cmake
deleted file mode 100644
index f3e8590d4f..0000000000
--- a/project/cmake/scripts/ios/ArchSetup.cmake
+++ /dev/null
@@ -1,57 +0,0 @@
-if(NOT CMAKE_TOOLCHAIN_FILE)
- message(FATAL_ERROR "CMAKE_TOOLCHAIN_FILE required for ios. See ${PROJECT_SOURCE_DIR}/README.md")
-endif()
-
-set(CORE_MAIN_SOURCE ${CORE_SOURCE_DIR}/xbmc/platform/darwin/ios/XBMCApplication.m)
-
-set(ARCH_DEFINES -D_LINUX -DTARGET_POSIX -DTARGET_DARWIN -DTARGET_DARWIN_IOS)
-set(SYSTEM_DEFINES -D_REENTRANT -D_FILE_DEFINED -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE
- -D__STDC_CONSTANT_MACROS)
-set(PLATFORM_DIR linux)
-set(CMAKE_SYSTEM_NAME Darwin)
-if(WITH_ARCH)
- set(ARCH ${WITH_ARCH})
-else()
- if(CPU STREQUAL armv7 OR CPU STREQUAL arm64)
- set(CMAKE_OSX_ARCHITECTURES ${CPU})
- set(ARCH arm-osx)
- set(NEON False)
- else()
- message(SEND_ERROR "Unknown CPU: ${CPU}")
- endif()
-endif()
-
-find_package(CXX11 REQUIRED)
-
-list(APPEND CMAKE_SYSTEM_PREFIX_PATH ${NATIVEPREFIX})
-
-list(APPEND DEPLIBS "-framework CoreFoundation" "-framework CoreVideo"
- "-framework CoreAudio" "-framework AudioToolbox"
- "-framework QuartzCore" "-framework MediaPlayer"
- "-framework CFNetwork" "-framework CoreGraphics"
- "-framework Foundation" "-framework UIKit"
- "-framework CoreMedia" "-framework AVFoundation"
- "-framework VideoToolbox")
-
-set(ENABLE_DVDCSS OFF CACHE BOOL "" FORCE)
-set(ENABLE_OPTICAL OFF CACHE BOOL "" FORCE)
-
-set(CMAKE_XCODE_ATTRIBUTE_IPHONEOS_DEPLOYMENT_TARGET "5.1")
-set(CMAKE_XCODE_ATTRIBUTE_TARGETED_DEVICE_FAMILY "1,2")
-
-set(CMAKE_XCODE_ATTRIBUTE_INLINES_ARE_PRIVATE_EXTERN OFF)
-set(CMAKE_XCODE_ATTRIBUTE_GCC_SYMBOLS_PRIVATE_EXTERN OFF)
-set(CMAKE_XCODE_ATTRIBUTE_COPY_PHASE_STRIP OFF)
-
-# Xcode strips dead code by default which breaks wrapping
-set(CMAKE_XCODE_ATTRIBUTE_DEAD_CODE_STRIPPING OFF)
-
-# Unify output directories for iOS packaging scripts
-if(NOT CMAKE_GENERATOR MATCHES Xcode)
- set(CORE_BUILD_CONFIG "${CORE_BUILD_CONFIG}-iphoneos")
-endif()
-set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CORE_BUILD_DIR}/${CORE_BUILD_CONFIG})
-foreach(OUTPUTCONFIG ${CMAKE_CONFIGURATION_TYPES})
- string(TOUPPER ${OUTPUTCONFIG} OUTPUTCONFIG)
- set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_${OUTPUTCONFIG} ${CORE_BUILD_DIR}/${CORE_BUILD_CONFIG})
-endforeach()
diff --git a/project/cmake/scripts/ios/Install.cmake b/project/cmake/scripts/ios/Install.cmake
deleted file mode 100644
index c49fcd581b..0000000000
--- a/project/cmake/scripts/ios/Install.cmake
+++ /dev/null
@@ -1,85 +0,0 @@
-# IOS packaging
-
-set(BUNDLE_RESOURCES ${CORE_SOURCE_DIR}/xbmc/platform/darwin/ios/Default-568h@2x.png
- ${CORE_SOURCE_DIR}/xbmc/platform/darwin/ios/Default-667h@2x.png
- ${CORE_SOURCE_DIR}/xbmc/platform/darwin/ios/Default-736h@3x.png
- ${CORE_SOURCE_DIR}/xbmc/platform/darwin/ios/Default-Landscape-736h@3x.png
- ${CORE_SOURCE_DIR}/tools/darwin/packaging/media/ios/rounded/AppIcon29x29.png
- ${CORE_SOURCE_DIR}/tools/darwin/packaging/media/ios/rounded/AppIcon29x29@2x.png
- ${CORE_SOURCE_DIR}/tools/darwin/packaging/media/ios/rounded/AppIcon40x40.png
- ${CORE_SOURCE_DIR}/tools/darwin/packaging/media/ios/rounded/AppIcon40x40@2x.png
- ${CORE_SOURCE_DIR}/tools/darwin/packaging/media/ios/rounded/AppIcon50x50.png
- ${CORE_SOURCE_DIR}/tools/darwin/packaging/media/ios/rounded/AppIcon50x50@2x.png
- ${CORE_SOURCE_DIR}/tools/darwin/packaging/media/ios/rounded/AppIcon57x57.png
- ${CORE_SOURCE_DIR}/tools/darwin/packaging/media/ios/rounded/AppIcon57x57@2x.png
- ${CORE_SOURCE_DIR}/tools/darwin/packaging/media/ios/rounded/AppIcon60x60.png
- ${CORE_SOURCE_DIR}/tools/darwin/packaging/media/ios/rounded/AppIcon60x60@2x.png
- ${CORE_SOURCE_DIR}/tools/darwin/packaging/media/ios/rounded/AppIcon72x72.png
- ${CORE_SOURCE_DIR}/tools/darwin/packaging/media/ios/rounded/AppIcon72x72@2x.png
- ${CORE_SOURCE_DIR}/tools/darwin/packaging/media/ios/rounded/AppIcon76x76.png
- ${CORE_SOURCE_DIR}/tools/darwin/packaging/media/ios/rounded/AppIcon76x76@2x.png)
-
-if(CMAKE_GENERATOR STREQUAL Xcode)
- set(RESOURCE_LOCATION ${APP_NAME}.app)
-else()
- set(RESOURCE_LOCATION ".")
-endif()
-
-target_sources(${APP_NAME_LC} PRIVATE ${BUNDLE_RESOURCES})
-foreach(file IN LISTS BUNDLE_RESOURCES)
- set_source_files_properties(${file} PROPERTIES MACOSX_PACKAGE_LOCATION ${RESOURCE_LOCATION})
-endforeach()
-
-target_sources(${APP_NAME_LC} PRIVATE ${CORE_SOURCE_DIR}/xbmc/platform/darwin/ios/English.lproj/InfoPlist.strings)
-set_source_files_properties(${CORE_SOURCE_DIR}/xbmc/platform/darwin/ios/English.lproj/InfoPlist.strings PROPERTIES MACOSX_PACKAGE_LOCATION "${RESOURCE_LOCATION}/English.lproj")
-
-# Options for code signing propagated as env vars to Codesign.command via Xcode
-set(IOS_CODE_SIGN_IDENTITY "" CACHE STRING "Code Sign Identity")
-if(IOS_CODE_SIGN_IDENTITY)
- set_target_properties(${APP_NAME_LC} PROPERTIES XCODE_ATTRIBUTE_CODE_SIGNING_REQUIRED TRUE
- XCODE_ATTRIBUTE_CODE_SIGN_IDENTITY ${IOS_CODE_SIGN_IDENTITY})
-endif()
-
-add_custom_command(TARGET ${APP_NAME_LC} POST_BUILD
- # TODO: Remove in sync with CopyRootFiles-ios expecting the ".bin" file
- COMMAND ${CMAKE_COMMAND} -E copy $<TARGET_FILE:${APP_NAME_LC}>
- $<TARGET_FILE_DIR:${APP_NAME_LC}>/${APP_NAME}.bin
-
- COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/DllPaths_generated.h
- ${CMAKE_BINARY_DIR}/xbmc/DllPaths_generated.h
- COMMAND "ACTION=build"
- "TARGET_BUILD_DIR=$<TARGET_FILE_DIR:${APP_NAME_LC}>/.."
- "TARGET_NAME=${APP_NAME}.app"
- "APP_NAME=${APP_NAME}"
- "PRODUCT_NAME=${APP_NAME}"
- "WRAPPER_EXTENSION=app"
- "SRCROOT=${CMAKE_BINARY_DIR}"
- ${CORE_SOURCE_DIR}/tools/darwin/Support/CopyRootFiles-ios.command
- COMMAND "XBMC_DEPENDS=${DEPENDS_PATH}"
- "TARGET_BUILD_DIR=$<TARGET_FILE_DIR:${APP_NAME_LC}>/.."
- "TARGET_NAME=${APP_NAME}.app"
- "APP_NAME=${APP_NAME}"
- "PRODUCT_NAME=${APP_NAME}"
- "FULL_PRODUCT_NAME=${APP_NAME}.app"
- "WRAPPER_EXTENSION=app"
- "SRCROOT=${CMAKE_BINARY_DIR}"
- ${CORE_SOURCE_DIR}/tools/darwin/Support/copyframeworks-ios.command
- COMMAND "XBMC_DEPENDS_ROOT=${NATIVEPREFIX}/.."
- "PLATFORM_NAME=${PLATFORM}"
- "CODESIGNING_FOLDER_PATH=$<TARGET_FILE_DIR:${APP_NAME_LC}>"
- "BUILT_PRODUCTS_DIR=$<TARGET_FILE_DIR:${APP_NAME_LC}>/.."
- "WRAPPER_NAME=${APP_NAME}.app"
- "APP_NAME=${APP_NAME}"
- ${CORE_SOURCE_DIR}/tools/darwin/Support/Codesign.command
-)
-
-set(DEPENDS_ROOT_FOR_XCODE ${NATIVEPREFIX}/..)
-configure_file(${CORE_SOURCE_DIR}/tools/darwin/packaging/ios/mkdeb-ios.sh.in
- ${CMAKE_BINARY_DIR}/tools/darwin/packaging/ios/mkdeb-ios.sh @ONLY)
-configure_file(${CORE_SOURCE_DIR}/tools/darwin/packaging/migrate_to_kodi_ios.sh.in
- ${CMAKE_BINARY_DIR}/tools/darwin/packaging/migrate_to_kodi_ios.sh @ONLY)
-
-add_custom_target(deb
- COMMAND sh ./mkdeb-ios.sh ${CORE_BUILD_CONFIG}
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/tools/darwin/packaging/ios)
-add_dependencies(deb ${APP_NAME_LC})
diff --git a/project/cmake/scripts/ios/Macros.cmake b/project/cmake/scripts/ios/Macros.cmake
deleted file mode 120000
index 54c1b280e0..0000000000
--- a/project/cmake/scripts/ios/Macros.cmake
+++ /dev/null
@@ -1 +0,0 @@
-../osx/Macros.cmake \ No newline at end of file
diff --git a/project/cmake/scripts/ios/PathSetup.cmake b/project/cmake/scripts/ios/PathSetup.cmake
deleted file mode 120000
index d7f25b2cad..0000000000
--- a/project/cmake/scripts/ios/PathSetup.cmake
+++ /dev/null
@@ -1 +0,0 @@
-../osx/PathSetup.cmake \ No newline at end of file
diff --git a/project/cmake/scripts/linux/ArchSetup.cmake b/project/cmake/scripts/linux/ArchSetup.cmake
deleted file mode 100644
index bcd70df74f..0000000000
--- a/project/cmake/scripts/linux/ArchSetup.cmake
+++ /dev/null
@@ -1,45 +0,0 @@
-set(ARCH_DEFINES -D_LINUX -DTARGET_POSIX -DTARGET_LINUX)
-set(SYSTEM_DEFINES -D__STDC_CONSTANT_MACROS -D_FILE_DEFINED
- -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64)
-set(PLATFORM_DIR linux)
-set(CMAKE_SYSTEM_NAME Linux)
-if(WITH_ARCH)
- set(ARCH ${WITH_ARCH})
-else()
- if(CPU STREQUAL x86_64)
- set(ARCH x86_64-linux)
- set(NEON False)
- elseif(CPU MATCHES "i.86")
- set(ARCH i486-linux)
- set(NEON False)
- add_options(CXX ALL_BUILDS "-msse")
- elseif(CPU MATCHES arm)
- set(ARCH arm)
- set(NEON True)
- elseif(CPU MATCHES aarch64 OR CPU MATCHES arm64)
- set(ARCH aarch64)
- set(NEON False)
- else()
- message(SEND_ERROR "Unknown CPU: ${CPU}")
- endif()
-endif()
-
-# Make sure we strip binaries in Release build
-if(CMAKE_BUILD_TYPE STREQUAL Release AND CMAKE_COMPILER_IS_GNUCXX)
- set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -s")
-endif()
-
-find_package(CXX11 REQUIRED)
-include(LDGOLD)
-
-# Code Coverage
-if(CMAKE_BUILD_TYPE STREQUAL Coverage)
- set(COVERAGE_TEST_BINARY ${APP_NAME_LC}-test)
- set(COVERAGE_SOURCE_DIR ${CORE_SOURCE_DIR})
- set(COVERAGE_DEPENDS "\${APP_NAME_LC}" "\${APP_NAME_LC}-test")
- set(COVERAGE_EXCLUDES */test/* lib/* */lib/*)
-endif()
-
-if(ENABLE_MIR)
- set(ENABLE_VDPAU OFF CACHE BOOL "Disabling VDPAU since no Mir support" FORCE)
-endif()
diff --git a/project/cmake/scripts/linux/CodeCoverage.cmake b/project/cmake/scripts/linux/CodeCoverage.cmake
deleted file mode 100644
index efc2208b07..0000000000
--- a/project/cmake/scripts/linux/CodeCoverage.cmake
+++ /dev/null
@@ -1,97 +0,0 @@
-# - CodeCoverage
-# Generate code coverage reports with LCOV and GCovr.
-#
-# Configuration:
-# COVERAGE_SOURCE_DIR - Source root directory (default ${CMAKE_SOURCE_DIR}).
-# COVERAGE_BINARY_DIR - Directory where the coverage reports (and intermediate files)
-# are generated to.
-# COVERAGE_EXCLUDES - List of exclude patterns (for example '*/tests/*').
-#
-# The following targets will be generated:
-# coverage - Builds an html report. Requires LCOV.
-# coverage_xml - Builds an xml report (in Cobertura format for Jenkins).
-# Requires Gcovr.
-#
-# Inspired by https://github.com/bilke/cmake-modules/blob/master/CodeCoverage.cmake
-
-# Comiler and linker setup
-set(CMAKE_C_FLAGS_COVERAGE "-g -O0 --coverage" CACHE STRING
- "Flags used by the C compiler during coverage builds." FORCE)
-set(CMAKE_CXX_FLAGS_COVERAGE "-g -O0 --coverage" CACHE STRING
- "Flags used by the C++ compiler during coverage builds." FORCE)
-set(CMAKE_EXE_LINKER_FLAGS_COVERAGE "--coverage" CACHE STRING
- "Flags used for linking binaries during coverage builds." FORCE)
-set(CMAKE_SHARED_LINKER_FLAGS_COVERAGE "--coverage" CACHE STRING
- "Flags used by the shared libraries linker during coverage builds." FORCE)
-mark_as_advanced(
- CMAKE_C_FLAGS_COVERAGE CMAKE_CXX_FLAGS_COVERAGE CMAKE_EXE_LINKER_FLAGS_COVERAGE
- CMAKE_SHARED_LINKER_FLAGS_COVERAGE CMAKE_STATIC_LINKER_FLAGS_COVERAGE
-)
-
-find_program(LCOV_EXECUTABLE lcov)
-find_program(GENINFO_EXECUTABLE geninfo)
-find_program(GENHTML_EXECUTABLE genhtml)
-find_program(GCOVR_EXECUTABLE gcovr)
-mark_as_advanced(LCOV_EXECUTABLE GENINFO_EXECUTABLE GENHTML_EXECUTABLE GCOVR_EXECUTABLE)
-
-# Default options
-if(NOT COVERAGE_SOURCE_DIR)
- set(COVERAGE_SOURCE_DIR ${CMAKE_SOURCE_DIR})
-endif()
-if(NOT COVERAGE_BINARY_DIR)
- set(COVERAGE_BINARY_DIR ${CMAKE_BINARY_DIR}/coverage)
-endif()
-if(NOT COVERAGE_EXCLUDES)
- set(COVERAGE_EXCLUDES)
-endif()
-
-# Allow variables in COVERAGE_DEPENDS that are not evaluated before this file is included.
-string(CONFIGURE "${COVERAGE_DEPENDS}" COVERAGE_DEPENDS)
-
-# Add coverage target that generates an HTML report using LCOV
-if(LCOV_EXECUTABLE AND GENINFO_EXECUTABLE AND GENHTML_EXECUTABLE)
- file(MAKE_DIRECTORY ${COVERAGE_BINARY_DIR})
- add_custom_target(coverage
- COMMAND ${CMAKE_COMMAND} -E make_directory ${COVERAGE_BINARY_DIR}
- COMMAND ${LCOV_EXECUTABLE} -z -q -d ${CMAKE_BINARY_DIR}
- COMMAND ${LCOV_EXECUTABLE} -c -q -i -d ${CMAKE_BINARY_DIR} -b ${COVERAGE_SOURCE_DIR}
- -o ${COVERAGE_BINARY_DIR}/${PROJECT_NAME}.coverage_base.info
- COMMAND ${CMAKE_COMMAND} --build ${CMAKE_BINARY_DIR} --target test || true
- COMMAND ${LCOV_EXECUTABLE} -c -q -d ${CMAKE_BINARY_DIR} -b ${COVERAGE_SOURCE_DIR}
- -o ${COVERAGE_BINARY_DIR}/${PROJECT_NAME}.coverage_test.info
- COMMAND ${LCOV_EXECUTABLE} -a ${COVERAGE_BINARY_DIR}/${PROJECT_NAME}.coverage_base.info
- -a ${COVERAGE_BINARY_DIR}/${PROJECT_NAME}.coverage_test.info
- -o ${COVERAGE_BINARY_DIR}/${PROJECT_NAME}.coverage.info -q
- COMMAND ${LCOV_EXECUTABLE} -q -r ${COVERAGE_BINARY_DIR}/${PROJECT_NAME}.coverage.info
- /usr/include/* ${CMAKE_BINARY_DIR}/* ${COVERAGE_EXCLUDES}
- -o ${COVERAGE_BINARY_DIR}/${PROJECT_NAME}.coverage.info
- COMMAND ${GENHTML_EXECUTABLE} ${COVERAGE_BINARY_DIR}/${PROJECT_NAME}.coverage.info
- -o ${COVERAGE_BINARY_DIR}/html -s --legend --highlight --demangle-cpp
- COMMAND ${CMAKE_COMMAND} -E echo "Coverage report: file://${COVERAGE_BINARY_DIR}/html/index.html"
- WORKING_DIRECTORY ${COVERAGE_BINARY_DIR}
- VERBATIM
- DEPENDS ${COVERAGE_DEPENDS}
- COMMENT "Generate code coverage html report"
- )
-else()
- message(WARNING "Target coverage not available (lcov, geninfo and genhtml needed).")
-endif()
-
-# Add coverage target that generates an XML report using Gcovr
-if(GCOVR_EXECUTABLE)
- file(MAKE_DIRECTORY ${COVERAGE_BINARY_DIR})
- string(REGEX REPLACE "([^;]+)" "--exclude=\"\\1\"" _gcovr_excludes "${COVERAGE_EXCLUDES}")
- string(REPLACE "*" ".*" _gcovr_excludes "${_gcovr_excludes}")
- add_custom_target(coverage_xml
- COMMAND ${CMAKE_COMMAND} --build ${CMAKE_BINARY_DIR} --target test || true
- COMMAND ${GCOVR_EXECUTABLE} -x -r ${COVERAGE_SOURCE_DIR} -o ${COVERAGE_BINARY_DIR}/coverage.xml
- --object-directory ${CMAKE_BINARY_DIR} ${_gcovr_excludes} ${CMAKE_BINARY_DIR}
- COMMAND ${CMAKE_COMMAND} -E echo "Coverage report: file://${COVERAGE_BINARY_DIR}/coverage.xml"
- WORKING_DIRECTORY ${COVERAGE_BINARY_DIR}
- DEPENDS ${COVERAGE_DEPENDS}
- COMMENT "Generate code coverage xml report"
- )
- unset(_gcovr_excludes)
-else()
- message(WARNING "Target coverage_xml not available (gcovr needed).")
-endif()
diff --git a/project/cmake/scripts/linux/ExtraTargets.cmake b/project/cmake/scripts/linux/ExtraTargets.cmake
deleted file mode 100644
index 2bb5f6fa01..0000000000
--- a/project/cmake/scripts/linux/ExtraTargets.cmake
+++ /dev/null
@@ -1,12 +0,0 @@
-# xrandr
-if(ENABLE_X11 AND X_FOUND AND XRANDR_FOUND)
- find_package(X QUIET)
- find_package(XRandR QUIET)
- add_executable(${APP_NAME_LC}-xrandr ${CORE_SOURCE_DIR}/xbmc-xrandr.c)
- target_link_libraries(${APP_NAME_LC}-xrandr ${SYSTEM_LDFLAGS} ${X_LIBRARIES} m ${XRANDR_LIBRARIES})
-endif()
-
-# WiiRemote
-if(ENABLE_EVENTCLIENTS)
- add_subdirectory(${CORE_SOURCE_DIR}/tools/EventClients/Clients/WiiRemote build/WiiRemote)
-endif()
diff --git a/project/cmake/scripts/linux/Install.cmake b/project/cmake/scripts/linux/Install.cmake
deleted file mode 100644
index 75c37dc860..0000000000
--- a/project/cmake/scripts/linux/Install.cmake
+++ /dev/null
@@ -1,362 +0,0 @@
-if(X_FOUND)
- set(USE_X11 1)
-else()
- set(USE_X11 0)
-endif()
-if(OPENGL_FOUND)
- set(USE_OPENGL 1)
-else()
- set(USE_OPENGL 0)
-endif()
-if(OPENGLES_FOUND)
- set(USE_OPENGLES 1)
-else()
- set(USE_OPENGLES 0)
-endif()
-
-# CMake config
-set(APP_PREFIX ${prefix})
-set(APP_LIB_DIR ${libdir}/${APP_NAME_LC})
-set(APP_DATA_DIR ${datarootdir}/${APP_NAME_LC})
-set(APP_INCLUDE_DIR ${includedir}/${APP_NAME_LC})
-set(CXX11_SWITCH "-std=c++11")
-
-# Set XBMC_STANDALONE_SH_PULSE so we can insert PulseAudio block into kodi-standalone
-if(EXISTS ${CORE_SOURCE_DIR}/tools/Linux/kodi-standalone.sh.pulse)
- if(ENABLE_PULSEAUDIO AND PULSEAUDIO_FOUND)
- file(READ "${CORE_SOURCE_DIR}/tools/Linux/kodi-standalone.sh.pulse" pulse_content)
- set(XBMC_STANDALONE_SH_PULSE ${pulse_content})
- endif()
-endif()
-
-# Configure startup scripts
-configure_file(${CORE_SOURCE_DIR}/tools/Linux/kodi.sh.in
- ${CORE_BUILD_DIR}/scripts/${APP_NAME_LC} @ONLY)
-configure_file(${CORE_SOURCE_DIR}/tools/Linux/kodi-standalone.sh.in
- ${CORE_BUILD_DIR}/scripts/${APP_NAME_LC}-standalone @ONLY)
-
-# Configure cmake files
-configure_file(${PROJECT_SOURCE_DIR}/KodiConfig.cmake.in
- ${CORE_BUILD_DIR}/scripts/${APP_NAME}Config.cmake @ONLY)
-
-# Configure xsession entry
-configure_file(${CORE_SOURCE_DIR}/tools/Linux/kodi-xsession.desktop.in
- ${CORE_BUILD_DIR}/${APP_NAME_LC}.desktop @ONLY)
-
-# Install app
-install(TARGETS ${APP_NAME_LC}
- DESTINATION ${libdir}/${APP_NAME_LC}
- COMPONENT kodi-bin)
-if(ENABLE_X11 AND XRANDR_FOUND)
- install(TARGETS ${APP_NAME_LC}-xrandr
- DESTINATION ${libdir}/${APP_NAME_LC}
- COMPONENT kodi-bin)
-endif()
-
-# Install scripts
-install(PROGRAMS ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/scripts/${APP_NAME_LC}
- ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/scripts/${APP_NAME_LC}-standalone
- DESTINATION ${bindir}
- COMPONENT kodi-bin)
-
-# Install libraries
-foreach(library ${LIBRARY_FILES})
- get_filename_component(dir ${library} DIRECTORY)
- string(REPLACE "${CMAKE_BINARY_DIR}/" "" dir ${dir})
- install(PROGRAMS ${library}
- DESTINATION ${libdir}/${APP_NAME_LC}/${dir}
- COMPONENT kodi-bin)
-endforeach()
-
-# Install add-ons, fonts, icons, keyboard maps, keymaps, etc
-# (addons, media, system, userdata folders in share/kodi/)
-foreach(file ${install_data})
- get_filename_component(dir ${file} DIRECTORY)
- install(FILES ${CMAKE_BINARY_DIR}/${file}
- DESTINATION ${datarootdir}/${APP_NAME_LC}/${dir}
- COMPONENT kodi)
-endforeach()
-
-# Install xsession entry
-install(FILES ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/${APP_NAME_LC}.desktop
- DESTINATION ${datarootdir}/xsessions
- COMPONENT kodi)
-
-# Install desktop entry
-install(FILES ${CORE_SOURCE_DIR}/tools/Linux/kodi.desktop
- DESTINATION ${datarootdir}/applications
- COMPONENT kodi)
-
-# Install icons
-install(FILES ${CORE_SOURCE_DIR}/tools/Linux/packaging/media/icon16x16.png
- RENAME ${APP_NAME_LC}.png
- DESTINATION ${datarootdir}/icons/hicolor/16x16/apps
- COMPONENT kodi)
-install(FILES ${CORE_SOURCE_DIR}/tools/Linux/packaging/media/icon22x22.png
- RENAME ${APP_NAME_LC}.png
- DESTINATION ${datarootdir}/icons/hicolor/22x22/apps
- COMPONENT kodi)
-install(FILES ${CORE_SOURCE_DIR}/tools/Linux/packaging/media/icon24x24.png
- RENAME ${APP_NAME_LC}.png
- DESTINATION ${datarootdir}/icons/hicolor/24x24/apps
- COMPONENT kodi)
-install(FILES ${CORE_SOURCE_DIR}/tools/Linux/packaging/media/icon32x32.png
- RENAME ${APP_NAME_LC}.png
- DESTINATION ${datarootdir}/icons/hicolor/32x32/apps
- COMPONENT kodi)
-install(FILES ${CORE_SOURCE_DIR}/tools/Linux/packaging/media/icon48x48.png
- RENAME ${APP_NAME_LC}.png
- DESTINATION ${datarootdir}/icons/hicolor/48x48/apps
- COMPONENT kodi)
-install(FILES ${CORE_SOURCE_DIR}/tools/Linux/packaging/media/icon64x64.png
- RENAME ${APP_NAME_LC}.png
- DESTINATION ${datarootdir}/icons/hicolor/64x64/apps
- COMPONENT kodi)
-install(FILES ${CORE_SOURCE_DIR}/tools/Linux/packaging/media/icon128x128.png
- RENAME ${APP_NAME_LC}.png
- DESTINATION ${datarootdir}/icons/hicolor/128x128/apps
- COMPONENT kodi)
-install(FILES ${CORE_SOURCE_DIR}/tools/Linux/packaging/media/icon256x256.png
- RENAME ${APP_NAME_LC}.png
- DESTINATION ${datarootdir}/icons/hicolor/256x256/apps
- COMPONENT kodi)
-
-# Install docs
-install(FILES ${CORE_SOURCE_DIR}/copying.txt
- ${CORE_SOURCE_DIR}/LICENSE.GPL
- ${CORE_SOURCE_DIR}/version.txt
- ${CORE_SOURCE_DIR}/docs/README.linux
- DESTINATION ${docdir}
- COMPONENT kodi)
-
-install(FILES ${CORE_SOURCE_DIR}/privacy-policy.txt
- DESTINATION ${datarootdir}/${APP_NAME_LC}
- COMPONENT kodi)
-
-# Install kodi-tools-texturepacker
-if(NOT WITH_TEXTUREPACKER)
- install(PROGRAMS $<TARGET_FILE:TexturePacker::TexturePacker>
- DESTINATION ${bindir}
- COMPONENT kodi-tools-texturepacker)
-endif()
-
-# Install kodi-addon-dev headers
-install(FILES ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_vfs_types.h
- ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_vfs_utils.hpp
- ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/libKODI_adsp.h
- ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/libKODI_audioengine.h
- ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/libKODI_guilib.h
- ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/libKODI_inputstream.h
- ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/libKODI_peripheral.h
- ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/libXBMC_addon.h
- ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/libXBMC_codec.h
- ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/libXBMC_pvr.h
- ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/libKODI_game.h
- ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/xbmc_addon_cpp_dll.h
- ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/xbmc_addon_dll.h
- ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/xbmc_addon_types.h
- ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/xbmc_codec_types.h
- ${CORE_SOURCE_DIR}/xbmc/cores/VideoPlayer/DVDDemuxers/DVDDemuxPacket.h
- ${CORE_SOURCE_DIR}/xbmc/filesystem/IFileTypes.h
- ${CORE_SOURCE_DIR}/xbmc/input/XBMC_vkeys.h
- DESTINATION ${includedir}/${APP_NAME_LC}
- COMPONENT kodi-addon-dev)
-
-# Install kodi-addon-dev add-on bindings
-install(FILES ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/scripts/${APP_NAME}Config.cmake
- ${CORE_SOURCE_DIR}/project/cmake/scripts/common/AddonHelpers.cmake
- ${CORE_SOURCE_DIR}/project/cmake/scripts/common/AddOptions.cmake
- ${CORE_SOURCE_DIR}/project/cmake/scripts/common/ArchSetup.cmake
- ${CORE_SOURCE_DIR}/project/cmake/scripts/common/CheckCommits.cmake
- ${CORE_SOURCE_DIR}/project/cmake/scripts/common/CheckTargetPlatform.cmake
- ${CORE_SOURCE_DIR}/project/cmake/scripts/common/GenerateVersionedFiles.cmake
- ${CORE_SOURCE_DIR}/project/cmake/scripts/common/GeneratorSetup.cmake
- ${CORE_SOURCE_DIR}/project/cmake/scripts/common/HandleDepends.cmake
- ${CORE_SOURCE_DIR}/project/cmake/scripts/common/Macros.cmake
- ${CORE_SOURCE_DIR}/project/cmake/scripts/common/PrepareEnv.cmake
- ${CORE_SOURCE_DIR}/project/cmake/scripts/common/ProjectMacros.cmake
- ${CORE_SOURCE_DIR}/project/cmake/scripts/linux/PathSetup.cmake
- DESTINATION ${datarootdir}/${APP_NAME_LC}/cmake
- COMPONENT kodi-addon-dev)
-
-# Install kodi-audio-dev
-install(FILES ${CORE_SOURCE_DIR}/xbmc/cores/AudioEngine/Utils/AEChannelData.h
- ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_adsp_dll.h
- ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_adsp_types.h
- ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_audiodec_dll.h
- ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_audiodec_types.h
- ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/xbmc_audioenc_dll.h
- ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/xbmc_audioenc_types.h
- ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_audioengine_types.h
- DESTINATION ${includedir}/${APP_NAME_LC}
- COMPONENT kodi-audio-dev)
-
-if(ENABLE_EVENTCLIENTS)
- # Install kodi-eventclients-common BT python files
- install(PROGRAMS ${CORE_SOURCE_DIR}/tools/EventClients/lib/python/bt/__init__.py
- ${CORE_SOURCE_DIR}/tools/EventClients/lib/python/bt/bt.py
- ${CORE_SOURCE_DIR}/tools/EventClients/lib/python/bt/hid.py
- DESTINATION lib/python2.7/dist-packages/${APP_NAME_LC}/bt
- COMPONENT kodi-eventclients-common)
-
- # Install kodi-eventclients-common PS3 python files
- install(PROGRAMS ${CORE_SOURCE_DIR}/tools/EventClients/lib/python/ps3/__init__.py
- ${CORE_SOURCE_DIR}/tools/EventClients/lib/python/ps3/keymaps.py
- ${CORE_SOURCE_DIR}/tools/EventClients/lib/python/ps3/sixaxis.py
- ${CORE_SOURCE_DIR}/tools/EventClients/lib/python/ps3/sixpair.py
- ${CORE_SOURCE_DIR}/tools/EventClients/lib/python/ps3/sixwatch.py
- DESTINATION lib/python2.7/dist-packages/${APP_NAME_LC}/ps3
- COMPONENT kodi-eventclients-common)
-
- # Install kodi-eventclients-common python files
- file(WRITE ${CMAKE_BINARY_DIR}/packages/deb/defs.py ICON_PATH="usr/share/pixmaps/${APP_NAME_LC}/")
- install(PROGRAMS ${CMAKE_BINARY_DIR}/packages/deb/defs.py
- ${CORE_SOURCE_DIR}/tools/EventClients/lib/python/__init__.py
- "${CORE_SOURCE_DIR}/tools/EventClients/Clients/PS3 BD Remote/ps3_remote.py"
- ${CORE_SOURCE_DIR}/tools/EventClients/lib/python/xbmcclient.py
- ${CORE_SOURCE_DIR}/tools/EventClients/lib/python/zeroconf.py
- DESTINATION lib/python2.7/dist-packages/${APP_NAME_LC}
- COMPONENT kodi-eventclients-common)
-
- # Install kodi-eventclients-common icons
- install(FILES ${CORE_SOURCE_DIR}/tools/EventClients/icons/bluetooth.png
- ${CORE_SOURCE_DIR}/tools/EventClients/icons/phone.png
- ${CORE_SOURCE_DIR}/tools/EventClients/icons/mail.png
- ${CORE_SOURCE_DIR}/tools/EventClients/icons/mouse.png
- DESTINATION ${datarootdir}/pixmaps/${APP_NAME_LC}
- COMPONENT kodi-eventclients-common)
-
- # Install kodi-eventclients-dev headers
- install(FILES ${CORE_SOURCE_DIR}/tools/EventClients/lib/c++/xbmcclient.h
- DESTINATION ${includedir}/${APP_NAME_LC}
- COMPONENT kodi-eventclients-dev)
-
- # Install kodi-eventclients-dev C# examples
- install(FILES "${CORE_SOURCE_DIR}/tools/EventClients/examples/c#/XBMCDemoClient1.cs"
- DESTINATION "${docdir}/${APP_NAME_LC}-eventclients-dev/examples/C#"
- COMPONENT kodi-eventclients-dev)
-
- # Install kodi-eventclients-dev C++ examples
- install(FILES ${CORE_SOURCE_DIR}/tools/EventClients/examples/c++/example_notification.cpp
- ${CORE_SOURCE_DIR}/tools/EventClients/examples/c++/example_log.cpp
- ${CORE_SOURCE_DIR}/tools/EventClients/examples/c++/example_button1.cpp
- ${CORE_SOURCE_DIR}/tools/EventClients/examples/c++/example_mouse.cpp
- ${CORE_SOURCE_DIR}/tools/EventClients/examples/c++/example_button2.cpp
- DESTINATION ${docdir}/${APP_NAME_LC}-eventclients-dev/examples/C++
- COMPONENT kodi-eventclients-dev)
-
- # Install kodi-eventclients-dev java examples
- install(FILES ${CORE_SOURCE_DIR}/tools/EventClients/examples/java/XBMCDemoClient1.java
- DESTINATION ${docdir}/${APP_NAME_LC}-eventclients-dev/examples/java
- COMPONENT kodi-eventclients-dev)
-
- # Install kodi-eventclients-dev python examples
- install(PROGRAMS ${CORE_SOURCE_DIR}/tools/EventClients/examples/python/example_mouse.py
- ${CORE_SOURCE_DIR}/tools/EventClients/examples/python/example_button1.py
- ${CORE_SOURCE_DIR}/tools/EventClients/examples/python/example_notification.py
- ${CORE_SOURCE_DIR}/tools/EventClients/examples/python/example_action.py
- ${CORE_SOURCE_DIR}/tools/EventClients/examples/python/example_button2.py
- ${CORE_SOURCE_DIR}/tools/EventClients/examples/python/example_simple.py
- DESTINATION ${docdir}/${APP_NAME_LC}-eventclients-dev/examples/python
- COMPONENT kodi-eventclients-dev)
-
- # Install kodi-eventclients-ps3
- install(PROGRAMS "${CORE_SOURCE_DIR}/tools/EventClients/Clients/PS3 BD Remote/ps3_remote.py"
- RENAME ${APP_NAME_LC}-ps3remote
- DESTINATION ${bindir}
- COMPONENT kodi-eventclients-ps3)
-
- # Install kodi-eventclients-wiiremote
- install(PROGRAMS ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/WiiRemote/${APP_NAME_LC}-wiiremote
- DESTINATION ${bindir}
- COMPONENT kodi-eventclients-wiiremote)
-
- # Install kodi-eventclients-xbmc-send
- install(PROGRAMS "${CORE_SOURCE_DIR}/tools/EventClients/Clients/Kodi Send/kodi-send.py"
- RENAME ${APP_NAME_LC}-send
- DESTINATION ${bindir}
- COMPONENT kodi-eventclients-xbmc-send)
-endif()
-
-# Install kodi-inputstream-dev
-install(FILES ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_inputstream_dll.h
- ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_inputstream_types.h
- DESTINATION ${includedir}/${APP_NAME_LC}
- COMPONENT kodi-inputstream-dev)
-
-# Install kodi-pvr-dev
-install(FILES ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/xbmc_epg_types.h
- ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/xbmc_pvr_dll.h
- ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/xbmc_pvr_types.h
- DESTINATION ${includedir}/${APP_NAME_LC}
- COMPONENT kodi-pvr-dev)
-
-# Install kodi-screensaver-dev
-install(FILES ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/xbmc_scr_dll.h
- ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/xbmc_scr_types.h
- DESTINATION ${includedir}/${APP_NAME_LC}
- COMPONENT kodi-screensaver-dev)
-
-# Install kodi-visualization-dev
-install(FILES ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/xbmc_vis_dll.h
- ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/xbmc_vis_types.h
- DESTINATION ${includedir}/${APP_NAME_LC}
- COMPONENT kodi-visualization-dev)
-
-# Install kodi-peripheral-dev
-install(FILES ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_peripheral_dll.h
- ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_peripheral_types.h
- ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_peripheral_utils.hpp
- DESTINATION ${includedir}/${APP_NAME_LC}
- COMPONENT kodi-peripheral-dev)
-
-# Install kodi-game-dev
-install(FILES ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_game_dll.h
- ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_game_types.h
- DESTINATION ${includedir}/${APP_NAME_LC}
- COMPONENT kodi-game-dev)
-
-
-# Install XBT skin files
-foreach(texture ${XBT_FILES})
- string(REPLACE "${CMAKE_BINARY_DIR}/" "" dir ${texture})
- get_filename_component(dir ${dir} DIRECTORY)
- install(FILES ${texture}
- DESTINATION ${datarootdir}/${APP_NAME_LC}/${dir}
- COMPONENT kodi)
-endforeach()
-
-# Install extra stuff if it exists
-if(EXISTS ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/extra-installs)
- install(CODE "file(STRINGS ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/extra-installs dirs)
- foreach(dir \${dirs})
- file(GLOB_RECURSE FILES RELATIVE ${CMAKE_BINARY_DIR} \${dir}/*)
- foreach(file \${FILES})
- get_filename_component(dir \${file} DIRECTORY)
- file(INSTALL \${file} DESTINATION ${datarootdir}/${APP_NAME_LC}/\${dir})
- endforeach()
- endforeach()")
-endif()
-
-if(NOT "$ENV{DESTDIR}" STREQUAL "")
- set(DESTDIR ${CMAKE_BINARY_DIR}/$ENV{DESTDIR})
-endif()
-foreach(subdir ${build_dirs})
- if(NOT subdir MATCHES kodi-platform)
- string(REPLACE " " ";" subdir ${subdir})
- list(GET subdir 0 id)
- install(CODE "execute_process(COMMAND ${CMAKE_MAKE_PROGRAM} -C ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/${id}/src/${id}-build install DESTDIR=${DESTDIR})")
- endif()
-endforeach()
-
-# generate packages? yes please, if everything checks out
-if(CPACK_GENERATOR)
- if(CPACK_GENERATOR STREQUAL DEB AND CORE_SYSTEM_NAME STREQUAL linux)
- if(CMAKE_BUILD_TYPE STREQUAL Debug)
- message(STATUS "DEB Generator: Build type is set to 'Debug'. Packaged binaries will be unstripped.")
- endif()
- include(${PROJECT_SOURCE_DIR}/cpack/CPackConfigDEB.cmake)
- else()
- message(FATAL_ERROR "DEB Generator: Can't configure CPack to generate Debian packages on non-linux systems.")
- endif()
-endif()
diff --git a/project/cmake/scripts/linux/Macros.cmake b/project/cmake/scripts/linux/Macros.cmake
deleted file mode 100644
index b07b17f748..0000000000
--- a/project/cmake/scripts/linux/Macros.cmake
+++ /dev/null
@@ -1,95 +0,0 @@
-function(core_link_library lib wraplib)
- set(export -Wl,--unresolved-symbols=ignore-all
- `cat ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/cores/dll-loader/exports/wrapper.def`
- ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/cores/dll-loader/exports/CMakeFiles/wrapper.dir/wrapper.c.o)
- set(check_arg "")
- if(TARGET ${lib})
- set(target ${lib})
- set(link_lib $<TARGET_FILE:${lib}>)
- set(check_arg ${ARGV2})
- set(data_arg ${ARGV3})
- else()
- set(target ${ARGV2})
- set(link_lib ${lib})
- set(check_arg ${ARGV3})
- set(data_arg ${ARGV4})
- endif()
-
- # wrapper has to be adapted in order to support coverage.
- if(CMAKE_BUILD_TYPE STREQUAL Coverage)
- set(export "")
- endif()
-
- if(check_arg STREQUAL export)
- set(export ${export}
- -Wl,--version-script=${ARGV3})
- elseif(check_arg STREQUAL extras)
- foreach(arg ${data_arg})
- list(APPEND export ${arg})
- endforeach()
- elseif(check_arg STREQUAL archives)
- set(extra_libs ${data_arg})
- endif()
-
- string(REGEX REPLACE "[ ]+" ";" _flags "${CMAKE_SHARED_LINKER_FLAGS}")
- get_filename_component(dir ${wraplib} DIRECTORY)
- add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/${wraplib}-${ARCH}${CMAKE_SHARED_MODULE_SUFFIX}
- COMMAND ${CMAKE_COMMAND} -E make_directory ${dir}
- COMMAND ${CMAKE_C_COMPILER}
- ARGS ${_flags} -Wl,--whole-archive
- "${link_lib}" ${extra_libs}
- -Wl,--no-whole-archive -lm
- -Wl,-soname,${wraplib}-${ARCH}${CMAKE_SHARED_MODULE_SUFFIX}
- -shared -o ${CMAKE_BINARY_DIR}/${wraplib}-${ARCH}${CMAKE_SHARED_MODULE_SUFFIX}
- ${export}
- DEPENDS ${target} wrapper.def wrapper)
-
- get_filename_component(libname ${wraplib} NAME_WE)
- add_custom_target(wrap_${libname} ALL DEPENDS ${CMAKE_BINARY_DIR}/${wraplib}-${ARCH}${CMAKE_SHARED_MODULE_SUFFIX})
- set_target_properties(wrap_${libname} PROPERTIES FOLDER lib/wrapped)
- add_dependencies(${APP_NAME_LC}-libraries wrap_${libname})
-
- set(LIBRARY_FILES ${LIBRARY_FILES} ${CMAKE_BINARY_DIR}/${wraplib}-${ARCH}${CMAKE_SHARED_MODULE_SUFFIX} CACHE STRING "" FORCE)
-endfunction()
-
-function(find_soname lib)
- cmake_parse_arguments(arg "REQUIRED" "" "" ${ARGN})
-
- string(TOLOWER ${lib} liblow)
- if(${lib}_LDFLAGS)
- set(link_lib "${${lib}_LDFLAGS}")
- else()
- if(IS_ABSOLUTE "${${lib}_LIBRARIES}")
- set(link_lib "${${lib}_LIBRARIES}")
- else()
- set(link_lib -l${${lib}_LIBRARIES})
- endif()
- endif()
- execute_process(COMMAND ${CMAKE_C_COMPILER} -nostdlib -o /dev/null -Wl,-M ${link_lib}
- COMMAND grep LOAD.*${liblow}
- ERROR_QUIET
- OUTPUT_VARIABLE ${lib}_FILENAME)
- string(REPLACE "LOAD " "" ${lib}_FILENAME "${${lib}_FILENAME}")
- string(STRIP "${${lib}_FILENAME}" ${lib}_FILENAME)
- if(NOT ${lib}_FILENAME)
- execute_process(COMMAND ${CMAKE_C_COMPILER} -nostdlib -o /dev/null -Wl,-t ${link_lib}
- OUTPUT_QUIET
- ERROR_VARIABLE _TMP_FILENAME)
- string(REGEX MATCH ".*lib${liblow}.so" ${lib}_FILENAME ${_TMP_FILENAME})
- endif()
- if(${lib}_FILENAME)
- execute_process(COMMAND objdump -p ${${lib}_FILENAME}
- COMMAND grep SONAME.*${liblow}
- ERROR_QUIET
- OUTPUT_VARIABLE ${lib}_SONAME)
- string(REPLACE "SONAME " "" ${lib}_SONAME ${${lib}_SONAME})
- string(STRIP ${${lib}_SONAME} ${lib}_SONAME)
- if(VERBOSE)
- message(STATUS "${lib} soname: ${${lib}_SONAME}")
- endif()
- set(${lib}_SONAME ${${lib}_SONAME} PARENT_SCOPE)
- endif()
- if(arg_REQUIRED AND NOT ${lib}_SONAME)
- message(FATAL_ERROR "Could not find dynamically loadable library ${lib}")
- endif()
-endfunction()
diff --git a/project/cmake/scripts/linux/PathSetup.cmake b/project/cmake/scripts/linux/PathSetup.cmake
deleted file mode 100644
index 5532c2d962..0000000000
--- a/project/cmake/scripts/linux/PathSetup.cmake
+++ /dev/null
@@ -1,40 +0,0 @@
-include(GNUInstallDirs)
-
-if(NOT prefix)
- set(prefix ${CMAKE_INSTALL_PREFIX})
-else()
- set(CMAKE_INSTALL_PREFIX ${prefix})
-endif()
-if(NOT exec_prefix)
- set(exec_prefix ${prefix})
-endif()
-if(NOT libdir)
- set(libdir ${CMAKE_INSTALL_FULL_LIBDIR})
-endif()
-if(NOT bindir)
- set(bindir ${CMAKE_INSTALL_FULL_BINDIR})
-endif()
-if(NOT includedir)
- set(includedir ${CMAKE_INSTALL_FULL_INCLUDEDIR})
-endif()
-if(NOT datarootdir)
- set(datarootdir ${CMAKE_INSTALL_FULL_DATAROOTDIR})
-endif()
-if(NOT datadir)
- set(datadir ${CMAKE_INSTALL_FULL_DATADIR})
-endif()
-if(NOT docdir)
- set(docdir ${CMAKE_INSTALL_FULL_DOCDIR})
-endif()
-
-list(APPEND final_message "-- PATH config --")
-list(APPEND final_message "Prefix: ${prefix}")
-list(APPEND final_message "Libdir: ${libdir}")
-list(APPEND final_message "Bindir: ${bindir}")
-list(APPEND final_message "Includedir: ${includedir}")
-list(APPEND final_message "Datarootdir: ${datarootdir}")
-list(APPEND final_message "Datadir: ${datadir}")
-list(APPEND final_message "Docdir: ${docdir}")
-
-set(PATH_DEFINES -DBIN_INSTALL_PATH=\"${libdir}/kodi\"
- -DINSTALL_PATH=\"${datarootdir}/kodi\")
diff --git a/project/cmake/scripts/osx/ArchSetup.cmake b/project/cmake/scripts/osx/ArchSetup.cmake
deleted file mode 100644
index 30478636e6..0000000000
--- a/project/cmake/scripts/osx/ArchSetup.cmake
+++ /dev/null
@@ -1,34 +0,0 @@
-if(NOT CMAKE_TOOLCHAIN_FILE)
- message(FATAL_ERROR "CMAKE_TOOLCHAIN_FILE required for osx. See ${PROJECT_SOURCE_DIR}/README.md")
-endif()
-
-set(CORE_MAIN_SOURCE ${CORE_SOURCE_DIR}/xbmc/platform/posix/main.cpp
- ${CORE_SOURCE_DIR}/xbmc/platform/darwin/osx/SDLMain.mm
- ${CORE_SOURCE_DIR}/xbmc/platform/darwin/osx/SDLMain.h)
-
-set(ARCH_DEFINES -D_LINUX -DTARGET_POSIX -DTARGET_DARWIN -DTARGET_DARWIN_OSX)
-set(SYSTEM_DEFINES -D_REENTRANT -D_FILE_DEFINED -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE
- -D__STDC_CONSTANT_MACROS)
-set(PLATFORM_DIR linux)
-set(CMAKE_SYSTEM_NAME Darwin)
-if(WITH_ARCH)
- set(ARCH ${WITH_ARCH})
-else()
- if(CPU STREQUAL x86_64 OR CPU STREQUAL i386)
- set(ARCH x86-osx)
- set(NEON False)
- else()
- message(SEND_ERROR "Unknown CPU: ${CPU}")
- endif()
-endif()
-
-find_package(CXX11 REQUIRED)
-
-list(APPEND CMAKE_SYSTEM_PREFIX_PATH ${NATIVEPREFIX})
-
-list(APPEND DEPLIBS "-framework DiskArbitration" "-framework IOKit"
- "-framework IOSurface" "-framework SystemConfiguration"
- "-framework ApplicationServices" "-framework AppKit"
- "-framework CoreAudio" "-framework AudioToolbox"
- "-framework CoreGraphics" "-framework CoreMedia"
- "-framework VideoToolbox")
diff --git a/project/cmake/scripts/osx/ExtraTargets.cmake b/project/cmake/scripts/osx/ExtraTargets.cmake
deleted file mode 100644
index ed9c089144..0000000000
--- a/project/cmake/scripts/osx/ExtraTargets.cmake
+++ /dev/null
@@ -1,3 +0,0 @@
-# XBMCHelper
-add_subdirectory(${CORE_SOURCE_DIR}/tools/EventClients/Clients/OSXRemote build/XBMCHelper)
-add_dependencies(${APP_NAME_LC} XBMCHelper)
diff --git a/project/cmake/scripts/osx/Install.cmake b/project/cmake/scripts/osx/Install.cmake
deleted file mode 100644
index 3924ccf032..0000000000
--- a/project/cmake/scripts/osx/Install.cmake
+++ /dev/null
@@ -1,40 +0,0 @@
-# OSX packaging
-
-set(PACKAGE_OUTPUT_DIR ${CMAKE_BINARY_DIR}/build/${CORE_BUILD_CONFIG})
-
-configure_file(${CORE_SOURCE_DIR}/xbmc/platform/darwin/osx/Info.plist.in
- ${CMAKE_BINARY_DIR}/xbmc/platform/darwin/osx/Info.plist @ONLY)
-execute_process(COMMAND perl -p -i -e "s/r####/${APP_SCMID}/" ${CMAKE_BINARY_DIR}/xbmc/platform/darwin/osx/Info.plist)
-
-add_custom_target(bundle
- COMMAND ${CMAKE_COMMAND} -E copy $<TARGET_FILE:${APP_NAME_LC}> ${PACKAGE_OUTPUT_DIR}/${APP_NAME}
- COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/DllPaths_generated.h
- ${CMAKE_BINARY_DIR}/xbmc/DllPaths_generated.h
- COMMAND "ACTION=build"
- "TARGET_BUILD_DIR=${PACKAGE_OUTPUT_DIR}"
- "TARGET_NAME=${APP_NAME}.app"
- "APP_NAME=${APP_NAME}"
- "SRCROOT=${CMAKE_BINARY_DIR}"
- ${CORE_SOURCE_DIR}/tools/darwin/Support/CopyRootFiles-osx.command
- COMMAND "XBMC_DEPENDS=${DEPENDS_PATH}"
- "TARGET_BUILD_DIR=${PACKAGE_OUTPUT_DIR}"
- "TARGET_NAME=${APP_NAME}.app"
- "APP_NAME=${APP_NAME}"
- "FULL_PRODUCT_NAME=${APP_NAME}.app"
- "SRCROOT=${CMAKE_BINARY_DIR}"
- ${CORE_SOURCE_DIR}/tools/darwin/Support/copyframeworks-osx.command)
-set_target_properties(bundle PROPERTIES FOLDER "Build Utilities")
-add_dependencies(bundle ${APP_NAME_LC})
-
-configure_file(${CORE_SOURCE_DIR}/tools/darwin/packaging/osx/mkdmg-osx.sh.in
- ${CMAKE_BINARY_DIR}/tools/darwin/packaging/osx/mkdmg-osx.sh @ONLY)
-
-add_custom_target(dmg
- COMMAND ${CMAKE_COMMAND} -E copy_directory ${CORE_SOURCE_DIR}/tools/darwin/packaging/osx/
- ${CMAKE_BINARY_DIR}/tools/darwin/packaging/osx/
- COMMAND ${CMAKE_COMMAND} -E copy_directory ${CORE_SOURCE_DIR}/tools/darwin/packaging/media/osx/
- ${CMAKE_BINARY_DIR}/tools/darwin/packaging/media/osx/
- COMMAND ./mkdmg-osx.sh ${CORE_BUILD_CONFIG}
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/tools/darwin/packaging/osx)
-set_target_properties(dmg PROPERTIES FOLDER "Build Utilities")
-add_dependencies(dmg bundle)
diff --git a/project/cmake/scripts/osx/Macros.cmake b/project/cmake/scripts/osx/Macros.cmake
deleted file mode 100644
index 52f87d1ca2..0000000000
--- a/project/cmake/scripts/osx/Macros.cmake
+++ /dev/null
@@ -1,118 +0,0 @@
-function(core_link_library lib wraplib)
- if(CMAKE_GENERATOR MATCHES "Unix Makefiles" OR CMAKE_GENERATOR STREQUAL Ninja)
- set(wrapper_obj cores/dll-loader/exports/CMakeFiles/wrapper.dir/wrapper.c.o)
- elseif(CMAKE_GENERATOR MATCHES "Xcode")
- set(wrapper_obj cores/dll-loader/exports/kodi.build/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/wrapper.build/Objects-$(CURRENT_VARIANT)/$(CURRENT_ARCH)/wrapper.o)
- else()
- message(FATAL_ERROR "Unsupported generator in core_link_library")
- endif()
-
- set(export -bundle -undefined dynamic_lookup -read_only_relocs suppress
- -Wl,-alias_list,${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/cores/dll-loader/exports/wrapper.def
- ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/${wrapper_obj})
- set(extension ${CMAKE_SHARED_MODULE_SUFFIX})
- set(check_arg "")
- if(TARGET ${lib})
- set(target ${lib})
- set(link_lib $<TARGET_FILE:${lib}>)
- set(check_arg ${ARGV2})
- set(data_arg ${ARGV3})
-
- # iOS: EFFECTIVE_PLATFORM_NAME is not resolved
- # http://public.kitware.com/pipermail/cmake/2016-March/063049.html
- if(CORE_SYSTEM_NAME STREQUAL ios AND CMAKE_GENERATOR STREQUAL Xcode)
- get_target_property(dir ${lib} BINARY_DIR)
- set(link_lib ${dir}/${CORE_BUILD_CONFIG}/${CMAKE_STATIC_LIBRARY_PREFIX}${lib}${CMAKE_STATIC_LIBRARY_SUFFIX})
- endif()
- else()
- set(target ${ARGV2})
- set(link_lib ${lib})
- set(check_arg ${ARGV3})
- set(data_arg ${ARGV4})
- endif()
- if(check_arg STREQUAL export)
- set(export ${export}
- -Wl,--version-script=${ARGV3})
- elseif(check_arg STREQUAL extras)
- foreach(arg ${data_arg})
- list(APPEND export ${arg})
- endforeach()
- elseif(check_arg STREQUAL archives)
- set(extra_libs ${data_arg})
- endif()
- get_filename_component(dir ${wraplib} DIRECTORY)
-
- # We can't simply pass the linker flags to the args section of the custom command
- # because cmake will add quotes around it (and the linker will fail due to those).
- # We need to do this handstand first ...
- string(REPLACE " " ";" CUSTOM_COMMAND_ARGS_LDFLAGS ${CMAKE_SHARED_LINKER_FLAGS})
-
- add_custom_command(OUTPUT ${wraplib}-${ARCH}${extension}
- COMMAND ${CMAKE_COMMAND} -E make_directory ${dir}
- COMMAND ${CMAKE_C_COMPILER}
- ARGS ${CUSTOM_COMMAND_ARGS_LDFLAGS} ${export} -Wl,-force_load ${link_lib} ${extra_libs}
- -o ${CMAKE_BINARY_DIR}/${wraplib}-${ARCH}${extension}
- DEPENDS ${target} wrapper.def wrapper
- VERBATIM)
-
- get_filename_component(libname ${wraplib} NAME_WE)
- add_custom_target(wrap_${libname} ALL DEPENDS ${wraplib}-${ARCH}${extension})
- set_target_properties(wrap_${libname} PROPERTIES FOLDER lib/wrapped)
- add_dependencies(${APP_NAME_LC}-libraries wrap_${libname})
-
- set(LIBRARY_FILES ${LIBRARY_FILES} ${CMAKE_BINARY_DIR}/${wraplib}-${ARCH}${extension} CACHE STRING "" FORCE)
-endfunction()
-
-function(find_soname lib)
- cmake_parse_arguments(arg "REQUIRED" "" "" ${ARGN})
-
- string(TOLOWER ${lib} liblow)
- if(${lib}_LDFLAGS)
- set(link_lib "${${lib}_LDFLAGS}")
- else()
- set(link_lib "${${lib}_LIBRARIES}")
- endif()
-
- execute_process(COMMAND ${CMAKE_C_COMPILER} -print-search-dirs
- COMMAND fgrep libraries:
- COMMAND sed "s/[^=]*=\\(.*\\)/\\1/"
- COMMAND sed "s/:/ /g"
- ERROR_QUIET
- OUTPUT_VARIABLE cc_lib_path
- OUTPUT_STRIP_TRAILING_WHITESPACE)
- execute_process(COMMAND echo ${link_lib}
- COMMAND sed "s/-L[ ]*//g"
- COMMAND sed "s/-l[^ ]*//g"
- ERROR_QUIET
- OUTPUT_VARIABLE env_lib_path
- OUTPUT_STRIP_TRAILING_WHITESPACE)
-
- foreach(path ${cc_lib_path} ${env_lib_path})
- if(IS_DIRECTORY ${path})
- execute_process(COMMAND ls -- ${path}/lib${liblow}.dylib
- ERROR_QUIET
- OUTPUT_VARIABLE lib_file
- OUTPUT_STRIP_TRAILING_WHITESPACE)
- else()
- set(lib_file ${path})
- endif()
- if(lib_file)
- # we want the path/name that is embedded in the dylib
- execute_process(COMMAND otool -L ${lib_file}
- COMMAND grep -v lib${liblow}.dylib
- COMMAND grep ${liblow}
- COMMAND awk "{V=1; print $V}"
- ERROR_QUIET
- OUTPUT_VARIABLE filename
- OUTPUT_STRIP_TRAILING_WHITESPACE)
- get_filename_component(${lib}_SONAME "${filename}" NAME)
- if(VERBOSE)
- message(STATUS "${lib} soname: ${${lib}_SONAME}")
- endif()
- endif()
- endforeach()
- if(arg_REQUIRED AND NOT ${lib}_SONAME)
- message(FATAL_ERROR "Could not find dynamically loadable library ${lib}")
- endif()
- set(${lib}_SONAME ${${lib}_SONAME} PARENT_SCOPE)
-endfunction()
diff --git a/project/cmake/scripts/osx/PathSetup.cmake b/project/cmake/scripts/osx/PathSetup.cmake
deleted file mode 100644
index 071dfd45ea..0000000000
--- a/project/cmake/scripts/osx/PathSetup.cmake
+++ /dev/null
@@ -1,32 +0,0 @@
-if(NOT prefix)
- set(prefix ${DEPENDS_PATH})
-endif()
-if(NOT exec_prefix)
- set(exec_prefix ${prefix})
-endif()
-if(NOT libdir)
- set(libdir ${prefix}/lib)
-endif()
-if(NOT bindir)
- set(bindir ${prefix}/bin)
-endif()
-if(NOT includedir)
- set(includedir ${prefix}/include)
-endif()
-if(NOT datarootdir)
- set(datarootdir ${prefix}/share)
-endif()
-if(NOT datadir)
- set(datadir ${datarootdir})
-endif()
-
-list(APPEND final_message "-- PATH config --")
-list(APPEND final_message "Prefix: ${prefix}")
-list(APPEND final_message "Libdir: ${libdir}")
-list(APPEND final_message "Bindir: ${bindir}")
-list(APPEND final_message "Includedir: ${includedir}")
-list(APPEND final_message "Datarootdir: ${datarootdir}")
-list(APPEND final_message "Datadir: ${datadir}")
-
-set(PATH_DEFINES -DBIN_INSTALL_PATH=\"${libdir}/kodi\"
- -DINSTALL_PATH=\"${datarootdir}/kodi\")
diff --git a/project/cmake/scripts/rbpi/ArchSetup.cmake b/project/cmake/scripts/rbpi/ArchSetup.cmake
deleted file mode 100644
index d955dd5363..0000000000
--- a/project/cmake/scripts/rbpi/ArchSetup.cmake
+++ /dev/null
@@ -1,28 +0,0 @@
-set(ARCH_DEFINES -DTARGET_POSIX -DTARGET_LINUX -D_LINUX -D_ARMEL -DTARGET_RASPBERRY_PI
- -DHAS_OMXPLAYER -DHAVE_OMXLIB)
-set(SYSTEM_DEFINES -D__STDC_CONSTANT_MACROS -D_FILE_DEFINED
- -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64)
-set(PLATFORM_DIR linux)
-
-string(REGEX REPLACE "[ ]+" ";" SYSTEM_LDFLAGS "$ENV{LDFLAGS}")
-set(CMAKE_SYSTEM_NAME Linux)
-
-if(WITH_ARCH)
- set(ARCH ${WITH_ARCH})
-else()
- if(CPU STREQUAL arm1176jzf-s)
- set(ARCH arm-linux-gnueabihf)
- set(NEON False)
- elseif(CPU MATCHES "cortex-a7" OR CPU MATCHES "cortex-a53")
- set(ARCH arm-linux-gnueabihf)
- set(NEON True)
- else()
- message(SEND_ERROR "Unknown CPU: ${CPU}")
- endif()
-endif()
-
-find_package(CXX11 REQUIRED)
-
-set(MMAL_FOUND 1 CACHE INTERNAL "MMAL")
-set(OMX_FOUND 1 CACHE INTERNAL "OMX")
-set(OMXLIB_FOUND 1 CACHE INTERNAL "OMX")
diff --git a/project/cmake/scripts/rbpi/Install.cmake b/project/cmake/scripts/rbpi/Install.cmake
deleted file mode 120000
index 28ce0129b9..0000000000
--- a/project/cmake/scripts/rbpi/Install.cmake
+++ /dev/null
@@ -1 +0,0 @@
-../linux/Install.cmake \ No newline at end of file
diff --git a/project/cmake/scripts/rbpi/Macros.cmake b/project/cmake/scripts/rbpi/Macros.cmake
deleted file mode 120000
index 2fdbb255f9..0000000000
--- a/project/cmake/scripts/rbpi/Macros.cmake
+++ /dev/null
@@ -1 +0,0 @@
-../linux/Macros.cmake \ No newline at end of file
diff --git a/project/cmake/scripts/rbpi/PathSetup.cmake b/project/cmake/scripts/rbpi/PathSetup.cmake
deleted file mode 120000
index 6786c1c131..0000000000
--- a/project/cmake/scripts/rbpi/PathSetup.cmake
+++ /dev/null
@@ -1 +0,0 @@
-../linux/PathSetup.cmake \ No newline at end of file
diff --git a/project/cmake/scripts/windows/ArchSetup.cmake b/project/cmake/scripts/windows/ArchSetup.cmake
deleted file mode 100644
index d1c81a2541..0000000000
--- a/project/cmake/scripts/windows/ArchSetup.cmake
+++ /dev/null
@@ -1,89 +0,0 @@
-# -------- Architecture settings ---------
-
-set(ARCH win32)
-
-
-# -------- Paths (mainly for find_package) ---------
-
-set(PLATFORM_DIR platform/win32)
-
-# Precompiled headers fail with per target output directory. (needs CMake 3.1)
-set(PRECOMPILEDHEADER_DIR ${PROJECT_BINARY_DIR}/${CORE_BUILD_CONFIG}/objs)
-
-set(CMAKE_SYSTEM_NAME Windows)
-list(APPEND CMAKE_SYSTEM_PREFIX_PATH ${PROJECT_SOURCE_DIR}/../../lib/win32)
-list(APPEND CMAKE_SYSTEM_PREFIX_PATH ${PROJECT_SOURCE_DIR}/../../lib/win32/ffmpeg)
-list(APPEND CMAKE_SYSTEM_LIBRARY_PATH ${PROJECT_SOURCE_DIR}/../../lib/win32/ffmpeg/bin)
-list(APPEND CMAKE_SYSTEM_PREFIX_PATH ${PROJECT_SOURCE_DIR}/../BuildDependencies)
-
-set(PYTHON_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/../BuildDependencies/include/python)
-
-
-# -------- Compiler options ---------
-
-add_options(CXX ALL_BUILDS "/wd\"4996\"")
-set(ARCH_DEFINES -D_WINDOWS -DTARGET_WINDOWS -D__SSE__ -D__SSE2__)
-set(SYSTEM_DEFINES -DNOMINMAX -D_USE_32BIT_TIME_T -DHAS_DX -D__STDC_CONSTANT_MACROS
- -DTAGLIB_STATIC -DNPT_CONFIG_ENABLE_LOGGING
- -DPLT_HTTP_DEFAULT_USER_AGENT="UPnP/1.0 DLNADOC/1.50 Kodi"
- -DPLT_HTTP_DEFAULT_SERVER="UPnP/1.0 DLNADOC/1.50 Kodi"
- $<$<CONFIG:Debug>:-DD3D_DEBUG_INFO -D_ITERATOR_DEBUG_LEVEL=0>)
-
-# Make sure /FS is set for Visual Studio in order to prevent simultanious access to pdb files.
-if(CMAKE_GENERATOR MATCHES "Visual Studio")
- set(CMAKE_CXX_FLAGS "/MP /FS ${CMAKE_CXX_FLAGS}")
-endif()
-
-# Google Test needs to use shared version of runtime libraries
-set(gtest_force_shared_crt ON CACHE STRING "" FORCE)
-
-
-# -------- Linker options ---------
-
-set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /SAFESEH:NO")
-
-# For #pragma comment(lib X)
-# TODO: It would certainly be better to handle these libraries via CMake modules.
-link_directories(${PROJECT_SOURCE_DIR}/../../lib/win32/ffmpeg/bin
- ${PROJECT_SOURCE_DIR}/../BuildDependencies/lib)
-
-# Additional libraries
-list(APPEND DEPLIBS d3d11.lib DInput8.lib DSound.lib winmm.lib Mpr.lib Iphlpapi.lib
- PowrProf.lib setupapi.lib dwmapi.lib yajl.lib dxguid.lib DelayImp.lib)
-
-# NODEFAULTLIB option
-set(_nodefaultlibs_RELEASE libcmt)
-set(_nodefaultlibs_DEBUG libcmt msvcrt)
-foreach(_lib ${_nodefaultlibs_RELEASE})
- set(CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} /NODEFAULTLIB:\"${_lib}\"")
-endforeach()
-foreach(_lib ${_nodefaultlibs_DEBUG})
- set(CMAKE_EXE_LINKER_FLAGS_DEBUG "${CMAKE_EXE_LINKER_FLAGS_DEBUG} /NODEFAULTLIB:\"${_lib}\"")
-endforeach()
-
-# DELAYLOAD option
-set(_delayloadlibs zlib.dll libmysql.dll libxslt.dll dnssd.dll dwmapi.dll ssh.dll sqlite3.dll
- avcodec-57.dll avfilter-6.dll avformat-57.dll avutil-55.dll
- postproc-54.dll swresample-2.dll swscale-4.dll d3dcompiler_47.dll)
-foreach(_lib ${_delayloadlibs})
- set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /DELAYLOAD:\"${_lib}\"")
-endforeach()
-
-# Make the Release version create a PDB
-set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /Zi")
-# Minimize the size or the resulting DLLs
-set(CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} /DEBUG /OPT:REF")
-
-
-# -------- Visual Studio options ---------
-
-if(CMAKE_GENERATOR MATCHES "Visual Studio")
- set_property(GLOBAL PROPERTY USE_FOLDERS ON)
-
- # Generate a batch file that opens Visual Studio with the necessary env variables set.
- file(WRITE ${CMAKE_BINARY_DIR}/kodi-sln.bat
- "@echo off\n"
- "set KODI_HOME=%~dp0\n"
- "set PATH=%~dp0\\system\n"
- "start %~dp0\\${PROJECT_NAME}.sln")
-endif()
diff --git a/project/cmake/scripts/windows/CFlagOverrides.cmake b/project/cmake/scripts/windows/CFlagOverrides.cmake
deleted file mode 100644
index 00f4e22af4..0000000000
--- a/project/cmake/scripts/windows/CFlagOverrides.cmake
+++ /dev/null
@@ -1,5 +0,0 @@
-if(MSVC)
- set(CMAKE_C_FLAGS "/MP /DWIN32 /D_WINDOWS /W3 /Zi /arch:SSE2")
- set(CMAKE_C_FLAGS_DEBUG "/D_DEBUG /MDd /Ob0 /Od /RTC1 /D_ITERATOR_DEBUG_LEVEL=0")
- set(CMAKE_C_FLAGS_RELEASE "/MD /Ox /Ob2 /Oi /Ot /Oy /GL /DNDEBUG")
-endif()
diff --git a/project/cmake/scripts/windows/CXXFlagOverrides.cmake b/project/cmake/scripts/windows/CXXFlagOverrides.cmake
deleted file mode 100644
index 3c4d6c410a..0000000000
--- a/project/cmake/scripts/windows/CXXFlagOverrides.cmake
+++ /dev/null
@@ -1,5 +0,0 @@
-if(MSVC)
- set(CMAKE_CXX_FLAGS "/MP /DWIN32 /D_WINDOWS /W3 /GR /Zi /EHsc /arch:SSE2")
- set(CMAKE_CXX_FLAGS_DEBUG "/D_DEBUG /MDd /Ob0 /Od /RTC1 /D_ITERATOR_DEBUG_LEVEL=0")
- set(CMAKE_CXX_FLAGS_RELEASE "/MD /Ox /Ob2 /Oi /Ot /Oy /GL /DNDEBUG")
-endif()
diff --git a/project/cmake/scripts/windows/Install.cmake b/project/cmake/scripts/windows/Install.cmake
deleted file mode 100644
index e69de29bb2..0000000000
--- a/project/cmake/scripts/windows/Install.cmake
+++ /dev/null
diff --git a/project/cmake/scripts/windows/Macros.cmake b/project/cmake/scripts/windows/Macros.cmake
deleted file mode 100644
index 2d3500d8f3..0000000000
--- a/project/cmake/scripts/windows/Macros.cmake
+++ /dev/null
@@ -1,66 +0,0 @@
-function(core_link_library lib wraplib)
- message(AUTHOR_WARNING "core_link_library is not compatible with windows.")
-endfunction()
-
-function(find_soname lib)
- # Windows uses hardcoded dlls in xbmc/DllPaths_win32.h.
- # Therefore the output of this function is unused.
-endfunction()
-
-# Add precompiled header to target
-# Arguments:
-# target existing target that will be set up to compile with a precompiled header
-# pch_header the precompiled header file
-# pch_source the precompiled header source file
-# Optional Arguments:
-# PCH_TARGET build precompiled header as separate target with the given name
-# so that the same precompiled header can be used for multiple libraries
-# EXCLUDE_SOURCES if not all target sources shall use the precompiled header,
-# the relevant files can be listed here
-# On return:
-# Compiles the pch_source into a precompiled header and adds the header to
-# the given target
-function(add_precompiled_header target pch_header pch_source)
- cmake_parse_arguments(PCH "" "PCH_TARGET" "EXCLUDE_SOURCES" ${ARGN})
-
- if(PCH_PCH_TARGET)
- set(pch_binary ${PRECOMPILEDHEADER_DIR}/${PCH_PCH_TARGET}.pch)
- else()
- set(pch_binary ${PRECOMPILEDHEADER_DIR}/${target}.pch)
- endif()
-
- # Set compile options and dependency for sources
- get_target_property(sources ${target} SOURCES)
- list(REMOVE_ITEM sources ${pch_source})
- foreach(exclude_source IN LISTS PCH_EXCLUDE_SOURCES)
- list(REMOVE_ITEM sources ${exclude_source})
- endforeach()
- set_source_files_properties(${sources}
- PROPERTIES COMPILE_FLAGS "/Yu\"${pch_header}\" /Fp\"${pch_binary}\" /FI\"${pch_header}\""
- OBJECT_DEPENDS "${pch_binary}")
-
- # Set compile options for precompiled header
- if(NOT PCH_PCH_TARGET OR NOT TARGET ${PCH_PCH_TARGET}_pch)
- set_source_files_properties(${pch_source}
- PROPERTIES COMPILE_FLAGS "/Yc\"${pch_header}\" /Fp\"${pch_binary}\""
- OBJECT_OUTPUTS "${pch_binary}")
- endif()
-
- # Compile precompiled header
- if(PCH_PCH_TARGET)
- # As own target for usage in multiple libraries
- if(NOT TARGET ${PCH_PCH_TARGET}_pch)
- add_library(${PCH_PCH_TARGET}_pch STATIC ${pch_source})
- set_target_properties(${PCH_PCH_TARGET}_pch PROPERTIES COMPILE_PDB_NAME vc140
- COMPILE_PDB_OUTPUT_DIRECTORY ${PRECOMPILEDHEADER_DIR}
- FOLDER "Build Utilities")
- endif()
- # From VS2012 onwards, precompiled headers have to be linked against (LNK2011).
- target_link_libraries(${target} PUBLIC ${PCH_PCH_TARGET}_pch)
- set_target_properties(${target} PROPERTIES COMPILE_PDB_NAME vc140
- COMPILE_PDB_OUTPUT_DIRECTORY ${PRECOMPILEDHEADER_DIR})
- else()
- # As part of the target
- target_sources(${target} PRIVATE ${pch_source})
- endif()
-endfunction()
diff --git a/project/cmake/scripts/windows/PathSetup.cmake b/project/cmake/scripts/windows/PathSetup.cmake
deleted file mode 100644
index 8550616cd7..0000000000
--- a/project/cmake/scripts/windows/PathSetup.cmake
+++ /dev/null
@@ -1,34 +0,0 @@
-if(NOT prefix)
- set(prefix ${CMAKE_INSTALL_PREFIX})
-else()
- set(CMAKE_INSTALL_PREFIX ${prefix})
-endif()
-if(NOT exec_prefix)
- set(exec_prefix ${prefix})
-endif()
-if(NOT libdir)
- set(libdir ${prefix}/lib)
-endif()
-if(NOT bindir)
- set(bindir ${prefix}/bin)
-endif()
-if(NOT includedir)
- set(includedir ${prefix}/include)
-endif()
-if(NOT datarootdir)
- set(datarootdir ${prefix}/share)
-endif()
-if(NOT datadir)
- set(datadir ${datarootdir})
-endif()
-
-list(APPEND final_message "-- PATH config --")
-list(APPEND final_message "Prefix: ${prefix}")
-list(APPEND final_message "Libdir: ${libdir}")
-list(APPEND final_message "Bindir: ${bindir}")
-list(APPEND final_message "Includedir: ${includedir}")
-list(APPEND final_message "Datarootdir: ${datarootdir}")
-list(APPEND final_message "Datadir: ${datadir}")
-
-set(PATH_DEFINES -DBIN_INSTALL_PATH=\"${libdir}/kodi\"
- -DINSTALL_PATH=\"${datarootdir}/kodi\")
diff --git a/project/cmake/scripts/windows/tools/patch.cmake b/project/cmake/scripts/windows/tools/patch.cmake
deleted file mode 100644
index 0ef2952219..0000000000
--- a/project/cmake/scripts/windows/tools/patch.cmake
+++ /dev/null
@@ -1,37 +0,0 @@
-find_program(PATCH_FOUND NAMES patch patch.exe)
-if(PATCH_FOUND)
- message(STATUS "patch utility found at ${PATCH_FOUND}")
-else()
- set(PATCH_ARCHIVE_NAME "patch-2.5.9-7-bin-1")
- set(PATCH_ARCHIVE "${PATCH_ARCHIVE_NAME}.zip")
- set(PATCH_URL "${KODI_MIRROR}/build-deps/win32/${PATCH_ARCHIVE}")
- set(PATCH_DOWNLOAD ${BUILD_DIR}/download/${PATCH_ARCHIVE})
-
- # download the archive containing patch.exe
- message(STATUS "Downloading patch utility from ${PATCH_URL}...")
- file(DOWNLOAD "${PATCH_URL}" "${PATCH_DOWNLOAD}" STATUS PATCH_DL_STATUS LOG PATCH_LOG SHOW_PROGRESS)
- list(GET PATCH_DL_STATUS 0 PATCH_RETCODE)
- if(NOT PATCH_RETCODE EQUAL 0)
- message(FATAL_ERROR "ERROR downloading ${PATCH_URL} - status: ${PATCH_DL_STATUS} log: ${PATCH_LOG}")
- endif()
-
- # extract the archive containing patch.exe
- execute_process(COMMAND ${CMAKE_COMMAND} -E tar xzvf ${PATCH_DOWNLOAD}
- WORKING_DIRECTORY ${BUILD_DIR})
-
- # make sure the extraction worked and that patch.exe is there
- set(PATCH_PATH ${BUILD_DIR}/${PATCH_ARCHIVE_NAME})
- set(PATCH_BINARY_PATH ${PATCH_PATH}/bin/patch.exe)
- if(NOT EXISTS ${PATCH_PATH} OR NOT EXISTS ${PATCH_BINARY_PATH})
- message(FATAL_ERROR "ERROR extracting patch utility from ${PATCH_PATH}")
- endif()
-
- # copy patch.exe into the output directory
- file(INSTALL ${PATCH_BINARY_PATH} DESTINATION ${ADDON_DEPENDS_PATH}/bin)
-
- # make sure that cmake can find the copied patch.exe
- find_program(PATCH_FOUND NAMES patch patch.exe)
- if(NOT PATCH_FOUND)
- message(FATAL_ERROR "ERROR installing patch utility from ${PATCH_BINARY_PATH} to ${ADDON_DEPENDS_PATH}/bin")
- endif()
-endif()
diff --git a/project/cmake/treedata/android/subdirs.txt b/project/cmake/treedata/android/subdirs.txt
deleted file mode 100644
index 599017c539..0000000000
--- a/project/cmake/treedata/android/subdirs.txt
+++ /dev/null
@@ -1,17 +0,0 @@
-xbmc/linux linuxsupport
-xbmc/input/touch input/touch
-xbmc/input/touch/generic input/touch/generic
-xbmc/network/linux network/linux
-xbmc/peripherals/bus/linux peripherals/bus/linux
-xbmc/peripherals/bus/android peripherals/bus/android
-xbmc/powermanagement/android powermanagement/android
-xbmc/storage/android storage/android
-xbmc/filesystem/posix filesystem/posix
-xbmc/utils/posix utils_posix
-xbmc/windowing/android windowing/android
-xbmc/windowing/egl windowing/egl
-xbmc/platform/posix posix
-xbmc/platform/android/activity android_activity
-xbmc/platform/android/bionic_supplement android_bionicsupplement
-xbmc/platform/android/jni android_jni
-xbmc/platform/android/loader android_loader
diff --git a/project/cmake/treedata/common/addons.txt b/project/cmake/treedata/common/addons.txt
deleted file mode 100644
index e69de29bb2..0000000000
--- a/project/cmake/treedata/common/addons.txt
+++ /dev/null
diff --git a/project/cmake/treedata/common/cores.txt b/project/cmake/treedata/common/cores.txt
deleted file mode 100644
index 8d79dd18dc..0000000000
--- a/project/cmake/treedata/common/cores.txt
+++ /dev/null
@@ -1,9 +0,0 @@
-xbmc/cores cores
-xbmc/cores/AudioEngine cores/audioengine
-xbmc/cores/DllLoader cores/dll-loader
-xbmc/cores/DllLoader/exports cores/dll-loader/exports
-xbmc/cores/DllLoader/exports/util cores/dll-loader/exports/util
-xbmc/cores/ExternalPlayer cores/externalplayer
-xbmc/cores/paplayer cores/paplayer
-xbmc/cores/playercorefactory cores/playercorefactory
-xbmc/cores/RetroPlayer cores/RetroPlayer
diff --git a/project/cmake/treedata/common/events.txt b/project/cmake/treedata/common/events.txt
deleted file mode 100644
index 0adeb08412..0000000000
--- a/project/cmake/treedata/common/events.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-xbmc/events events
-xbmc/events/windows events/windows
diff --git a/project/cmake/treedata/common/externals.txt b/project/cmake/treedata/common/externals.txt
deleted file mode 100644
index e3b9ab4af5..0000000000
--- a/project/cmake/treedata/common/externals.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-xbmc/contrib/kissfft kissfft
-lib/libexif exif
diff --git a/project/cmake/treedata/common/filesystem.txt b/project/cmake/treedata/common/filesystem.txt
deleted file mode 100644
index 1c49a74d4b..0000000000
--- a/project/cmake/treedata/common/filesystem.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-xbmc/filesystem filesystem
-xbmc/filesystem/VideoDatabaseDirectory filesystem/videodatabase
-xbmc/filesystem/MusicDatabaseDirectory filesystem/musicdatabase
diff --git a/project/cmake/treedata/common/games.txt b/project/cmake/treedata/common/games.txt
deleted file mode 100644
index 03d42bc29f..0000000000
--- a/project/cmake/treedata/common/games.txt
+++ /dev/null
@@ -1,12 +0,0 @@
-xbmc/games games
-xbmc/games/addons games/addons
-xbmc/games/addons/playback games/addons/playback
-xbmc/games/addons/savestates games/addons/savestates
-xbmc/games/controllers games/controllers
-xbmc/games/controllers/dialogs games/controllers/dialogs
-xbmc/games/controllers/guicontrols games/controllers/guicontrols
-xbmc/games/controllers/windows games/controllers/windows
-xbmc/games/dialogs games/dialogs
-xbmc/games/ports games/ports
-xbmc/games/tags games/tags
-xbmc/games/windows games/windows
diff --git a/project/cmake/treedata/common/interfaces.txt b/project/cmake/treedata/common/interfaces.txt
deleted file mode 100644
index ffd35706d4..0000000000
--- a/project/cmake/treedata/common/interfaces.txt
+++ /dev/null
@@ -1,9 +0,0 @@
-xbmc/interfaces interfaces
-xbmc/interfaces/builtins interfaces/builtins
-xbmc/interfaces/generic interfaces/generic
-xbmc/interfaces/info interfaces/info
-xbmc/interfaces/json-rpc interfaces/json-rpc
-xbmc/interfaces/json-rpc/schema interfaces/json-rpc/schema
-xbmc/interfaces/legacy interfaces/legacy
-xbmc/interfaces/legacy/wsgi interfaces/legacy/wsgi
-xbmc/interfaces/python interfaces/python
diff --git a/project/cmake/treedata/common/music.txt b/project/cmake/treedata/common/music.txt
deleted file mode 100644
index 71f30e16fa..0000000000
--- a/project/cmake/treedata/common/music.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-xbmc/music music
-xbmc/music/dialogs music/dialogs
-xbmc/music/infoscanner music/infoscanner
-xbmc/music/tags music/tags
-xbmc/music/windows music/windows
diff --git a/project/cmake/treedata/common/network.txt b/project/cmake/treedata/common/network.txt
deleted file mode 100644
index 46da314d77..0000000000
--- a/project/cmake/treedata/common/network.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-xbmc/network network
-xbmc/network/websocket network/websocket
diff --git a/project/cmake/treedata/common/peripherals.txt b/project/cmake/treedata/common/peripherals.txt
deleted file mode 100644
index 903b5378e0..0000000000
--- a/project/cmake/treedata/common/peripherals.txt
+++ /dev/null
@@ -1,6 +0,0 @@
-xbmc/peripherals peripherals
-xbmc/peripherals/addons peripherals/addons
-xbmc/peripherals/bus peripherals/bus
-xbmc/peripherals/bus/virtual peripherals/bus/virtual
-xbmc/peripherals/devices peripherals/devices
-xbmc/peripherals/dialogs peripherals/dialogs
diff --git a/project/cmake/treedata/common/profiles.txt b/project/cmake/treedata/common/profiles.txt
deleted file mode 100644
index fae570ba88..0000000000
--- a/project/cmake/treedata/common/profiles.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-xbmc/profiles profiles
-xbmc/profiles/dialogs profiles/dialogs
-xbmc/profiles/windows profiles/windows
diff --git a/project/cmake/treedata/common/pvr.txt b/project/cmake/treedata/common/pvr.txt
deleted file mode 100644
index 679767731a..0000000000
--- a/project/cmake/treedata/common/pvr.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-xbmc/pvr pvr
-xbmc/pvr/addons pvr/addons
-xbmc/pvr/channels pvr/channels
-xbmc/pvr/dialogs pvr/dialogs
-xbmc/pvr/recordings pvr/recordings
-xbmc/pvr/timers pvr/timers
-xbmc/pvr/windows pvr/windows
diff --git a/project/cmake/treedata/common/settings.txt b/project/cmake/treedata/common/settings.txt
deleted file mode 100644
index c5aa2aecd3..0000000000
--- a/project/cmake/treedata/common/settings.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-xbmc/settings settings
-xbmc/settings/dialogs settings/dialogs
-xbmc/settings/lib settings/lib
-xbmc/settings/windows settings/windows
diff --git a/project/cmake/treedata/common/subdirs.txt b/project/cmake/treedata/common/subdirs.txt
deleted file mode 100644
index 4e42de054c..0000000000
--- a/project/cmake/treedata/common/subdirs.txt
+++ /dev/null
@@ -1,41 +0,0 @@
-xbmc xbmc
-xbmc/addons addons
-xbmc/addons/interfaces addonsBinaryInterfaces
-xbmc/addons/interfaces/Addon addonCallbacks_Addon
-xbmc/addons/interfaces/AudioDSP addonCallbacks_AudioDSP
-xbmc/addons/interfaces/AudioEngine addonCallbacks_AudioEngine
-xbmc/addons/interfaces/Codec addonCallbacks_Codec
-xbmc/addons/interfaces/Game addonCallbacks_Game
-xbmc/addons/interfaces/GUI addonCallbacks_GUI
-xbmc/addons/interfaces/InputStream addonCallbacks_InputStream
-xbmc/addons/interfaces/Peripheral addonCallbacks_Peripheral
-xbmc/addons/interfaces/PVR addonCallbacks_PVR
-xbmc/commons commons
-xbmc/dbwrappers dbwrappers
-xbmc/dialogs dialogs
-xbmc/epg epg
-xbmc/guilib guilib
-xbmc/input input
-xbmc/input/joysticks input/joysticks
-xbmc/input/joysticks/dialogs input/joysticks/dialogs
-xbmc/input/joysticks/generic input/joysticks/generic
-xbmc/input/keyboard input/keyboard
-xbmc/input/keyboard/generic input/keyboard/generic
-xbmc/input/mouse input/mouse
-xbmc/input/mouse/generic input/mouse/generic
-xbmc/listproviders listproviders
-xbmc/media media
-xbmc/messaging messaging
-xbmc/messaging/helpers messagingHelpers
-xbmc/pictures pictures
-xbmc/platform platform
-xbmc/playlists playlists
-xbmc/powermanagement powermanagement
-xbmc/programs programs
-xbmc/rendering rendering
-xbmc/storage storage
-xbmc/threads threads
-xbmc/utils utils
-xbmc/view view
-xbmc/windowing windowing
-xbmc/windows windows
diff --git a/project/cmake/treedata/common/tests.txt b/project/cmake/treedata/common/tests.txt
deleted file mode 100644
index 358bc4d546..0000000000
--- a/project/cmake/treedata/common/tests.txt
+++ /dev/null
@@ -1,10 +0,0 @@
-xbmc/test test
-xbmc/addons/test test/addons
-xbmc/filesystem/test test/filesystem
-xbmc/interfaces/python/test test/python
-xbmc/music/tags/test test/music_tags
-xbmc/network/test test/network
-xbmc/threads/test test/threads
-xbmc/utils/test test/utils
-xbmc/video/test test/video
-xbmc/cores/AudioEngine/Sinks/test test/audioengine_sinks
diff --git a/project/cmake/treedata/common/video.txt b/project/cmake/treedata/common/video.txt
deleted file mode 100644
index e7855a0809..0000000000
--- a/project/cmake/treedata/common/video.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-xbmc/video video
-xbmc/video/dialogs video/dialogs
-xbmc/video/jobs video/jobs
-xbmc/video/videosync video/sync
-xbmc/video/windows video/windows
diff --git a/project/cmake/treedata/common/videoplayer.txt b/project/cmake/treedata/common/videoplayer.txt
deleted file mode 100644
index 8c8d45d1ad..0000000000
--- a/project/cmake/treedata/common/videoplayer.txt
+++ /dev/null
@@ -1,12 +0,0 @@
-xbmc/cores/VideoPlayer cores/VideoPlayer
-xbmc/cores/VideoPlayer/DVDCodecs cores/VideoPlayer/codecs
-xbmc/cores/VideoPlayer/DVDCodecs/Audio cores/VideoPlayer/codecs/audio
-xbmc/cores/VideoPlayer/DVDCodecs/Overlay cores/VideoPlayer/codecs/overlay
-xbmc/cores/VideoPlayer/DVDCodecs/Video cores/VideoPlayer/codecs/video
-xbmc/cores/VideoPlayer/DVDDemuxers cores/VideoPlayer/demuxers
-xbmc/cores/VideoPlayer/DVDInputStreams cores/VideoPlayer/inputstreams
-xbmc/cores/VideoPlayer/DVDSubtitles cores/VideoPlayer/subtitles
-xbmc/cores/VideoPlayer/Process cores/VideoPlayer/process
-xbmc/cores/VideoPlayer/VideoRenderers cores/VideoPlayer/videorenderers
-xbmc/cores/VideoPlayer/VideoRenderers/VideoShaders cores/VideoPlayer/videorenderers/shaders
-xbmc/cores/VideoPlayer/VideoRenderers/HwDecRender cores/VideoPlayer/videorenderers/hwdec
diff --git a/project/cmake/treedata/freebsd/subdirs.txt b/project/cmake/treedata/freebsd/subdirs.txt
deleted file mode 100644
index df2fa76da9..0000000000
--- a/project/cmake/treedata/freebsd/subdirs.txt
+++ /dev/null
@@ -1,13 +0,0 @@
-xbmc/linux linuxsupport
-xbmc/linux/sse4 sse4
-xbmc/input/linux input/linux
-xbmc/input/touch input/touch
-xbmc/input/touch/generic input/touch/generic
-xbmc/network/linux network/linux
-xbmc/peripherals/bus/linux peripherals/bus/linux
-xbmc/powermanagement/linux powermanagement/linux
-xbmc/storage/linux storage/linux
-xbmc/filesystem/posix filesystem/posix
-xbmc/utils/posix utils_posix
-xbmc/platform/posix posix
-xbmc/freebsd freebsdsupport
diff --git a/project/cmake/treedata/ios/subdirs.txt b/project/cmake/treedata/ios/subdirs.txt
deleted file mode 100644
index b681ed5ced..0000000000
--- a/project/cmake/treedata/ios/subdirs.txt
+++ /dev/null
@@ -1,15 +0,0 @@
-xbmc/linux linuxsupport
-xbmc/input/touch input/touch
-xbmc/input/touch/generic input/touch/generic
-xbmc/network/linux network/linux
-xbmc/network/osx network/osx
-xbmc/peripherals/bus/osx peripherals/bus/osx
-xbmc/powermanagement/osx powermanagement/osx
-xbmc/storage/osx storage/osx
-xbmc/platform/posix posix
-xbmc/platform/darwin platform_darwin
-xbmc/platform/darwin/ios platform_ios
-xbmc/platform/darwin/ios-common platform_ios-common
-xbmc/filesystem/posix filesystem/posix
-xbmc/utils/posix utils_posix
-xbmc/windowing/osx windowing/osx
diff --git a/project/cmake/treedata/linux/subdirs.txt b/project/cmake/treedata/linux/subdirs.txt
deleted file mode 100644
index 2dc80450d0..0000000000
--- a/project/cmake/treedata/linux/subdirs.txt
+++ /dev/null
@@ -1,13 +0,0 @@
-xbmc/linux linuxsupport
-xbmc/linux/sse4 sse4
-xbmc/input/linux input/linux
-xbmc/input/touch input/touch
-xbmc/input/touch/generic input/touch/generic
-xbmc/network/linux network/linux
-xbmc/peripherals/bus/linux peripherals/bus/linux
-xbmc/powermanagement/linux powermanagement/linux
-xbmc/storage/linux storage/linux
-xbmc/filesystem/posix filesystem/posix
-xbmc/utils/posix utils_posix
-xbmc/windowing/egl windowing/egl
-xbmc/platform/posix posix
diff --git a/project/cmake/treedata/optional/common/X11.txt b/project/cmake/treedata/optional/common/X11.txt
deleted file mode 100644
index f4afa572dd..0000000000
--- a/project/cmake/treedata/optional/common/X11.txt
+++ /dev/null
@@ -1 +0,0 @@
-xbmc/windowing/X11 windowing/X11 # X11
diff --git a/project/cmake/treedata/optional/common/cdrip.txt b/project/cmake/treedata/optional/common/cdrip.txt
deleted file mode 100644
index 79b53907d4..0000000000
--- a/project/cmake/treedata/optional/common/cdrip.txt
+++ /dev/null
@@ -1 +0,0 @@
-xbmc/cdrip cdrip # OPTICAL
diff --git a/project/cmake/treedata/optional/common/dacp.txt b/project/cmake/treedata/optional/common/dacp.txt
deleted file mode 100644
index fd225c29ea..0000000000
--- a/project/cmake/treedata/optional/common/dacp.txt
+++ /dev/null
@@ -1 +0,0 @@
-xbmc/network/dacp network/dacp # AIRTUNES
diff --git a/project/cmake/treedata/optional/common/mir.txt b/project/cmake/treedata/optional/common/mir.txt
deleted file mode 100644
index d681e8b5ae..0000000000
--- a/project/cmake/treedata/optional/common/mir.txt
+++ /dev/null
@@ -1 +0,0 @@
-xbmc/windowing/mir windowing/mir # MIR
diff --git a/project/cmake/treedata/optional/common/nonfree.txt b/project/cmake/treedata/optional/common/nonfree.txt
deleted file mode 100644
index 470ed59752..0000000000
--- a/project/cmake/treedata/optional/common/nonfree.txt
+++ /dev/null
@@ -1 +0,0 @@
-lib/UnrarXLib unrarxlib # NONFREE
diff --git a/project/cmake/treedata/optional/common/opengl.txt b/project/cmake/treedata/optional/common/opengl.txt
deleted file mode 100644
index b88ad7a643..0000000000
--- a/project/cmake/treedata/optional/common/opengl.txt
+++ /dev/null
@@ -1 +0,0 @@
-xbmc/rendering/gl rendering/gl # OPENGL
diff --git a/project/cmake/treedata/optional/common/opengles.txt b/project/cmake/treedata/optional/common/opengles.txt
deleted file mode 100644
index 6a223a11d1..0000000000
--- a/project/cmake/treedata/optional/common/opengles.txt
+++ /dev/null
@@ -1 +0,0 @@
-xbmc/rendering/gles rendering/gles # OPENGLES
diff --git a/project/cmake/treedata/optional/common/upnp.txt b/project/cmake/treedata/optional/common/upnp.txt
deleted file mode 100644
index 5589b808e9..0000000000
--- a/project/cmake/treedata/optional/common/upnp.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-lib/libUPnP upnp # UPNP
-xbmc/network/upnp network/upnp # UPNP
diff --git a/project/cmake/treedata/optional/common/webserver.txt b/project/cmake/treedata/optional/common/webserver.txt
deleted file mode 100644
index b492006a5b..0000000000
--- a/project/cmake/treedata/optional/common/webserver.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-xbmc/network/httprequesthandler network/httprequesthandler # MICROHTTPD
-xbmc/network/httprequesthandler/python network/httprequesthandler/python # MICROHTTPD
diff --git a/project/cmake/treedata/osx/subdirs.txt b/project/cmake/treedata/osx/subdirs.txt
deleted file mode 100644
index f0fc5c5515..0000000000
--- a/project/cmake/treedata/osx/subdirs.txt
+++ /dev/null
@@ -1,12 +0,0 @@
-xbmc/linux linuxsupport
-xbmc/network/linux network/linux
-xbmc/network/osx network/osx
-xbmc/peripherals/bus/osx peripherals/bus/osx
-xbmc/powermanagement/osx powermanagement/osx
-xbmc/storage/osx storage/osx
-xbmc/platform/posix posix
-xbmc/platform/darwin platform_darwin
-xbmc/platform/darwin/osx platform_osx
-xbmc/filesystem/posix filesystem/posix
-xbmc/utils/posix utils_posix
-xbmc/windowing/osx windowing/osx
diff --git a/project/cmake/treedata/rbpi/omxplayer.txt b/project/cmake/treedata/rbpi/omxplayer.txt
deleted file mode 100644
index d56f1df87e..0000000000
--- a/project/cmake/treedata/rbpi/omxplayer.txt
+++ /dev/null
@@ -1 +0,0 @@
-xbmc/cores/omxplayer cores/omxplayer
diff --git a/project/cmake/treedata/rbpi/subdirs.txt b/project/cmake/treedata/rbpi/subdirs.txt
deleted file mode 100644
index 866ec00a6b..0000000000
--- a/project/cmake/treedata/rbpi/subdirs.txt
+++ /dev/null
@@ -1,12 +0,0 @@
-xbmc/linux linuxsupport
-xbmc/input/linux input/linux
-xbmc/input/touch input/touch
-xbmc/input/touch/generic input/touch/generic
-xbmc/network/linux network/linux
-xbmc/peripherals/bus/linux peripherals/bus/linux
-xbmc/powermanagement/linux powermanagement/linux
-xbmc/storage/linux storage/linux
-xbmc/filesystem/posix filesystem/posix
-xbmc/utils/posix utils_posix
-xbmc/platform/posix posix
-xbmc/windowing/egl windowing/egl # EGL
diff --git a/project/cmake/treedata/windows/externals.txt b/project/cmake/treedata/windows/externals.txt
deleted file mode 100644
index 989677e6c9..0000000000
--- a/project/cmake/treedata/windows/externals.txt
+++ /dev/null
@@ -1 +0,0 @@
-lib/win32/Effects11 Effects11
diff --git a/project/cmake/treedata/windows/subdirs.txt b/project/cmake/treedata/windows/subdirs.txt
deleted file mode 100644
index e52d2f6013..0000000000
--- a/project/cmake/treedata/windows/subdirs.txt
+++ /dev/null
@@ -1,14 +0,0 @@
-xbmc/platform/win32 platform_win32
-xbmc/input/windows input/windows
-xbmc/input/touch input/touch
-xbmc/input/touch/generic input/touch/generic
-xbmc/network/windows network/windows
-xbmc/network/mdns network/mdns
-xbmc/peripherals/bus/win32 peripherals/bus/win32
-xbmc/powermanagement/windows powermanagement/windows
-xbmc/storage/windows storage/windows
-xbmc/filesystem/win32 filesystem/win32
-xbmc/utils/win32 utils_win32
-xbmc/rendering/dx rendering_dx
-xbmc/threads/platform/win threads_win
-xbmc/windowing/windows windowing/windows