blob: 046c059fb401ce148985a16e04771bdf40b473be [file] [log] [blame]
Andrew Geissler82c905d2020-04-13 13:39:40 -05001DESCRIPTION = "Video player and streamer - davinci edition"
2HOMEPAGE = "http://www.videolan.org"
3SECTION = "multimedia"
4
5LICENSE = "GPL-2.0"
6LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
7
8DEPENDS = "coreutils-native fribidi libtool libgcrypt libgcrypt-native \
9 dbus libxml2 gnutls \
10 tremor faad2 ffmpeg flac alsa-lib \
11 lua-native lua libidn \
12 avahi jpeg xz libmodplug mpeg2dec \
13 libmtp libopus orc libsamplerate0 libusb1 schroedinger taglib \
14 tiff"
15
16LDFLAGS_append_riscv64 = " -latomic"
Andrew Geissler4b7c1152020-11-30 19:55:29 -060017LDFLAGS_append_riscv32 = " -latomic"
Andrew Geissler82c905d2020-04-13 13:39:40 -050018
19# While this item does not require it, it depends on ffmpeg which does
20LICENSE_FLAGS = "commercial"
21
22SRC_URI = "http://download.videolan.org/pub/videolan/${BPN}/${PV}/${BP}.tar.xz \
Andrew Geissler89770b02020-06-13 10:40:47 -050023 file://0001-make-opencv-configurable.patch \
24 file://0002-use-vorbisidec.patch \
25 file://0003-fix-luaL-checkint.patch \
26 file://0004-Use-packageconfig-to-detect-mmal-support.patch \
Andrew Geisslereef63862021-01-29 15:58:13 -060027 file://0005-linux-thread-Use-SYS_futex-instead-of-__NR_futex.patch \
Andrew Geissler82c905d2020-04-13 13:39:40 -050028"
Andrew Geisslereef63862021-01-29 15:58:13 -060029SRC_URI[sha256sum] = "eff458f38a92126094f44f2263c2bf2c7cdef271b48192d0fe7b1726388cf879"
Andrew Geissler82c905d2020-04-13 13:39:40 -050030
31inherit autotools features_check gettext pkgconfig mime-xdg
32
33REQUIRED_DISTRO_FEATURES = "x11"
34
35export BUILDCC = "${BUILD_CC}"
36EXTRA_OECONF = "\
37 --enable-run-as-root \
38 --enable-xvideo \
39 --disable-screen --disable-caca \
40 --enable-vlm \
41 --enable-freetype \
42 --enable-tremor \
43 --enable-v4l2 --disable-aa --disable-faad \
44 --enable-dbus \
45 --without-contrib \
46 --without-kde-solid \
47 --enable-realrtsp \
48 --disable-libtar \
49 --enable-avcodec \
50 ac_cv_path_MOC=${STAGING_BINDIR_NATIVE}${QT_DIR_NAME}/moc \
51 ac_cv_path_RCC=${STAGING_BINDIR_NATIVE}${QT_DIR_NAME}/rcc \
52 ac_cv_path_UIC=${STAGING_BINDIR_NATIVE}${QT_DIR_NAME}/uic \
53"
54
55PACKAGECONFIG ?= " \
56 live555 dc1394 dv1394 notify fontconfig fluidsynth freetype dvdread png \
57 ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)} \
58 x264 \
59"
60
61inherit ${@bb.utils.contains('PACKAGECONFIG', 'qt5', 'qmake5_paths', '', d)}
62
63PACKAGECONFIG[mmal] = "--enable-omxil --enable-omxil-vout --enable-rpi-omxil --enable-mmal,,userland"
64PACKAGECONFIG[x264] = "--enable-x264,--disable-x264,x264"
65PACKAGECONFIG[fluidsynth] = ",,fluidsynth"
66PACKAGECONFIG[mad] = "--enable-mad,--disable-mad,libmad"
67PACKAGECONFIG[a52] = "--enable-a52,--disable-a52,liba52"
68PACKAGECONFIG[jack] = "--enable-jack,--disable-jack,jack"
69PACKAGECONFIG[live555] = "--enable-live555 LIVE555_PREFIX=${STAGING_DIR_HOST}${prefix},--disable-live555,live555"
70PACKAGECONFIG[libass] = "--enable-libass,--disable-libass,libass"
71PACKAGECONFIG[postproc] = "--enable-postproc,--disable-postproc,libpostproc"
72PACKAGECONFIG[libva] = "--enable-libva,--disable-libva,libva"
73PACKAGECONFIG[opencv] = "--enable-opencv,--disable-opencv,opencv"
74PACKAGECONFIG[speex] = "--enable-speex,--disable-speex,speex"
75PACKAGECONFIG[gstreamer] = "--enable-gst-decode,--disable-gst-decode,gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad"
76PACKAGECONFIG[vpx] = "--enable-vpx,--disable-vpx, libvpx"
77PACKAGECONFIG[qt5] = "--enable-qt,--disable-qt, qtbase-native qtx11extras qtsvg"
78PACKAGECONFIG[freerdp] = "--enable-freerdp,--disable-freerdp, freerdp"
79PACKAGECONFIG[dvbpsi] = "--enable-dvbpsi,--disable-dvbpsi, libdvbpsi"
80PACKAGECONFIG[samba] = "--enable-smbclient,--disable-smbclient, samba"
81PACKAGECONFIG[upnp] = "--enable-upnp,--disable-upnp,libupnp"
82PACKAGECONFIG[dvdnav] = "--enable-dvdnav,--disable-dvdnav,libdvdnav libdvdcss"
83PACKAGECONFIG[sftp] = "--enable-sftp,--disable-sftp,libssh2"
84PACKAGECONFIG[vorbis] = "--enable-vorbis,--disable-vorbis,libvorbis libogg"
85PACKAGECONFIG[ogg] = "--enable-ogg,--disable-ogg,libvorbis libogg"
86PACKAGECONFIG[dc1394] = "--enable-dc1394,--disable-dc1394,libdc1394"
87PACKAGECONFIG[dv1394] = "--enable-dv1394,--disable-dv1394,libraw1394 libavc1394"
88PACKAGECONFIG[svg] = "--enable-svg,--disable-svg,librsvg"
89PACKAGECONFIG[svgdec] = "--enable-svgdec,--disable-svgdec,librsvg cairo"
90PACKAGECONFIG[notify] = "--enable-notify,--disable-notify, libnotify gtk+3"
91PACKAGECONFIG[fontconfig] = "--enable-fontconfig,--disable-fontconfig, fontconfig"
92PACKAGECONFIG[freetype] = "--enable-freetype,--disable-freetype, freetype"
93PACKAGECONFIG[dvdread] = "--enable-dvdread,--disable-dvdread, libdvdread libdvdcss"
94PACKAGECONFIG[vnc] = "--enable-vnc,--disable-vnc, libvncserver"
95PACKAGECONFIG[x11] = "--with-x --enable-xcb,--without-x --disable-xcb, xcb-util-keysyms libxpm libxinerama"
96PACKAGECONFIG[png] = "--enable-png,--disable-png,libpng"
97PACKAGECONFIG[vdpau] = "--enable-vdpau,--disable-vdpau,libvdpau"
98PACKAGECONFIG[wayland] = "--enable-wayland,--disable-wayland,wayland wayland-native"
99
100do_configure_append() {
101 sed -i -e s:'${top_builddir_slash}libtool':'${top_builddir_slash}'${TARGET_SYS}-libtool:g ${B}/doltlibtool
102
103 # moc needs support: precreate build paths
104 for qtpath in adapters components/epg components/playlist components/sout dialogs managers styles util/buttons; do
105 mkdir -p "${B}/modules/gui/qt/$qtpath"
106 done
107}
108
109# This recipe packages vlc as a library as well, so qt4 dependencies
110# can be avoided when only the library is installed.
111PACKAGES =+ "libvlc"
112
113LEAD_SONAME_libvlc = "libvlc.so.5"
114FILES_libvlc = "${libdir}/lib*.so.*"
115
116FILES_${PN} += "\
117 ${bindir}/vlc \
118 ${libdir}/vlc/vlc/libvlc_vdpau.so \
119 ${datadir}/applications \
120 ${datadir}/vlc/ \
121 ${datadir}/icons \
122 ${datadir}/metainfo/vlc.appdata.xml \
123"
124
125FILES_${PN}-dbg += "\
126 ${libdir}/vlc/*/.debug \
127 ${libdir}/vlc/plugins/*/.debug \
128"
129
130FILES_${PN}-staticdev += "\
131 ${libdir}/vlc/plugins/*/*.a \
132"
133
134INSANE_SKIP_${PN} = "dev-so"
135