diff -urN multimedia/libxine.orig/Makefile multimedia/libxine/Makefile --- multimedia/libxine.orig/Makefile +++ multimedia/libxine/Makefile @@ -2,8 +2,7 @@ # $FreeBSD: head/multimedia/libxine/Makefile 555210 2020-11-15 13:16:54Z mikael $ PORTNAME= xine -PORTVERSION= 1.2.9 -PORTREVISION= 13 +DISTVERSION= 1.2.11 CATEGORIES= multimedia MASTER_SITES= SF/${PORTNAME}/${PORTNAME}-lib/${PORTVERSION} PKGNAMEPREFIX= lib @@ -15,7 +14,6 @@ LICENSE= GPLv2+ LICENSE_FILE= ${WRKSRC}/COPYING -BUILD_DEPENDS= v4l_compat>=1.0.20100321:multimedia/v4l_compat LIB_DEPENDS= libFLAC.so:audio/flac \ liba52.so:audio/liba52 \ libvorbis.so:audio/libvorbis \ @@ -40,7 +38,7 @@ libdvdnav.so:multimedia/libdvdnav USES= compiler cpe gl gmake gnome iconv libtool:keepla jpeg \ - localbase pathfix perl5 pkgconfig sdl tar:xz xorg + localbase pathfix perl5 pkgconfig tar:xz xorg LLD_UNSAFE= yes CPE_PRODUCT= xine-lib CPE_VENDOR= xine @@ -48,50 +46,74 @@ USE_XORG= x11 xcb xv xinerama xext sm ice USE_GL= gl glu USE_PERL5= build -USE_SDL= sdl USE_LDCONFIG= yes CONFIGURE_ARGS= --with-libflac \ - --disable-real-codecs \ - --disable-v4l \ - --without-alsa \ - --without-esound \ - --disable-musepack + --enable-musepack \ + --enable-real-codecs \ + --without-esound MAKE_ENV= V=1 MAKE_ARGS= pkgdatadir="${DATADIR}" \ datadir="${DATADIR}" \ libdir="${PREFIX}/lib" -CFLAGS_i386= -fomit-frame-pointer +CFLAGS_i386= -fomit-frame-pointer DOCSDIR= ${PREFIX}/share/doc/xine-lib # Please sync with XINE_PLUGINSDIR in multimedia/xine # and multimedia/vdr-plugin-xineliboutput -PLUGINSDIR= lib/xine/plugins/2.7 +PLUGINSDIR= lib/xine/plugins/2.9 PLIST_SUB= PLUGINSDIR="${PLUGINSDIR}" -OPTIONS_DEFINE= DOCS NLS CACA DVB DMX_IMAGE IPV6 IMAGEMAGICK JACK \ - GNOMEVFS2 PIXBUF PULSEAUDIO XVMC SMB SNDIO AALIB WAVPACK \ - VAAPI LIBBLURAY -OPTIONS_DEFAULT= DVB PIXBUF VAAPI +OPTIONS_DEFINE= AALIB ALSA AOM CACA DAV1D DOCS DMX_IMAGE DVB GNOMEVFS2 \ + IPV6 JACK LIBBLURAY NFS NLS PIXBUF PULSEAUDIO SDL SFTP \ + SMB SNDIO V4L VAAPI WAVPACK WAYLAND XVMC +OPTIONS_DEFAULT= DVB OPENSSL PIXBUF VAAPI OPTIONS_DEFINE_i386= W32DLL OPTIONS_DEFAULT_i386= W32DLL +OPTIONS_GROUP= TLS +OPTIONS_GROUP_TLS= GNUTLS OPENSSL +OPTIONS_RADIO= IMAGEMAGICK +OPTIONS_RADIO_IMAGEMAGICK=IMAGEMAGICK6 IMAGEMAGICK7 OPTIONS_SUB= yes +AOM_DESC= Enable libaom AV1 decoder support +DAV1D_DESC= Enable dav1d AV1 decoder support DMX_IMAGE_DESC= DMX image plugin DVB_DESC= DVB plugin +IMAGEMAGICK6_DESC= ${IMAGEMAGICK_DESC} version 6.x +IMAGEMAGICK7_DESC= ${IMAGEMAGICK_DESC} version 7.x +NFS_DESC= Enable NFS support using libnfs +SDL_DESC= Enable support for SDL 1 video output +SFTP_DESC= Enable SFTP support using libssh2 +TLS_DESC= Enable TLS support for https and ftps W32DLL_DESC= Win32 codec support +WAYLAND_DESC= Enable Wayland support AALIB_LIB_DEPENDS= libaa.so:graphics/aalib AALIB_CONFIGURE_ENABLE= aalib +ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib +ALSA_CONFIGURE_WITH= alsa +AOM_LIB_DEPENDS= libaom.so:multimedia/aom +AOM_CONFIGURE_WITH= libaom CACA_LIB_DEPENDS= libcaca.so:graphics/libcaca CACA_CONFIGURE_WITH= caca +DAV1D_LIB_DEPENDS= libdav1d.so:multimedia/dav1d +DAV1D_CONFIGURE_WITH= dav1d +DVB_BUILD_DEPENDS= v4l_compat>=1.0.20100321:multimedia/v4l_compat DVB_CONFIGURE_ENABLE= dvb GNOMEVFS2_USE= GNOME=glib20,gconf2,gnomevfs2 GNOMEVFS2_CONFIGURE_ENABLE= gnomevfs -IMAGEMAGICK_CONFIGURE_WITH= imagemagick -IMAGEMAGICK_LIB_DEPENDS= libMagickWand-6.so:graphics/ImageMagick6 +GNUTLS_LIB_DEPENDS= libgnutls.so:security/gnutls +GNUTLS_CONFIGURE_ON= --enable-tls +IMAGEMAGICK_CONFIGURE_ON= --with-imagemagick IMAGEMAGICK_IMPLIES= DMX_IMAGE +IMAGEMAGICK6_LIB_DEPENDS= libMagickWand-6.so:graphics/ImageMagick6 +IMAGEMAGICK6_CONFIGURE_ON= ${IMAGEMAGICK_CONFIGURE_ON} +IMAGEMAGICK6_IMPLIES= ${IMAGEMAGICK_IMPLIES} +IMAGEMAGICK7_LIB_DEPENDS= libMagickWand-7.so:graphics/ImageMagick7 +IMAGEMAGICK7_CONFIGURE_ON= ${IMAGEMAGICK_CONFIGURE_ON} +IMAGEMAGICK7_IMPLIES= ${IMAGEMAGICK_IMPLIES} IPV6_CONFIGURE_ENABLE= ipv6 JACK_LIB_DEPENDS= libjack.so:audio/jack JACK_CONFIGURE_WITH= jack @@ -99,25 +121,41 @@ LIBBLURAY_CONFIGURE_ENABLE= bluray NLS_USES= gettext NLS_CONFIGURE_ENABLE= nls +NFS_LIB_DEPENDS= libnfs.so:net/libnfs +NFS_CONFIGURE_ENABLE= nfs +OPENSSL_CONFIGURE_ON= --enable-tls +OPENSSL_CONFIGURE_ENV= OPENSSL_LIBS="-L${OPENSSLLIB} -lssl" \ + OPENSSL_CFLAGS="-I${OPENSSLINC}" +OPENSSL_USES= ssl PIXBUF_CONFIGURE_ENABLE= gdkpixbuf PIXBUF_IMPLIES= DMX_IMAGE PIXBUF_USE= GNOME=gdkpixbuf2,glib20 PULSEAUDIO_LIB_DEPENDS= libpulse.so:audio/pulseaudio PULSEAUDIO_CONFIGURE_WITH= pulseaudio +SDL_CONFIGURE_WITH= sdl +SDL_USE= SDL=sdl +SFTP_LIB_DEPENDS= libssh2.so:security/libssh2 +SFTP_CONFIGURE_ENABLE= sftp SMB_USES= samba:lib SMB_CONFIGURE_ENV= LIBSMBCLIENT_LIBS="-L${SAMBALIBS} -lsmbclient" \ LIBSMBCLIENT_CFLAGS="-I${SAMBAINCLUDES}" SMB_CONFIGURE_ENABLE= samba -SNDIO_CONFIGURE_ENABLE= sndio SNDIO_LIB_DEPENDS= libsndio.so:audio/sndio +SNDIO_CONFIGURE_ENABLE= sndio VAAPI_LIB_DEPENDS= libva.so:multimedia/libva \ libva-glx.so:multimedia/libva-glx VAAPI_CONFIGURE_ENABLE= vaapi +V4L_BUILD_DEPENDS= v4l_compat>=1.0.20100321:multimedia/v4l_compat +V4L_LIB_DEPENDS= libv4l2.so:multimedia/libv4l +V4L_CONFIGURE_ENABLE= libv4l v4l v4l2 W32DLL_CONFIGURE_ENABLE= w32dll W32DLL_PLIST_FILES= ${PLUGINSDIR}/xineplug_decode_qt.so \ ${PLUGINSDIR}/xineplug_decode_w32dll.so WAVPACK_LIB_DEPENDS= libwavpack.so:audio/wavpack WAVPACK_CONFIGURE_WITH= wavpack +WAYLAND_LIB_DEPENDS= libwayland-egl.so:graphics/wayland \ + libwayland-client.so:graphics/wayland +WAYLAND_CONFIGURE_ENABLE= wayland .if defined(WITH_NVIDIA304_GL) || exists(${LOCALBASE}/lib/libXvMCNVIDIA.so.1) XVMC_CONFIGURE_WITH= xvmc-lib=XvMCNVIDIA @@ -134,16 +172,27 @@ BUILD_DEPENDS+= as:devel/binutils .endif +.if ${PORT_OPTIONS:MIMAGEMAGICK6} || ${PORT_OPTIONS:MIMAGEMAGICK7} +PLIST_SUB+= IMAGEMAGICK="" +.else +CONFIGURE_ARGS+= --without-imagemagick +PLIST_SUB+= IMAGEMAGICK="@comment " +.endif + +.if !${PORT_OPTIONS:MGNUTLS} && !${PORT_OPTIONS:MOPENSSL} +CONFIGURE_ARGS+= --disable-tls +.endif + +pre-configure-GNUTLS-off: + @${REINPLACE_CMD} -e 's|have_gnutls=yes|have_gnutls=no|' \ + ${WRKSRC}/configure + post-patch: .if ${COMPILER_TYPE} == "clang" @${REINPLACE_CMD} -e 's|-fno-rename-registers||' \ - ${WRKSRC}/src/libw32dll/wine/Makefile.in + ${WRKSRC}/src/libw32dll/Makefile.in .endif - @${REINPLACE_CMD} -e 's|-ldl||' \ - ${WRKSRC}/src/video_out/Makefile.in - @${REINPLACE_CMD} -e "s|#define _ATOM QT_ATOM('', '', '', '')||" \ - ${WRKSRC}/src/demuxers/demux_qt.c \ - ${WRKSRC}/configure + post-install: @${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/*.so @${STRIP_CMD} ${STAGEDIR}${PREFIX}/${PLUGINSDIR}/*.so diff -urN multimedia/libxine.orig/distinfo multimedia/libxine/distinfo --- multimedia/libxine.orig/distinfo +++ multimedia/libxine/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1535162154 -SHA256 (xine-lib-1.2.9.tar.xz) = 32b34e8049feb762d75a551d5d2cdb56c396fdd83e35b9b7de5fd08e498e948d -SIZE (xine-lib-1.2.9.tar.xz) = 5180452 +TIMESTAMP = 1609529764 +SHA256 (xine-lib-1.2.11.tar.xz) = ef51b21d10dda1045fa7d711bd9171cfdaf0a5a2874233bcf16ffdf28ec07005 +SIZE (xine-lib-1.2.11.tar.xz) = 5282204 diff -urN multimedia/libxine.orig/files/patch-include_config.h multimedia/libxine/files/patch-include_config.h --- multimedia/libxine.orig/files/patch-include_config.h +++ multimedia/libxine/files/patch-include_config.h @@ -1,18 +0,0 @@ -$OpenBSD: patch-include_config_h,v 1.1 2018/02/16 14:27:53 sthen Exp $ - -Index: include/config.h ---- include/config.h.orig -+++ include/config.h -@@ -24,9 +24,11 @@ - /* Ugly build time sanity guard. - * ./configure might mistake X32 mode as plain 64bit, - * but compiler itself sets __ILP32__ when in x32. -+ * Even worse: clang sets this in 32 mode as well, -+ * so also test __i386__ here. - */ - #ifdef ARCH_X86 --# if defined(__ILP32__) && !defined(ARCH_X86_X32) -+# if defined(__ILP32__) && !defined(__i386) && !defined(__i386__) && !defined(ARCH_X86_X32) - # ifdef ARCH_WARN - # warning "configure did not detect ARCH_X86_X32!" - # endif diff -urN multimedia/libxine.orig/files/patch-src_input_input__v4l.c multimedia/libxine/files/patch-src_input_input__v4l.c --- multimedia/libxine.orig/files/patch-src_input_input__v4l.c +++ multimedia/libxine/files/patch-src_input_input__v4l.c @@ -0,0 +1,13 @@ +--- src/input/input_v4l.c.orig ++++ src/input/input_v4l.c +@@ -1394,10 +1394,6 @@ + /* On buffer overrun we need to re prepare the capturing pcm device */ + snd_pcm_prepare(this->pcm_handle); + break; +- case -ESTRPIPE: /* Suspend event */ +- xprintf(this->stream->xine, XINE_VERBOSITY_LOG, +- "input_v4l: PCM suspend event occured\n"); +- break; + default: /* Unknown */ + xprintf(this->stream->xine, XINE_VERBOSITY_LOG, + "input_v4l: Unknown PCM error code: %d\n", pcmreturn); diff -urN multimedia/libxine.orig/pkg-plist multimedia/libxine/pkg-plist --- multimedia/libxine.orig/pkg-plist +++ multimedia/libxine/pkg-plist @@ -28,6 +28,7 @@ include/xine/sorted_array.h include/xine/spu.h include/xine/spu_decoder.h +include/xine/tickets.h include/xine/vdr.h include/xine/version.h include/xine/video_decoder.h @@ -36,6 +37,7 @@ include/xine/vo_scale.h include/xine/xine_buffer.h include/xine/xine_internal.h +include/xine/xine_module.h include/xine/xine_plugin.h include/xine/xineintl.h include/xine/xineutils.h @@ -45,7 +47,7 @@ lib/libxine-interface.la lib/libxine.so lib/libxine.so.2 -lib/libxine.so.2.7.0 +lib/libxine.so.2.9.0 %%PLUGINSDIR%%/mime.types %%PLUGINSDIR%%/post/xineplug_post_audio_filters.so %%PLUGINSDIR%%/post/xineplug_post_goom.so @@ -54,11 +56,13 @@ %%PLUGINSDIR%%/post/xineplug_post_switch.so %%PLUGINSDIR%%/post/xineplug_post_tvtime.so %%PLUGINSDIR%%/post/xineplug_post_visualizations.so +%%ALSA%%%%PLUGINSDIR%%/xineplug_ao_out_alsa.so %%JACK%%%%PLUGINSDIR%%/xineplug_ao_out_jack.so %%PLUGINSDIR%%/xineplug_ao_out_oss.so %%PULSEAUDIO%%%%PLUGINSDIR%%/xineplug_ao_out_pulseaudio.so %%SNDIO%%%%PLUGINSDIR%%/xineplug_ao_out_sndio.so %%PLUGINSDIR%%/xineplug_decode_a52.so +%%DAV1D%%%%PLUGINSDIR%%/xineplug_decode_dav1d.so %%PLUGINSDIR%%/xineplug_decode_dts.so %%PLUGINSDIR%%/xineplug_decode_dvaudio.so %%PLUGINSDIR%%/xineplug_decode_faad.so @@ -66,17 +70,22 @@ %%PIXBUF%%%%PLUGINSDIR%%/xineplug_decode_gdk_pixbuf.so %%PLUGINSDIR%%/xineplug_decode_gsm610.so %%IMAGEMAGICK%%%%PLUGINSDIR%%/xineplug_decode_image.so +%%AOM%%%%PLUGINSDIR%%/xineplug_decode_libaom.so %%PLUGINSDIR%%/xineplug_decode_libjpeg.so +%%PLUGINSDIR%%/xineplug_decode_libpng.so %%PLUGINSDIR%%/xineplug_decode_libvpx.so %%PLUGINSDIR%%/xineplug_decode_lpcm.so %%PLUGINSDIR%%/xineplug_decode_mad.so +%%PLUGINSDIR%%/xineplug_decode_mpc.so %%PLUGINSDIR%%/xineplug_decode_mpeg2.so %%PLUGINSDIR%%/xineplug_decode_rawvideo.so +%%PLUGINSDIR%%/xineplug_decode_real.so %%PLUGINSDIR%%/xineplug_decode_spu.so %%PLUGINSDIR%%/xineplug_decode_spucc.so %%PLUGINSDIR%%/xineplug_decode_spucmml.so %%PLUGINSDIR%%/xineplug_decode_spudvb.so %%PLUGINSDIR%%/xineplug_decode_spuhdmv.so +%%PLUGINSDIR%%/xineplug_decode_to_spdif.so %%PLUGINSDIR%%/xineplug_decode_vdpau.so %%PLUGINSDIR%%/xineplug_dmx_asf.so %%PLUGINSDIR%%/xineplug_dmx_audio.so @@ -98,19 +107,29 @@ %%GNOMEVFS2%%%%PLUGINSDIR%%/xineplug_inp_gnome_vfs.so %%PLUGINSDIR%%/xineplug_inp_mms.so %%PLUGINSDIR%%/xineplug_inp_network.so +%%NFS%%%%PLUGINSDIR%%/xineplug_inp_nfs.so +%%V4L%%%%PLUGINSDIR%%/xineplug_inp_pvr.so %%PLUGINSDIR%%/xineplug_inp_rtp.so %%SMB%%%%PLUGINSDIR%%/xineplug_inp_smb.so +%%SFTP%%%%PLUGINSDIR%%/xineplug_inp_ssh.so +%%V4L%%%%PLUGINSDIR%%/xineplug_inp_v4l.so +%%V4L%%%%PLUGINSDIR%%/xineplug_inp_v4l2.so %%PLUGINSDIR%%/xineplug_inp_vcd.so %%PLUGINSDIR%%/xineplug_inp_vcdo.so %%PLUGINSDIR%%/xineplug_nsf.so %%PLUGINSDIR%%/xineplug_sputext.so +%%GNUTLS%%%%PLUGINSDIR%%/xineplug_tls_gnutls.so +%%OPENSSL%%%%PLUGINSDIR%%/xineplug_tls_openssl.so %%PLUGINSDIR%%/xineplug_vdr.so +%%WAYLAND%%%%PLUGINSDIR%%/xineplug_vo_gl_egl_wl.so +%%PLUGINSDIR%%/xineplug_vo_gl_egl_x11.so +%%PLUGINSDIR%%/xineplug_vo_gl_glx.so %%AALIB%%%%PLUGINSDIR%%/xineplug_vo_out_aa.so %%CACA%%%%PLUGINSDIR%%/xineplug_vo_out_caca.so %%PLUGINSDIR%%/xineplug_vo_out_opengl.so %%PLUGINSDIR%%/xineplug_vo_out_opengl2.so %%PLUGINSDIR%%/xineplug_vo_out_raw.so -%%PLUGINSDIR%%/xineplug_vo_out_sdl.so +%%SDL%%%%PLUGINSDIR%%/xineplug_vo_out_sdl.so %%VAAPI%%%%PLUGINSDIR%%/xineplug_vo_out_vaapi.so %%PLUGINSDIR%%/xineplug_vo_out_vdpau.so %%PLUGINSDIR%%/xineplug_vo_out_xcbshm.so