add new arch m32c (newlib toolchain)
[openadk.git] / package / kodi / Makefile
blob6ab088e59eb5a39fd740d8b3496365176178dfec
1 # This file is part of the OpenADK project. OpenADK is copyrighted
2 # material, please see the LICENCE file in the top-level directory.
4 include $(ADK_TOPDIR)/rules.mk
6 PKG_NAME:= kodi
7 PKG_VERSION:= 16.1
8 PKG_RELEASE:= 2
9 PKG_HASH:= 7d82c8aff2715c83deecdf10c566e26105bec0473af530a1356d4c747ebdfd10
10 PKG_DESCR:= software media player
11 PKG_SECTION:= mm/video
12 PKG_DEPENDS:= boost python2 libsquish libbluray libressl libxz
13 PKG_DEPENDS+= libass libmpeg2 libmad libdbus libglew mesa libxshmfence
14 PKG_DEPENDS+= libjpeg-turbo libogg libvorbis libmodplug libcurl
15 PKG_DEPENDS+= libflac libbz2 libtiff liblzo libnettle librtmp
16 PKG_DEPENDS+= yajl tinyxml libsqlite libpcrecpp libpng libncurses
17 PKG_DEPENDS+= libpcre libcdio libfreetype libsamplerate libuuid
18 PKG_DEPENDS+= taglib libjasper libmp3lame libmicrohttpd libgtk2
19 PKG_DEPENDS+= libgpg-error libudev python2-mod-sqlite libffmpeg
20 PKG_DEPENDS+= libxslt libvorbisenc alsa-lib glib libglu libdcadec
21 PKG_BUILDDEP:= boost python2 libass ffmpeg libglew rtmpdump
22 PKG_BUILDDEP+= libmpeg2 libmad libjpeg-turbo libogg libvorbis
23 PKG_BUILDDEP+= curl flac bzip2 libtiff liblzo yajl mesa
24 PKG_BUILDDEP+= tinyxml sqlite pcre libpng libcdio freetype
25 PKG_BUILDDEP+= libsamplerate taglib libjasper lame libmicrohttpd
26 PKG_BUILDDEP+= eudev alsa-lib glib glu libmodplug libgtk2
27 PKG_BUILDDEP+= libgpg-error dbus libxslt libvorbis libbluray
28 PKG_BUILDDEP+= swig-host liblzo-host libpng-host libjpeg-turbo-host
29 PKG_BUILDDEP+= zip-host unzip-host giflib-host libsquish libdcadec
30 PKG_BUILDDEP+= libcrossguid libressl libxshmfence xz bzip2
31 PKG_NEEDS:= threads c++
32 PKG_URL:= http://kodi.tv/
33 PKG_SITES:= https://github.com/xbmc/xbmc/archive/
35 PKG_CFLINE_KODI:= select ADK_PACKAGE_GPU_VIV_BIN_MX6Q if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
37 DISTFILES:= $(PKG_VERSION)-Jarvis.tar.gz
38 WRKDIST= ${WRKDIR}/xbmc-$(PKG_VERSION)-Jarvis
40 PKG_FLAVOURS_KODI:= WITH_SMB WITH_NFS WITH_SSH WITH_AVAHI WITH_CEC
41 PKG_FLAVOURS_KODI+= WITH_WEBSERVER WITH_LIRC
43 PKGFD_WITH_SMB:= enable samba4 support
44 PKGFB_WITH_SMB:= samba
45 PKGFS_WITH_SMB:= samba
46 PKGFD_WITH_NFS:= enable nfs support
47 PKGFB_WITH_NFS:= libnfs
48 PKGFS_WITH_NFS:= libnfs
49 PKGFD_WITH_SSH:= enable ssh support
50 PKGFB_WITH_SSH:= libssh
51 PKGFS_WITH_SSH:= libssh
52 PKGFD_WITH_AVAHI:= enable avahi support
53 PKGFB_WITH_AVAHI:= avahi
54 PKGFS_WITH_AVAHI:= libavahi
55 PKGFD_WITH_CEC:= enable cec support
56 PKGFB_WITH_CEC:= libcec
57 PKGFS_WITH_CEC:= libcec
58 PKGFD_WITH_LIRC:= enable lirc support
59 PKGFB_WITH_LIRC:= lirc
60 PKGFS_WITH_LIRC:= lirc
61 PKGFD_WITH_WEBSERVER:= enable internal webserver support
63 PKG_BUILDDEP_SOLIDRUN_IMX6:= gpu-viv-bin-mx6q
64 PKG_SYSTEM_DEPENDS:= raspberry-pi raspberry-pi2 raspberry-pi3 solidrun-imx6
66 DIFF_IGNOREFILES:= configure missing depcomp install-sh INSTALL \
67 aclocal.m4 config.h.in
69 include $(ADK_TOPDIR)/mk/package.mk
71 $(eval $(call PKG_template,KODI,kodi,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
73 HOST_CXXFLAGS+= $(HOST_CPPFLAGS)
74 XAKE_FLAGS+= V=1 TIXML_USE_STL=1 GCC_HONOUR_COPTS=s
75 TARGET_CPPFLAGS+= -I. -I./utils \
76 -I$(STAGING_TARGET_DIR)/usr/include/afpfs-ng \
77 -DTIXML_USE_STL=1 -DLINUX
79 ifeq ($(ADK_TARGET_BOARD_BCM28XX),y)
80 TARGET_CPPFLAGS+= -I$(STAGING_TARGET_DIR)/opt/vc/include \
81 -I$(STAGING_TARGET_DIR)/opt/vc/include/interface/vcos/pthreads \
82 -I$(STAGING_TARGET_DIR)/opt/vc/include/interface/vmcs_host/linux
83 TARGET_LDFLAGS+= -L$(STAGING_TARGET_DIR)/opt/vc/lib
84 endif
86 ifeq ($(ADK_TARGET_LIBICONV),y)
87 TARGET_LDFLAGS+= -liconv
88 endif
90 AUTOTOOL_STYLE:= autoreconf
91 CONFIGURE_ENV+= DESTDIR='${WRKINST}' \
92 TEXTUREPACKER_NATIVE_ROOT='$(STAGING_HOST_DIR)/usr'
93 CONFIGURE_ARGS+= --disable-optical-drive \
94 --disable-optimizations \
95 --disable-mysql \
96 --disable-mdnsembedded \
97 --disable-libusb \
98 --disable-libcap \
99 --disable-joystick \
100 --disable-dvdcss \
101 --disable-gtest \
102 --disable-ccache \
103 --disable-wayland \
104 --disable-pulse \
105 --disable-mid \
106 --disable-debug \
107 --enable-alsa \
108 --enable-rtmp \
109 --enable-libbluray \
110 --enable-texturepacker \
111 --enable-udev \
112 --with-ffmpeg=shared
114 ifneq ($(ADK_PACKAGE_KODI_WITH_SMB),)
115 CONFIGURE_ARGS+= --enable-samba
116 else
117 CONFIGURE_ARGS+= --disable-samba
118 endif
119 ifneq ($(ADK_PACKAGE_KODI_WITH_SSH),)
120 CONFIGURE_ARGS+= --enable-ssh
121 else
122 CONFIGURE_ARGS+= --disable-ssh
123 endif
124 ifneq ($(ADK_PACKAGE_KODI_WITH_NFS),)
125 CONFIGURE_ARGS+= --enable-nfs
126 else
127 CONFIGURE_ARGS+= --disable-nfs
128 endif
129 ifneq ($(ADK_PACKAGE_KODI_WITH_CEC),)
130 CONFIGURE_ARGS+= --enable-libcec
131 else
132 CONFIGURE_ARGS+= --disable-libcec
133 endif
134 ifneq ($(ADK_PACKAGE_KODI_WITH_LIRC),)
135 CONFIGURE_ARGS+= --enable-lirc
136 else
137 CONFIGURE_ARGS+= --disable-lirc
138 endif
139 ifneq ($(ADK_PACKAGE_KODI_WITH_AVAHI),)
140 CONFIGURE_ARGS+= --enable-avahi
141 else
142 CONFIGURE_ARGS+= --disable-avahi
143 endif
144 ifneq ($(ADK_PACKAGE_KODI_WITH_WEBSERVER),)
145 CONFIGURE_ARGS+= --enable-webserver
146 else
147 CONFIGURE_ARGS+= --disable-webserver
148 endif
150 ifeq ($(ADK_TARGET_BOARD_BCM28XX),y)
151 CONFIGURE_ARGS+= --with-platform=raspberry-pi \
152 --enable-player=omxplayer \
153 --enable-gles \
154 --disable-x11
155 endif
156 ifeq ($(ADK_TARGET_SYSTEM_SOLIDRUN_IMX6),y)
157 CONFIGURE_ARGS+= --disable-x11 \
158 --enable-gles \
159 --enable-codec=imxvpu
160 endif
162 pre-configure:
163 (cd $(WRKBUILD)/lib/cpluff && env PATH='$(AUTOTOOL_PATH)' ./autogen.sh)
164 PATH='$(HOST_PATH)' \
165 make CXX="${HOST_CXX}" CC="${HOST_CC}" CFLAGS="${HOST_CFLAGS}" \
166 CXXFLAGS="${HOST_CXXFLAGS}" LDFLAGS="${HOST_LDFLAGS}" \
167 -C $(WRKBUILD)/tools/depends/native/JsonSchemaBuilder
168 PATH='$(HOST_PATH)' \
169 make CXX="${HOST_CXX}" CC="${HOST_CC}" CFLAGS="${HOST_CFLAGS}" \
170 CXXFLAGS="${HOST_CXXFLAGS}" LDFLAGS="${HOST_LDFLAGS}" \
171 -C $(WRKBUILD)/tools/depends/native/TexturePacker
173 kodi-install:
174 $(INSTALL_DIR) $(IDIR_KODI)/usr/lib/kodi/addons
175 $(CP) $(WRKINST)/usr/lib/kodi/* \
176 $(IDIR_KODI)/usr/lib/kodi
177 $(INSTALL_DIR) $(IDIR_KODI)/usr/share/kodi
178 $(CP) $(WRKINST)/usr/share/kodi/* \
179 $(IDIR_KODI)/usr/share/kodi
180 $(INSTALL_DIR) $(IDIR_KODI)/usr/bin
181 $(INSTALL_BIN) $(WRKINST)/usr/bin/kodi-standalone \
182 $(IDIR_KODI)/usr/bin
183 $(INSTALL_BIN) $(WRKINST)/usr/bin/kodi \
184 $(IDIR_KODI)/usr/bin
186 include ${ADK_TOPDIR}/mk/pkg-bottom.mk