aboutsummaryrefslogtreecommitdiff
path: root/cmake
AgeCommit message (Collapse)Author
2022-01-08[cmake] module Flatbuffers use version helperfuzzard
2022-01-08[cmake] module crossguid use version helperfuzzard
2022-01-08[cmake] create helper to parse VERSION files for dependenciesfuzzard
Cmake helper function to parse a VERSION file from a dependency Helper sets ARCHIVE, XXX_BASE_URL, XXX_VER to parent scope as parsed from VERSION file of module requested. module_name must match tools/depends/target folder name
2021-12-31Merge pull request #20719 from lrusak/werror-changesLukas Rusak
[cmake] add Wextra minus a few warnings
2021-12-29[cmake] remove old static analysis methodsLukas Rusak
2021-12-29[cmake] add targets for cppcheck and clang-tidyLukas Rusak
2021-12-25[cmake] allow building with -Wnon-virtual-dtorLukas Rusak
2021-12-25[cmake] enable -Wextra and disable a few warning that it enablesLukas Rusak
2021-12-20Revert "Revert "Merge pull request #18403 from lrusak/cpp17""Lukas Rusak
This reverts commit bd6818f1975ef4665d2319b482460f64aa4ae277. This also includes a fix for the following: CLog: fix SPDLOG_LEVEL_NAMES to allow compiling Otherwise the following error occurs: xbmc/utils/log.h:12:89: error: ‘constexpr fmt::v8::basic_string_view<Char>::basic_string_view(const Char*) [with Char = char]’ called in a constant expression 12 | #define SPDLOG_LEVEL_NAMES {"TRACE", "DEBUG", "INFO", "WARNING", "ERROR", "FATAL", "OFF"}; | ^ In file included from /usr/include/fmt/format.h:44, from xbmc/utils/StringUtils.h:37, from xbmc/utils/log.h:19, /usr/include/fmt/core.h:460:3: note: ‘constexpr fmt::v8::basic_string_view<Char>::basic_string_view(const Char*) [with Char = char]’ is not usable as a ‘constexpr’ function because: 460 | basic_string_view(const Char* s) : data_(s) { | ^~~~~~~~~~~~~~~~~ /usr/include/fmt/core.h:460:3: error: member ‘fmt::v8::basic_string_view<char>::size_’ must be initialized by mem-initializer in ‘constexpr’ constructor /usr/include/fmt/core.h:439:10: note: declared here 439 | size_t size_; | ^~~~~
2021-12-18Merge pull request #20665 from lrusak/werror-changesLukas Rusak
[cmake] use -Werror for double-promotion, missing-field-initializers, and sign-compare
2021-12-18Merge pull request #20684 from wsnipex/internal_fstrcmpfuzzard
[cmake] fix building internal fstrcmp (fixes #20676)
2021-12-15[cmake] fix building internal fstrcmpwsnipex
2021-12-15[cmake] Findspdlog ENABLE_INTERNAL_SPDLOG min fmt lib requiredfuzzard
2021-12-14[cmake] add -Wsign-compare warningLukas Rusak
2021-12-14[cmake] clean up compile optionsLukas Rusak
2021-12-14[cmake] allow specifying compile options for core units onlyLukas Rusak
2021-12-14[cmake] fix building internal spdlogwsnipex
2021-12-11[cmake] add clang-tidy support for androidRechi
2021-12-06Merge pull request #20599 from fuzzard/android_gradlesigningfuzzard
[android] update gradle and implement signing using gradle
2021-12-01[tools/depends][target] mariadb-c-connector bump 3.1.15fuzzard
2021-11-30[android] use gradle to sign rather than explicit jarsigner/apksignerfuzzard
2021-11-30[tools/android/packaging] update gradlefuzzard
2021-11-28[cmake][module] Findpython add requirement for lzma for kodi_depends buildtypefuzzard
2021-11-19[tools/depends] android 28.0+ uses d8 instead of dxfuzzard
2021-11-18[cmake] use modern CMAKE_XXX_COMPILER_LAUNCHER instead of global ↵fuzzard
RULE_LAUNCH_COMPILE
2021-11-17Fix various typos in docs, user-facing code, and source commentsluz paz
Found via `codespell -q 3 -S *.po,./lib/libUPnP/Neptune -L bloaded,busses,inout,lod,medias,parm`
2021-11-13Merge pull request #20501 from Chicopower/uwpxboxaddonspythonfixthexai
Fix issue 20421 - UWP Xbox Python add-ons permission error
2021-11-12Merge pull request #20479 from lrusak/cmake-glxLukas Rusak
2021-11-12Install KodiConfig.cmake to arch-specific pathVasyl Gello
Hugh Cole-Baker reported the issue with incorrect placement of KodiConfig.cmake (that contains architecture-dependent paths) into arch-independent /usr/share/kodi/cmake as Debian Bug #999482: https://bugs.debian.org/999482 The fix also needs changing the PPA packaging filed in a separate PR. Signed-off-by: Vasyl Gello <vasek.gello@gmail.com>
2021-11-11Fix issue 20421 - UWP Xbox Python add-ons permission errorChicopower
2021-11-09Controllers: Refactor input code into new subdirGarrett Brown
2021-11-06[cmake] fix vdpau/glx build with multiple window systemsLukas Rusak
2021-11-06[cmake] glx: remove unneeded imported targetLukas Rusak
2021-11-06[cmake] glx: find glx library instead of glLukas Rusak
2021-11-03Split TexturePacker executed during build and shippedVasyl Gello
Before this commit, shippable TexturePacker is not built at all if: * the pre-built TexturePacker is supplied by -DWITH_TEXTUREPACKER * build is KODI_DEPENDSBUILD * building for Windows This breaks generation of kodi-tools-texturepacker package on Linux and FreeBSD if cross-compiling. The new commit separates installable and executable TexturePackers. Executable TexturePacker is executed on all platforms, but it can be overriden by a binary specified by KODI_DEPENDSBUILD or WITH_TEXTUREPACKER options on non-depends build. Installable TexturePacker is shipped only on Linux and FreeBSD platforms, and is executed only if the build is not a cross-compilation and the executable TexturePacker not overridden by one of the options above. If external TexturePacker is specified WITH_TEXTUREPACKER but its executable file can not be found, a warning is raised and the module falls back to build internal TexturePacker if it can be executed during the build. Signed-off-by: Vasyl Gello <vasek.gello@gmail.com>
2021-11-01Fix "*-EXECUTABLE_NOTFOUND" if absolute path to file specifiedVasyl Gello
Fixes broken handling of WITH_* CMake configuration options: * find_program expects directory in PATHS and HINTS while WITH_* option is an absolute path to file. * PATHS in find_program is the last resort option which declares hardcoded guesses utilized after all cached paths, then directories specified by HINTS. This commit splits the full pathname to directory and filename then "searches" the filename in the directory, confirming file exists there and is executable. Signed-off-by: Vasyl Gello <vasek.gello@gmail.com>
2021-10-29Rename installable TexturePacker and JsonSchemaBuilderVasyl Gello
... to kodi-TexturePacker and kodi-JsonSchemaBuilder. These names are less generic and will less likely cause conflicts in /usr/bin. Signed-off-by: Vasyl Gello <vasek.gello@gmail.com>
2021-10-28Merge pull request #20352 from AlwinEsch/cleanup-bin-addon-cmakeAlwin Esch
[addons][binary] First automation support part
2021-10-26[auto][addons] devkit script update (26/10/2021 16:26:03)Alwin Esch
This commit automatic generated by script 'xbmc/addons/kodi-dev-kit/tools/code-generator.py'. Used call options: {'force': False, 'debug': False, 'commit': True} Generate cmake parts... [26/10/2021 16:26:01] Generate CMakeLists.txt files in xbmc/addons/kodi-dev-kit/include/kodi dirs: See below [26/10/2021 16:26:01] - Check xbmc/addons/kodi-dev-kit/include/kodi/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Check xbmc/addons/kodi-dev-kit/include/kodi/addon-instance/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Check xbmc/addons/kodi-dev-kit/include/kodi/addon-instance/inputstream/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Check xbmc/addons/kodi-dev-kit/include/kodi/addon-instance/peripheral/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Check xbmc/addons/kodi-dev-kit/include/kodi/addon-instance/pvr/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Check xbmc/addons/kodi-dev-kit/include/kodi/c-api/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Check xbmc/addons/kodi-dev-kit/include/kodi/c-api/addon-instance/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Check xbmc/addons/kodi-dev-kit/include/kodi/c-api/addon-instance/inputstream/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Check xbmc/addons/kodi-dev-kit/include/kodi/c-api/addon-instance/pvr/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Check xbmc/addons/kodi-dev-kit/include/kodi/c-api/gui/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Check xbmc/addons/kodi-dev-kit/include/kodi/c-api/gui/controls/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Check xbmc/addons/kodi-dev-kit/include/kodi/c-api/gui/dialogs/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Check xbmc/addons/kodi-dev-kit/include/kodi/c-api/gui/input/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Check xbmc/addons/kodi-dev-kit/include/kodi/c-api/platform/CMakeLists.txt: Created new [26/10/2021 16:26:01] - Check xbmc/addons/kodi-dev-kit/include/kodi/c-api/platform/android/CMakeLists.txt: (Contains limited OS header: android) Created new [26/10/2021 16:26:01] - Check xbmc/addons/kodi-dev-kit/include/kodi/gui/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Check xbmc/addons/kodi-dev-kit/include/kodi/gui/controls/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Check xbmc/addons/kodi-dev-kit/include/kodi/gui/dialogs/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Check xbmc/addons/kodi-dev-kit/include/kodi/gui/gl/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Check xbmc/addons/kodi-dev-kit/include/kodi/gui/input/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Check xbmc/addons/kodi-dev-kit/include/kodi/platform/CMakeLists.txt: Created new [26/10/2021 16:26:01] - Check xbmc/addons/kodi-dev-kit/include/kodi/platform/android/CMakeLists.txt: (Contains limited OS header: android) Created new [26/10/2021 16:26:01] - Check xbmc/addons/kodi-dev-kit/include/kodi/tools/CMakeLists.txt: Updated [26/10/2021 16:26:01] Check for cmake/treedata/common/addon_dev_kit.txt: Created new Git update... [26/10/2021 16:26:01] Perfom GIT update check: See below [26/10/2021 16:26:01] - Changed file cmake/treedata/common/addon_dev_kit.txt: Updated [26/10/2021 16:26:01] - Changed file xbmc/addons/kodi-dev-kit/include/kodi/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Changed file xbmc/addons/kodi-dev-kit/include/kodi/addon-instance/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Changed file xbmc/addons/kodi-dev-kit/include/kodi/addon-instance/inputstream/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Changed file xbmc/addons/kodi-dev-kit/include/kodi/addon-instance/peripheral/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Changed file xbmc/addons/kodi-dev-kit/include/kodi/addon-instance/pvr/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Changed file xbmc/addons/kodi-dev-kit/include/kodi/c-api/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Changed file xbmc/addons/kodi-dev-kit/include/kodi/c-api/addon-instance/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Changed file xbmc/addons/kodi-dev-kit/include/kodi/c-api/addon-instance/inputstream/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Changed file xbmc/addons/kodi-dev-kit/include/kodi/c-api/addon-instance/pvr/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Changed file xbmc/addons/kodi-dev-kit/include/kodi/c-api/gui/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Changed file xbmc/addons/kodi-dev-kit/include/kodi/c-api/gui/controls/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Changed file xbmc/addons/kodi-dev-kit/include/kodi/c-api/gui/dialogs/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Changed file xbmc/addons/kodi-dev-kit/include/kodi/c-api/gui/input/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Changed file xbmc/addons/kodi-dev-kit/include/kodi/c-api/platform/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Changed file xbmc/addons/kodi-dev-kit/include/kodi/c-api/platform/android/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Changed file xbmc/addons/kodi-dev-kit/include/kodi/gui/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Changed file xbmc/addons/kodi-dev-kit/include/kodi/gui/controls/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Changed file xbmc/addons/kodi-dev-kit/include/kodi/gui/dialogs/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Changed file xbmc/addons/kodi-dev-kit/include/kodi/gui/gl/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Changed file xbmc/addons/kodi-dev-kit/include/kodi/gui/input/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Changed file xbmc/addons/kodi-dev-kit/include/kodi/platform/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Changed file xbmc/addons/kodi-dev-kit/include/kodi/platform/android/CMakeLists.txt: Updated [26/10/2021 16:26:01] - Changed file xbmc/addons/kodi-dev-kit/include/kodi/tools/CMakeLists.txt: Updated [26/10/2021 16:26:01] Perfom GIT commit:
2021-10-26[addons][binary] add initial autogen script partsAlwin Esch
This introduces the first part of the automated dev kit API update system. The background is to concentrate the manual work in the end only on places which really need hand changes and to do everything else automatically with the script. When the larger system comes in, it is extremely helpful by means of a script, because a lot of changes of the same kind come in when changes are made and then become tedious by hand. This smaller commit comes to present my planned style to a manageable extent and hope is acceptable.
2021-10-26[Subtitles][Webvtt] Implemented WebVTT parserCastagnaIT
2021-10-20Merge pull request #20294 from lrusak/split-gluLukas Rusak
[cmake] split glu dependency into it's own module
2021-10-21[addons][cmake] Clean up addon header CMakeLists.txtAlwin Esch
Previously, "core_add_library" was used which, once referring to library by name, and on the other hand always had the path as "addons_kodi-dev-kit_include_ *" in it. This adds a new CMake function with which it is done via "core_add_devkit_header". The difference is that this checks on "ENABLE_STATIC_LIBS" and always adds "addons_kodi-dev-kit_include_" as begin. The following background is behind it: - So that the kodi-dev-kit path is not set in its parts (here CMakeLists.txt) and the folder can simply be moved to another location. - The "core_add_devkit_header" could possibly be replaced with another function if kodi-dev-kit were used independently of Kodi. - Better to use with auto scripts The other `if (HEADERS)` has the background if inline cmake calls were integrated into it and HEADERS would be given as empty.
2021-10-20Merge pull request #20345 from aurel32/riscv64Vasyl Gello
[cmake] add support for riscv64 in ArchSetup.cmake
2021-10-20Merge pull request #20331 from basilgello/debian-patchesVasyl Gello
Upstreamed Debian patches
2021-10-20Add option to use internal or external kissfftVasyl Gello
By default, ENABLE_INTERNAL_KISSFFT is ON for all architectures. It is immutable on non-Unix systems because 'FindKissFFT.cmake' relies on 'pkg-config' tool not available in Windows and Android. If Kodi built with internal kissfft, the corresponding CMake search module sets kissfft's include directory to the copied location created by 'core_add_subdirs_from_filelist' macro expanded from 'cmake/treedata/common/externals.txt'. If Kodi built with system kissfft, the module detects the presence of header files and solib by 'pkg-config' and disables building the 'xbmc/contrib/kissfft' directory. Signed-off-by: Vasyl Gello <vasek.gello@gmail.com>
2021-10-19Allow overriding APP_PACKAGEVasyl Gello
Fixes Flatpak manifest issue. Signed-off-by: Vasyl Gello <vasek.gello@gmail.com>
2021-10-19[cmake] add support for riscv64 in ArchSetup.cmakeAurelien Jarno
2021-10-18[cmake] split glu dependency into it's own moduleLukas Rusak
2021-10-18Detect and honor big-endian architecturesVasyl Gello
Fixes #19109 CMake detects the endianness using TestBigEndian.cmake module and adds the -DWORDS_BIGENDIAN=${WORDS_BIGENDIAN} definition to architecture-specific definitions. Signed-off-by: Vasyl Gello <vasek.gello@gmail.com>