Andrew Geissler | 517393d | 2023-01-13 08:55:19 -0600 | [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 | SRC_URI = "\ |
| 9 | git://git@github.com/RPi-Distro/vlc;protocol=https;branch=buster-rpt \ |
| 10 | file://0001-configure-fix-linking-on-RISC-V-ISA.patch \ |
| 11 | file://0002-Revert-configure-Require-libmodplug-0.8.9.patch \ |
| 12 | file://0003-CVE-2022-41325.patch \ |
| 13 | file://0004-mmal_20.patch \ |
| 14 | file://0005-mmal_exit_fix.patch \ |
| 15 | file://0006-mmal_chain.patch \ |
| 16 | file://0007-armv6.patch \ |
Andrew Geissler | 2daf84b | 2023-03-31 09:57:23 -0500 | [diff] [blame] | 17 | file://0008-configure-Disable-incompatible-function-pointer-type.patch \ |
Andrew Geissler | 517393d | 2023-01-13 08:55:19 -0600 | [diff] [blame] | 18 | file://2001-fix-luaL-checkint.patch \ |
| 19 | file://2002-use-vorbisidec.patch \ |
| 20 | file://3001-configure.ac-setup-for-OE-usage.patch \ |
| 21 | file://3002-fix-EGL-macro-undeclared-and-EGLImageKHR.patch \ |
| 22 | file://3003-codec-omxil_core-replace-opt-vc-path-with-usr-lib.patch \ |
| 23 | file://3004-use-GLESv2-headers-over-GL-headers.patch \ |
| 24 | file://3005-modules-remove-glspectrum-usage.patch \ |
| 25 | file://3006-codec-omxil_core.h-fix-multiple-definition-of.patch \ |
| 26 | ${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', 'file://3007-remove-xorg-related-link-libs.patch', d)} \ |
| 27 | ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', '', 'file://3008-vo-Makefile.am-exclude-libgl_plugin.patch', d)} \ |
| 28 | file://3009-vo-converter_vaapi-Fix-EGL-macro-undeclared.patch \ |
| 29 | " |
| 30 | |
| 31 | SRCREV = "b276eb0d7bc3213363e97dbb681ef7c927be6c73" |
| 32 | |
| 33 | S = "${WORKDIR}/git" |
| 34 | |
| 35 | PROVIDES = "vlc" |
| 36 | RPROVIDES:${PN} = "${PROVIDES}" |
| 37 | DEPENDS = "coreutils-native fribidi libtool libgcrypt libgcrypt-native \ |
| 38 | dbus libxml2 gnutls tremor faad2 ffmpeg flac alsa-lib libidn \ |
| 39 | jpeg xz libmodplug mpeg2dec libmtp libopus orc libsamplerate0 \ |
| 40 | avahi libusb1 schroedinger taglib tiff" |
| 41 | |
| 42 | inherit autotools gettext pkgconfig mime-xdg |
| 43 | |
| 44 | export BUILDCC = "${BUILD_CC} -std=c11" |
| 45 | EXTRA_OECONF = "\ |
| 46 | --enable-run-as-root \ |
| 47 | --enable-xvideo \ |
| 48 | --disable-lua \ |
| 49 | --disable-screen \ |
| 50 | --disable-caca \ |
| 51 | --enable-vlm \ |
| 52 | --enable-tremor \ |
| 53 | --disable-aa \ |
| 54 | --disable-faad \ |
| 55 | --enable-dbus \ |
| 56 | --without-contrib \ |
| 57 | --without-kde-solid \ |
| 58 | --enable-realrtsp \ |
| 59 | --disable-libtar \ |
| 60 | --enable-avcodec \ |
| 61 | --disable-css \ |
| 62 | " |
| 63 | |
| 64 | PACKAGECONFIG ?= "\ |
| 65 | ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)} \ |
| 66 | ${@bb.utils.contains('MACHINE_FEATURES', 'vc4graphics', '', 'mmal', d)} \ |
| 67 | ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2', '', d)} \ |
| 68 | ${@bb.utils.contains_any('DISTRO_FEATURES', 'x11', 'notify', '', d)} \ |
| 69 | live555 dv1394 fontconfig fluidsynth freetype png udev \ |
| 70 | x264 alsa harfbuzz jack neon fribidi dvbpsi a52 v4l2 \ |
| 71 | " |
| 72 | |
| 73 | PACKAGECONFIG[mmal] = "--enable-omxil --enable-omxil-vout --enable-rpi-omxil --enable-mmal --enable-mmal-avcodec,,userland" |
| 74 | PACKAGECONFIG[x264] = "--enable-x264,--disable-x264,x264" |
| 75 | PACKAGECONFIG[mad] = "--enable-mad,--disable-mad,libmad" |
| 76 | PACKAGECONFIG[a52] = "--enable-a52,--disable-a52,liba52" |
| 77 | PACKAGECONFIG[jack] = "--enable-jack,--disable-jack,jack" |
| 78 | PACKAGECONFIG[live555] = "--enable-live555 LIVE555_PREFIX=${STAGING_DIR_HOST}${prefix},--disable-live555,live555" |
| 79 | PACKAGECONFIG[libass] = "--enable-libass,--disable-libass,libass" |
| 80 | PACKAGECONFIG[postproc] = "--enable-postproc,--disable-postproc,libpostproc" |
| 81 | PACKAGECONFIG[libva] = "--enable-libva,--disable-libva,libva" |
| 82 | #PACKAGECONFIG[opencv] = "--enable-opencv,--disable-opencv,opencv" |
| 83 | PACKAGECONFIG[speex] = "--enable-speex,--disable-speex,speex" |
| 84 | PACKAGECONFIG[gstreamer] = "--enable-gst-decode,--disable-gst-decode,gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad" |
| 85 | PACKAGECONFIG[vpx] = "--enable-vpx,--disable-vpx, libvpx" |
| 86 | #PACKAGECONFIG[freerdp] = "--enable-freerdp,--disable-freerdp, freerdp" |
| 87 | PACKAGECONFIG[dvbpsi] = "--enable-dvbpsi,--disable-dvbpsi, libdvbpsi" |
| 88 | #PACKAGECONFIG[samba] = "--enable-smbclient,--disable-smbclient, samba" |
| 89 | PACKAGECONFIG[upnp] = "--enable-upnp,--disable-upnp,libupnp" |
| 90 | PACKAGECONFIG[dvdnav] = "--enable-dvdnav,--disable-dvdnav,libdvdnav libdvdcss" |
| 91 | PACKAGECONFIG[sftp] = "--enable-sftp,--disable-sftp,libssh2" |
| 92 | PACKAGECONFIG[vorbis] = "--enable-vorbis,--disable-vorbis,libvorbis libogg" |
| 93 | PACKAGECONFIG[ogg] = "--enable-ogg,--disable-ogg,libvorbis libogg" |
| 94 | PACKAGECONFIG[dc1394] = "--enable-dc1394,--disable-dc1394,libdc1394" |
| 95 | PACKAGECONFIG[dv1394] = "--enable-dv1394,--disable-dv1394,libraw1394 libavc1394" |
| 96 | PACKAGECONFIG[svg] = "--enable-svg,--disable-svg,librsvg" |
| 97 | PACKAGECONFIG[svgdec] = "--enable-svgdec,--disable-svgdec,librsvg cairo" |
| 98 | PACKAGECONFIG[notify] = "--enable-notify,--disable-notify, libnotify gtk+3" |
| 99 | PACKAGECONFIG[fontconfig] = "--enable-fontconfig,--disable-fontconfig, fontconfig" |
| 100 | PACKAGECONFIG[freetype] = "--enable-freetype,--disable-freetype, freetype" |
| 101 | #PACKAGECONFIG[dvdread] = "--enable-dvdread,--disable-dvdread, libdvdread libdvdcss" |
| 102 | PACKAGECONFIG[vnc] = "--enable-vnc,--disable-vnc, libvncserver" |
| 103 | PACKAGECONFIG[x11] = "--with-x --enable-xcb,--without-x --disable-xcb, xcb-util-keysyms libxpm libxinerama" |
| 104 | PACKAGECONFIG[png] = "--enable-png,--disable-png,libpng" |
| 105 | #PACKAGECONFIG[vdpau] = "--enable-vdpau,--disable-vdpau,libvdpau" |
| 106 | #PACKAGECONFIG[wayland] = "--enable-wayland,--disable-wayland,wayland wayland-native" |
| 107 | PACKAGECONFIG[gles2] = "--enable-gles2,--disable-gles2,virtual/libgles2" |
| 108 | #PACKAGECONFIG[dca] = "--enable-dca,--disable-dca,libdca" |
| 109 | PACKAGECONFIG[fribidi] = "--enable-fribidi,,fribidi" |
| 110 | PACKAGECONFIG[gnutls] = "--enable-gnutls,,gnutls" |
| 111 | PACKAGECONFIG[fluidsynth] = "--enable-fluidsynth,,fluidsynth" |
| 112 | PACKAGECONFIG[harfbuzz] = "--enable-harfbuzz,--disable-harfbuzz,harfbuzz" |
| 113 | PACKAGECONFIG[udev] = "--enable-udev,--disable-udev,udev" |
| 114 | PACKAGECONFIG[neon] = "--enable-neon,--disable-neon," |
| 115 | PACKAGECONFIG[opus] = "--enable-opus,--disable-opus,libopus libogg" |
| 116 | PACKAGECONFIG[ncurses] = "--enable-ncurses,--disable-ncurses,ncurses" |
| 117 | PACKAGECONFIG[alsa] = "--enable-alsa,--disable-alsa,alsa-lib" |
| 118 | PACKAGECONFIG[pulseaudio] = "--enable-pulse,--disable-pulse,pulseaudio" |
| 119 | PACKAGECONFIG[sdl-image] = "--enable-sdl-image,,libsdl-image" |
| 120 | PACKAGECONFIG[v4l2] = "--enable-v4l2,,v4l-utils" |
| 121 | |
| 122 | TARGET_CFLAGS:append = " -I${STAGING_INCDIR}/drm" |
| 123 | TARGET_LDFLAGS:append = " ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', '-lGLESv2', '', d)}" |
| 124 | |
| 125 | # Ensures the --enable-mmal-avcodec flag is available for usage |
| 126 | do_configure:prepend() { |
| 127 | olddir=`pwd` |
| 128 | cd ${S} |
| 129 | ./bootstrap |
| 130 | cd $olddir |
| 131 | } |
| 132 | |
| 133 | # This recipe packages vlc as a library as well, so qt4 dependencies |
| 134 | # can be avoided when only the library is installed. |
| 135 | PACKAGES =+ "libvlc" |
| 136 | |
| 137 | LEAD_SONAME_libvlc = "libvlc.so.5" |
| 138 | FILES:libvlc = "${libdir}/lib*.so.*" |
| 139 | |
| 140 | FILES:${PN} += "\ |
| 141 | ${bindir}/vlc \ |
| 142 | ${libdir}/vlc \ |
| 143 | ${datadir}/applications \ |
| 144 | ${datadir}/vlc \ |
| 145 | ${datadir}/icons \ |
| 146 | ${datadir}/metainfo/vlc.appdata.xml \ |
| 147 | " |
| 148 | |
| 149 | FILES:${PN}-dbg += "\ |
| 150 | ${libdir}/vlc/*/.debug \ |
| 151 | ${libdir}/vlc/plugins/*/.debug \ |
| 152 | " |
| 153 | |
| 154 | FILES:${PN}-staticdev += "\ |
| 155 | ${libdir}/vlc/plugins/*/*.a \ |
| 156 | ${libdir}/vlc/libcompat.a \ |
| 157 | " |
| 158 | |
| 159 | # Only enable it for rpi class of machines |
| 160 | COMPATIBLE_HOST = "null" |
| 161 | COMPATIBLE_HOST:rpi = "(.*)" |
| 162 | |
| 163 | INSANE_SKIP:${PN} = "dev-so" |