Andrew Geissler | 9aee500 | 2022-03-30 16:27:02 +0000 | [diff] [blame] | 1 | DESCRIPTION = "Video player and streamer - davinci edition" |
| 2 | HOMEPAGE = "http://www.videolan.org" |
| 3 | SECTION = "multimedia" |
| 4 | |
| 5 | LICENSE = "GPL-2.0-only" |
| 6 | LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" |
| 7 | |
| 8 | DEPENDS = "coreutils-native fribidi libtool libgcrypt libgcrypt-native bison-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 | |
| 16 | LDFLAGS:append:riscv64 = " -latomic" |
| 17 | LDFLAGS:append:riscv32 = " -latomic" |
| 18 | |
| 19 | SRC_URI = "git://github.com/videolan/vlc.git;protocol=https;branch=3.0.x \ |
| 20 | file://0001-make-opencv-configurable.patch \ |
| 21 | file://0002-use-vorbisidec.patch \ |
| 22 | file://0003-fix-luaL-checkint.patch \ |
| 23 | file://0004-Use-packageconfig-to-detect-mmal-support.patch \ |
| 24 | file://0005-linux-thread-Use-SYS_futex-instead-of-__NR_futex.patch \ |
| 25 | " |
| 26 | SRCREV = "aa76328c572d93f1d99c867a94ecad1dc3259733" |
| 27 | S = "${WORKDIR}/git" |
| 28 | |
| 29 | inherit autotools-brokensep features_check gettext pkgconfig mime-xdg |
| 30 | |
| 31 | REQUIRED_DISTRO_FEATURES = "x11" |
| 32 | |
| 33 | export BUILDCC = "${BUILD_CC}" |
| 34 | EXTRA_OECONF = "\ |
| 35 | --enable-run-as-root \ |
| 36 | --enable-xvideo \ |
| 37 | --disable-screen --disable-caca \ |
| 38 | --enable-vlm \ |
| 39 | --enable-freetype \ |
| 40 | --enable-tremor \ |
| 41 | --enable-v4l2 --disable-aa --disable-faad \ |
| 42 | --enable-dbus \ |
| 43 | --without-contrib \ |
| 44 | --without-kde-solid \ |
| 45 | --enable-realrtsp \ |
| 46 | --disable-libtar \ |
| 47 | --enable-avcodec \ |
| 48 | ac_cv_path_MOC=${STAGING_BINDIR_NATIVE}${QT_DIR_NAME}/moc \ |
| 49 | ac_cv_path_RCC=${STAGING_BINDIR_NATIVE}${QT_DIR_NAME}/rcc \ |
| 50 | ac_cv_path_UIC=${STAGING_BINDIR_NATIVE}${QT_DIR_NAME}/uic \ |
| 51 | " |
| 52 | |
| 53 | PACKAGECONFIG ?= " \ |
| 54 | live555 dc1394 dv1394 notify fontconfig fluidsynth freetype dvdread png \ |
| 55 | ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)} \ |
| 56 | x264 \ |
| 57 | " |
| 58 | |
| 59 | inherit ${@bb.utils.contains('PACKAGECONFIG', 'qt5', 'qmake5_paths', '', d)} |
| 60 | |
| 61 | PACKAGECONFIG[mmal] = "--enable-omxil --enable-omxil-vout --enable-rpi-omxil --enable-mmal,,userland" |
| 62 | PACKAGECONFIG[x264] = "--enable-x264,--disable-x264,x264" |
| 63 | PACKAGECONFIG[fluidsynth] = ",,fluidsynth" |
| 64 | PACKAGECONFIG[mad] = "--enable-mad,--disable-mad,libmad" |
| 65 | PACKAGECONFIG[a52] = "--enable-a52,--disable-a52,liba52" |
| 66 | PACKAGECONFIG[jack] = "--enable-jack,--disable-jack,jack" |
| 67 | PACKAGECONFIG[live555] = "--enable-live555 LIVE555_PREFIX=${STAGING_DIR_HOST}${prefix},--disable-live555,live555" |
| 68 | PACKAGECONFIG[libass] = "--enable-libass,--disable-libass,libass" |
| 69 | PACKAGECONFIG[postproc] = "--enable-postproc,--disable-postproc,libpostproc" |
| 70 | PACKAGECONFIG[libva] = "--enable-libva,--disable-libva,libva" |
| 71 | PACKAGECONFIG[opencv] = "--enable-opencv,--disable-opencv,opencv" |
| 72 | PACKAGECONFIG[speex] = "--enable-speex,--disable-speex,speex" |
| 73 | PACKAGECONFIG[gstreamer] = "--enable-gst-decode,--disable-gst-decode,gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad" |
| 74 | PACKAGECONFIG[vpx] = "--enable-vpx,--disable-vpx, libvpx" |
| 75 | PACKAGECONFIG[qt5] = "--enable-qt,--disable-qt, qtbase-native qtx11extras qtsvg" |
| 76 | PACKAGECONFIG[freerdp] = "--enable-freerdp,--disable-freerdp, freerdp" |
| 77 | PACKAGECONFIG[dvbpsi] = "--enable-dvbpsi,--disable-dvbpsi, libdvbpsi" |
| 78 | PACKAGECONFIG[samba] = "--enable-smbclient,--disable-smbclient, samba" |
| 79 | PACKAGECONFIG[upnp] = "--enable-upnp,--disable-upnp,libupnp" |
| 80 | PACKAGECONFIG[dvdnav] = "--enable-dvdnav,--disable-dvdnav,libdvdnav libdvdcss" |
| 81 | PACKAGECONFIG[sftp] = "--enable-sftp,--disable-sftp,libssh2" |
| 82 | PACKAGECONFIG[vorbis] = "--enable-vorbis,--disable-vorbis,libvorbis libogg" |
| 83 | PACKAGECONFIG[ogg] = "--enable-ogg,--disable-ogg,libvorbis libogg" |
| 84 | PACKAGECONFIG[dc1394] = "--enable-dc1394,--disable-dc1394,libdc1394" |
| 85 | PACKAGECONFIG[dv1394] = "--enable-dv1394,--disable-dv1394,libraw1394 libavc1394" |
| 86 | PACKAGECONFIG[svg] = "--enable-svg,--disable-svg,librsvg" |
| 87 | PACKAGECONFIG[svgdec] = "--enable-svgdec,--disable-svgdec,librsvg cairo" |
| 88 | PACKAGECONFIG[notify] = "--enable-notify,--disable-notify, libnotify gtk+3" |
| 89 | PACKAGECONFIG[fontconfig] = "--enable-fontconfig,--disable-fontconfig, fontconfig" |
| 90 | PACKAGECONFIG[freetype] = "--enable-freetype,--disable-freetype, freetype" |
| 91 | PACKAGECONFIG[dvdread] = "--enable-dvdread,--disable-dvdread, libdvdread libdvdcss" |
| 92 | PACKAGECONFIG[vnc] = "--enable-vnc,--disable-vnc, libvncserver" |
| 93 | PACKAGECONFIG[x11] = "--with-x --enable-xcb,--without-x --disable-xcb, xcb-util-keysyms libxpm libxinerama" |
| 94 | PACKAGECONFIG[png] = "--enable-png,--disable-png,libpng" |
| 95 | PACKAGECONFIG[vdpau] = "--enable-vdpau,--disable-vdpau,libvdpau" |
| 96 | PACKAGECONFIG[wayland] = "--enable-wayland,--disable-wayland,wayland wayland-native" |
| 97 | |
| 98 | do_configure:append() { |
| 99 | # moc needs support: precreate build paths |
| 100 | for qtpath in adapters components/epg components/playlist components/sout dialogs managers styles util/buttons; do |
| 101 | mkdir -p "${B}/modules/gui/qt/$qtpath" |
| 102 | done |
| 103 | } |
| 104 | |
| 105 | # This recipe packages vlc as a library as well, so qt4 dependencies |
| 106 | # can be avoided when only the library is installed. |
| 107 | PACKAGES =+ "libvlc" |
| 108 | |
| 109 | LEAD_SONAME_libvlc = "libvlc.so.5" |
| 110 | FILES:libvlc = "${libdir}/lib*.so.*" |
| 111 | |
| 112 | FILES:${PN} += "\ |
| 113 | ${bindir}/vlc \ |
| 114 | ${libdir}/vlc/vlc/libvlc_vdpau.so \ |
| 115 | ${datadir}/applications \ |
| 116 | ${datadir}/vlc/ \ |
| 117 | ${datadir}/icons \ |
| 118 | ${datadir}/metainfo/vlc.appdata.xml \ |
| 119 | " |
| 120 | |
| 121 | FILES:${PN}-dbg += "\ |
| 122 | ${libdir}/vlc/*/.debug \ |
| 123 | ${libdir}/vlc/plugins/*/.debug \ |
| 124 | " |
| 125 | |
| 126 | FILES:${PN}-staticdev += "\ |
| 127 | ${libdir}/vlc/plugins/*/*.a \ |
| 128 | " |
| 129 | |
| 130 | INSANE_SKIP:${PN} = "dev-so" |
| 131 | |
| 132 | EXCLUDE_FROM_WORLD = "${@bb.utils.contains("LICENSE_FLAGS_ACCEPTED", "commercial", "0", "1", d)}" |