git: a04b58b02e08 - main - multimedia/mpv: fork 0.34 into a pinned port
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sat, 12 Nov 2022 20:26:06 UTC
The branch main has been updated by jbeich: URL: https://cgit.FreeBSD.org/ports/commit/?id=a04b58b02e081a6909089d55af5d0b30a349a7b1 commit a04b58b02e081a6909089d55af5d0b30a349a7b1 Author: Jan Beich <jbeich@FreeBSD.org> AuthorDate: 2022-10-16 15:00:55 +0000 Commit: Jan Beich <jbeich@FreeBSD.org> CommitDate: 2022-11-12 20:21:29 +0000 multimedia/mpv: fork 0.34 into a pinned port --- multimedia/Makefile | 1 + multimedia/mpv/Makefile | 2 + multimedia/mpv034/Makefile | 220 +++++++++++++++++++++++++++ multimedia/mpv034/distinfo | 21 +++ multimedia/mpv034/files/patch-libmpv_mpv.def | 15 ++ multimedia/mpv034/pkg-descr | 5 + multimedia/mpv034/pkg-plist | 26 ++++ 7 files changed, 290 insertions(+) diff --git a/multimedia/Makefile b/multimedia/Makefile index 133aeb209116..e99ae08d64d0 100644 --- a/multimedia/Makefile +++ b/multimedia/Makefile @@ -244,6 +244,7 @@ SUBDIR += mplex SUBDIR += mpv SUBDIR += mpv-mpris + SUBDIR += mpv034 SUBDIR += mpvpaper SUBDIR += msdl SUBDIR += msopenh264 diff --git a/multimedia/mpv/Makefile b/multimedia/mpv/Makefile index 2ad311ddb982..f0da9faf5c21 100644 --- a/multimedia/mpv/Makefile +++ b/multimedia/mpv/Makefile @@ -51,6 +51,8 @@ CONFIGURE_ARGS= --docdir="${EXAMPLESDIR}" \ --disable-vapoursynth \ --enable-libmpv-shared +CONFLICTS_INSTALL= ${PORTNAME}034 + OPTIONS_DEFINE= ARCHIVE DOCS LCMS2 MANPAGES MUJS TEST UCHARDET EXAMPLES ZIMG OPTIONS_DEFAULT= ARCHIVE DVDNAV LUA MANPAGES NVDEC OPENGL UCHARDET \ V4L VAAPI VDPAU VULKAN WAYLAND X11 YTDLP diff --git a/multimedia/mpv034/Makefile b/multimedia/mpv034/Makefile new file mode 100644 index 000000000000..0902a5dc636f --- /dev/null +++ b/multimedia/mpv034/Makefile @@ -0,0 +1,220 @@ +PORTNAME= mpv +DISTVERSIONPREFIX= v +DISTVERSION= 0.34.1 +CATEGORIES= multimedia audio wayland +MASTER_SITES= https://waf.io/:waf +PKGNAMESUFFIX= 034 +DISTFILES= ${WAF_RELEASE}${EXTRACT_SUFX}:waf + +PATCH_SITES= https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/commit/ +PATCHFILES+= b030cfe05f58.patch:-p1 # https://github.com/mpv-player/mpv/pull/9440 +PATCHFILES+= edf0039d7621.patch:-p1 # https://github.com/mpv-player/mpv/pull/9298 +PATCHFILES+= 5319731526fb.patch:-p1 # https://github.com/mpv-player/mpv/pull/9298 +PATCHFILES+= 82390d212123.patch:-p1 # https://github.com/mpv-player/mpv/pull/9587 +PATCHFILES+= 22b0bac28e6c.patch:-p1 # https://github.com/mpv-player/mpv/pull/9587 +PATCHFILES+= b7a71ea70671.patch:-p1 # https://github.com/mpv-player/mpv/pull/9734 +PATCHFILES+= 09343bc86e8b.patch:-p1 # https://github.com/mpv-player/mpv/pull/9734 +PATCHFILES+= bc9805c71a67.patch:-p1 # https://github.com/mpv-player/mpv/pull/9830 + +MAINTAINER= multimedia@FreeBSD.org +COMMENT= Free and open-source general-purpose video player +WWW= https://mpv.io + +LICENSE= GPLv2+ LGPL21+ +LICENSE_COMB= multi + +BUILD_DEPENDS= ffmpeg>=4.0.2,1:multimedia/ffmpeg +LIB_DEPENDS= libavcodec.so:multimedia/ffmpeg \ + libass.so:multimedia/libass + +USES= compiler:c11 cpe desktop-file-utils iconv jpeg localbase:ldflags \ + pkgconfig python:build tar:bz2 waf +USE_LDCONFIG= yes + +USE_GITHUB= yes +GH_ACCOUNT= mpv-player + +# Keep in sync with bootstrap.py to avoid regressions +WAF_CMD= ${WRKDIR}/${WAF_RELEASE}/waf-light +WAF_RELEASE= waf-2.0.20 + +CONFIGURE_ENV= BIN_PYTHON="${PYTHON_CMD}" +CONFIGURE_ARGS= --docdir="${EXAMPLESDIR}" \ + --htmldir="${DOCSDIR}/html" \ + --mandir="${MANPREFIX}/man" \ + --disable-debug-build \ + --disable-optimize \ + --disable-pdf \ + --disable-rubberband \ + --disable-shaderc \ + --disable-vapoursynth \ + --enable-libmpv-shared + +CONFLICTS_INSTALL= ${PORTNAME} +PORTSCOUT= limit:^0\.34 + +OPTIONS_DEFINE= ARCHIVE DOCS LCMS2 MANPAGES MUJS TEST UCHARDET EXAMPLES ZIMG +OPTIONS_DEFAULT= ARCHIVE DVDNAV LUA MANPAGES NVDEC OPENGL UCHARDET \ + V4L VAAPI VDPAU VULKAN WAYLAND X11 YTDLP +OPTIONS_GROUP= IN VO AO +OPTIONS_GROUP_IN= CDIO DVDNAV LIBBLURAY V4L +OPTIONS_GROUP_VO= CACA NVDEC OPENGL SIXEL VAAPI VDPAU VULKAN WAYLAND X11 +OPTIONS_GROUP_AO= ALSA JACK OPENAL PIPEWIRE PULSEAUDIO SDL SNDIO +OPTIONS_RADIO= YOUTUBE +OPTIONS_RADIO_YOUTUBE= YTDL YTDLP +OPTIONS_SINGLE= LUA +OPTIONS_SINGLE_LUA= LUA LUAJIT LUA_NONE +OPTIONS_SUB= yes + +DVDNAV_DESC= DVD menu navigation +LUA_NONE_DESC= Disable Lua scripting language support +LUAJIT_DESC= Use LuaJIT instead of Lua scripting language support +MUJS_DESC= Use MuJS for Javascript language support +NVDEC_DESC= NVIDIA decoder with CUDA support +PIPEWIRE_DESC= Pipewire sound server support +SIXEL_DESC= Sixel graphics support +UCHARDET_DESC= Guess subtitle encoding via uchardet +VULKAN_DESC= Vulkan output support +YTDLP_DESC= Install yt-dlp (youtube-dl fork) +YTDL_DESC= Install youtube-dl +ZIMG_DESC= High quality software scaling via "z" library +IN_DESC= Input +VO_DESC= Video Output +AO_DESC= Audio Output + +ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib +ALSA_CONFIGURE_OFF= --disable-alsa + +ARCHIVE_USES= libarchive +ARCHIVE_CONFIGURE_ON= --enable-libarchive + +CACA_LIB_DEPENDS= libcaca.so:graphics/libcaca +CACA_CONFIGURE_OFF= --disable-caca + +CDIO_LIB_DEPENDS= libcdio_paranoia.so:sysutils/libcdio-paranoia +CDIO_CONFIGURE_ON= --enable-cdda + +DOCS_BUILD_DEPENDS= rst2html:textproc/py-docutils +DOCS_CONFIGURE_ON= --enable-html + +DVDNAV_LIB_DEPENDS= libdvdnav.so:multimedia/libdvdnav \ + libdvdread.so:multimedia/libdvdread +DVDNAV_CONFIGURE_ON= --enable-dvdnav + +JACK_LIB_DEPENDS= libjack.so:audio/jack +JACK_CONFIGURE_OFF= --disable-jack + +LCMS2_LIB_DEPENDS= liblcms2.so:graphics/lcms2 +LCMS2_CONFIGURE_OFF= --disable-lcms2 + +LIBBLURAY_LIB_DEPENDS= libbluray.so:multimedia/libbluray +LIBBLURAY_CONFIGURE_ON= --enable-libbluray +LIBBLURAY_CONFIGURE_OFF= --disable-libbluray + +LUA_USES= lua:51-52 +LUA_CONFIGURE_ON= --lua=${LUA_VER_STR}fbsd + +LUAJIT_USES= luajit +LUAJIT_CONFIGURE_ON= --lua=luajit + +LUA_NONE_CONFIGURE_ON= --disable-lua + +MANPAGES_BUILD_DEPENDS= rst2man:textproc/py-docutils +MANPAGES_CONFIGURE_OFF= --disable-manpage + +MUJS_LIB_DEPENDS= libmujs.so:lang/mujs +MUJS_CONFIGURE_ON= --enable-javascript +MUJS_CONFIGURE_OFF= --disable-javascript + +NVDEC_BUILD_DEPENDS= ${LOCALBASE}/include/ffnvcodec/dynlink_loader.h:multimedia/ffnvcodec-headers +NVDEC_CONFIGURE_OFF= --disable-cuda-hwaccel + +OPENAL_CONFIGURE_ENABLE= openal +OPENAL_USES= openal +OPENAL_LDFLAGS= ${_OPENAL_LDFLAGS_${ARCH}} +_OPENAL_LDFLAGS_i386= -Wl,-znotext + +OPENGL_USES= gl +OPENGL_USE= GL=egl,gbm +OPENGL_CONFIGURE_OFF= --disable-gl + +PIPEWIRE_LIB_DEPENDS= libpipewire-0.3.so:multimedia/pipewire +PIPEWIRE_CONFIGURE_OFF= --disable-pipewire + +PULSEAUDIO_LIB_DEPENDS= libpulse.so:audio/pulseaudio +PULSEAUDIO_CONFIGURE_OFF= --disable-pulse + +SDL_USES= sdl +SDL_USE= SDL=sdl2 +SDL_CONFIGURE_ON= --enable-sdl2 + +SIXEL_LIB_DEPENDS= libsixel.so:graphics/libsixel +SIXEL_CONFIGURE_OFF= --disable-sixel + +SNDIO_LIB_DEPENDS= libsndio.so:audio/sndio +SNDIO_CONFIGURE_ON= --enable-sndio +SNDIO_CONFIGURE_OFF= --disable-sndio + +TEST_CONFIGURE_ON= --enable-tests + +UCHARDET_LIB_DEPENDS= libuchardet.so:textproc/uchardet +UCHARDET_CONFIGURE_OFF= --disable-uchardet + +V4L_BUILD_DEPENDS= ${LOCALBASE}/include/linux/dvb/dmx.h:multimedia/v4l_compat +V4L_CONFIGURE_ON= --enable-dvbin + +VAAPI_LIB_DEPENDS= libva.so:multimedia/libva +VAAPI_CONFIGURE_OFF= --disable-vaapi + +VDPAU_LIB_DEPENDS= libvdpau.so:multimedia/libvdpau +VDPAU_CONFIGURE_OFF= --disable-vdpau + +VULKAN_BUILD_DEPENDS= ${LOCALBASE}/include/vulkan/vulkan.h:graphics/vulkan-headers +VULKAN_LIB_DEPENDS= libplacebo.so:graphics/libplacebo \ + libvulkan.so:graphics/vulkan-loader +VULKAN_CONFIGURE_OFF= --disable-vulkan --disable-libplacebo + +WAYLAND_BUILD_DEPENDS= wayland-protocols>=1.15:graphics/wayland-protocols \ + ${LOCALBASE}/include/linux/input-event-codes.h:devel/evdev-proto +WAYLAND_LIB_DEPENDS= libwayland-client.so:graphics/wayland \ + libwayland-cursor.so:graphics/wayland \ + libxkbcommon.so:x11/libxkbcommon +WAYLAND_CONFIGURE_OFF= --disable-wayland +WAYLAND_IMPLIES= OPENGL + +X11_USES= gnome xorg +X11_USE= XORG=x11,xext,xinerama,xorgproto,xrandr,xscrnsaver,xv,xxf86vm +X11_CONFIGURE_OFF= --disable-x11 + +YTDLP_RUN_DEPENDS= yt-dlp:www/yt-dlp + +YTDL_RUN_DEPENDS= youtube-dl:www/youtube_dl + +ZIMG_LIB_DEPENDS= libzimg.so:graphics/sekrit-twc-zimg +ZIMG_CONFIGURE_OFF= --disable-zimg + +.include <bsd.port.options.mk> + +.if ${PORT_OPTIONS:MVAAPI} && ${PORT_OPTIONS:MWAYLAND} +CONFIGURE_ARGS+= --enable-vaapi-wayland +LIB_DEPENDS+= libva-wayland.so:multimedia/libva +.else +CONFIGURE_ARGS+= --disable-vaapi-wayland +.endif + +post-patch: + @${REINPLACE_CMD} -e 's|/pkgconfig/mpv.pc|data/pkgconfig/mpv.pc|g' \ + ${WRKSRC}/wscript_build.py + +post-patch-MANPAGES-on: + @${FIND} ${WRKSRC}/DOCS/man -name '*.rst' | ${XARGS} ${REINPLACE_CMD} \ + -e 's|/usr/local|${PREFIX}|g' + +pre-install-TEST-on: + @(cd ${WRKSRC} && ${SETENV} ${TEST_ENV} build/mpv --unittest=all-simple) + +post-install: + @${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/mpv + @${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libmpv.so + +.include <bsd.port.mk> diff --git a/multimedia/mpv034/distinfo b/multimedia/mpv034/distinfo new file mode 100644 index 000000000000..7ef6c96d685f --- /dev/null +++ b/multimedia/mpv034/distinfo @@ -0,0 +1,21 @@ +TIMESTAMP = 1641246801 +SHA256 (waf-2.0.20.tar.bz2) = cce635c2d1a0f93b4f5b811e0452a35b8066e8ccd78632447f5be24c4c3f1a63 +SIZE (waf-2.0.20.tar.bz2) = 682619 +SHA256 (mpv-player-mpv-v0.34.1_GH0.tar.gz) = 32ded8c13b6398310fa27767378193dc1db6d78b006b70dbcbd3123a1445e746 +SIZE (mpv-player-mpv-v0.34.1_GH0.tar.gz) = 3288356 +SHA256 (b030cfe05f58.patch) = df7590e1d27e8e6c0e326781723ee87ef7c3fdf5a88438c8c29bb729a911ff74 +SIZE (b030cfe05f58.patch) = 5270 +SHA256 (edf0039d7621.patch) = 8c7e75d9e2a0ae2622fd23df8121d756fc919f7f9733edd7c59c2cc1900a3507 +SIZE (edf0039d7621.patch) = 12278 +SHA256 (5319731526fb.patch) = 29364fa31f184a5f6d59bbcceea0a7c9269ca4af08a34f93eccd283254709a68 +SIZE (5319731526fb.patch) = 6629 +SHA256 (82390d212123.patch) = b47dca6672ff2b03ee694a326978d592756fb83f23b90dd7bb8ddf7d87b3b445 +SIZE (82390d212123.patch) = 17920 +SHA256 (22b0bac28e6c.patch) = 12c49edd4e0a33130275f26703c14e013e46f316dd2b39b8e606fdc3ef60b01f +SIZE (22b0bac28e6c.patch) = 1726 +SHA256 (b7a71ea70671.patch) = 0a4f1e8fc0f2d482fb8b919b50a30c4852af473b79da3dca34157a4f51eb6e94 +SIZE (b7a71ea70671.patch) = 8174 +SHA256 (09343bc86e8b.patch) = 2516860fba5492aaa76b44ea15d32b39d4326ca5fe8611803ed845b38b7cca70 +SIZE (09343bc86e8b.patch) = 1389 +SHA256 (bc9805c71a67.patch) = 7988418e51537391c34b415f2a629e064716bd49835af5ca660966ddcbe5a49b +SIZE (bc9805c71a67.patch) = 1909 diff --git a/multimedia/mpv034/files/patch-libmpv_mpv.def b/multimedia/mpv034/files/patch-libmpv_mpv.def new file mode 100644 index 000000000000..cc952d3dc4e3 --- /dev/null +++ b/multimedia/mpv034/files/patch-libmpv_mpv.def @@ -0,0 +1,15 @@ +--- libmpv/mpv.def.orig 2017-12-25 20:44:17 UTC ++++ libmpv/mpv.def +@@ -1,3 +1,5 @@ ++__progname ++environ + mpv_client_api_version + mpv_client_name + mpv_command +@@ -43,4 +45,4 @@ mpv_terminate_destroy + mpv_unobserve_property + mpv_wait_async_requests + mpv_wait_event +-mpv_wakeup +\ No newline at end of file ++mpv_wakeup diff --git a/multimedia/mpv034/pkg-descr b/multimedia/mpv034/pkg-descr new file mode 100644 index 000000000000..b069ed8a5b43 --- /dev/null +++ b/multimedia/mpv034/pkg-descr @@ -0,0 +1,5 @@ +Mpv is based on the MPlayer and mplayer2 projects which it greatly improves. +It supports a wide variety of video file formats, audio and video codecs, and +subtitle types. Special input URL types are available to read input from +a variety of sources other than disk files. Depending on platform, a variety of +different video and audio output methods are supported. diff --git a/multimedia/mpv034/pkg-plist b/multimedia/mpv034/pkg-plist new file mode 100644 index 000000000000..7d8ff1f18df1 --- /dev/null +++ b/multimedia/mpv034/pkg-plist @@ -0,0 +1,26 @@ +bin/mpv +%%ETCDIR%%/encoding-profiles.conf +include/mpv/client.h +include/mpv/opengl_cb.h +include/mpv/render.h +include/mpv/render_gl.h +include/mpv/stream_cb.h +lib/libmpv.so +lib/libmpv.so.1 +lib/libmpv.so.1.109.0 +libdata/pkgconfig/mpv.pc +%%MANPAGES%%man/man1/mpv.1.gz +share/applications/mpv.desktop +share/bash-completion/completions/mpv +share/icons/hicolor/128x128/apps/mpv.png +share/icons/hicolor/16x16/apps/mpv.png +share/icons/hicolor/32x32/apps/mpv.png +share/icons/hicolor/64x64/apps/mpv.png +share/icons/hicolor/scalable/apps/mpv.svg +share/icons/hicolor/symbolic/apps/mpv-symbolic.svg +%%PORTDOCS%%%%DOCSDIR%%/html/mpv.html +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/input.conf +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/mplayer-input.conf +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/mpv.conf +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/restore-old-bindings.conf +share/zsh/site-functions/_mpv