KODI ADDONS =========== This directory contains the cmake-based buildsystem for addons. 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 addon must have its own .txt file in a separate sub-directory which must follow one of the defined format: where * must be identical to the addon's ID as defined in the addon's addon.xml * must be the URL of the git repository containing the addon * must be a valid git tag/branch/commit in the addon's git repository which will be used for the build. * must be the URL to a .tar.gz tarball containing the addon * must be a file:// based path to the directory containing the addon Reserved filenames (for additional information on how to build an addon) are: * platforms.txt: List of platforms to build an addon for (or "all"). It is also supported to specify negated platforms with a leading exclamation mark (i), e.g. "!windows". Available platforms are: linux, windows, osx, ios, android, rbpi, freebsd ATTENTION: If no addon definitions could be found the buildsystem assumes that the bootstrapping of the addon definition repositories hasn't been performed yet and automatically executes the addon bootstrapping buildsystem located in the "bootstrap" sub-directory with the default settings (i.e. all addons from all pre-defined addon definition repositories are bootstrapped into the directory pointed to by the ADDONS_DEFINITION_DIR option). The buildsystem uses the following variables (which can be passed into it when executing cmake with the -D= option) to e.g. access specific paths: * ADDONS_TO_BUILD has two variations, which are tested in order: - a quoted, space delimited list of s that you want to build (default is "all"). - a regular expression that every is matched against e.g.: ADDONS_TO_BUILD=pvr.* to build all pvr addons * 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 addon repository location. It must point to the locally available parent directory of the addon(s) to build 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 addons and their additional files (addon.xml, resources ...) will be installed to (defaults to ). * CMAKE_TOOLCHAIN_FILE can be used to pass a toolchain file into the add-on builds. * DEPENDS_PATH points to the directory containing the "include" and "lib" directories of the addons' dependencies. * APP_ROOT 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 addons 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 /lib/kodi/addons and /share/kodi/addons. * PACKAGE_DIR points to the directory where the ZIP archived addons will be stored after they have been packaged (defaults to /zips) * ARCH_DEFINES specifies the platform-specific C/C++ preprocessor defines (defaults to empty). * ADDON_TARBALL_CACHING specifies whether downloaded addon source tarballs should be cached or not (defaults to ON). The buildsystem makes some assumptions about the environment which must be met by whoever uses it: * Any dependencies of the addons must already be built and their include and library files must be present in the path pointed to by (in "include" and "lib" sub-directories). To trigger the cmake-based buildsystem the following command must be executed with being the path to this directory (absolute or relative, allowing for in-source and out-of-source builds). cmake -G 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 [-G ] \ -DCMAKE_BUILD_TYPE=Release \ -DAPP_ROOT="" \ -DARCH_DEFINES="-DTARGET_LINUX" \ -DDEPENDS_PATH="" \ -DCMAKE_INSTALL_PREFIX="