summaryrefslogtreecommitdiffstats
path: root/cmake
diff options
context:
space:
mode:
authormanuel <manuel@mausz.at>2020-10-19 00:52:24 +0200
committermanuel <manuel@mausz.at>2020-10-19 00:52:24 +0200
commitbe933ef2241d79558f91796cc5b3a161f72ebf9c (patch)
treefe3ab2f130e20c99001f2d7a81d610c78c96a3f4 /cmake
parent5f8335c1e49ce108ef3481863833c98efa00411b (diff)
downloadkodi-pvr-build-be933ef2241d79558f91796cc5b3a161f72ebf9c.tar.gz
kodi-pvr-build-be933ef2241d79558f91796cc5b3a161f72ebf9c.tar.bz2
kodi-pvr-build-be933ef2241d79558f91796cc5b3a161f72ebf9c.zip
sync with upstream
Diffstat (limited to 'cmake')
-rw-r--r--cmake/addons/CMakeLists.txt72
-rw-r--r--cmake/addons/README.md12
-rw-r--r--cmake/cpack/deb/packages/kodi.txt.in2
-rw-r--r--cmake/installdata/common/addons.txt2
l---------cmake/installdata/rbpi/lirc.txt1
-rw-r--r--cmake/modules/FindClangTidy.cmake26
-rw-r--r--cmake/modules/FindCppcheck.cmake32
-rw-r--r--cmake/modules/FindEGL.cmake8
-rw-r--r--cmake/modules/FindIncludeWhatYouUse.cmake26
-rw-r--r--cmake/modules/FindLibDRM.cmake2
-rw-r--r--cmake/modules/FindLibDvd.cmake15
-rw-r--r--cmake/modules/FindMMAL.cmake55
-rw-r--r--cmake/modules/FindOpenGLES.cmake8
-rw-r--r--cmake/modules/FindPlist.cmake4
-rw-r--r--cmake/platform/freebsd/rbpi.cmake1
-rw-r--r--cmake/platform/linux/rbpi.cmake3
-rw-r--r--cmake/platform/linux/wayland.cmake6
-rw-r--r--cmake/platform/windows/defines.txt2
-rw-r--r--cmake/platform/windowsstore/defines.txt2
-rw-r--r--cmake/scripts/android/ArchSetup.cmake1
-rw-r--r--cmake/scripts/common/ArchSetup.cmake17
-rw-r--r--cmake/scripts/common/HandleDepends.cmake8
-rw-r--r--cmake/scripts/common/Macros.cmake9
-rw-r--r--cmake/scripts/common/ProjectMacros.cmake8
-rw-r--r--cmake/scripts/darwin_embedded/ExtraTargets.cmake11
-rw-r--r--cmake/scripts/linux/ArchSetup.cmake10
-rw-r--r--cmake/scripts/linux/Install.cmake2
-rw-r--r--cmake/scripts/osx/Install.cmake19
-rw-r--r--cmake/treedata/common/rbpi/rbpi.txt2
-rw-r--r--cmake/treedata/common/subdirs.txt30
-rw-r--r--cmake/treedata/freebsd/subdirs.txt2
-rw-r--r--cmake/treedata/linux/subdirs.txt2
32 files changed, 263 insertions, 137 deletions
diff --git a/cmake/addons/CMakeLists.txt b/cmake/addons/CMakeLists.txt
index 3dccc01..c1313d7 100644
--- a/cmake/addons/CMakeLists.txt
+++ b/cmake/addons/CMakeLists.txt
@@ -244,26 +244,80 @@ endif()
244# error either in ADDONS_TO_BUILD or in the directory configuration. 244# error either in ADDONS_TO_BUILD or in the directory configuration.
245set(SUPPORTED_ADDON_FOUND FALSE) 245set(SUPPORTED_ADDON_FOUND FALSE)
246 246
247if(NOT ADDONS_TO_BUILD)
248 set(ADDONS_TO_BUILD "all")
249endif()
250
251if(NOT ADDONS_TO_BUILD STREQUAL "all")
252 # Exact addon match list
253 set(REGEX_ADDONS_TO_BUILD ${ADDONS_TO_BUILD})
254 set(EXACT_MATCH_ADDON_LIST "")
255 set(EXCLUDE_ADDONS "")
256
257 foreach(addon ${ADDONS_TO_BUILD})
258 set(FOUND_EXCLUSION "")
259 string(REGEX MATCH "^[-](.*)" FOUND_EXCLUSION "${addon}")
260 if(NOT FOUND_EXCLUSION STREQUAL "")
261 list(APPEND EXCLUDE_ADDONS ${CMAKE_MATCH_1})
262 list(REMOVE_ITEM REGEX_ADDONS_TO_BUILD "-${CMAKE_MATCH_1}")
263 else()
264 foreach(addonrepoitem ${addons})
265 if(NOT (addonrepoitem MATCHES platforms.txt))
266 # need to strip regex chars, or the filter regex will use
267 string(REPLACE "*" "" strippedregex ${addon})
268 if(${addonrepoitem} MATCHES "^.*\/(${strippedregex}).txt")
269 list(APPEND EXACT_MATCH_ADDON_LIST ${addon})
270 # remove exact matches from addons_to_build
271 list(REMOVE_ITEM REGEX_ADDONS_TO_BUILD "${addon}")
272 endif()
273 endif()
274 endforeach()
275 endif()
276 endforeach()
277
278 message(STATUS "Exclusion list: ${EXCLUDE_ADDONS}")
279 message(STATUS "Exact Match list: ${EXACT_MATCH_ADDON_LIST}")
280 message(STATUS "Regex list: ${REGEX_ADDONS_TO_BUILD}")
281endif()
282
247foreach(addon ${addons}) 283foreach(addon ${addons})
248 if(NOT (addon MATCHES platforms.txt)) 284 if(NOT (addon MATCHES platforms.txt))
249 file(STRINGS ${addon} def) 285 file(STRINGS ${addon} def)
250 string(REPLACE " " ";" def ${def}) 286 string(REPLACE " " ";" def ${def})
251 list(GET def 0 id) 287 list(GET def 0 id)
252 288
253 set(ADDON_FOUND FALSE) 289 if("${ADDONS_TO_BUILD}" STREQUAL "all")
254 # try to find a perfect match
255 list(FIND ADDONS_TO_BUILD ${id} idx)
256 if(idx GREATER -1 OR "${ADDONS_TO_BUILD}" STREQUAL "all")
257 set(ADDON_FOUND TRUE) 290 set(ADDON_FOUND TRUE)
258 # Maybe we have a regex
259 else() 291 else()
260 foreach(ADDONLISTITEM ${ADDONS_TO_BUILD}) 292 set(ADDON_EXCLUDE FALSE)
261 if(id MATCHES "${ADDONLISTITEM}") 293 set(ADDON_FOUND FALSE)
262 message(STATUS "Pattern ${ADDONLISTITEM} matches ${id}, building addon") 294 foreach(exclusion ${EXCLUDE_ADDONS})
263 set(ADDON_FOUND TRUE) 295 if(id MATCHES "${exclusion}")
296 set(ADDON_EXCLUDE TRUE)
297 message(STATUS "Addon ${id} matches exclusion rule -${exclusion}")
264 break() 298 break()
265 endif() 299 endif()
266 endforeach() 300 endforeach()
301
302 if(ADDON_EXCLUDE)
303 continue()
304 endif()
305
306 list(FIND EXACT_MATCH_ADDON_LIST ${id} idx)
307 if(idx GREATER -1)
308 # exact match, so build
309 message(STATUS "Exact match ${id}, building addon")
310 set(ADDON_FOUND TRUE)
311 else()
312 # regex search
313 foreach(ADDONLISTITEM ${REGEX_ADDONS_TO_BUILD})
314 if(id MATCHES "${ADDONLISTITEM}")
315 message(STATUS "Pattern ${ADDONLISTITEM} matches ${id}, building addon")
316 set(ADDON_FOUND TRUE)
317 break()
318 endif()
319 endforeach()
320 endif()
267 endif() 321 endif()
268 322
269 if(ADDON_FOUND) 323 if(ADDON_FOUND)
diff --git a/cmake/addons/README.md b/cmake/addons/README.md
index 17e6460..ed1894e 100644
--- a/cmake/addons/README.md
+++ b/cmake/addons/README.md
@@ -18,16 +18,18 @@ where
18 18
19List of platforms to build an add-on for (or *all*). Negating platforms is supported using a leading exclamation mark, e.g. *!windows*. 19List of platforms to build an add-on for (or *all*). Negating platforms is supported using a leading exclamation mark, e.g. *!windows*.
20 20
21Available platforms are: linux, windows, osx, ios, android, rbpi and freebsd. 21Available platforms are: linux, windows, osx, ios, android and freebsd.
22 22
23#### Attention 23#### Attention
24If 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). 24If 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).
25 25
26## Buildsystem variables 26## Buildsystem variables
27The buildsystem uses the following addon-related variables (which can be passed into it when executing cmake with the -D`<variable-name>=<value>` format) to manipulate the build process: 27The buildsystem uses the following addon-related variables (which can be passed into it when executing cmake with the -D`<variable-name>=<value>` format) to manipulate the build process:
28- `ADDONS_TO_BUILD` has two variations, which are tested in order: 28- `ADDONS_TO_BUILD` has four rules for matching a provided space delimited list:
29 - a quoted, space delimited list of `<addon-id>s` that you want to build (default is *all*) 29 - to build all addons, just use `all` (default is *all*)
30 - a regular expression that every `<addon-id>` is matched against (e.g. `ADDONS_TO_BUILD="pvr.*"`) to build all pvr add-ons 30 - an exact match of an `<addon-id>` that you want to build (e.g. `ADDONS_TO_BUILD="game.libretro"`)
31 - a regular expression `<addon-id>` is matched against (e.g. `ADDONS_TO_BUILD="pvr.*"`) to build all pvr add-ons
32 - a regular expression exclusion can be made using `-<addon-id regex>` (e.g. `ADDONS_TO_BUILD="pvr.* -pvr.dvb"`) to exclude pvr.dvblink and pvr.dvbviewer, but build all other pvr add-ons
31- `ADDONS_DEFINITION_DIR` points to the directory containing the definitions for the addons to be built 33- `ADDONS_DEFINITION_DIR` points to the directory containing the definitions for the addons to be built
32- `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 34- `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
33- `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>`) 35- `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>`)
@@ -44,4 +46,4 @@ Buildsystem will print a warning if you use any of the below-listed variables. F
44 46
45## Building 47## Building
46The buildsystem makes some assumptions about the environment which must be met by whoever uses it: 48The buildsystem makes some assumptions about the environment which must be met by whoever uses it:
47- 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) \ No newline at end of file 49- 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)
diff --git a/cmake/cpack/deb/packages/kodi.txt.in b/cmake/cpack/deb/packages/kodi.txt.in
index 78df46a..6cce5fd 100644
--- a/cmake/cpack/deb/packages/kodi.txt.in
+++ b/cmake/cpack/deb/packages/kodi.txt.in
@@ -15,7 +15,7 @@ PACKAGE_ARCHITECTURE all
15PACKAGE_SECTION video 15PACKAGE_SECTION video
16PACKAGE_PRIORITY optional 16PACKAGE_PRIORITY optional
17PACKAGE_SHLIBDEPS 17PACKAGE_SHLIBDEPS
18PACKAGE_DEPENDS @APP_NAME_LC@-bin (>= @CPACK_DEBIAN_PACKAGE_VERSION@), @APP_NAME_LC@-bin (<< @CPACK_DEBIAN_PACKAGE_VERSION@.1~), curl, libcurl4 | libcurl3, mesa-utils, x11-utils, fonts-liberation | ttf-liberation, fonts-dejavu-core | ttf-dejavu-core, python3-pil, python3-simplejson, libass9 | libass5 | libass4, libgif5 | libgif7, libnfs8 | libnfs4 | libnfs1, libbluray1 | libbluray2, libshairplay0, libvorbisfile3, libaacs0, libcec4, libgnutls30 | libgnutls-deb0-28 | libgnutls28 | libgnutls26, libxslt1.1 18PACKAGE_DEPENDS @APP_NAME_LC@-bin (>= @CPACK_DEBIAN_PACKAGE_VERSION@), @APP_NAME_LC@-bin (<< @CPACK_DEBIAN_PACKAGE_VERSION@.1~), curl, libcurl4 | libcurl3, mesa-utils, x11-utils, fonts-liberation | ttf-liberation, fonts-dejavu-core | ttf-dejavu-core, python3-pil, python3-simplejson, libass9 | libass5 | libass4, libgif5 | libgif7, libnfs8 | libnfs4 | libnfs1, libbluray1 | libbluray2, libshairplay0, libvorbisfile3, libaacs0, libcec6 | libcec4, libgnutls30 | libgnutls-deb0-28 | libgnutls28 | libgnutls26, libxslt1.1
19PACKAGE_RECOMMENDS libvdpau1, libva-intel-vaapi-driver, libva1 19PACKAGE_RECOMMENDS libvdpau1, libva-intel-vaapi-driver, libva1
20PACKAGE_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 20PACKAGE_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
21PACKAGE_BREAKS xbmc (<< 2:14.0~git20141019), xbmc-data, xbmc-standalone 21PACKAGE_BREAKS xbmc (<< 2:14.0~git20141019), xbmc-data, xbmc-standalone
diff --git a/cmake/installdata/common/addons.txt b/cmake/installdata/common/addons.txt
index 13dbab3..897420f 100644
--- a/cmake/installdata/common/addons.txt
+++ b/cmake/installdata/common/addons.txt
@@ -39,6 +39,8 @@ addons/metadata.common.imdb.com/*
39addons/metadata.common.musicbrainz.org/* 39addons/metadata.common.musicbrainz.org/*
40addons/metadata.common.theaudiodb.com/* 40addons/metadata.common.theaudiodb.com/*
41addons/metadata.common.themoviedb.org/* 41addons/metadata.common.themoviedb.org/*
42addons/metadata.generic.albums/*
43addons/metadata.generic.artists/*
42addons/metadata.themoviedb.org/* 44addons/metadata.themoviedb.org/*
43addons/metadata.tvshows.themoviedb.org/* 45addons/metadata.tvshows.themoviedb.org/*
44addons/kodi.vfs/* 46addons/kodi.vfs/*
diff --git a/cmake/installdata/rbpi/lirc.txt b/cmake/installdata/rbpi/lirc.txt
deleted file mode 120000
index e89ae50..0000000
--- a/cmake/installdata/rbpi/lirc.txt
+++ /dev/null
@@ -1 +0,0 @@
1../linux/lirc.txt \ No newline at end of file
diff --git a/cmake/modules/FindClangTidy.cmake b/cmake/modules/FindClangTidy.cmake
new file mode 100644
index 0000000..6ea614d
--- /dev/null
+++ b/cmake/modules/FindClangTidy.cmake
@@ -0,0 +1,26 @@
1#.rst:
2# FindClangTidy
3# -------------
4# Finds clang-tidy and sets it up to run along with the compiler for C and CXX.
5
6find_program(CLANG_TIDY_EXECUTABLE clang-tidy)
7
8if(CLANG_TIDY_EXECUTABLE)
9 execute_process(COMMAND "${CLANG_TIDY_EXECUTABLE}" --version
10 OUTPUT_VARIABLE CLANG_TIDY_VERSION
11 OUTPUT_STRIP_TRAILING_WHITESPACE)
12 string(REGEX MATCH "[^\n]* version [^\n]*" CLANG_TIDY_VERSION "${CLANG_TIDY_VERSION}")
13 string(REGEX REPLACE ".* version (.*)" "\\1" CLANG_TIDY_VERSION "${CLANG_TIDY_VERSION}")
14endif()
15
16include(FindPackageHandleStandardArgs)
17find_package_handle_standard_args(ClangTidy REQUIRED_VARS CLANG_TIDY_EXECUTABLE
18 VERSION_VAR CLANG_TIDY_VERSION)
19
20if(CLANGTIDY_FOUND)
21 # Supports Unix Makefiles and Ninja
22 set(CMAKE_C_CLANG_TIDY "${CLANG_TIDY_EXECUTABLE}" PARENT_SCOPE)
23 set(CMAKE_CXX_CLANG_TIDY "${CLANG_TIDY_EXECUTABLE}" PARENT_SCOPE)
24endif()
25
26mark_as_advanced(CLANG_TIDY_EXECUTABLE)
diff --git a/cmake/modules/FindCppcheck.cmake b/cmake/modules/FindCppcheck.cmake
new file mode 100644
index 0000000..d3b6e84
--- /dev/null
+++ b/cmake/modules/FindCppcheck.cmake
@@ -0,0 +1,32 @@
1#.rst:
2# FindCppcheck
3# ------------
4# Finds cppcheck and sets it up to run along with the compiler for C and CXX.
5
6find_program(CPPCHECK_EXECUTABLE cppcheck)
7
8if(CPPCHECK_EXECUTABLE)
9 execute_process(COMMAND "${CPPCHECK_EXECUTABLE}" --version
10 OUTPUT_VARIABLE CPPCHECK_VERSION
11 OUTPUT_STRIP_TRAILING_WHITESPACE)
12 string(REGEX REPLACE "Cppcheck (.*)" "\\1" CPPCHECK_VERSION "${CPPCHECK_VERSION}")
13endif()
14
15include(FindPackageHandleStandardArgs)
16find_package_handle_standard_args(Cppcheck REQUIRED_VARS CPPCHECK_EXECUTABLE
17 VERSION_VAR CPPCHECK_VERSION)
18
19if(CPPCHECK_FOUND)
20 # CMake < 3.16 treats Objective-C (OBJC) files as C files and Objective-C++ (OBJCXX) files as C++ files,
21 # but cppcheck doesn't support Objective-C and Objective-C++.
22 # CMake >= 3.16 added support for Objective-C and Objective-C++ language,
23 # but doesn't support OBJC and OBJCXX for <LANG>_CLANG_TIDY.
24 file(WRITE "${CMAKE_BINARY_DIR}/cppcheck" "case \"$@\" in *.m|*.mm) exit 0; esac\nexec \"${CPPCHECK_EXECUTABLE}\" --quiet --relative-paths=\"${CMAKE_SOURCE_DIR}\" \"$@\"\n")
25 execute_process(COMMAND chmod +x "${CMAKE_BINARY_DIR}/cppcheck")
26
27 # Supports Unix Makefiles and Ninja
28 set(CMAKE_C_CPPCHECK "${CMAKE_BINARY_DIR}/cppcheck" PARENT_SCOPE)
29 set(CMAKE_CXX_CPPCHECK "${CMAKE_BINARY_DIR}/cppcheck" PARENT_SCOPE)
30endif()
31
32mark_as_advanced(CPPCHECK_EXECUTABLE)
diff --git a/cmake/modules/FindEGL.cmake b/cmake/modules/FindEGL.cmake
index 0b73eb8..b00fe08 100644
--- a/cmake/modules/FindEGL.cmake
+++ b/cmake/modules/FindEGL.cmake
@@ -14,18 +14,14 @@
14# 14#
15# EGL::EGL - The EGL library 15# EGL::EGL - The EGL library
16 16
17if(CORE_PLATFORM_NAME_LC STREQUAL rbpi)
18 set(_brcmprefix brcm)
19endif()
20
21if(PKG_CONFIG_FOUND) 17if(PKG_CONFIG_FOUND)
22 pkg_check_modules(PC_EGL ${_brcmprefix}egl QUIET) 18 pkg_check_modules(PC_EGL egl QUIET)
23endif() 19endif()
24 20
25find_path(EGL_INCLUDE_DIR EGL/egl.h 21find_path(EGL_INCLUDE_DIR EGL/egl.h
26 PATHS ${PC_EGL_INCLUDEDIR}) 22 PATHS ${PC_EGL_INCLUDEDIR})
27 23
28find_library(EGL_LIBRARY NAMES ${_brcmprefix}EGL egl 24find_library(EGL_LIBRARY NAMES EGL egl
29 PATHS ${PC_EGL_LIBDIR}) 25 PATHS ${PC_EGL_LIBDIR})
30 26
31set(EGL_VERSION ${PC_EGL_VERSION}) 27set(EGL_VERSION ${PC_EGL_VERSION})
diff --git a/cmake/modules/FindIncludeWhatYouUse.cmake b/cmake/modules/FindIncludeWhatYouUse.cmake
new file mode 100644
index 0000000..b22225a
--- /dev/null
+++ b/cmake/modules/FindIncludeWhatYouUse.cmake
@@ -0,0 +1,26 @@
1#.rst:
2# FindIncludeWhatYouUse
3# ---------------------
4# Finds include-what-you-use and sets it up to run along with the compiler for C and CXX.
5
6find_program(IWYU_EXECUTABLE NAMES include-what-you-use iwyu)
7
8if(IWYU_EXECUTABLE)
9 execute_process(COMMAND "${IWYU_EXECUTABLE}" --version
10 OUTPUT_VARIABLE IWYU_VERSION
11 OUTPUT_STRIP_TRAILING_WHITESPACE)
12 string(REGEX MATCH "[^\n]*include-what-you-use [^\n]*" IWYU_VERSION "${IWYU_VERSION}")
13 string(REGEX REPLACE "include-what-you-use ([^ \n\r\t]+).*" "\\1" IWYU_VERSION "${IWYU_VERSION}")
14endif()
15
16include(FindPackageHandleStandardArgs)
17find_package_handle_standard_args(IncludeWhatYouUse REQUIRED_VARS IWYU_EXECUTABLE
18 VERSION_VAR IWYU_VERSION)
19
20if(INCLUDEWHATYOUUSE_FOUND)
21 # Supports Unix Makefiles and Ninja
22 set(CMAKE_C_INCLUDE_WHAT_YOU_USE "${IWYU_EXECUTABLE}" PARENT_SCOPE)
23 set(CMAKE_CXX_INCLUDE_WHAT_YOU_USE "${IWYU_EXECUTABLE}" PARENT_SCOPE)
24endif()
25
26mark_as_advanced(IWYU_EXECUTABLE)
diff --git a/cmake/modules/FindLibDRM.cmake b/cmake/modules/FindLibDRM.cmake
index 0d680f2..866565d 100644
--- a/cmake/modules/FindLibDRM.cmake
+++ b/cmake/modules/FindLibDRM.cmake
@@ -15,7 +15,7 @@
15# LibDRM::LibDRM - The LibDRM library 15# LibDRM::LibDRM - The LibDRM library
16 16
17if(PKG_CONFIG_FOUND) 17if(PKG_CONFIG_FOUND)
18 pkg_check_modules(PC_LIBDRM libdrm>=2.4.82 QUIET) 18 pkg_check_modules(PC_LIBDRM libdrm>=2.4.95 QUIET)
19endif() 19endif()
20 20
21find_path(LIBDRM_INCLUDE_DIR NAMES drm.h 21find_path(LIBDRM_INCLUDE_DIR NAMES drm.h
diff --git a/cmake/modules/FindLibDvd.cmake b/cmake/modules/FindLibDvd.cmake
index 44e7e92..58a7aab 100644
--- a/cmake/modules/FindLibDvd.cmake
+++ b/cmake/modules/FindLibDvd.cmake
@@ -96,6 +96,16 @@ else()
96 set(LIBDVD_ADDITIONAL_ARGS "-DCMAKE_SYSTEM_NAME=${CMAKE_SYSTEM_NAME}" "-DCMAKE_SYSTEM_VERSION=${CMAKE_SYSTEM_VERSION}") 96 set(LIBDVD_ADDITIONAL_ARGS "-DCMAKE_SYSTEM_NAME=${CMAKE_SYSTEM_NAME}" "-DCMAKE_SYSTEM_VERSION=${CMAKE_SYSTEM_VERSION}")
97 endif() 97 endif()
98 98
99 set(MAKE_COMMAND $(MAKE))
100 if(CMAKE_GENERATOR STREQUAL Ninja)
101 set(MAKE_COMMAND make)
102 include(ProcessorCount)
103 ProcessorCount(N)
104 if(NOT N EQUAL 0)
105 set(MAKE_COMMAND make -j${N})
106 endif()
107 endif()
108
99 if(ENABLE_DVDCSS) 109 if(ENABLE_DVDCSS)
100 if(NOT CORE_SYSTEM_NAME MATCHES windows) 110 if(NOT CORE_SYSTEM_NAME MATCHES windows)
101 set(DVDCSS_LIBRARY ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/libdvd/lib/libdvdcss.a) 111 set(DVDCSS_LIBRARY ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/libdvd/lib/libdvdcss.a)
@@ -115,6 +125,7 @@ else()
115 "CC=${CMAKE_C_COMPILER}" 125 "CC=${CMAKE_C_COMPILER}"
116 "CFLAGS=${CMAKE_C_FLAGS} ${DVDREAD_CFLAGS}" 126 "CFLAGS=${CMAKE_C_FLAGS} ${DVDREAD_CFLAGS}"
117 "LDFLAGS=${CMAKE_LD_FLAGS}" 127 "LDFLAGS=${CMAKE_LD_FLAGS}"
128 BUILD_COMMAND ${MAKE_COMMAND}
118 BUILD_BYPRODUCTS ${DVDCSS_LIBRARY}) 129 BUILD_BYPRODUCTS ${DVDCSS_LIBRARY})
119 ExternalProject_Add_Step(dvdcss autoreconf 130 ExternalProject_Add_Step(dvdcss autoreconf
120 DEPENDEES download update patch 131 DEPENDEES download update patch
@@ -156,7 +167,8 @@ else()
156 "CC=${CMAKE_C_COMPILER}" 167 "CC=${CMAKE_C_COMPILER}"
157 "CFLAGS=${CMAKE_C_FLAGS} ${DVDREAD_CFLAGS}" 168 "CFLAGS=${CMAKE_C_FLAGS} ${DVDREAD_CFLAGS}"
158 "LDFLAGS=${CMAKE_LD_FLAGS}" 169 "LDFLAGS=${CMAKE_LD_FLAGS}"
159 BUILD_BYPRODUCTS ${DVDREAD_LIBRARY}) 170 BUILD_COMMAND ${MAKE_COMMAND}
171 BUILD_BYPRODUCTS ${DVDREAD_LIBRARY})
160 ExternalProject_Add_Step(dvdread autoreconf 172 ExternalProject_Add_Step(dvdread autoreconf
161 DEPENDEES download update patch 173 DEPENDEES download update patch
162 DEPENDERS configure 174 DEPENDERS configure
@@ -203,6 +215,7 @@ else()
203 "DVDREAD_CFLAGS=${DVDREAD_CFLAGS}" 215 "DVDREAD_CFLAGS=${DVDREAD_CFLAGS}"
204 "DVDREAD_LIBS=${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/libdvd/lib/libdvdread.la" 216 "DVDREAD_LIBS=${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/libdvd/lib/libdvdread.la"
205 "LIBS=${DVDNAV_LIBS}" 217 "LIBS=${DVDNAV_LIBS}"
218 BUILD_COMMAND ${MAKE_COMMAND}
206 BUILD_BYPRODUCTS ${DVDNAV_LIBRARY}) 219 BUILD_BYPRODUCTS ${DVDNAV_LIBRARY})
207 ExternalProject_Add_Step(dvdnav autoreconf 220 ExternalProject_Add_Step(dvdnav autoreconf
208 DEPENDEES download update patch 221 DEPENDEES download update patch
diff --git a/cmake/modules/FindMMAL.cmake b/cmake/modules/FindMMAL.cmake
deleted file mode 100644
index 0b5f556..0000000
--- a/cmake/modules/FindMMAL.cmake
+++ /dev/null
@@ -1,55 +0,0 @@
1# - Try to find MMAL
2# Once done this will define
3#
4# MMAL_FOUND - system has MMAL
5# MMAL_INCLUDE_DIRS - the MMAL include directory
6# MMAL_LIBRARIES - The MMAL libraries
7
8if(PKG_CONFIG_FOUND)
9 pkg_check_modules(PC_MMAL mmal QUIET)
10endif()
11
12
13find_path(MMAL_INCLUDE_DIR NAMES interface/mmal/mmal.h PATHS ${PC_MMAL_INCLUDEDIR})
14find_library(MMAL_LIBRARY NAMES mmal libmmal PATHS ${PC_MMAL_LIBDIR})
15find_library(MMALCORE_LIBRARY NAMES mmal_core libmmal_core PATHS ${PC_MMAL_LIBDIR})
16find_library(MMALUTIL_LIBRARY NAMES mmal_util libmmal_util PATHS ${PC_MMAL_LIBDIR})
17find_library(MMALCLIENT_LIBRARY NAMES mmal_vc_client libmmal_vc_client PATHS ${PC_MMAL_LIBDIR})
18find_library(MMALCOMPONENT_LIBRARY NAMES mmal_components libmmal_components PATHS ${PC_MMAL_LIBDIR})
19find_library(BCM_LIBRARY NAMES bcm_host libbcm_host PATHS ${PC_MMAL_LIBDIR})
20find_library(VCHIQ_LIBRARY NAMES vchiq_arm libvchiq_arm PATHS ${PC_MMAL_LIBDIR})
21find_library(VCHOSTIF_LIBRARY NAMES vchostif libvchostif PATHS ${PC_MMAL_LIBDIR})
22find_library(VCILCS_LIBRARY NAMES vcilcs libvcilcs PATHS ${PC_MMAL_LIBDIR})
23find_library(VCOS_LIBRARY NAMES vcos libvcos PATHS ${PC_MMAL_LIBDIR})
24find_library(VCSM_LIBRARY NAMES vcsm libvcsm PATHS ${PC_MMAL_LIBDIR})
25find_library(CONTAINER_LIBRARY NAMES containers libcontainers PATHS ${PC_MMAL_LIBDIR})
26
27
28include(FindPackageHandleStandardArgs)
29find_package_handle_standard_args(MMAL REQUIRED_VARS MMAL_INCLUDE_DIR
30 MMAL_LIBRARY MMALCORE_LIBRARY MMALUTIL_LIBRARY
31 MMALCLIENT_LIBRARY MMALCOMPONENT_LIBRARY BCM_LIBRARY
32 VCHIQ_LIBRARY VCOS_LIBRARY VCSM_LIBRARY VCHOSTIF_LIBRARY
33 VCILCS_LIBRARY CONTAINER_LIBRARY)
34
35
36if(MMAL_FOUND)
37 set(MMAL_INCLUDE_DIRS ${MMAL_INCLUDE_DIR})
38 set(MMAL_LIBRARIES ${MMAL_LIBRARY} ${MMALCORE_LIBRARY} ${MMALUTIL_LIBRARY}
39 ${MMALCLIENT_LIBRARY} ${MMALCOMPONENT_LIBRARY}
40 ${BCM_LIBRARY} ${VCHIQ_LIBRARY} ${VCOS_LIBRARY} ${VCSM_LIBRARY}
41 ${VCHOSTIF_LIBRARY} ${VCILCS_LIBRARY} ${CONTAINER_LIBRARY}
42 CACHE STRING "mmal libraries" FORCE)
43 list(APPEND MMAL_DEFINITIONS -DHAVE_MMAL=1 -DHAS_MMAL=1)
44
45 if(NOT TARGET MMAL::MMAL)
46 add_library(MMAL::MMAL UNKNOWN IMPORTED)
47 set_target_properties(MMAL::MMAL PROPERTIES
48 IMPORTED_LOCATION "${MMAL_LIBRARIES}"
49 INTERFACE_INCLUDE_DIRECTORIES "${MMAL_INCLUDE_DIR}")
50 endif()
51endif()
52
53mark_as_advanced(MMAL_INCLUDE_DIRS MMAL_LIBRARIES MMAL_DEFINITIONS
54 MMAL_LIBRARY MMALCORE_LIBRARY MMALUTIL_LIBRARY MMALCLIENT_LIBRARY MMALCOMPONENT_LIBRARY BCM_LIBRARY
55 VCHIQ_LIBRARY VCOS_LIBRARY VCSM_LIBRARY VCHOSTIF_LIBRARY VCILCS_LIBRARY CONTAINER_LIBRARY)
diff --git a/cmake/modules/FindOpenGLES.cmake b/cmake/modules/FindOpenGLES.cmake
index 43a1367..3dbaa44 100644
--- a/cmake/modules/FindOpenGLES.cmake
+++ b/cmake/modules/FindOpenGLES.cmake
@@ -10,18 +10,14 @@
10# OPENGLES_LIBRARIES - the OpenGLES libraries 10# OPENGLES_LIBRARIES - the OpenGLES libraries
11# OPENGLES_DEFINITIONS - the OpenGLES definitions 11# OPENGLES_DEFINITIONS - the OpenGLES definitions
12 12
13if(CORE_PLATFORM_NAME_LC STREQUAL rbpi)
14 set(_brcmprefix brcm)
15endif()
16
17if(PKG_CONFIG_FOUND) 13if(PKG_CONFIG_FOUND)
18 pkg_check_modules(PC_OPENGLES ${_brcmprefix}glesv2 QUIET) 14 pkg_check_modules(PC_OPENGLES glesv2 QUIET)
19endif() 15endif()
20 16
21if(NOT CORE_SYSTEM_NAME STREQUAL darwin_embedded) 17if(NOT CORE_SYSTEM_NAME STREQUAL darwin_embedded)
22 find_path(OPENGLES_INCLUDE_DIR GLES2/gl2.h 18 find_path(OPENGLES_INCLUDE_DIR GLES2/gl2.h
23 PATHS ${PC_OPENGLES_INCLUDEDIR}) 19 PATHS ${PC_OPENGLES_INCLUDEDIR})
24 find_library(OPENGLES_gl_LIBRARY NAMES ${_brcmprefix}GLESv2 20 find_library(OPENGLES_gl_LIBRARY NAMES GLESv2
25 PATHS ${PC_OPENGLES_LIBDIR}) 21 PATHS ${PC_OPENGLES_LIBDIR})
26else() 22else()
27 find_library(OPENGLES_gl_LIBRARY NAMES OpenGLES 23 find_library(OPENGLES_gl_LIBRARY NAMES OpenGLES
diff --git a/cmake/modules/FindPlist.cmake b/cmake/modules/FindPlist.cmake
index 2c86b74..8f9b2d6 100644
--- a/cmake/modules/FindPlist.cmake
+++ b/cmake/modules/FindPlist.cmake
@@ -15,7 +15,7 @@
15# Plist::Plist - The Plist library 15# Plist::Plist - The Plist library
16 16
17if(PKG_CONFIG_FOUND) 17if(PKG_CONFIG_FOUND)
18 pkg_check_modules(PC_PLIST libplist QUIET) 18 pkg_search_module(PC_PLIST libplist-2.0 libplist QUIET)
19endif() 19endif()
20 20
21find_path(PLIST_INCLUDE_DIR plist/plist.h 21find_path(PLIST_INCLUDE_DIR plist/plist.h
@@ -23,7 +23,7 @@ find_path(PLIST_INCLUDE_DIR plist/plist.h
23 23
24set(PLIST_VERSION ${PC_PLIST_VERSION}) 24set(PLIST_VERSION ${PC_PLIST_VERSION})
25 25
26find_library(PLIST_LIBRARY NAMES plist libplist 26find_library(PLIST_LIBRARY NAMES plist-2.0 plist libplist-2.0 libplist
27 PATHS ${PC_PLIST_LIBDIR}) 27 PATHS ${PC_PLIST_LIBDIR})
28 28
29include(FindPackageHandleStandardArgs) 29include(FindPackageHandleStandardArgs)
diff --git a/cmake/platform/freebsd/rbpi.cmake b/cmake/platform/freebsd/rbpi.cmake
deleted file mode 100644
index f095693..0000000
--- a/cmake/platform/freebsd/rbpi.cmake
+++ /dev/null
@@ -1 +0,0 @@
1include(cmake/platform/linux/rbpi.cmake)
diff --git a/cmake/platform/linux/rbpi.cmake b/cmake/platform/linux/rbpi.cmake
deleted file mode 100644
index 3dde57d..0000000
--- a/cmake/platform/linux/rbpi.cmake
+++ /dev/null
@@ -1,3 +0,0 @@
1set(PLATFORM_REQUIRED_DEPS OpenGLES EGL MMAL LibInput Xkbcommon)
2set(APP_RENDER_SYSTEM gles)
3list(APPEND PLATFORM_DEFINES -D_ARMEL -DTARGET_RASPBERRY_PI)
diff --git a/cmake/platform/linux/wayland.cmake b/cmake/platform/linux/wayland.cmake
index 97cff67..916b578 100644
--- a/cmake/platform/linux/wayland.cmake
+++ b/cmake/platform/linux/wayland.cmake
@@ -1,13 +1,13 @@
1set(PLATFORM_REQUIRED_DEPS EGL WaylandProtocols>=1.7 Waylandpp>=0.2.2 LibDRM Xkbcommon>=0.4.1) 1set(PLATFORM_REQUIRED_DEPS WaylandProtocols>=1.7 Waylandpp>=0.2.2 LibDRM Xkbcommon>=0.4.1)
2set(PLATFORM_OPTIONAL_DEPS VAAPI) 2set(PLATFORM_OPTIONAL_DEPS VAAPI)
3 3
4set(WAYLAND_RENDER_SYSTEM "" CACHE STRING "Render system to use with Wayland: \"gl\" or \"gles\"") 4set(WAYLAND_RENDER_SYSTEM "" CACHE STRING "Render system to use with Wayland: \"gl\" or \"gles\"")
5 5
6if(WAYLAND_RENDER_SYSTEM STREQUAL "gl") 6if(WAYLAND_RENDER_SYSTEM STREQUAL "gl")
7 list(APPEND PLATFORM_REQUIRED_DEPS OpenGl) 7 list(APPEND PLATFORM_REQUIRED_DEPS OpenGl EGL)
8 set(APP_RENDER_SYSTEM gl) 8 set(APP_RENDER_SYSTEM gl)
9elseif(WAYLAND_RENDER_SYSTEM STREQUAL "gles") 9elseif(WAYLAND_RENDER_SYSTEM STREQUAL "gles")
10 list(APPEND PLATFORM_REQUIRED_DEPS OpenGLES) 10 list(APPEND PLATFORM_REQUIRED_DEPS OpenGLES EGL)
11 set(APP_RENDER_SYSTEM gles) 11 set(APP_RENDER_SYSTEM gles)
12else() 12else()
13 message(SEND_ERROR "You need to decide whether you want to use GL- or GLES-based rendering in combination with the Wayland windowing system. Please set WAYLAND_RENDER_SYSTEM to either \"gl\" or \"gles\". For normal desktop systems, you will usually want to use \"gl\".") 13 message(SEND_ERROR "You need to decide whether you want to use GL- or GLES-based rendering in combination with the Wayland windowing system. Please set WAYLAND_RENDER_SYSTEM to either \"gl\" or \"gles\". For normal desktop systems, you will usually want to use \"gl\".")
diff --git a/cmake/platform/windows/defines.txt b/cmake/platform/windows/defines.txt
index 1a7609a..137a3d6 100644
--- a/cmake/platform/windows/defines.txt
+++ b/cmake/platform/windows/defines.txt
@@ -1 +1 @@
-DTARGET_WINDOWS -DTARGET_WINDOWS_DESKTOP -DNOMINMAX -D_CRT_SECURE_NO_WARNINGS -D_WINSOCKAPI_ \ No newline at end of file -DTARGET_WINDOWS -DTARGET_WINDOWS_DESKTOP -DNOMINMAX -D_CRT_SECURE_NO_WARNINGS \ No newline at end of file
diff --git a/cmake/platform/windowsstore/defines.txt b/cmake/platform/windowsstore/defines.txt
index e962feb..09e1b08 100644
--- a/cmake/platform/windowsstore/defines.txt
+++ b/cmake/platform/windowsstore/defines.txt
@@ -1 +1 @@
-DTARGET_WINDOWS -DTARGET_WINDOWS_STORE -DNOMINMAX -D_CRT_SECURE_NO_WARNINGS -D_WINSOCKAPI_ \ No newline at end of file -DTARGET_WINDOWS -DTARGET_WINDOWS_STORE -DNOMINMAX -D_CRT_SECURE_NO_WARNINGS \ No newline at end of file
diff --git a/cmake/scripts/android/ArchSetup.cmake b/cmake/scripts/android/ArchSetup.cmake
index 1e529de..888d042 100644
--- a/cmake/scripts/android/ArchSetup.cmake
+++ b/cmake/scripts/android/ArchSetup.cmake
@@ -39,6 +39,7 @@ endif()
39list(APPEND SYSTEM_DEFINES -DHAS_ZEROCONF) 39list(APPEND SYSTEM_DEFINES -DHAS_ZEROCONF)
40 40
41set(ENABLE_X11 OFF CACHE BOOL "" FORCE) 41set(ENABLE_X11 OFF CACHE BOOL "" FORCE)
42set(ENABLE_CLANGTIDY OFF CACHE BOOL "Enable clang-tidy support?" FORCE)
42set(ENABLE_OPTICAL OFF CACHE BOOL "" FORCE) 43set(ENABLE_OPTICAL OFF CACHE BOOL "" FORCE)
43set(ENABLE_MDNS OFF CACHE BOOL "" FORCE) 44set(ENABLE_MDNS OFF CACHE BOOL "" FORCE)
44 45
diff --git a/cmake/scripts/common/ArchSetup.cmake b/cmake/scripts/common/ArchSetup.cmake
index 2e1eb12..978a7fa 100644
--- a/cmake/scripts/common/ArchSetup.cmake
+++ b/cmake/scripts/common/ArchSetup.cmake
@@ -108,6 +108,21 @@ if(HAVE_INTTYPES_H)
108 list(APPEND SYSTEM_DEFINES -DHAVE_INTTYPES_H=1) 108 list(APPEND SYSTEM_DEFINES -DHAVE_INTTYPES_H=1)
109endif() 109endif()
110 110
111set(CMAKE_REQUIRED_DEFINITIONS "-D_GNU_SOURCE")
112check_symbol_exists("STATX_BTIME" "linux/stat.h" HAVE_STATX)
113if(HAVE_STATX)
114 check_function_exists("statx" FOUND_STATX_FUNCTION)
115 if(FOUND_STATX_FUNCTION)
116 message(STATUS "statx is available")
117 list(APPEND ARCH_DEFINES "-DHAVE_STATX=1")
118 else()
119 message(STATUS "statx flags found but no linkable function : C library too old ?")
120 endif()
121else()
122 message(STATUS "statx() not found")
123endif()
124set(CMAKE_REQUIRED_DEFINITIONS "")
125
111find_package(SSE) 126find_package(SSE)
112foreach(_sse SSE SSE2 SSE3 SSSE3 SSE4_1 SSE4_2 AVX AVX2) 127foreach(_sse SSE SSE2 SSE3 SSSE3 SSE4_1 SSE4_2 AVX AVX2)
113 if(${${_sse}_FOUND}) 128 if(${${_sse}_FOUND})
@@ -144,3 +159,5 @@ if(NOT MSVC)
144 add_options(ALL_LANGUAGES DEBUG "-g" "-D_DEBUG") 159 add_options(ALL_LANGUAGES DEBUG "-g" "-D_DEBUG")
145endif() 160endif()
146 161
162# set for compile info to help detect binary addons
163set(APP_SHARED_LIBRARY_SUFFIX "${CMAKE_SHARED_LIBRARY_SUFFIX}")
diff --git a/cmake/scripts/common/HandleDepends.cmake b/cmake/scripts/common/HandleDepends.cmake
index 7cacd25..c737c6a 100644
--- a/cmake/scripts/common/HandleDepends.cmake
+++ b/cmake/scripts/common/HandleDepends.cmake
@@ -185,7 +185,7 @@ function(add_addon_depends addon searchpath)
185 set(EXTERNALPROJECT_SETUP PREFIX ${BUILD_DIR}/${id} 185 set(EXTERNALPROJECT_SETUP PREFIX ${BUILD_DIR}/${id}
186 CMAKE_ARGS ${extraflags} ${BUILD_ARGS} 186 CMAKE_ARGS ${extraflags} ${BUILD_ARGS}
187 PATCH_COMMAND ${PATCH_COMMAND} 187 PATCH_COMMAND ${PATCH_COMMAND}
188 "${INSTALL_COMMAND}") 188 ${INSTALL_COMMAND})
189 189
190 if(CMAKE_VERSION VERSION_GREATER 3.5.9) 190 if(CMAKE_VERSION VERSION_GREATER 3.5.9)
191 list(APPEND EXTERNALPROJECT_SETUP GIT_SHALLOW 1) 191 list(APPEND EXTERNALPROJECT_SETUP GIT_SHALLOW 1)
@@ -201,7 +201,7 @@ function(add_addon_depends addon searchpath)
201 externalproject_add(${id} 201 externalproject_add(${id}
202 GIT_REPOSITORY ${url} 202 GIT_REPOSITORY ${url}
203 GIT_TAG ${revision} 203 GIT_TAG ${revision}
204 "${EXTERNALPROJECT_SETUP}") 204 ${EXTERNALPROJECT_SETUP})
205 205
206 # For patchfiles to work, disable (users globally set) autocrlf=true 206 # For patchfiles to work, disable (users globally set) autocrlf=true
207 if(CMAKE_MINIMUM_REQUIRED_VERSION VERSION_GREATER 3.7) 207 if(CMAKE_MINIMUM_REQUIRED_VERSION VERSION_GREATER 3.7)
@@ -249,12 +249,12 @@ function(add_addon_depends addon searchpath)
249 "${URL_HASH_COMMAND}" 249 "${URL_HASH_COMMAND}"
250 DOWNLOAD_DIR ${DOWNLOAD_DIR} 250 DOWNLOAD_DIR ${DOWNLOAD_DIR}
251 CONFIGURE_COMMAND ${CONFIGURE_COMMAND} 251 CONFIGURE_COMMAND ${CONFIGURE_COMMAND}
252 "${EXTERNALPROJECT_SETUP}") 252 ${EXTERNALPROJECT_SETUP})
253 endif() 253 endif()
254 else() 254 else()
255 externalproject_add(${id} 255 externalproject_add(${id}
256 SOURCE_DIR ${dir} 256 SOURCE_DIR ${dir}
257 "${EXTERNALPROJECT_SETUP}") 257 ${EXTERNALPROJECT_SETUP})
258 endif() 258 endif()
259 259
260 if(deps) 260 if(deps)
diff --git a/cmake/scripts/common/Macros.cmake b/cmake/scripts/common/Macros.cmake
index f7327e3..d896651 100644
--- a/cmake/scripts/common/Macros.cmake
+++ b/cmake/scripts/common/Macros.cmake
@@ -626,6 +626,9 @@ endfunction()
626# APP_VERSION_TAG_LC - lowercased app version tag 626# APP_VERSION_TAG_LC - lowercased app version tag
627# APP_VERSION - the app version (${APP_VERSION_MAJOR}.${APP_VERSION_MINOR}-${APP_VERSION_TAG}) 627# APP_VERSION - the app version (${APP_VERSION_MAJOR}.${APP_VERSION_MINOR}-${APP_VERSION_TAG})
628# APP_ADDON_API - the addon API version in the form of 16.9.702 628# APP_ADDON_API - the addon API version in the form of 16.9.702
629# ADDON_REPOS - official addon repositories and their origin path delimited by pipe
630# - e.g. repository.xbmc.org|https://mirrors.kodi.tv -
631# (multiple repo/path-sets are delimited by comma)
629# FILE_VERSION - file version in the form of 16,9,702,0 - Windows only 632# FILE_VERSION - file version in the form of 16,9,702,0 - Windows only
630# JSONRPC_VERSION - the json api version in the form of 8.3.0 633# JSONRPC_VERSION - the json api version in the form of 8.3.0
631# 634#
@@ -646,6 +649,7 @@ macro(core_find_versions)
646 string(REGEX REPLACE "([^ ;]*) ([^;]*)" "\\1;\\2" version_list "${version_list};${json_version}") 649 string(REGEX REPLACE "([^ ;]*) ([^;]*)" "\\1;\\2" version_list "${version_list};${json_version}")
647 set(version_props 650 set(version_props
648 ADDON_API 651 ADDON_API
652 ADDON_REPOS
649 APP_NAME 653 APP_NAME
650 APP_PACKAGE 654 APP_PACKAGE
651 COMPANY_NAME 655 COMPANY_NAME
@@ -676,12 +680,13 @@ macro(core_find_versions)
676 string(TOLOWER ${APP_VERSION_TAG} APP_VERSION_TAG_LC) 680 string(TOLOWER ${APP_VERSION_TAG} APP_VERSION_TAG_LC)
677 endif() 681 endif()
678 string(REPLACE "." "," FILE_VERSION ${APP_ADDON_API}.0) 682 string(REPLACE "." "," FILE_VERSION ${APP_ADDON_API}.0)
683 set(ADDON_REPOS ${APP_ADDON_REPOS})
679 set(JSONRPC_VERSION ${APP_JSONRPC_VERSION}) 684 set(JSONRPC_VERSION ${APP_JSONRPC_VERSION})
680 685
681 # Set defines used in addon.xml.in and read from versions.h to set add-on 686 # Set defines used in addon.xml.in and read from versions.h to set add-on
682 # version parts automatically 687 # version parts automatically
683 # This part is nearly identical to "AddonHelpers.cmake", except location of versions.h 688 # This part is nearly identical to "AddonHelpers.cmake", except location of versions.h
684 file(STRINGS ${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/versions.h BIN_ADDON_PARTS) 689 file(STRINGS ${CORE_SOURCE_DIR}/xbmc/addons/kodi-dev-kit/include/kodi/versions.h BIN_ADDON_PARTS)
685 foreach(loop_var ${BIN_ADDON_PARTS}) 690 foreach(loop_var ${BIN_ADDON_PARTS})
686 string(FIND "${loop_var}" "#define ADDON_" matchres) 691 string(FIND "${loop_var}" "#define ADDON_" matchres)
687 if("${matchres}" EQUAL 0) 692 if("${matchres}" EQUAL 0)
@@ -748,5 +753,5 @@ macro(find_addon_xml_in_files)
748 endforeach() 753 endforeach()
749 754
750 # Append also versions.h to depends 755 # Append also versions.h to depends
751 list(APPEND ADDON_XML_DEPENDS "${CORE_SOURCE_DIR}/xbmc/addons/kodi-addon-dev-kit/include/kodi/versions.h") 756 list(APPEND ADDON_XML_DEPENDS "${CORE_SOURCE_DIR}/xbmc/addons/kodi-dev-kit/include/kodi/versions.h")
752endmacro() 757endmacro()
diff --git a/cmake/scripts/common/ProjectMacros.cmake b/cmake/scripts/common/ProjectMacros.cmake
index fba5252..67d65b2 100644
--- a/cmake/scripts/common/ProjectMacros.cmake
+++ b/cmake/scripts/common/ProjectMacros.cmake
@@ -77,12 +77,12 @@ endfunction()
77 77
78function(sca_add_tests) 78function(sca_add_tests)
79 find_program(CLANGCHECK_COMMAND clang-check) 79 find_program(CLANGCHECK_COMMAND clang-check)
80 find_program(CPPCHECK_COMMAND cppcheck) 80 find_program(CPPCHECK_EXECUTABLE cppcheck)
81 if(CLANGCHECK_COMMAND AND CMAKE_EXPORT_COMPILE_COMMANDS) 81 if(CLANGCHECK_COMMAND AND CMAKE_EXPORT_COMPILE_COMMANDS)
82 configure_file(${PROJECT_SOURCE_DIR}/cmake/scripts/linux/clang-check-test.sh.in 82 configure_file(${PROJECT_SOURCE_DIR}/cmake/scripts/linux/clang-check-test.sh.in
83 ${CORE_BUILD_DIR}/clang-check-test.sh) 83 ${CORE_BUILD_DIR}/clang-check-test.sh)
84 endif() 84 endif()
85 if(CPPCHECK_COMMAND) 85 if(CPPCHECK_EXECUTABLE)
86 configure_file(${PROJECT_SOURCE_DIR}/cmake/scripts/linux/cppcheck-test.sh.in 86 configure_file(${PROJECT_SOURCE_DIR}/cmake/scripts/linux/cppcheck-test.sh.in
87 ${CORE_BUILD_DIR}/cppcheck-test.sh) 87 ${CORE_BUILD_DIR}/cppcheck-test.sh)
88 set(CPPCHECK_INCLUDES) 88 set(CPPCHECK_INCLUDES)
@@ -99,9 +99,9 @@ function(sca_add_tests)
99 COMMAND ${CORE_BUILD_DIR}/clang-check-test.sh ${CLANGCHECK_COMMAND} ${src} 99 COMMAND ${CORE_BUILD_DIR}/clang-check-test.sh ${CLANGCHECK_COMMAND} ${src}
100 CONFIGURATIONS analyze clang-check) 100 CONFIGURATIONS analyze clang-check)
101 endif() 101 endif()
102 if(CPPCHECK_COMMAND) 102 if(CPPCHECK_EXECUTABLE)
103 add_test(NAME cppcheck+${name} 103 add_test(NAME cppcheck+${name}
104 COMMAND ${CORE_BUILD_DIR}/cppcheck-test.sh ${CPPCHECK_COMMAND} ${src} ${CPPCHECK_INCLUDES} 104 COMMAND ${CORE_BUILD_DIR}/cppcheck-test.sh ${CPPCHECK_EXECUTABLE} ${src} ${CPPCHECK_INCLUDES}
105 CONFIGURATIONS analyze cppcheck) 105 CONFIGURATIONS analyze cppcheck)
106 endif() 106 endif()
107 endif() 107 endif()
diff --git a/cmake/scripts/darwin_embedded/ExtraTargets.cmake b/cmake/scripts/darwin_embedded/ExtraTargets.cmake
index 2b9980a..01ab632 100644
--- a/cmake/scripts/darwin_embedded/ExtraTargets.cmake
+++ b/cmake/scripts/darwin_embedded/ExtraTargets.cmake
@@ -7,9 +7,11 @@ if(CORE_PLATFORM_NAME_LC STREQUAL tvos)
7 set(ENTITLEMENTS_OUT_PATH "${CMAKE_BINARY_DIR}/CMakeFiles/${TOPSHELF_EXTENSION_NAME}.dir/TopShelf.entitlements") 7 set(ENTITLEMENTS_OUT_PATH "${CMAKE_BINARY_DIR}/CMakeFiles/${TOPSHELF_EXTENSION_NAME}.dir/TopShelf.entitlements")
8 8
9 set(SOURCES 9 set(SOURCES
10 ${TOPSHELF_DIR}/ServiceProvider.m 10 ${TOPSHELF_DIR}/../../ios-common/DarwinEmbedUtils.mm
11 ${TOPSHELF_DIR}/../tvosShared.m) 11 ${TOPSHELF_DIR}/ServiceProvider.mm
12 ${TOPSHELF_DIR}/../tvosShared.mm)
12 set(HEADERS 13 set(HEADERS
14 ${TOPSHELF_DIR}/../../ios-common/DarwinEmbedUtils.h
13 ${TOPSHELF_DIR}/ServiceProvider.h 15 ${TOPSHELF_DIR}/ServiceProvider.h
14 ${TOPSHELF_DIR}/../tvosShared.h) 16 ${TOPSHELF_DIR}/../tvosShared.h)
15 add_executable(${TOPSHELF_EXTENSION_NAME} MACOSX_BUNDLE ${SOURCES} ${HEADERS}) 17 add_executable(${TOPSHELF_EXTENSION_NAME} MACOSX_BUNDLE ${SOURCES} ${HEADERS})
@@ -21,5 +23,10 @@ if(CORE_PLATFORM_NAME_LC STREQUAL tvos)
21 XCODE_ATTRIBUTE_CODE_SIGN_ENTITLEMENTS ${ENTITLEMENTS_OUT_PATH}) 23 XCODE_ATTRIBUTE_CODE_SIGN_ENTITLEMENTS ${ENTITLEMENTS_OUT_PATH})
22 target_link_libraries(${TOPSHELF_EXTENSION_NAME} "-framework TVServices" "-framework Foundation") 24 target_link_libraries(${TOPSHELF_EXTENSION_NAME} "-framework TVServices" "-framework Foundation")
23 25
26 add_custom_command(TARGET ${TOPSHELF_EXTENSION_NAME} POST_BUILD
27 COMMAND "NATIVEPREFIX=${NATIVEPREFIX}"
28 ${CMAKE_SOURCE_DIR}/tools/darwin/Support/Codesign-topshelf.command
29 )
30
24 add_dependencies(${APP_NAME_LC} ${TOPSHELF_EXTENSION_NAME}) 31 add_dependencies(${APP_NAME_LC} ${TOPSHELF_EXTENSION_NAME})
25endif() 32endif()
diff --git a/cmake/scripts/linux/ArchSetup.cmake b/cmake/scripts/linux/ArchSetup.cmake
index 04fc6e3..b68efe3 100644
--- a/cmake/scripts/linux/ArchSetup.cmake
+++ b/cmake/scripts/linux/ArchSetup.cmake
@@ -37,16 +37,6 @@ else()
37 endif() 37 endif()
38endif() 38endif()
39 39
40# temp until further cleanup is done
41# add Raspberry Pi 2 and 3 specific flags
42if(CORE_PLATFORM_NAME_LC STREQUAL rbpi)
43 if(CPU MATCHES "cortex-a7")
44 set(NEON_FLAGS "-fPIC -mcpu=cortex-a7 -mfloat-abi=hard -mfpu=neon-vfpv4 -mvectorize-with-neon-quad")
45 elseif(CPU MATCHES "cortex-a53")
46 set(NEON_FLAGS "-fPIC -mcpu=cortex-a53 -mfloat-abi=hard -mfpu=neon-fp-armv8 -mvectorize-with-neon-quad")
47 endif()
48endif()
49
50if((CMAKE_BUILD_TYPE STREQUAL Release OR CMAKE_BUILD_TYPE STREQUAL MinSizeRel) 40if((CMAKE_BUILD_TYPE STREQUAL Release OR CMAKE_BUILD_TYPE STREQUAL MinSizeRel)
51 AND CMAKE_COMPILER_IS_GNUCXX) 41 AND CMAKE_COMPILER_IS_GNUCXX)
52 # Make sure we strip binaries in Release build 42 # Make sure we strip binaries in Release build
diff --git a/cmake/scripts/linux/Install.cmake b/cmake/scripts/linux/Install.cmake
index 36c0299..acfd3ff 100644
--- a/cmake/scripts/linux/Install.cmake
+++ b/cmake/scripts/linux/Install.cmake
@@ -199,7 +199,7 @@ if(ENABLE_EVENTCLIENTS)
199 COMPONENT kodi-eventclients-common) 199 COMPONENT kodi-eventclients-common)
200 200
201 # Install kodi-eventclients-common python files 201 # Install kodi-eventclients-common python files
202 file(WRITE ${CMAKE_BINARY_DIR}/packages/deb/defs.py ICON_PATH="usr/share/pixmaps/${APP_NAME_LC}/") 202 file(WRITE ${CMAKE_BINARY_DIR}/packages/deb/defs.py ICON_PATH="/usr/share/pixmaps/${APP_NAME_LC}/")
203 install(PROGRAMS ${CMAKE_BINARY_DIR}/packages/deb/defs.py 203 install(PROGRAMS ${CMAKE_BINARY_DIR}/packages/deb/defs.py
204 ${CMAKE_SOURCE_DIR}/tools/EventClients/lib/python/__init__.py 204 ${CMAKE_SOURCE_DIR}/tools/EventClients/lib/python/__init__.py
205 ${CMAKE_SOURCE_DIR}/tools/EventClients/Clients/PS3BDRemote/ps3_remote.py 205 ${CMAKE_SOURCE_DIR}/tools/EventClients/Clients/PS3BDRemote/ps3_remote.py
diff --git a/cmake/scripts/osx/Install.cmake b/cmake/scripts/osx/Install.cmake
index aca31b4..629bc09 100644
--- a/cmake/scripts/osx/Install.cmake
+++ b/cmake/scripts/osx/Install.cmake
@@ -30,12 +30,29 @@ add_dependencies(bundle ${APP_NAME_LC})
30configure_file(${CMAKE_SOURCE_DIR}/tools/darwin/packaging/osx/mkdmg-osx.sh.in 30configure_file(${CMAKE_SOURCE_DIR}/tools/darwin/packaging/osx/mkdmg-osx.sh.in
31 ${CMAKE_BINARY_DIR}/tools/darwin/packaging/osx/mkdmg-osx.sh @ONLY) 31 ${CMAKE_BINARY_DIR}/tools/darwin/packaging/osx/mkdmg-osx.sh @ONLY)
32 32
33string(TOLOWER ${CORE_BUILD_CONFIG} CORE_BUILD_CONFIG_LOWERCASED)
34if(${CORE_BUILD_CONFIG_LOWERCASED} STREQUAL "release")
35 set(ALLOW_DEBUGGER "false")
36else()
37 set(ALLOW_DEBUGGER "true")
38endif()
39configure_file(${CMAKE_SOURCE_DIR}/tools/darwin/packaging/osx/Kodi.entitlements.in
40 ${CMAKE_BINARY_DIR}/tools/darwin/packaging/osx/Kodi.entitlements @ONLY)
41
33add_custom_target(dmg 42add_custom_target(dmg
34 COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_SOURCE_DIR}/tools/darwin/packaging/osx/ 43 COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_SOURCE_DIR}/tools/darwin/packaging/osx/
35 ${CMAKE_BINARY_DIR}/tools/darwin/packaging/osx/ 44 ${CMAKE_BINARY_DIR}/tools/darwin/packaging/osx/
36 COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_SOURCE_DIR}/tools/darwin/packaging/media/osx/ 45 COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_SOURCE_DIR}/tools/darwin/packaging/media/osx/
37 ${CMAKE_BINARY_DIR}/tools/darwin/packaging/media/osx/ 46 ${CMAKE_BINARY_DIR}/tools/darwin/packaging/media/osx/
38 COMMAND ./mkdmg-osx.sh ${CORE_BUILD_CONFIG} 47 COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_SOURCE_DIR}/tools/darwin/Support/Codesign.command
48 ${CMAKE_BINARY_DIR}/tools/darwin/packaging/osx/Codesign.command
49 COMMAND "CODESIGNING_FOLDER_PATH=${PACKAGE_OUTPUT_DIR}/${APP_NAME}.app"
50 "DEV_ACCOUNT=${DEV_ACCOUNT}"
51 "DEV_ACCOUNT_PASSWORD=${DEV_ACCOUNT_PASSWORD}"
52 "DEV_TEAM=${DEV_TEAM}"
53 "EXPANDED_CODE_SIGN_IDENTITY_NAME=${CODE_SIGN_IDENTITY}"
54 "PLATFORM_NAME=${PLATFORM}"
55 ./mkdmg-osx.sh ${CORE_BUILD_CONFIG_LOWERCASED}
39 WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/tools/darwin/packaging/osx) 56 WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/tools/darwin/packaging/osx)
40set_target_properties(dmg PROPERTIES FOLDER "Build Utilities") 57set_target_properties(dmg PROPERTIES FOLDER "Build Utilities")
41add_dependencies(dmg bundle) 58add_dependencies(dmg bundle)
diff --git a/cmake/treedata/common/rbpi/rbpi.txt b/cmake/treedata/common/rbpi/rbpi.txt
deleted file mode 100644
index dc268e7..0000000
--- a/cmake/treedata/common/rbpi/rbpi.txt
+++ /dev/null
@@ -1,2 +0,0 @@
1xbmc/cores/omxplayer cores/omxplayer
2xbmc/windowing/rpi windowing/rpi
diff --git a/cmake/treedata/common/subdirs.txt b/cmake/treedata/common/subdirs.txt
index 8131113..1988d5b 100644
--- a/cmake/treedata/common/subdirs.txt
+++ b/cmake/treedata/common/subdirs.txt
@@ -2,21 +2,28 @@ xbmc xbmc
2xbmc/addons addons 2xbmc/addons addons
3xbmc/addons/addoninfo addons_addoninfo 3xbmc/addons/addoninfo addons_addoninfo
4xbmc/addons/binary-addons addons_binary-addons 4xbmc/addons/binary-addons addons_binary-addons
5xbmc/addons/gui addons_gui
5xbmc/addons/interfaces addons_interfaces 6xbmc/addons/interfaces addons_interfaces
6xbmc/addons/interfaces/gui addons_interfaces_gui 7xbmc/addons/interfaces/gui addons_interfaces_gui
7xbmc/addons/interfaces/gui/controls addons_interfaces_gui_controls 8xbmc/addons/interfaces/gui/controls addons_interfaces_gui_controls
8xbmc/addons/interfaces/gui/dialogs addons_interfaces_gui_dialogs 9xbmc/addons/interfaces/gui/dialogs addons_interfaces_gui_dialogs
9xbmc/addons/kodi-addon-dev-kit/include/kodi addons_kodi-addon-dev-kit_include_kodi 10xbmc/addons/kodi-dev-kit/include/kodi addons_kodi-dev-kit_include_kodi
10xbmc/addons/kodi-addon-dev-kit/include/kodi/addon-instance addons_kodi-addon-dev-kit_include_kodi_addon-instance 11xbmc/addons/kodi-dev-kit/include/kodi/addon-instance addons_kodi-dev-kit_include_kodi_addon-instance
11xbmc/addons/kodi-addon-dev-kit/include/kodi/addon-instance/pvr addons_kodi-addon-dev-kit_include_kodi_addon-instance_pvr 12xbmc/addons/kodi-dev-kit/include/kodi/addon-instance/peripheral addons_kodi-dev-kit_include_kodi_addon-instance_peripheral
12xbmc/addons/kodi-addon-dev-kit/include/kodi/c-api addons_kodi-addon-dev-kit_include_kodi_c-api 13xbmc/addons/kodi-dev-kit/include/kodi/addon-instance/pvr addons_kodi-dev-kit_include_kodi_addon-instance_pvr
13xbmc/addons/kodi-addon-dev-kit/include/kodi/c-api/addon-instance addons_kodi-addon-dev-kit_include_kodi_c-api_addon-instance 14xbmc/addons/kodi-dev-kit/include/kodi/c-api addons_kodi-dev-kit_include_kodi_c-api
14xbmc/addons/kodi-addon-dev-kit/include/kodi/c-api/addon-instance/pvr addons_kodi-addon-dev-kit_include_kodi_c-api_addon-instance_pvr 15xbmc/addons/kodi-dev-kit/include/kodi/c-api/addon-instance addons_kodi-dev-kit_include_kodi_c-api_addon-instance
15xbmc/addons/kodi-addon-dev-kit/include/kodi/gui addons_kodi-addon-dev-kit_include_kodi_gui 16xbmc/addons/kodi-dev-kit/include/kodi/c-api/addon-instance/pvr addons_kodi-dev-kit_include_kodi_c-api_addon-instance_pvr
16xbmc/addons/kodi-addon-dev-kit/include/kodi/gui/controls addons_kodi-addon-dev-kit_include_kodi_gui_controls 17xbmc/addons/kodi-dev-kit/include/kodi/c-api/gui addons_kodi-dev-kit_include_kodi_c-api_gui
17xbmc/addons/kodi-addon-dev-kit/include/kodi/gui/dialogs addons_kodi-addon-dev-kit_include_kodi_gui_dialogs 18xbmc/addons/kodi-dev-kit/include/kodi/c-api/gui/controls addons_kodi-dev-kit_include_kodi_c-api_gui_controls
18xbmc/addons/kodi-addon-dev-kit/include/kodi/gui/gl addons_kodi-addon-dev-kit_include_kodi_gui_gl 19xbmc/addons/kodi-dev-kit/include/kodi/c-api/gui/dialogs addons_kodi-dev-kit_include_kodi_c-api_gui_dialogs
19xbmc/addons/kodi-addon-dev-kit/include/kodi/tools addons_kodi-addon-dev-kit_include_kodi_tools 20xbmc/addons/kodi-dev-kit/include/kodi/c-api/gui/input addons_kodi-dev-kit_include_kodi_c-api_gui_input
21xbmc/addons/kodi-dev-kit/include/kodi/gui addons_kodi-dev-kit_include_kodi_gui
22xbmc/addons/kodi-dev-kit/include/kodi/gui/controls addons_kodi-dev-kit_include_kodi_gui_controls
23xbmc/addons/kodi-dev-kit/include/kodi/gui/dialogs addons_kodi-dev-kit_include_kodi_gui_dialogs
24xbmc/addons/kodi-dev-kit/include/kodi/gui/gl addons_kodi-dev-kit_include_kodi_gui_gl
25xbmc/addons/kodi-dev-kit/include/kodi/gui/input addons_kodi-dev-kit_include_kodi_gui_input
26xbmc/addons/kodi-dev-kit/include/kodi/tools addons_kodi-dev-kit_include_kodi_tools
20xbmc/addons/settings addons_settings 27xbmc/addons/settings addons_settings
21xbmc/commons commons 28xbmc/commons commons
22xbmc/dbwrappers dbwrappers 29xbmc/dbwrappers dbwrappers
@@ -26,6 +33,7 @@ xbmc/guilib guilib
26xbmc/guilib/guiinfo guilib_guiinfo 33xbmc/guilib/guiinfo guilib_guiinfo
27xbmc/input input 34xbmc/input input
28xbmc/input/actions input/actions 35xbmc/input/actions input/actions
36xbmc/input/button input/button
29xbmc/input/joysticks input/joysticks 37xbmc/input/joysticks input/joysticks
30xbmc/input/joysticks/dialogs input/joysticks/dialogs 38xbmc/input/joysticks/dialogs input/joysticks/dialogs
31xbmc/input/joysticks/generic input/joysticks/generic 39xbmc/input/joysticks/generic input/joysticks/generic
diff --git a/cmake/treedata/freebsd/subdirs.txt b/cmake/treedata/freebsd/subdirs.txt
index 79e3462..a7433a5 100644
--- a/cmake/treedata/freebsd/subdirs.txt
+++ b/cmake/treedata/freebsd/subdirs.txt
@@ -1,5 +1,3 @@
1xbmc/cores/RetroPlayer/process/rbpi cores/RetroPlayer/process/rbpi
2xbmc/cores/VideoPlayer/Process/rbpi cores/VideoPlayer/Process/rbpi
3xbmc/input/touch input/touch 1xbmc/input/touch input/touch
4xbmc/input/touch/generic input/touch/generic 2xbmc/input/touch/generic input/touch/generic
5xbmc/platform/freebsd platform/freebsd 3xbmc/platform/freebsd platform/freebsd
diff --git a/cmake/treedata/linux/subdirs.txt b/cmake/treedata/linux/subdirs.txt
index 51a7cbd..35c8d88 100644
--- a/cmake/treedata/linux/subdirs.txt
+++ b/cmake/treedata/linux/subdirs.txt
@@ -1,5 +1,3 @@
1xbmc/cores/RetroPlayer/process/rbpi cores/RetroPlayer/process/rbpi
2xbmc/cores/VideoPlayer/Process/rbpi cores/VideoPlayer/Process/rbpi
3xbmc/input/touch input/touch 1xbmc/input/touch input/touch
4xbmc/input/touch/generic input/touch/generic 2xbmc/input/touch/generic input/touch/generic
5xbmc/platform/linux platform/linux 3xbmc/platform/linux platform/linux