summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'media-tv/kodi/kodi-16.0.ebuild')
-rw-r--r--media-tv/kodi/kodi-16.0.ebuild24
1 files changed, 23 insertions, 1 deletions
diff --git a/media-tv/kodi/kodi-16.0.ebuild b/media-tv/kodi/kodi-16.0.ebuild
index 47aac929ac75..faa7ec2919b6 100644
--- a/media-tv/kodi/kodi-16.0.ebuild
+++ b/media-tv/kodi/kodi-16.0.ebuild
@@ -178,7 +178,29 @@ src_prepare() {
multijob_finish
elibtoolize
- if [[ ${PV} == "9999" ]] || use java ; then #558798
+ # Cross-compiler support
+ # We need JsonSchemaBuilder and TexturePacker binaries for the host system
+ # Later we need libsquish for the target system
+ if tc-is-cross-compiler ; then
+ mkdir "${WORKDIR}"/${CBUILD} || die
+ pushd "${WORKDIR}"/${CBUILD} >/dev/null || die
+ einfo "Building host tools"
+ cp -a "$S"/{tools,xbmc} ./ || die
+ local tools=( JsonSchemaBuilder )
+ use texturepacker && tools+=( TexturePacker )
+ for tool in "${tools[@]}" ; do
+ tc-env_build emake -C tools/depends/native/$tool
+ mkdir "$S"/tools/depends/native/$tool/bin || die
+ ln -s "${WORKDIR}"/${CBUILD}/tools/depends/native/$tool/bin/$tool "$S"/tools/depends/native/$tool/bin/$tool || die
+ done
+ popd >/dev/null || die
+
+ emake -f codegenerator.mk
+
+ # Binary kodi.bin links against libsquish,
+ # so we need libsquish compiled for the target system
+ emake -C tools/depends/native/libsquish-native/ CXX=$(tc-getCXX)
+ elif [[ ${PV} == "9999" ]] || use java ; then #558798
tc-env_build emake -f codegenerator.mk
fi