Summary: The cross-platform open-source multimedia framework, player and server Epoch: 1 Name: vlc Version: 3.0.12.1 Release: 1%{?dist} License: GPLv2+ URL: https://www.videolan.org Source0: https://code.videolan.org/videolan/vlc-3.0/-/archive/%{version}/%{name}-%version.tar.gz %global vlc_setup vlc-3.0-3.0.12.1-170157402b9c9ee5651838499549328c6715b5fe Patch0: Switch-to-Fedora-lua-5.1.patch Patch1: 0001-Add-missing-include-limits-to-file-using-std.patch BuildRequires: desktop-file-utils BuildRequires: libappstream-glib BuildRequires: fontpackages-devel BuildRequires: bison BuildRequires: flex BuildRequires: gettext-devel BuildRequires: libtool BuildRequires: gcc-c++ BuildRequires: aalib-devel BuildRequires: alsa-lib-devel BuildRequires: asdcplib-devel BuildRequires: avahi-devel BuildRequires: cdparanoia-devel BuildRequires: libdav1d-devel BuildRequires: pkgconfig(dbus-1) %{?_with_faad2:BuildRequires: faad2-devel} BuildRequires: ffmpeg-devel >= 0.4.9-0 BuildRequires: flac-devel BuildRequires: fribidi-devel BuildRequires: gnutls-devel >= 1.0.17 BuildRequires: gsm-devel BuildRequires: hostname BuildRequires: jack-audio-connection-kit-devel BuildRequires: game-music-emu-devel %ifarch %{arm} aarch64 BuildRequires: pkgconfig(gstreamer-app-1.0) BuildRequires: pkgconfig(gstreamer-video-1.0) %endif BuildRequires: libavc1394-devel BuildRequires: libass-devel >= 0.9.7 BuildRequires: libcaca-devel BuildRequires: libcddb-devel BuildRequires: libcdio-devel >= 0.77-3 BuildRequires: pkgconfig(libchromaprint) BuildRequires: pkgconfig(daaladec) BuildRequires: pkgconfig(daalaenc) BuildRequires: libdc1394-devel >= 2.1.0 BuildRequires: libdv-devel BuildRequires: libdvdnav-devel BuildRequires: libebml-devel BuildRequires: libgcrypt-devel BuildRequires: libid3tag-devel BuildRequires: libkate-devel BuildRequires: libmad-devel BuildRequires: libmatroska-devel >= 0.7.6 BuildRequires: libmodplug-devel BuildRequires: libmp4v2-devel BuildRequires: libmpcdec-devel BuildRequires: libmpg123-devel BuildRequires: libmtp-devel >= 1.0.0 BuildRequires: libproxy-devel BuildRequires: librsvg2-devel >= 2.9.0 BuildRequires: libssh2-devel BuildRequires: libsysfs-devel BuildRequires: libshout-devel BuildRequires: libtar-devel BuildRequires: libtheora-devel BuildRequires: libtiger-devel BuildRequires: libtiff-devel BuildRequires: pkgconfig(libidn) BuildRequires: pkgconfig(libjpeg) BuildRequires: pkgconfig(libudev) BuildRequires: pkgconfig(libvncclient) BuildRequires: pkgconfig(libnotify) BuildRequires: libupnp-devel BuildRequires: libv4l-devel BuildRequires: pkgconfig(vdpau) BuildRequires: pkgconfig(vorbis) BuildRequires: pkgconfig(vpx) BuildRequires: pkgconfig(libxml-2.0) BuildRequires: lirc-devel BuildRequires: pkgconfig(gl) BuildRequires: pkgconfig(glu) BuildRequires: libsamplerate-devel BuildRequires: libshout-devel %if 0%{?fedora} || 0%{?rhel} > 7 BuildRequires: compat-lua compat-lua-devel %else BuildRequires: lua-devel %endif BuildRequires: minizip-devel BuildRequires: ncurses-devel BuildRequires: openslp-devel Buildrequires: opus-devel BuildRequires: pcre-devel BuildRequires: pkgconfig(libarchive) >= 3.1.0 BuildRequires: pkgconfig(libpulse) >= 0.9.8 BuildRequires: pkgconfig(libsecret-1) >= 0.18 BuildRequires: pkgconfig(microdns) >= 0.1.2 BuildRequires: pkgconfig(protobuf-lite) >= 2.5 BuildRequires: pkgconfig(Qt5Core) >= 5.5 BuildRequires: pkgconfig(Qt5Gui) >= 5.5 BuildRequires: pkgconfig(Qt5Svg) >= 5.5 BuildRequires: pkgconfig(Qt5X11Extras) >= 5.5 BuildRequires: pkgconfig(soxr) BuildRequires: pkgconfig(spatialaudio) BuildRequires: pkgconfig(speexdsp) >= 1.0.5 #BuildRequires: pkgconfig(srt) BuildRequires: pkgconfig(wayland-client) >= 1.5.91 BuildRequires: pkgconfig(wayland-egl) BuildRequires: pkgconfig(wayland-protocols) BuildRequires: pkgconfig(sqlite3) BuildRequires: pkgconfig(speex) BuildRequires: pkgconfig(taglib) %{?_with_twolame:BuildRequires: pkgconfig(twolame)} %{?_with_vcdimager:BuildRequires: vcdimager-devel >= 0.7.21} %{?_with_x264:BuildRequires: x264-devel >= 0-0.8.20061028} %{?_with_x265:BuildRequires: x265-devel} %{?_with_xvidcore:BuildRequires: xvidcore-devel} BuildRequires: zlib-devel BuildRequires: zvbi-devel # X-libs BuildRequires: libXt-devel BuildRequires: libXv-devel BuildRequires: libXxf86vm-devel BuildRequires: libX11-devel BuildRequires: libXext-devel BuildRequires: libXinerama-devel BuildRequires: libXpm-devel BuildRequires: libxcb-devel BuildRequires: xcb-util-devel BuildRequires: pkgconfig(xcb-keysyms) BuildRequires: xorg-x11-proto-devel BuildRequires: qt5-qtbase-private-devel BuildRequires: phonon-qt5-devel BuildRequires: phonon-qt5-backend-gstreamer Recommends: qt5-qtwayland%{_isa} #Merge back jack plugin into main Obsoletes: vlc-plugin-jack < %{version}-%{release} Provides: vlc-plugin-jack = %{version}-%{release} Provides: %{name}-xorg%{_isa} = %{epoch}:%{version}-%{release} Requires: vlc-core%{_isa} = %{epoch}:%{version}-%{release} Requires: dejavu-sans-fonts Requires: dejavu-sans-mono-fonts Requires: dejavu-serif-fonts #For xdg-sreensaver Requires: xdg-utils Requires: hicolor-icon-theme %description VLC media player is a highly portable multimedia player and multimedia framework capable of reading most audio and video formats as well as DVDs, Audio CDs VCDs, and various streaming protocols. It can also be used as a media converter or a server to stream in uni-cast or multi-cast in IPv4 or IPv6 on networks. %package devel Summary: Development files for %{name} Requires: %{name}-core%{_isa} = %{epoch}:%{version}-%{release} %description devel The %{name}-devel package contains libraries and header files for developing applications that use %{name}. %package core Summary: VLC media player core Provides: vlc-nox = %{epoch}:%{version}-%{release} %{?live555_version:Requires: live555%{?_isa} = %{live555_version}} %{?lua_version:Requires: lua(abi) = %{lua_version}} Requires: libmicrodns%{?_isa} > 0.1.2-1 %if 0%{?fc31} Requires: srt-libs%{?_isa} > 1.4.1-3 %endif %description core VLC media player core components %package extras Summary: VLC media player with extras modules Requires: vlc-core%{_isa} = %{epoch}:%{version}-%{release} %if 0%{?el7:1} Requires(post): /sbin/ldconfig Requires(postun): /sbin/ldconfig %endif %description extras VLC media player extras modules. %prep %setup -q -n %{vlc_setup} %if 0%{?fedora} || 0%{?rhel} > 7 %patch0 -p1 sed -i -e 's/luac/luac-5.1/g' configure.ac %endif %patch1 -p1 %build ./bootstrap touch src/revision.txt %configure \ --disable-dependency-tracking \ --disable-optimizations \ --disable-silent-rules \ --with-default-font=%{_fontbasedir}/dejavu/DejaVuSans.ttf \ --with-default-font-family=DejaVuSans \ --with-default-monospace-font=%{_fontbasedir}/dejavu/DejaVuSansMono.ttf \ --with-default-monospace-font-family=DejaVuSansMono \ --with-kde-solid=no \ --with-pic \ --disable-rpath \ --with-binary-version=%{version} \ --enable-lua \ %{?_with_live555:--enable-live555} \ %{!?_with_opencv:--disable-opencv} \ %{!?el8:--enable-sftp} \ %{?_with_vcdimager:--enable-vcdx} \ %{?_with_aom:--enable-aom} \ %{!?_with_a52dec:--disable-a52} \ %{?_with_dav1d:--enable-dav1d} \ %{!?_with_ffmpeg:--disable-avcodec --disable-avformat \ --disable-swscale --disable-postproc} \ %{?_with_faad2:--enable-faad} \ %{!?_with_libmad:--disable-mad} \ %{?_with_twolame:--enable-twolame} \ %{?!_without_freeworld: --enable-realrtsp} \ --enable-flac \ --enable-tremor \ --enable-speex \ --enable-theora \ --enable-libass \ --enable-shout \ --enable-wayland \ --enable-xvideo \ --enable-svg \ --enable-aa \ --enable-caca \ --enable-jack \ --enable-pulse \ --enable-ncurses \ --enable-lirc %if 0 # remove rpath from libtool sed -i.rpath 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool sed -i.rpath 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool %endif %if 1 # clean unused-direct-shlib-dependencies sed -i -e 's! -shared ! -Wl,--as-needed\0!g' libtool %endif %make_build %install %make_install INSTALL="install -p" CPPROG="cp -p" find %{buildroot} -name '*.la' -exec rm -f {} ';' find %{buildroot} -name '*.a' -exec rm -f {} ';' desktop-file-validate %{buildroot}%{_datadir}/applications/vlc.desktop # Remove installed fonts for skins2 rm -rf %{buildroot}%{_datadir}/vlc/skins2/fonts #Fix unowned directories rm -rf %{buildroot}%{_docdir}/vlc #Ghost the plugins cache touch %{buildroot}%{_libdir}/vlc/plugins/plugins.dat #Appdata appstream-util validate-relax --nonet \ %{buildroot}/%{_datadir}/metainfo/*.appdata.xml || : #Fixup rm -rf %{buildroot}/%{_datadir}/macosx #Disable KDE4 desktop files rm -rf %{buildroot}%{_datadir}/kde4 %find_lang %{name} %check %if 0%{?el7} . /opt/rh/devtoolset-%{dts_ver}/enable %endif %ifnarch %{arm} make check %else make check || : %endif %ldconfig_scriptlets core %post %{?ldconfig} if [ $1 == 1 ] ; then %{_libdir}/vlc/vlc-cache-gen %{_libdir}/vlc/plugins &>/dev/null fi || : %{_bindir}/touch --no-create %{_datadir}/icons/hicolor if [ -x %{_bindir}/gtk-update-icon-cache ]; then %{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor fi %{_bindir}/update-desktop-database %{_datadir}/applications &>/dev/null || : %postun %{?ldconfig} %{_libdir}/vlc/vlc-cache-gen %{_libdir}/vlc/plugins &>/dev/null %{_bindir}/update-desktop-database %{_datadir}/applications &>/dev/null %{_bindir}/touch --no-create %{_datadir}/icons/hicolor if [ -x %{_bindir}/gtk-update-icon-cache ]; then %{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor fi || : %posttrans core %{_libdir}/vlc/vlc-cache-gen %{_libdir}/vlc/plugins &>/dev/null || : %post extras %{?ldconfig} if [ $1 == 1 ] ; then %{_libdir}/vlc/vlc-cache-gen %{_libdir}/vlc/plugins &>/dev/null || : fi %postun extras %{?ldconfig} if [ $1 == 0 ] ; then %{_libdir}/vlc/vlc-cache-gen %{_libdir}/vlc/plugins &>/dev/null || : fi %preun core if [ $1 == 0 ] ; then rm -f %{_libdir}/vlc/plugins*.dat fi || : %files %doc AUTHORS NEWS README THANKS %license COPYING %{_datadir}/metainfo/vlc.appdata.xml %{_datadir}/applications/*%{name}.desktop %{_datadir}/icons/hicolor/*/apps/vlc*.png %{_datadir}/icons/hicolor/*/apps/vlc*.xpm %{_datadir}/vlc/skins2/ %{_bindir}/qvlc %{_bindir}/svlc %{_libdir}/vlc/libvlc_pulse.so* # qt in main %{_libdir}/vlc/plugins/gui/libqt_plugin.so # skin2 in main %{_libdir}/vlc/plugins/gui/libskins2_plugin.so %{?_with_projectm: %{_libdir}/vlc/plugins/visualization/libprojectm_plugin.so } #jack in main %{_libdir}/vlc/plugins/access/libaccess_jack_plugin.so %{_libdir}/vlc/plugins/audio_output/libjack_plugin.so #pulseaudio in main %{_libdir}/vlc/plugins/audio_output/libpulse_plugin.so %{_libdir}/vlc/plugins/access/libpulsesrc_plugin.so %{_libdir}/vlc/plugins/services_discovery/libpulselist_plugin.so %{?_with_fluidsynth: %{_libdir}/vlc/plugins/codec/libfluidsynth_plugin.so } %files core -f %{name}.lang %{_bindir}/vlc %{_bindir}/cvlc %{_bindir}/nvlc %{_bindir}/rvlc %{_bindir}/vlc-wrapper %exclude %{_datadir}/vlc/skins2 %{_datadir}/vlc/ %{_libdir}/*.so.* %dir %{_libdir}/vlc %{_libdir}/vlc/lua/ %{_libdir}/vlc/libvlc_vdpau.so* %{_libdir}/vlc/libvlc_xcb_events.so* %exclude %{_libdir}/vlc/plugins/access/libaccess_jack_plugin.so %{?_with_asdcp: %exclude %{_libdir}/vlc/plugins/access/libdcp_plugin.so } %{?_with_vcdimager: %exclude %{_libdir}/vlc/plugins/access/libvcd_plugin.so %exclude %{_libdir}/vlc/plugins/access/libvcdx_plugin.so %exclude %{_libdir}/vlc/plugins/codec/libsvcdsub_plugin.so } %{?_with_crystalhd: %exclude %{_libdir}/vlc/plugins/codec/libcrystalhd_plugin.so } %{?_with_fluidsynth: %exclude %{_libdir}/vlc/plugins/codec/libfluidsynth_plugin.so } %exclude %{_libdir}/vlc/plugins/gui/libqt_plugin.so %exclude %{_libdir}/vlc/plugins/gui/libskins2_plugin.so %{?_with_opencv: %exclude %{_libdir}/vlc/plugins/video_filter/libopencv_example_plugin.so %exclude %{_libdir}/vlc/plugins/video_filter/libopencv_wrapper_plugin.so } %{?_with_projectm: %exclude %{_libdir}/vlc/plugins/visualization/libprojectm_plugin.so } %exclude %{_libdir}/vlc/plugins/audio_output/libjack_plugin.so %exclude %{_libdir}/vlc/plugins/audio_output/libpulse_plugin.so %exclude %{_libdir}/vlc/plugins/access/libpulsesrc_plugin.so %exclude %{_libdir}/vlc/plugins/services_discovery/libpulselist_plugin.so %ghost %{_libdir}/vlc/plugins/plugins.dat %{_libdir}/vlc/vlc-cache-gen %{_libdir}/vlc/plugins %{_mandir}/man1/vlc*.1* %files extras %{?_with_opencv: %{_libdir}/vlc/plugins/video_filter/libopencv_example_plugin.so %{_libdir}/vlc/plugins/video_filter/libopencv_wrapper_plugin.so } %{?_with_vcdimager: %{_libdir}/vlc/plugins/access/libvcd_plugin.so %{_libdir}/vlc/plugins/access/libvcdx_plugin.so %{_libdir}/vlc/plugins/codec/libsvcdsub_plugin.so } %{?_with_crystalhd: %{_libdir}/vlc/plugins/codec/libcrystalhd_plugin.so } %{?_with_asdcp: %{_libdir}/vlc/plugins/access/libdcp_plugin.so } %files devel %dir %{_includedir}/vlc %{_includedir}/vlc/* %{_libdir}/*.so %{_libdir}/pkgconfig/vlc-plugin.pc %{_libdir}/pkgconfig/libvlc.pc