mirror of
https://git.FreeBSD.org/ports.git
synced 2024-12-21 04:06:46 +00:00
8f0e7448d1
PR: 233063 Reported by: rkoberman@gmail.com, patch idea by jbeich MFH: 2018Q4
375 lines
11 KiB
Makefile
375 lines
11 KiB
Makefile
# Created by: Brian Somers <brian@FreeBSD.org>
|
|
# $FreeBSD$
|
|
|
|
PORTNAME= vlc
|
|
DISTVERSION= 3.0.4
|
|
PORTREVISION= 2
|
|
PORTEPOCH= 4
|
|
CATEGORIES= multimedia audio ipv6 net www
|
|
MASTER_SITES= http://download.videolan.org/pub/videolan/${PORTNAME}/${DISTVERSION:S/a$//}/ \
|
|
http://ftp.snt.utwente.nl/pub/software/videolan/${PORTNAME}/${DISTVERSION:S/a$//}/ \
|
|
ftp://ftp.crans.org/pub/videolan/${PORTNAME}/${DISTVERSION:S/a$//}/
|
|
PKGNAMESUFFIX= ${PORTVERSION:R:R}
|
|
|
|
MAINTAINER= multimedia@FreeBSD.org
|
|
COMMENT= Qt based multimedia player and streaming server
|
|
|
|
LICENSE= GPLv2
|
|
|
|
LIB_DEPENDS= libgcrypt.so:security/libgcrypt \
|
|
libdvbpsi.so:multimedia/libdvbpsi \
|
|
libfontconfig.so:x11-fonts/fontconfig \
|
|
libfreetype.so:print/freetype2 \
|
|
libidn.so:dns/libidn \
|
|
libmatroska.so:multimedia/libmatroska
|
|
BUILD_DEPENDS= ffmpeg>=3.4.1,1:multimedia/ffmpeg \
|
|
yasm:devel/yasm
|
|
RUN_DEPENDS= ffmpeg>=3.4.1,1:multimedia/ffmpeg
|
|
|
|
USES= compiler:c++11-lib desktop-file-utils gettext-tools gmake gnome \
|
|
iconv libtool pathfix pkgconfig tar:xz
|
|
|
|
# VLC git (post 2.2.4) requires C++11 support and passes the appropriate flag
|
|
# to the compiler. Until the port is updated, we explicitly pass -std=c++11 to
|
|
# the compiler because Qt 5.7+ requires C++11 support, and FreeBSD 10's clang
|
|
# does not default to C++11 mode.
|
|
USE_CXXSTD= c++11
|
|
|
|
USE_GNOME= libxml2
|
|
USE_LDCONFIG= yes
|
|
INSTALL_TARGET= install-strip
|
|
|
|
CONFLICTS?= vlc-qt4-* \
|
|
vlc-[0-9]*
|
|
|
|
GNU_CONFIGURE= yes
|
|
CONFIGURE_ARGS= --enable-avcodec --enable-avformat --enable-dvbpsi \
|
|
--enable-fontconfig --enable-freetype --enable-libgcrypt \
|
|
--enable-libxml2 --enable-oss --enable-postproc \
|
|
--enable-swscale --enable-vlc \
|
|
--disable-alsa --disable-archive --disable-chromaprint --disable-crystalhd \
|
|
--disable-dc1394 --disable-decklink --disable-dsm \
|
|
--disable-dv1394 --disable-fdkaac \
|
|
--disable-gles2 --disable-kai --disable-kva \
|
|
--disable-vnc --disable-opencv --disable-projectm \
|
|
--disable-secret --disable-soxr --disable-telx \
|
|
--disable-tiger --disable-tremor --disable-udev \
|
|
--disable-update-check --disable-vsxu \
|
|
--disable-wasapi --disable-x26410b \
|
|
--with-kde-solid=${PREFIX}/share/apps/solid/actions \
|
|
ac_cv_search_pthread_rwlock_init=-pthread
|
|
.if defined(WITH_DEBUG)
|
|
CONFIGURE_ARGS+=--enable-debug
|
|
.endif
|
|
CPPFLAGS+= -I${LOCALBASE}/include
|
|
CFLAGS_i386= -fomit-frame-pointer
|
|
LIBS+= -L${LOCALBASE}/lib
|
|
|
|
OPTIONS_DEFINE= A52 AALIB AOM ASS AVAHI CACA CHROMECAST DBUS DCA DOCS DVDREAD \
|
|
DVDNAV FAAD FLAC FLUID FREERDP FRIBIDI GME GNUTLS \
|
|
GOOM HARFBUZZ JACK KATE LIBBLURAY LIBRSVG2 LIBSSH2 LIRC \
|
|
LIVEMEDIA LUA MAD MODPLUG MPEG2 MTP MUSEPACK \
|
|
NCURSES NFS NLS NOTIFY OGG OPTIMIZED_CFLAGS OPUS PNG PULSEAUDIO \
|
|
QT5 REALRTSP RUNROOT SAMPLERATE SIDPLAY SCHROEDINGER \
|
|
SDL SHOUTCAST SKINS SMB SNDIO STREAM SPEEX TAGLIB THEORA \
|
|
TWOLAME UPNP V4L VAAPI VCD VDPAU VPX VORBIS WAYLAND X11 X264 X265 ZVBI
|
|
OPTIONS_DEFAULT=A52 AVAHI DBUS DCA DVDREAD DVDNAV FAAD FLAC GNUTLS \
|
|
LIVEMEDIA LUA MAD MPEG2 OGG OPTIMIZED_CFLAGS \
|
|
OPUS PNG QT5 SAMPLERATE STREAM SPEEX TAGLIB THEORA TWOLAME \
|
|
V4L VAAPI VCD VDPAU VORBIS WAYLAND X11
|
|
OPTIONS_SUB= yes
|
|
|
|
AOM_DESC= AV1 video encoding/decoding via libaom
|
|
ASS_DESC= ASS/SSA subtitle rendering
|
|
CHROMECAST_DESC=Streaming to Chromecast devices
|
|
DVDREAD_DESC= DVD Playback support
|
|
DVDNAV_DESC= DVD menu navigation
|
|
FLUID_DESC= Fluidsynth MIDI support
|
|
FREERDP_DESC= RDP support
|
|
GME_DESC= Game Music Emu (libgme) support
|
|
GOOM_DESC= Goom visualisation plugin
|
|
HARFBUZZ_DESC= OpenType text shaping engine
|
|
KATE_DESC= Kate codec support
|
|
LIBSSH2_DESC= SCP/SFTP support via libssh2
|
|
REALRTSP_DESC= Real RTSP access module
|
|
RUNROOT_DESC= Enable running as root
|
|
SIDPLAY_DESC= C64 sid demux support
|
|
SKINS_DESC= Skins interface module
|
|
STREAM_DESC= stream output
|
|
TAGLIB_DESC= ID3 tag and Ogg comment support
|
|
VCD_DESC= Audio/Video CD support
|
|
ZVBI_DESC= VBI decoding support
|
|
|
|
A52_CONFIGURE_ENABLE= a52
|
|
A52_CONFIGURE_ON= --with-a52=${LOCALBASE}
|
|
A52_LIB_DEPENDS= liba52.so:audio/liba52
|
|
|
|
AALIB_LIB_DEPENDS= libaa.so:graphics/aalib
|
|
AALIB_CONFIGURE_ENABLE= aa
|
|
|
|
ASS_LIB_DEPENDS= libass.so:multimedia/libass
|
|
ASS_CONFIGURE_ENABLE= libass
|
|
|
|
AOM_LIB_DEPENDS= libaom.so:multimedia/aom
|
|
AOM_CONFIGURE_ENABLE= aom
|
|
|
|
AVAHI_LIB_DEPENDS= libavahi-common.so:net/avahi-app
|
|
AVAHI_CONFIGURE_ENABLE= avahi
|
|
|
|
CACA_LIB_DEPENDS= libcaca.so:graphics/libcaca
|
|
CACA_CONFIGURE_ENABLE= caca
|
|
|
|
CHROMECAST_LIB_DEPENDS= libprotobuf-lite.so:devel/protobuf
|
|
CHROMECASE_CONFIGURE_ENABLE= chromecast
|
|
|
|
DBUS_LIB_DEPENDS= libdbus-1.so:devel/dbus
|
|
DBUS_CONFIGURE_ENABLE= dbus
|
|
|
|
DCA_LIB_DEPENDS= libdca.so:multimedia/libdca
|
|
DCA_CONFIGURE_ENABLE= dca
|
|
|
|
DVDREAD_LIB_DEPENDS= libdvdread.so:multimedia/libdvdread
|
|
DVDREAD_CONFIGURE_ENABLE= dvdread
|
|
|
|
DVDNAV_LIB_DEPENDS= libdvdnav.so:multimedia/libdvdnav
|
|
DVDNAV_CONFIGURE_ENABLE=dvdnav
|
|
|
|
FAAD_LIB_DEPENDS= libfaad.so:audio/faad
|
|
FAAD_CONFIGURE_ENABLE= faad
|
|
FAAD_CONFIGURE_ENV= CPPFLAGS_faad="-I${LOCALBASE}/include" \
|
|
LIBS_faad="-L${LOCALBASE}/lib"
|
|
|
|
FLAC_LIB_DEPENDS= libFLAC.so:audio/flac
|
|
FLAC_CONFIGURE_ENABLE= flac
|
|
|
|
FLUID_LIB_DEPENDS= libfluidsynth.so:audio/fluidsynth
|
|
FLUID_CONFIGURE_ENABLE= fluidsynth
|
|
|
|
FREERDP_LIB_DEPENDS= libfreerdp2.so:net/freerdp
|
|
FREERDP_CONFIGURE_ENABLE= freerdp
|
|
FREERDP_CONFIGURE_ENV= FREERDP_CFLAGS="-I${LOCALBASE}/include/freerdp2 \
|
|
-I${LOCALBASE}/include/winpr2" \
|
|
FREERDP_LIBS="-L${LOCALBASE}/lib"
|
|
|
|
FRIBIDI_LIB_DEPENDS= libfribidi.so:converters/fribidi
|
|
FRIBIDI_CONFIGURE_ENABLE= fribidi
|
|
|
|
GME_LIB_DEPENDS= libgme.so:audio/libgme
|
|
GME_CONFIGURE_ENABLE= gme
|
|
GME_CONFIGURE_ENV= LIBS_gme="-L${LOCALBASE}/lib -lgme"
|
|
|
|
GNUTLS_LIB_DEPENDS= libgnutls.so:security/gnutls
|
|
GNUTLS_CONFIGURE_ENABLE=gnutls
|
|
|
|
GOOM_LIB_DEPENDS= libgoom2.so:graphics/goom
|
|
GOOM_CONFIGURE_ENABLE= goom
|
|
|
|
HARFBUZZ_LIB_DEPENDS= libharfbuzz.so:print/harfbuzz
|
|
HARFBUZZ_CONFIGURE_ENABLE= harfbuzz
|
|
|
|
JACK_LIB_DEPENDS= libjack.so:audio/jack
|
|
JACK_CONFIGURE_ENABLE= jack
|
|
|
|
KATE_LIB_DEPENDS= libkate.so:multimedia/libkate
|
|
KATE_CONFIGURE_ENABLE= kate
|
|
|
|
LIBBLURAY_LIB_DEPENDS= libbluray.so:multimedia/libbluray
|
|
LIBBLURAY_CONFIGURE_ENABLE= bluray
|
|
|
|
LIBRSVG2_USE= GNOME=librsvg2
|
|
LIBRSVG2_CONFIGURE_ENABLE= svg
|
|
|
|
LIBSSH2_LIB_DEPENDS= libssh2.so:security/libssh2
|
|
LIBSSH2_CONFIGURE_ENABLE= sftp
|
|
|
|
LIRC_LIB_DEPENDS= liblirc_client.so:comms/lirc
|
|
LIRC_CONFIGURE_ENABLE= lirc
|
|
LIRC_CONFIGURE_ENV= LIBS_lirc="-L${LOCALBASE}/lib -llirc_client"
|
|
|
|
LIVEMEDIA_LIB_DEPENDS= libliveMedia.so:net/liveMedia
|
|
LIVEMEDIA_CONFIGURE_ENABLE= live555
|
|
LIVEMEDIA_CONFIGURE_ENV= \
|
|
LIVE555_CFLAGS="-I${LOCALBASE}/include/liveMedia \
|
|
-I${LOCALBASE}/include/UsageEnvironment \
|
|
-I${LOCALBASE}/include/groupsock \
|
|
-I${LOCALBASE}/include/BasicUsageEnvironment" \
|
|
LIVE555_LIBS="-L${LOCALBASE}/lib -lliveMedia \
|
|
-lgroupsock -lBasicUsageEnvironment \
|
|
-lUsageEnvironment"
|
|
|
|
LUA_USES= lua
|
|
LUA_CONFIGURE_ENABLE= lua
|
|
LUA_CONFIGURE_ON= LUAC=${LUAC_CMD} LUA_CFLAGS="-I${LUA_INCDIR}" \
|
|
LUA_LIBS="-L${LUA_LIBDIR} -llua-${LUA_VER}"
|
|
|
|
MAD_LIB_DEPENDS= libmad.so:audio/libmad
|
|
MAD_CONFIGURE_ENABLE= mad
|
|
MAD_CONFIGURE_ON= --with-mad=${LOCALBASE}
|
|
|
|
MODPLUG_LIB_DEPENDS= libmodplug.so:audio/libmodplug
|
|
MODPLUG_CONFIGURE_ENABLE= mod
|
|
|
|
MPEG2_LIB_DEPENDS= libmpeg2.so:multimedia/libmpeg2
|
|
MPEG2_CONFIGURE_ENABLE= libmpeg2
|
|
|
|
MTP_LIB_DEPENDS= libmtp.so:multimedia/libmtp
|
|
MTP_CONFIGURE_ENABLE= mtp
|
|
|
|
MUSEPACK_LIB_DEPENDS= libmpcdec.so:audio/musepack
|
|
MUSEPACK_CONFIGURE_ENABLE= mpc
|
|
MUSEPACK_CONFIGURE_ENV= LIBS_mpc="-L${LOCALBASE}/lib -lmpcdec"
|
|
|
|
NCURSES_USES= ncurses
|
|
NCURSES_CONFIGURE_ENV= NCURSES_CFLAGS="-I${NCURSESINC}" \
|
|
NCURSES_LIBS="-L${NCURSESLIB} -lncursesw"
|
|
NCURSES_CONFIGURE_ENABLE= ncurses
|
|
|
|
NFS_LIB_DEPENDS= libnfs.so:net/libnfs
|
|
NFS_CONFIGURE_ENABLE= nfs
|
|
|
|
NLS_USES= gettext
|
|
NLS_CONFIGURE_ENABLE= nls
|
|
|
|
NOTIFY_LIB_DEPENDS= libnotify.so:devel/libnotify
|
|
NOTIFY_USE= GNOME=gtk30
|
|
NOTIFY_CONFIGURE_ENABLE=notify
|
|
|
|
OGG_LIB_DEPENDS= libogg.so:audio/libogg
|
|
OGG_CONFIGURE_ENABLE= ogg
|
|
|
|
OPTIMIZED_CFLAGS_CONFIGURE_ENABLE= optimizations
|
|
|
|
OPUS_LIB_DEPENDS= libopus.so:audio/opus
|
|
OPUS_CONFIGURE_ENABLE= opus
|
|
|
|
PNG_LIB_DEPENDS= libpng.so:graphics/png
|
|
PNG_CONFIGURE_ENABLE= png
|
|
|
|
PULSEAUDIO_LIB_DEPENDS= libpulse.so:audio/pulseaudio
|
|
PULSEAUDIO_CONFIGURE_ENABLE= pulse
|
|
|
|
QT5_USES= qt:5
|
|
QT5_USE= QT=gui,core,svg,widgets,x11extras,buildtools_build
|
|
QT5_CONFIGURE_ENABLE= qt
|
|
QT5_IMPLIES= X11
|
|
|
|
REALRTSP_CONFIGURE_ENABLE= realrtsp
|
|
|
|
RUNROOT_CONFIGURE_ENABLE= run-as-root
|
|
|
|
SAMPLERATE_LIB_DEPENDS= libsamplerate.so:audio/libsamplerate
|
|
SAMPLERATE_CONFIGURE_ENABLE= samplerate
|
|
|
|
SCHROEDINGER_LIB_DEPENDS= libschroedinger-1.0.so:multimedia/schroedinger
|
|
SCHROEDINGER_CONFIGURE_ENABLE= schroedinger
|
|
|
|
SDL_USE= SDL=image
|
|
SDL_CONFIGURE_ENABLE= sdl-image
|
|
|
|
SIDPLAY_LIB_DEPENDS= libsidplay2.so:audio/libsidplay2
|
|
SIDPLAY_LDFLAGS= -L${LOCALBASE}/lib/sidplay/builders
|
|
SIDPLAY_CONFIGURE_ENABLE= sid
|
|
CONFIGURE_ARGS+= --disable-sid
|
|
|
|
SKINS_USE= XORG=xext,xinerama,xpm
|
|
SKINS_LIB_DEPENDS= libminizip.so:archivers/minizip \
|
|
libtar.so:devel/libtar
|
|
SKINS_CONFIGURE_ENABLE= skins2 libtar
|
|
SKINS_IMPLIES= QT5
|
|
|
|
SHOUTCAST_LIB_DEPENDS= libshout.so:audio/libshout
|
|
SHOUTCAST_CONFIGURE_ENABLE= shout
|
|
|
|
SNDIO_LIB_DEPENDS= libsndio.so:audio/sndio
|
|
SNDIO_CONFIGURE_ENABLE= sndio
|
|
|
|
SMB_USES= samba:lib
|
|
SMB_CONFIGURE_ENABLE= smbclient
|
|
|
|
STREAM_CONFIGURE_ENABLE=sout
|
|
|
|
SPEEX_LIB_DEPENDS= libspeex.so:audio/speex
|
|
SPEEX_CONFIGURE_ENABLE= speex
|
|
|
|
TAGLIB_LIB_DEPENDS= libtag.so:audio/taglib
|
|
TAGLIB_CONFIGURE_ENABLE=taglib
|
|
|
|
THEORA_LIB_DEPENDS= libtheora.so:multimedia/libtheora
|
|
THEORA_CONFIGURE_ENABLE=theora
|
|
|
|
TWOLAME_LIB_DEPENDS= libtwolame.so:audio/twolame
|
|
TWOLAME_CONFIGURE_ENABLE= twolame
|
|
|
|
UPNP_LIB_DEPENDS= libupnp.so:devel/upnp
|
|
UPNP_CONFIGURE_ENABLE= upnp
|
|
|
|
V4L_BUILD_DEPENDS= v4l_compat>=0:multimedia/v4l_compat
|
|
V4L_LIB_DEPENDS= libv4l2.so:multimedia/libv4l
|
|
V4L_CONFIGURE_ENABLE= v4l2
|
|
|
|
VAAPI_LIB_DEPENDS= libva.so:multimedia/libva
|
|
VAAPI_CONFIGURE_ENABLE= libva
|
|
|
|
VCD_LIB_DEPENDS= libcddb.so:audio/libcddb
|
|
VCD_CONFIGURE_ENABLE= vcd libcddb
|
|
|
|
VDPAU_LIB_DEPENDS= libvdpau.so:multimedia/libvdpau
|
|
VDPAU_CONFIGURE_ENABLE= vdpau
|
|
VDPAU_IMPLIES= X11
|
|
|
|
VPX_LIB_DEPENDS= libvpx.so:multimedia/libvpx
|
|
VPX_CONFIGURE_ENABLE= vpx
|
|
|
|
VORBIS_LIB_DEPENDS= libvorbis.so:audio/libvorbis
|
|
VORBIS_CONFIGURE_ENABLE=vorbis
|
|
|
|
WAYLAND_BUILD_DEPENDS= wayland-protocols>=0:graphics/wayland-protocols
|
|
WAYLAND_LIB_DEPENDS= libwayland-client.so:graphics/wayland
|
|
WAYLAND_CONFIGURE_ENABLE= wayland
|
|
|
|
X11_USE= GL=gl XORG=xcb,xorgproto
|
|
X11_USES= gl
|
|
X11_LIB_DEPENDS= libxcb-keysyms.so:x11/xcb-util-keysyms
|
|
X11_CONFIGURE_ENABLE= xcb xvideo
|
|
X11_CONFIGURE_WITH= x
|
|
|
|
X264_LIB_DEPENDS= libx264.so:multimedia/libx264
|
|
X264_CONFIGURE_ENABLE= x264
|
|
|
|
X265_LIB_DEPENDS= libx265.so:multimedia/x265
|
|
X265_CONFIGURE_ENABLE= x265
|
|
|
|
ZVBI_LIB_DEPENDS= libzvbi.so:devel/libzvbi
|
|
ZVBI_CONFIGURE_ENABLE= zvbi
|
|
|
|
PORTDATA= *
|
|
PORTDOCS= *
|
|
|
|
WITH_CDROM_DEVICE?=/dev/cd0
|
|
WITH_DVD_DEVICE?=/dev/cd0
|
|
|
|
.include <bsd.port.options.mk>
|
|
|
|
.if ${PORT_OPTIONS:MX11}
|
|
INSTALLS_ICONS= yes
|
|
.endif
|
|
|
|
post-patch:
|
|
@${REINPLACE_CMD} \
|
|
-e '\|LIBS|s|-lrt||' \
|
|
-e 's|LIBS="-llirc_client|LIBS="$$LIBS_lirc|' \
|
|
${WRKSRC}/configure
|
|
@${REINPLACE_CMD} -e 's|/dev/cdrom|${WITH_CDROM_DEVICE}|g' \
|
|
-e 's|/dev/dvd|${WITH_DVD_DEVICE}|g' \
|
|
${WRKSRC}/src/libvlc-module.c
|
|
@${RM} -r ${WRKSRC}/modules/access/v4l2/linux
|
|
# XXX FreeBSD doesn't have strerror_l() - use the android version of error.c
|
|
@${CP} ${WRKSRC}/src/android/error.c ${WRKSRC}/src/posix
|
|
|
|
post-install:
|
|
@(cd ${STAGEDIR}${PREFIX} && ${FIND} -s lib/vlc -not -name '*.la' \
|
|
-type f -o -type l >> ${TMPPLIST})
|
|
@${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/vlc/plugins/*/*.so
|
|
|
|
.include <bsd.port.mk>
|