Update multimedia/py-subliminal to version 2.0.5
[dports.git] / multimedia / mpv / Makefile
1 # Created by: Grzegorz Blach <gblach@FreeBSD.org>
2 # $FreeBSD$
3
4 PORTNAME=       mpv
5 PORTVERSION=    0.20.0
6 DISTVERSIONPREFIX=      v
7 PORTEPOCH=      1
8 CATEGORIES=     multimedia audio
9
10 MAINTAINER=     cpm@FreeBSD.org
11 COMMENT=        Free and open-source general-purpose video player
12
13 LICENSE=        GPLv2+ LGPL21+
14 LICENSE_COMB=   multi
15
16 LIB_DEPENDS=    libavcodec.so:multimedia/ffmpeg
17 BUILD_DEPENDS=  rst2man:textproc/py-docutils \
18                 rst2html:textproc/py-docutils
19
20 USE_GITHUB=     yes
21 GH_ACCOUNT=     mpv-player waf-project:waf
22 GH_PROJECT=     waf:waf
23 GH_TAGNAME=     waf-1.9.3:waf
24
25 WAF_CMD=        ${WRKSRC_waf}/waf-light
26
27 USES=           compiler:c11 desktop-file-utils iconv jpeg localbase pkgconfig python:build waf
28 USE_LDCONFIG=   yes
29
30 CONFIGURE_ARGS= --docdir=${EXAMPLESDIR} \
31                 --htmldir=${DOCSDIR}/html \
32                 --mandir=${MANPREFIX}/man \
33                 --prefix=${PREFIX} \
34                 --disable-debug-build \
35                 --disable-d3d-hwaccel \
36                 --disable-optimize \
37                 --disable-pdf \
38                 --disable-rubberband \
39                 --disable-vaapi-wayland \
40                 --disable-vapoursynth \
41                 --disable-vapoursynth-lazy \
42                 --disable-videotoolbox-hwaccel \
43                 --disable-videotoolbox-gl \
44                 --disable-wayland \
45                 --enable-libmpv-shared \
46                 --enable-html
47
48 OPTIONS_DEFINE=         ASS DOCS ENCA LCMS2 \
49                         LIBGUESS LUAJIT UCHARDET ZSH
50 OPTIONS_DEFAULT=        ASS DVDREAD DVDNAV ENCA OPENGL \
51                         V4L VAAPI VDPAU X11 XINERAMA YTDL ZSH
52 OPTIONS_GROUP=          IN VO AO
53 OPTIONS_GROUP_IN=       CDIO DVDREAD DVDNAV LIBBLURAY V4L YTDL SMB
54 OPTIONS_GROUP_VO=       CACA OPENGL VAAPI VDPAU X11 XINERAMA
55 OPTIONS_GROUP_AO=       ALSA JACK PULSEAUDIO SDL SNDIO
56 OPTIONS_SUB=            yes
57
58 ASS_DESC=       ASS/SSA subtitle and OSD rendering
59 DVDREAD_DESC=   DVD Playback support
60 DVDNAV_DESC=    DVD menu navigation
61 ENCA_DESC=      Enable encoding detection support
62 LIBGUESS_DESC=  Enable high-speed character set detection support
63 LUAJIT_DESC=    Use LuaJIT instead of Lua scripting language support
64 YTDL_DESC=      Install youtube-dl
65 UCHARDET_DESC=  Use UCHARDET instead ENCA support
66 IN_DESC=        Input
67 VO_DESC=        Video Output
68 AO_DESC=        Audio Output
69
70 ALSA_LIB_DEPENDS=               libasound.so:audio/alsa-lib
71 ALSA_CONFIGURE_OFF=             --disable-alsa
72
73 ASS_LIB_DEPENDS=                libass.so:multimedia/libass
74 ASS_CONFIGURE_OFF=              --disable-libass
75
76 CACA_LIB_DEPENDS=               libcaca.so:graphics/libcaca
77 CACA_CONFIGURE_OFF=             --disable-caca
78
79 CDIO_LIB_DEPENDS=               libcdio_paranoia.so:sysutils/libcdio-paranoia
80 CDIO_CONFIGURE_OFF=             --disable-cdda
81
82 DVDNAV_LIB_DEPENDS=             libdvdnav.so:multimedia/libdvdnav
83 DVDNAV_CONFIGURE_OFF=           --disable-dvdnav
84
85 DVDREAD_LIB_DEPENDS=            libdvdread.so:multimedia/libdvdread
86 DVDREAD_CONFIGURE_OFF=          --disable-dvdread
87
88 ENCA_LIB_DEPENDS=               libenca.so:converters/enca
89 ENCA_CONFIGURE_OFF=             --disable-enca
90
91 JACK_LIB_DEPENDS=               libjack.so:audio/jack
92 JACK_CONFIGURE_OFF=             --disable-jack
93
94 LCMS2_LIB_DEPENDS=              liblcms2.so:graphics/lcms2
95 LCMS2_CONFIGURE_OFF=            --disable-lcms2
96
97 LIBBLURAY_LIB_DEPENDS=          libbluray.so:multimedia/libbluray
98 LIBBLURAY_CONFIGURE_OFF=        --disable-libbluray
99
100 LIBGUESS_LIB_DEPENDS=           libguess.so:textproc/libguess
101 LIBGUESS_CONFIGURE_OFF=         --disable-libguess
102
103 LUAJIT_LIB_DEPENDS=             libluajit-5.1.so:lang/luajit
104 LUAJIT_USES_OFF=                lua
105 LUAJIT_CONFIGURE_ON=            --lua=luajit
106 LUAJIT_CONFIGURE_OFF=           --lua=${LUA_VER_STR}fbsd
107
108 OPENGL_USE=                     GL=egl,gbm,gl
109 OPENGL_CONFIGURE_OFF=           --disable-gl
110 OPENGL_IMPLIES=                 X11
111
112 PULSEAUDIO_LIB_DEPENDS=         libpulse.so:audio/pulseaudio
113 PULSEAUDIO_CONFIGURE_OFF=       --disable-pulse
114
115 SDL_USE=                        SDL=sdl2
116 SDL_CONFIGURE_ON=               --enable-sdl2
117 SDL_CONFIGURE_OFF=              --disable-sdl2
118
119 SNDIO_LIB_DEPENDS=              libsndio.so:audio/sndio
120 SNDIO_CONFIGURE_ON=             --enable-sndio
121 SNDIO_CONFIGURE_OFF=            --disable-sndio
122
123 SMB_LIB_DEPENDS=                libsmbclient.so:net/samba-libsmbclient
124 SMB_CONFIGURE_OFF=              --disable-libsmbclient
125
126 UCHARDET_LIB_DEPENDS=           libuchardet.so:textproc/uchardet
127 UCHARDET_CONFIGURE_OFF=         --disable-uchardet
128
129 V4L_BUILD_DEPENDS=              ${LOCALBASE}/include/linux/videodev2.h:multimedia/v4l_compat
130 V4L_LIB_DEPENDS=                libv4l2.so:multimedia/libv4l
131 V4L_CONFIGURE_OFF=              --disable-tv-v4l2
132
133 VAAPI_LIB_DEPENDS=              libva.so:multimedia/libva
134 VAAPI_CONFIGURE_OFF=            --disable-vaapi
135
136 VDPAU_LIB_DEPENDS=              libvdpau.so:multimedia/libvdpau
137 VDPAU_CONFIGURE_OFF=            --disable-vdpau
138
139 X11_USE=                        XORG=x11,xext,xrandr,xscrnsaver,xv,xxf86vm
140 X11_VARS=                       INSTALLS_ICONS=yes
141 X11_CONFIGURE_OFF=              --disable-x11
142
143 XINERAMA_USE=                   XORG=xinerama,xineramaproto
144 XINERAMA_CONFIGURE_OFF=         --disable-xinerama
145 XINERAMA_IMPLIES=               X11
146
147 YTDL_RUN_DEPENDS=               youtube-dl:www/youtube_dl
148
149 ZSH_USES=                       perl5
150 ZSH_USE=                        PERL5=build
151 ZSH_CONFIGURE_ENABLE=           zsh-comp
152
153 post-patch:
154         @${REINPLACE_CMD} -e 's|/pkgconfig/mpv.pc|data/pkgconfig/mpv.pc|g' \
155                 ${WRKSRC}/wscript_build.py
156         @${FIND} ${WRKSRC}/DOCS/man -name '*.rst' | ${XARGS} ${REINPLACE_CMD} \
157                 -e 's|/usr/local|${PREFIX}|g'
158
159 post-stage:
160         @${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/mpv
161         @${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libmpv.so
162
163 .include <bsd.port.mk>