Lines 1-19
Link Here
|
1 |
# $FreeBSD: head/multimedia/kodi/Makefile 552067 2020-10-11 14:46:13Z mandree $ |
1 |
# $FreeBSD: head/multimedia/kodi/Makefile 552067 2020-10-11 14:46:13Z mandree $ |
2 |
|
2 |
|
3 |
PORTNAME= kodi |
3 |
PORTNAME= kodi |
4 |
DISTVERSION= 18.7.1 |
4 |
DISTVERSION= 18.9 |
5 |
PORTREVISION= 3 |
|
|
6 |
CATEGORIES= multimedia java |
5 |
CATEGORIES= multimedia java |
7 |
|
6 |
|
8 |
PATCH_SITES= https://github.com/xbmc/xbmc/commit/ |
7 |
MAINTAINER= yzrh@tuta.io |
9 |
PATCHFILES= 920cc74da069216d19f724ecf5246cf997861bc6.patch:-p1 |
|
|
10 |
|
11 |
MAINTAINER= ports@FreeBSD.org |
12 |
COMMENT= Award winning media center application |
8 |
COMMENT= Award winning media center application |
13 |
|
9 |
|
14 |
LICENSE= GPLv2+ |
10 |
LICENSE= GPLv2+ |
15 |
|
11 |
|
16 |
ONLY_FOR_ARCHS= amd64 armv6 armv7 i386 |
12 |
ONLY_FOR_ARCHS= aarch64 amd64 armv6 armv7 i386 |
17 |
|
13 |
|
18 |
BUILD_DEPENDS= flatbuffers>0:devel/flatbuffers \ |
14 |
BUILD_DEPENDS= flatbuffers>0:devel/flatbuffers \ |
19 |
gperf>0:devel/gperf \ |
15 |
gperf>0:devel/gperf \ |
Lines 27-32
Link Here
|
27 |
libcdio.so:sysutils/libcdio \ |
23 |
libcdio.so:sysutils/libcdio \ |
28 |
libcrossguid.so:devel/libcrossguid \ |
24 |
libcrossguid.so:devel/libcrossguid \ |
29 |
libcurl.so:ftp/curl \ |
25 |
libcurl.so:ftp/curl \ |
|
|
26 |
libdvdnav.so:multimedia/libdvdnav \ |
27 |
libdvdread.so:multimedia/libdvdread \ |
30 |
libexpat.so:textproc/expat2 \ |
28 |
libexpat.so:textproc/expat2 \ |
31 |
libfmt.so:devel/libfmt \ |
29 |
libfmt.so:devel/libfmt \ |
32 |
libfreetype.so:print/freetype2 \ |
30 |
libfreetype.so:print/freetype2 \ |
Lines 42-57
Link Here
|
42 |
libtag.so:audio/taglib \ |
40 |
libtag.so:audio/taglib \ |
43 |
libtinyxml.so:textproc/tinyxml \ |
41 |
libtinyxml.so:textproc/tinyxml \ |
44 |
libuuid.so:misc/e2fsprogs-libuuid |
42 |
libuuid.so:misc/e2fsprogs-libuuid |
45 |
RUN_DEPENDS= ${LOCALBASE}/share/fonts/dejavu/DejaVuSans.ttf:x11-fonts/dejavu |
|
|
46 |
|
43 |
|
47 |
USES= autoreconf:build cmake:noninja compiler:c++14-lang gettext gl gmake \ |
44 |
USES= autoreconf:build cmake:noninja cmake compiler:c++14-lang gettext gmake \ |
48 |
gnome iconv jpeg libtool pkgconfig python:2.7 ssl sqlite xorg |
45 |
gnome iconv jpeg libtool pkgconfig python:2.7 ssl sqlite |
49 |
|
46 |
|
50 |
KODI_ARCH_amd64=x86_64 |
47 |
KODI_CODENAME= Leia |
51 |
KODI_ARCH_i386= x86 |
|
|
52 |
KODI_ARCH_armv7=armv7 |
53 |
KODI_ARCH_armv6=armv6 |
54 |
|
48 |
|
|
|
49 |
USE_GITHUB= yes |
50 |
GH_ACCOUNT= xbmc |
51 |
GH_PROJECT= xbmc |
52 |
GH_TAGNAME= ${DISTVERSION}-${KODI_CODENAME} |
53 |
|
54 |
KODI_ARCH_aarch64= aarch64 |
55 |
KODI_ARCH_amd64= x86_64 |
56 |
KODI_ARCH_i386= x86 |
57 |
KODI_ARCH_armv7= armv7 |
58 |
KODI_ARCH_armv6= armv6 |
59 |
|
60 |
PLIST_SUB= ARCH=${KODI_ARCH_${ARCH}} |
61 |
|
55 |
NOPRECIOUSMAKEVARS= yes |
62 |
NOPRECIOUSMAKEVARS= yes |
56 |
|
63 |
|
57 |
INSTALLS_ICONS= yes |
64 |
INSTALLS_ICONS= yes |
Lines 59-91
Link Here
|
59 |
USE_JAVA= yes |
66 |
USE_JAVA= yes |
60 |
JAVA_BUILD= jre |
67 |
JAVA_BUILD= jre |
61 |
USE_GNOME= libxml2 |
68 |
USE_GNOME= libxml2 |
62 |
CMAKE_ARGS= -Dlibdvdcss_URL="${DISTDIR}/xbmc-libdvdcss-1.4.2-Leia-Beta-5_GH0.tar.gz" \ |
69 |
CMAKE_ARGS= -DGIT_VERSION="${GH_TAGNAME}" \ |
63 |
-Dlibdvdnav_URL="${DISTDIR}/xbmc-libdvdnav-6.0.0-Leia-Alpha-3_GH0.tar.gz" \ |
70 |
-DDVDNAV_LIBRARY="${LOCALBASE}/lib/libdvdnav.so" \ |
64 |
-Dlibdvdread_URL="${DISTDIR}/xbmc-libdvdread-6.0.0-Leia-Alpha-3_GH0.tar.gz" |
71 |
-DDVDREAD_LIBRARY="${LOCALBASE}/lib/libdvdread.so" \ |
|
|
72 |
-DLIBDVD_INCLUDE_DIRS="${LOCALBASE}/include" |
65 |
CMAKE_OFF= ENABLE_INTERNAL_CROSSGUID \ |
73 |
CMAKE_OFF= ENABLE_INTERNAL_CROSSGUID \ |
66 |
ENABLE_INTERNAL_FFMPEG |
74 |
ENABLE_INTERNAL_FFMPEG |
67 |
CONFIGURE_ENV= _CPU_FEATURE="${CPU_FEATURE}" |
75 |
CONFIGURE_ENV= _CPU_FEATURE="${CPU_FEATURE}" |
68 |
|
76 |
|
69 |
KODI_CODENAME= Leia |
|
|
70 |
LIBDVDCSS_VERSION= 1.4.2-${KODI_CODENAME}-Beta-5 |
71 |
LIBDVDNAV_VERSION= 6.0.0-${KODI_CODENAME}-Alpha-3 |
72 |
LIBDVDREAD_VERSION= 6.0.0-${KODI_CODENAME}-Alpha-3 |
73 |
|
74 |
USE_GITHUB= yes |
75 |
GH_TUPLE= xbmc:xbmc:${PORTVERSION}-${KODI_CODENAME} \ |
76 |
xbmc:libdvdcss:${LIBDVDCSS_VERSION}:libdvdcss/tools/depends/target/libdvdcss/native \ |
77 |
xbmc:libdvdnav:${LIBDVDNAV_VERSION}:libdvdnav/tools/depends/target/libdvdnav/native \ |
78 |
xbmc:libdvdread:${LIBDVDREAD_VERSION}:libdvdread/tools/depends/target/libdvdread/native |
79 |
|
80 |
PLIST_SUB= ARCH=${KODI_ARCH_${ARCH}} |
81 |
|
82 |
OPTIONS_SUB= yes |
77 |
OPTIONS_SUB= yes |
83 |
# Not implemented: BLUETOOTH CAP |
78 |
# Broken: BLUETOOTH |
84 |
OPTIONS_DEFINE= AIRPLAY AIRTUNES AVAHI CEC DBUS DOCS DVDCSS LCMS2 \ |
79 |
OPTIONS_DEFINE= AIRPLAY AVAHI LIBBLURAY CEC DBUS DVDCSS LCMS2 \ |
85 |
LIBBLURAY LIRC NFS OPTICAL SMB UDEV UPNP VAAPI VDPAU \ |
80 |
LIRC WEBSERVER NFS DVD SMB UDEV UPNP \ |
86 |
WEBSERVER XSLT |
81 |
VAAPI VDPAU XSLT DOCS |
87 |
OPTIONS_DEFAULT= AIRPLAY AIRTUNES AVAHI CEC DVDCSS LIBBLURAY NFS OPTICAL SMB \ |
82 |
OPTIONS_DEFAULT= AIRPLAY AVAHI LIBBLURAY CEC DVDCSS LCMS2 WEBSERVER NFS \ |
88 |
UDEV UPNP VAAPI VDPAU WEBSERVER X11 XSLT |
83 |
DVD SMB UDEV UPNP VAAPI VDPAU XSLT X11 |
89 |
OPTIONS_DEFAULT_amd64= SSE SSE2 SSE3 |
84 |
OPTIONS_DEFAULT_amd64= SSE SSE2 SSE3 |
90 |
OPTIONS_DEFAULT_i386= SSE SSE2 SSE3 |
85 |
OPTIONS_DEFAULT_i386= SSE SSE2 SSE3 |
91 |
OPTIONS_SINGLE= PLATFORM |
86 |
OPTIONS_SINGLE= PLATFORM |
Lines 98-140
Link Here
|
98 |
OPTIONS_GROUP_FEATURE= SSE SSE2 SSE3 SSSE3 SSE4_1 SSE4_2 AVX AVX2 |
93 |
OPTIONS_GROUP_FEATURE= SSE SSE2 SSE3 SSSE3 SSE4_1 SSE4_2 AVX AVX2 |
99 |
OPTIONS_EXCLUDE_amd64= RPI |
94 |
OPTIONS_EXCLUDE_amd64= RPI |
100 |
OPTIONS_EXCLUDE_i386= RPI |
95 |
OPTIONS_EXCLUDE_i386= RPI |
|
|
96 |
OPTIONS_EXCLUDE_aarch64=FEATURE |
101 |
OPTIONS_EXCLUDE_armv7= FEATURE |
97 |
OPTIONS_EXCLUDE_armv7= FEATURE |
102 |
OPTIONS_EXCLUDE_armv6= FEATURE |
98 |
OPTIONS_EXCLUDE_armv6= FEATURE |
103 |
|
99 |
|
104 |
AIRPLAY_DESC= AirPlay support via libplist |
100 |
PLATFORM_DESC= Kodi platform |
105 |
AIRTUNES_DESC= AirTunes support via libshairplay |
|
|
106 |
AVX_DESC= Use AVX optimized routines |
107 |
AVX2_DESC= Use AVX2 optimized routines |
108 |
BLUETOOTH_DESC= Bluetooth support via bluez |
109 |
CAP_DESC= Capability support via libcap |
110 |
CEC_DESC= CEC adapter support |
111 |
DATABASE_DESC= Database |
101 |
DATABASE_DESC= Database |
112 |
FEATURE_DESC= X86 CPU feature |
102 |
FEATURE_DESC= X86 CPU feature |
|
|
103 |
|
104 |
AIRPLAY_DESC= AirPlay support |
105 |
BLUETOOTH_DESC= Bluetooth support |
106 |
CEC_DESC= CEC adapter support |
107 |
DVD_DESC= DVD support |
108 |
UDEV_DESC= Use libudev-devd |
109 |
XSLT_DESC= Use libxslt |
110 |
|
111 |
RPI_DESC= Raspberry Pi support |
113 |
GBM_DESC= GBM support |
112 |
GBM_DESC= GBM support |
114 |
MARIADB_DESC= MariaDB database support |
113 |
MARIADB_DESC= MariaDB database support |
115 |
OPTICAL_DESC= Optical disc support |
114 |
|
116 |
PLATFORM_DESC= Kodi platform |
|
|
117 |
RPI_DESC= Raspberry Pi support |
118 |
SSE2_DESC= Use SSE2 optimized routines |
115 |
SSE2_DESC= Use SSE2 optimized routines |
119 |
SSE3_DESC= Use SSE3 optimized routines |
116 |
SSE3_DESC= Use SSE3 optimized routines |
120 |
SSSE3_DESC= Use SSSE3 optimized routines |
117 |
SSSE3_DESC= Use SSSE3 optimized routines |
121 |
SSE4_1_DESC= Use SSE4.1 optimized routines |
118 |
SSE4_1_DESC= Use SSE4.1 optimized routines |
122 |
SSE4_2_DESC= Use SSE4.2 optimized routines |
119 |
SSE4_2_DESC= Use SSE4.2 optimized routines |
123 |
UDEV_DESC= Use libudev-devd |
120 |
AVX_DESC= Use AVX optimized routines |
124 |
XSLT_DESC= Use libxslt |
121 |
AVX2_DESC= Use AVX2 optimized routines |
125 |
|
122 |
|
126 |
AIRPLAY_LIB_DEPENDS= libplist.so:devel/libplist |
123 |
AIRPLAY_LIB_DEPENDS= libplist.so:devel/libplist \ |
127 |
AIRPLAY_CMAKE_BOOL= ENABLE_PLIST |
124 |
libshairplay.so:audio/shairplay |
|
|
125 |
AIRPLAY_CMAKE_BOOL= ENABLE_PLIST \ |
126 |
ENABLE_AIRTUNES |
128 |
|
127 |
|
129 |
AIRTUNES_LIB_DEPENDS= libshairplay.so:audio/shairplay |
|
|
130 |
AIRTUNES_CMAKE_BOOL= ENABLE_AIRTUNES |
131 |
|
132 |
AVAHI_LIB_DEPENDS= libavahi-client.so:net/avahi-app |
128 |
AVAHI_LIB_DEPENDS= libavahi-client.so:net/avahi-app |
133 |
AVAHI_CMAKE_BOOL= ENABLE_AVAHI |
129 |
AVAHI_CMAKE_BOOL= ENABLE_AVAHI |
134 |
|
130 |
|
135 |
BLUETOOTH_CMAKE_BOOL= ENABLE_BLUETOOTH |
131 |
BLUETOOTH_CMAKE_BOOL= ENABLE_BLUETOOTH |
|
|
132 |
BLUETOOTH_CMAKE_ON= -DBLUETOOTH_INCLUDE_DIR="${LOCALBASE}/include" |
136 |
|
133 |
|
137 |
CAP_CMAKE_BOOL= ENABLE_CAP |
134 |
LIBBLURAY_LIB_DEPENDS= libbluray.so:multimedia/libbluray |
|
|
135 |
LIBBLURAY_CMAKE_BOOL= ENABLE_BLURAY |
138 |
|
136 |
|
139 |
CEC_LIB_DEPENDS= libcec.so:multimedia/libcec |
137 |
CEC_LIB_DEPENDS= libcec.so:multimedia/libcec |
140 |
CEC_CMAKE_BOOL= ENABLE_CEC |
138 |
CEC_CMAKE_BOOL= ENABLE_CEC |
Lines 142-169
Link Here
|
142 |
DBUS_LIB_DEPENDS= libdbus-1.so:devel/dbus |
140 |
DBUS_LIB_DEPENDS= libdbus-1.so:devel/dbus |
143 |
DBUS_CMAKE_BOOL= ENABLE_DBUS |
141 |
DBUS_CMAKE_BOOL= ENABLE_DBUS |
144 |
|
142 |
|
|
|
143 |
DVDCSS_LIB_DEPENDS= libdvdcss.so:multimedia/libdvdcss |
145 |
DVDCSS_CMAKE_BOOL= ENABLE_DVDCSS |
144 |
DVDCSS_CMAKE_BOOL= ENABLE_DVDCSS |
|
|
145 |
DVDCSS_CMAKE_ON= -DDVDCSS_LIBRARY="${LOCALBASE}/lib/libdvdcss.so" |
146 |
|
146 |
|
147 |
LCMS2_LIB_DEPENDS= liblcms2.so.2:graphics/lcms2 |
147 |
LCMS2_LIB_DEPENDS= liblcms2.so.2:graphics/lcms2 |
148 |
LCMS2_CMAKE_BOOL= ENABLE_LCMS2 |
148 |
LCMS2_CMAKE_BOOL= ENABLE_LCMS2 |
149 |
|
149 |
|
150 |
LIBBLURAY_LIB_DEPENDS= libbluray.so:multimedia/libbluray |
|
|
151 |
LIBBLURAY_CMAKE_BOOL= ENABLE_BLURAY |
152 |
|
153 |
LIRC_LIB_DEPENDS= liblirc_client.so:comms/lirc |
150 |
LIRC_LIB_DEPENDS= liblirc_client.so:comms/lirc |
154 |
LIRC_CMAKE_BOOL= ENABLE_LIRCCLIENT |
151 |
LIRC_CMAKE_BOOL= ENABLE_LIRCCLIENT |
155 |
|
152 |
|
156 |
MARIADB_USES= mysql:104m |
153 |
WEBSERVER_LIB_DEPENDS= libmicrohttpd.so:www/libmicrohttpd |
157 |
MARIADB_CMAKE_BOOL= ENABLE_MARIADBCLIENT |
154 |
WEBSERVER_CMAKE_BOOL= ENABLE_MICROHTTPD |
158 |
MARIADB_CMAKE_ON= -DMARIADBCLIENT_INCLUDE_DIR="${LOCALBASE}/include" |
|
|
159 |
|
155 |
|
160 |
MYSQL_USES= mysql |
|
|
161 |
MYSQL_CMAKE_BOOL= ENABLE_MYSQLCLIENT |
162 |
|
163 |
NFS_LIB_DEPENDS= libnfs.so:net/libnfs |
156 |
NFS_LIB_DEPENDS= libnfs.so:net/libnfs |
164 |
NFS_CMAKE_BOOL= ENABLE_NFS |
157 |
NFS_CMAKE_BOOL= ENABLE_NFS |
165 |
|
158 |
|
166 |
OPTICAL_CMAKE_BOOL= ENABLE_OPTICAL |
159 |
DVD_CMAKE_BOOL= ENABLE_OPTICAL |
167 |
|
160 |
|
168 |
SMB_USES= samba:lib |
161 |
SMB_USES= samba:lib |
169 |
SMB_CMAKE_BOOL= ENABLE_SMBCLIENT |
162 |
SMB_CMAKE_BOOL= ENABLE_SMBCLIENT |
Lines 179-190
Link Here
|
179 |
VDPAU_LIB_DEPENDS= libvdpau.so:multimedia/libvdpau |
172 |
VDPAU_LIB_DEPENDS= libvdpau.so:multimedia/libvdpau |
180 |
VDPAU_CMAKE_BOOL= ENABLE_VDPAU |
173 |
VDPAU_CMAKE_BOOL= ENABLE_VDPAU |
181 |
|
174 |
|
182 |
WEBSERVER_LIB_DEPENDS= libmicrohttpd.so:www/libmicrohttpd |
|
|
183 |
WEBSERVER_CMAKE_BOOL= ENABLE_MICROHTTPD |
184 |
|
185 |
XSLT_LIB_DEPENDS= libxslt.so:textproc/libxslt |
175 |
XSLT_LIB_DEPENDS= libxslt.so:textproc/libxslt |
186 |
XSLT_CMAKE_BOOL= ENABLE_XSLT |
176 |
XSLT_CMAKE_BOOL= ENABLE_XSLT |
187 |
|
177 |
|
|
|
178 |
MARIADB_USES= mysql:105m |
179 |
MARIADB_CMAKE_BOOL= ENABLE_MARIADBCLIENT |
180 |
MARIADB_CMAKE_ON= -DMARIADBCLIENT_INCLUDE_DIR="${LOCALBASE}/include" |
181 |
|
182 |
MYSQL_USES= mysql |
183 |
MYSQL_CMAKE_BOOL= ENABLE_MYSQLCLIENT |
184 |
|
188 |
ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib |
185 |
ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib |
189 |
ALSA_CMAKE_BOOL= ENABLE_ALSA |
186 |
ALSA_CMAKE_BOOL= ENABLE_ALSA |
190 |
|
187 |
|
Lines 203-208
Link Here
|
203 |
AVX_VARS= CPU_FEATURE+=AVX |
200 |
AVX_VARS= CPU_FEATURE+=AVX |
204 |
AVX2_VARS= CPU_FEATURE+=AVX2 |
201 |
AVX2_VARS= CPU_FEATURE+=AVX2 |
205 |
|
202 |
|
|
|
203 |
GBM_USES= gl |
206 |
GBM_USE= GL=egl,gbm,glu |
204 |
GBM_USE= GL=egl,gbm,glu |
207 |
GBM_CFLAGS= -I${LOCALBASE}/include/libepoll-shim |
205 |
GBM_CFLAGS= -I${LOCALBASE}/include/libepoll-shim |
208 |
GBM_LDFLAGS= -L${LOCALBASE}/lib -lepoll-shim |
206 |
GBM_LDFLAGS= -L${LOCALBASE}/lib -lepoll-shim |
Lines 220-225
Link Here
|
220 |
libinput.so:x11/libinput |
218 |
libinput.so:x11/libinput |
221 |
RPI_CMAKE_ON= -DCORE_PLATFORM_NAME:STRING="rbpi" |
219 |
RPI_CMAKE_ON= -DCORE_PLATFORM_NAME:STRING="rbpi" |
222 |
|
220 |
|
|
|
221 |
WAYLAND_USES= gl |
223 |
WAYLAND_USE= GL=egl,glu |
222 |
WAYLAND_USE= GL=egl,glu |
224 |
WAYLAND_BUILD_DEPENDS= evdev-proto>0:devel/evdev-proto \ |
223 |
WAYLAND_BUILD_DEPENDS= evdev-proto>0:devel/evdev-proto \ |
225 |
wayland-protocols>0:graphics/wayland-protocols |
224 |
wayland-protocols>0:graphics/wayland-protocols |
Lines 229-234
Link Here
|
229 |
WAYLAND_CMAKE_ON= -DCORE_PLATFORM_NAME:STRING="wayland" \ |
228 |
WAYLAND_CMAKE_ON= -DCORE_PLATFORM_NAME:STRING="wayland" \ |
230 |
-DWAYLAND_RENDER_SYSTEM:STRING="gl" |
229 |
-DWAYLAND_RENDER_SYSTEM:STRING="gl" |
231 |
|
230 |
|
|
|
231 |
X11_USES= xorg gl |
232 |
X11_USE= XORG=x11,xext,xrandr GL=egl,gl,glu |
232 |
X11_USE= XORG=x11,xext,xrandr GL=egl,gl,glu |
233 |
X11_LIB_DEPENDS= libdrm.so:graphics/libdrm |
233 |
X11_LIB_DEPENDS= libdrm.so:graphics/libdrm |
234 |
X11_CMAKE_ON= -DCORE_PLATFORM_NAME:STRING="x11" |
234 |
X11_CMAKE_ON= -DCORE_PLATFORM_NAME:STRING="x11" |
Lines 236-241
Link Here
|
236 |
.include <bsd.port.options.mk> |
236 |
.include <bsd.port.options.mk> |
237 |
|
237 |
|
238 |
post-patch: |
238 |
post-patch: |
|
|
239 |
${REINPLACE_CMD} 's|KODI_DEPENDSBUILD|true|' \ |
240 |
${WRKSRC}/cmake/modules/FindLibDvd.cmake |
239 |
${REINPLACE_CMD} 's|/usr/share|${LOCALBASE}/share|' \ |
241 |
${REINPLACE_CMD} 's|/usr/share|${LOCALBASE}/share|' \ |
240 |
${WRKSRC}/xbmc/platform/linux/input/LibInputSettings.cpp |
242 |
${WRKSRC}/xbmc/platform/linux/input/LibInputSettings.cpp |
241 |
|
243 |
|