mirror of
https://git.FreeBSD.org/ports.git
synced 2024-12-05 01:55:52 +00:00
9f1de9b900
Convert USE_READLINE by USES=readline
339 lines
8.6 KiB
Makefile
339 lines
8.6 KiB
Makefile
# $FreeBSD$
|
|
|
|
PORTNAME= mplayer2
|
|
PORTVERSION= ${MPLAYER2_PORT_VERSION}
|
|
CATEGORIES= multimedia audio
|
|
MASTER_SITES= LOCAL/gblach/
|
|
|
|
MAINTAINER= gblach@FreeBSD.org
|
|
COMMENT= Advanced general-purpose video player
|
|
|
|
LICENSE= GPLv2
|
|
|
|
LIB_DEPENDS= png15:${PORTSDIR}/graphics/png \
|
|
freetype:${PORTSDIR}/print/freetype2 \
|
|
dvdread:${PORTSDIR}/multimedia/libdvdread
|
|
BUILD_DEPENDS= ffmpeg1:${PORTSDIR}/multimedia/ffmpeg1 \
|
|
rst2man:${PORTSDIR}/textproc/py-docutils
|
|
RUN_DEPENDS= ffmpeg1:${PORTSDIR}/multimedia/ffmpeg1
|
|
|
|
USE_XZ= yes
|
|
USE_GMAKE= yes
|
|
USE_PYTHON= 3.1+
|
|
USES= iconv ncurses
|
|
HAS_CONFIGURE= yes
|
|
CONFIGURE_ENV= PTHREAD_CFLAGS="${PTHREAD_CFLAGS}" \
|
|
PTHREAD_LIBS="${PTHREAD_LIBS}" \
|
|
TMPDIR="${WRKSRC}"
|
|
CONFIGURE_ARGS= --cc=${CC} \
|
|
--extra-cflags='-I${LOCALBASE}/include/ffmpeg1 \
|
|
-I${LOCALBASE}/include/portaudio2' \
|
|
--extra-ldflags='-L${LOCALBASE}/lib/ffmpeg1 \
|
|
-L${LOCALBASE}/lib/portaudio2' \
|
|
--mandir=${PREFIX}/man \
|
|
--disable-alsa \
|
|
--disable-liba52 \
|
|
--disable-directfb \
|
|
--disable-faad \
|
|
--disable-mng \
|
|
--disable-libdca \
|
|
--disable-xvid \
|
|
--disable-mpg123 \
|
|
--disable-musepack
|
|
MAKE_ARGS+= BINDIR=${PREFIX}/bin \
|
|
CONFDIR=${PREFIX}/etc/mplayer
|
|
|
|
MPLAYER2_SNAPSHOT_DATE= 2013-01-26
|
|
MPLAYER2_PORT_VERSION= 2.0.${MPLAYER2_SNAPSHOT_DATE:S/-//g}
|
|
|
|
MAKE_JOBS_SAFE= yes
|
|
|
|
OPTIONS_DEFINE= DEBUG RTC IPV6 SMB JOYSTICK \
|
|
LIBBLURAY V4L DV THEORA \
|
|
X11 XINERAMA OPENGL SDL VDPAU GIF CACA \
|
|
MAD SPEEX LIBCDIO LADSPA REALPLAYER \
|
|
JACK PULSE PORTAUDIO ASS LIRC
|
|
OPTIONS_DEFAULT=X11 ASS
|
|
|
|
.if !defined(PACKAGE_BUILDING)
|
|
OPTIONS_DEFINE+= WIN32
|
|
OPTIONS_DEFAULT+= WIN32
|
|
.endif
|
|
|
|
RTC_DESC= Enable kernel realtime clock timing
|
|
PULSE_DESC= Enable PulseAudio support
|
|
THEORA_DESC= Enable ogg theora video support
|
|
ASS_DESC= Enable ASS/SSA subtitle rendering
|
|
WIN32_DESC= Enable win32 codec set on the IA32 arch
|
|
REALPLAYER_DESC=Enable realplayer plugin
|
|
LIRC_DESC= Enable lirc support
|
|
LIBCDIO_DESC= Enable libcdio support
|
|
JOYSTICK_DESC= Enable joystick support
|
|
V4L_DESC= Enable Video4Linux TV support
|
|
|
|
MAN1= mplayer.1
|
|
MANCOMPRESSED= no
|
|
|
|
SUB_FILES= pkg-message
|
|
|
|
CONFLICTS= mplayer-1.*
|
|
|
|
.include <bsd.port.options.mk>
|
|
|
|
.if ${ARCH} == "sparc64"
|
|
BROKEN= Does not compile on sparc64
|
|
.endif
|
|
|
|
.if ${OSVERSION} < 803000
|
|
CONFIGURE_ARGS+= --disable-ssse3
|
|
.endif
|
|
|
|
WITH_CDROM_DEVICE?= /dev/cd0
|
|
|
|
#On i386, gcc runs out of general purpose registers when
|
|
#trying to compile a debug version with the default flags.
|
|
.if ${PORT_OPTIONS:MDEBUG}
|
|
.if ${ARCH} == "i386"
|
|
DEBUG_FLAGS= -g -O -fomit-frame-pointer
|
|
.endif
|
|
.else
|
|
.if defined(PACKAGE_BUILDING)
|
|
CONFIGURE_ARGS+= --enable-runtime-cpudetection
|
|
CFLAGS+= -O2 -fomit-frame-pointer
|
|
.else
|
|
CONFIGURE_ENV+= CPPFLAGS= CFLAGS= LDFLAGS=
|
|
.endif
|
|
.endif
|
|
|
|
.if ${PORT_OPTIONS:MIPV6}
|
|
CATEGORIES+= ipv6
|
|
.else
|
|
CONFIGURE_ARGS+= --disable-inet6
|
|
.endif
|
|
|
|
.if ${PORT_OPTIONS:MGIF}
|
|
LIB_DEPENDS+= gif:${PORTSDIR}/graphics/giflib
|
|
.else
|
|
CONFIGURE_ARGS+= --disable-gif
|
|
.endif
|
|
|
|
.if ${PORT_OPTIONS:MMAD}
|
|
LIB_DEPENDS+= mad:${PORTSDIR}/audio/libmad
|
|
.else
|
|
CONFIGURE_ARGS+= --disable-mad
|
|
.endif
|
|
|
|
.if ${PORT_OPTIONS:MDV}
|
|
LIB_DEPENDS+= dv:${PORTSDIR}/multimedia/libdv
|
|
.else
|
|
CONFIGURE_ARGS+= --disable-libdv
|
|
.endif
|
|
|
|
.if ${PORT_OPTIONS:MTHEORA}
|
|
LIB_DEPENDS+= theora:${PORTSDIR}/multimedia/libtheora
|
|
.else
|
|
CONFIGURE_ARGS+= --disable-theora
|
|
.endif
|
|
|
|
.if ${PORT_OPTIONS:MSPEEX}
|
|
LIB_DEPENDS+= speex:${PORTSDIR}/audio/speex
|
|
.else
|
|
CONFIGURE_ARGS+= --disable-speex
|
|
.endif
|
|
|
|
.if ${PORT_OPTIONS:MJACK}
|
|
LIB_DEPENDS+= jack:${PORTSDIR}/audio/jack
|
|
.else
|
|
CONFIGURE_ARGS+= --disable-jack
|
|
.endif
|
|
|
|
.if ${PORT_OPTIONS:MPULSE}
|
|
LIB_DEPENDS+= pulse:${PORTSDIR}/audio/pulseaudio
|
|
.else
|
|
CONFIGURE_ARGS+= --disable-pulse
|
|
.endif
|
|
|
|
.if ${PORT_OPTIONS:MPORTAUDIO}
|
|
LIB_DEPENDS+= portaudio.2:${PORTSDIR}/audio/portaudio2
|
|
.else
|
|
CONFIGURE_ARGS+= --disable-portaudio
|
|
.endif
|
|
|
|
.if ${PORT_OPTIONS:MLIBBLURAY}
|
|
LIB_DEPENDS+= bluray:${PORTSDIR}/multimedia/libbluray
|
|
.else
|
|
CONFIGURE_ARGS+= --disable-bluray
|
|
.endif
|
|
|
|
.if ${PORT_OPTIONS:MSMB}
|
|
LIB_DEPENDS+= smbclient:${PORTSDIR}/net/samba-libsmbclient
|
|
.else
|
|
CONFIGURE_ARGS+= --disable-smb
|
|
.endif
|
|
|
|
.if ${PORT_OPTIONS:MLIBCDIO}
|
|
LIB_DEPENDS+= cdio:${PORTSDIR}/sysutils/libcdio
|
|
.else
|
|
CONFIGURE_ARGS+= --disable-libcdio
|
|
.endif
|
|
|
|
.if ${PORT_OPTIONS:MLADSPA}
|
|
RUN_DEPENDS+= ${LOCALBASE}/lib/ladspa/amp.so:${PORTSDIR}/audio/ladspa
|
|
.else
|
|
CONFIGURE_ARGS+= --disable-ladspa
|
|
.endif
|
|
|
|
.if ${ARCH} == "i386" || ${ARCH} == "amd64"
|
|
.if ${PORT_OPTIONS:MWIN32} && !defined(PACKAGE_BUILDING) && ${ARCH} == "i386"
|
|
CODEC_PORT= ${PORTSDIR}/multimedia/win32-codecs
|
|
CODEC_DETECTION_FILE!= ${MAKE} -f ${CODEC_PORT}/Makefile -V CODEC_DETECTION_FILE
|
|
RUN_DEPENDS+= ${CODEC_DETECTION_FILE}:${CODEC_PORT}
|
|
CONFIGURE_ARGS+= --codecsdir=${LOCALBASE}/lib/win32
|
|
.else
|
|
CONFIGURE_ARGS+= --disable-win32dll --disable-qtx
|
|
.endif
|
|
.endif # ARCH == i386/amd64
|
|
|
|
.if ${PORT_OPTIONS:MREALPLAYER}
|
|
RUN_DEPENDS+= realplay:${PORTSDIR}/multimedia/linux-realplayer
|
|
BUILD_DEPENDS+= realplay:${PORTSDIR}/multimedia/linux-realplayer
|
|
.else
|
|
CONFIGURE_ARGS+= --disable-real
|
|
.endif
|
|
|
|
.if ${PORT_OPTIONS:MV4L}
|
|
BUILD_DEPENDS+= ${LOCALBASE}/include/linux/videodev2.h:${PORTSDIR}/multimedia/v4l_compat
|
|
LIB_DEPENDS+= v4l2:${PORTSDIR}/multimedia/libv4l
|
|
CONFIGURE_ARGS+= --enable-tv-v4l2
|
|
EXTRA_LIBS+= -lv4l2
|
|
.else
|
|
CONFIGURE_ARGS+= --disable-tv-v4l2
|
|
.endif
|
|
|
|
.if defined(EXTRA_LIBS)
|
|
CONFIGURE_ARGS+= --extra-libs="${EXTRA_LIBS}"
|
|
.endif
|
|
|
|
.if ${PORT_OPTIONS:MASS}
|
|
LIB_DEPENDS+= ass:${PORTSDIR}/multimedia/libass
|
|
.else
|
|
CONFIGURE_ARGS+= --disable-libass --disable-enca
|
|
.endif
|
|
|
|
.if ${PORT_OPTIONS:MX11}
|
|
USE_XORG= x11 xv xxf86vm
|
|
.if ${PORT_OPTIONS:MOPENGL}
|
|
USE_XORG+= glproto
|
|
LIB_DEPENDS+= GL:${PORTSDIR}/graphics/libGL
|
|
.else
|
|
CONFIGURE_ARGS+= --disable-gl
|
|
.endif
|
|
.if ${PORT_OPTIONS:MXINERAMA}
|
|
USE_XORG+= xinerama xineramaproto
|
|
.else
|
|
CONFIGURE_ARGS+= --disable-xinerama
|
|
.endif
|
|
.else #WITHOUT_X11
|
|
CONFIGURE_ARGS+= --disable-x11
|
|
.endif
|
|
|
|
.if ${PORT_OPTIONS:MVDPAU}
|
|
LIB_DEPENDS+= vdpau:${PORTSDIR}/multimedia/libvdpau
|
|
.else
|
|
CONFIGURE_ARGS+= --disable-vdpau
|
|
.endif
|
|
|
|
.if ${PORT_OPTIONS:MRTC}
|
|
BUILD_DEPENDS+= ${LOCALBASE}/modules/rtc.ko:${PORTSDIR}/emulators/rtc
|
|
RUN_DEPENDS+= ${LOCALBASE}/modules/rtc.ko:${PORTSDIR}/emulators/rtc
|
|
CONFIGURE_ARGS+= --enable-rtc
|
|
.else
|
|
CONFIGURE_ARGS+= --disable-rtc
|
|
.endif
|
|
|
|
.if ${PORT_OPTIONS:MLIBCACA}
|
|
LIB_DEPENDS+= caca:${PORTSDIR}/graphics/libcaca
|
|
.else
|
|
CONFIGURE_ARGS+= --disable-caca
|
|
.endif
|
|
|
|
.if ${PORT_OPTIONS:MLIRC}
|
|
LIB_DEPENDS+= lirc_client:${PORTSDIR}/comms/lirc
|
|
.else
|
|
CONFIGURE_ARGS+= --disable-lirc
|
|
.endif
|
|
|
|
.if ${PORT_OPTIONS:MSDL}
|
|
USE_SDL= sdl
|
|
.else
|
|
CONFIGURE_ARGS+= --disable-sdl
|
|
.endif
|
|
|
|
.if defined(WITH_KERN_HZ)
|
|
DEFAULT_KERN_HZ=${WITH_KERN_HZ}
|
|
.else
|
|
DEFAULT_KERN_HZ=1024
|
|
.endif
|
|
|
|
.if ${PORT_OPTIONS:MJOYSTICK}
|
|
BUILD_DEPENDS+= ${LOCALBASE}/include/linux/joystick.h:${PORTSDIR}/devel/linux-js
|
|
CONFIGURE_ARGS+= --enable-joystick
|
|
.else
|
|
CONFIGURE_ARGS+= --disable-joystick
|
|
.endif
|
|
|
|
pre-everything::
|
|
@${ECHO_MSG} "N - O - T - E"
|
|
@${ECHO_MSG} ""
|
|
@${ECHO_MSG} "There are some knobs which *can* *not* be selected via the"
|
|
@${ECHO_MSG} "OPTIONS framework. You might want to check the Makefile in"
|
|
@${ECHO_MSG} "order to learn more about them."
|
|
|
|
post-patch:
|
|
.if ${OSVERSION} >= 900010
|
|
@${REINPLACE_CMD} -e \
|
|
'/CFLAGS.*-D_LARGEFILE64_SOURCE/ s/-D_LARGEFILE64_SOURCE/-D_FILE_OFFSET_BITS=64/' \
|
|
${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
|
|
.endif
|
|
@${REINPLACE_CMD} \
|
|
-e 's/libavutil/libavutil1/' \
|
|
-e 's/libavcodec/libavcodec1/' \
|
|
-e 's/libavformat/libavformat1/' \
|
|
-e 's/libswscale/libswscale1/' \
|
|
${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
|
|
@${REINPLACE_CMD} \
|
|
-e 's|/dev/acd0|${WITH_CDROM_DEVICE}|' \
|
|
-e 's|/usr/local|${LOCALBASE}|' \
|
|
-e 's|-lbz2|/usr/lib/libbz2.so|' \
|
|
-e 's|-lncurses|/usr/lib/libncurses.so|' \
|
|
${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
|
|
@${FIND} -E ${WRKSRC} -type f \
|
|
-iregex ".*(configure|.sh|Makefile)" -print0 | \
|
|
${XARGS} -x -0 -n 10 \
|
|
${REINPLACE_CMD} -E \
|
|
-e 's|[[:space:]]gcc[-[:digit:]\.]+| ${CC}|' \
|
|
-e 's|[[:space:]]gcc| ${CC}|' \
|
|
-e 's|\$$\(CC\)|${CC}|' \
|
|
-e 's|/usr/X11R6|${LOCALBASE}|'
|
|
@${FIND} -E ${WRKSRC}/TOOLS -type f -name '*.py' -print0 | \
|
|
${XARGS} -0 ${REINPLACE_CMD} \
|
|
-e 's|#!/usr/bin/env python3|#!${PYTHON_CMD}|'
|
|
@${FIND} ${WRKSRC}/DOCS/man -name "mplayer.1" | ${XARGS} ${REINPLACE_CMD} -E -e \
|
|
's|/usr/\\:local/\\:etc/\\:mplayer|${DATADIR:S/\//\/\\\:/g}|g ; \
|
|
s|/dev/\\:(dvd[[:alnum:]]*[[:>:]])|${WITH_CDROM_DEVICE:S/dev\//dev\/\\\:/}|g ; \
|
|
s|/dev/\\:(cdrom[[:alnum:]]*[[:>:]])|${WITH_CDROM_DEVICE:S/dev\//dev\/\\\:/}|g'
|
|
.if ${PORT_OPTIONS:MRTC}
|
|
@${REINPLACE_CMD} -e \
|
|
's|irqp = 1024|irqp = ${DEFAULT_KERN_HZ}|' \
|
|
${WRKSRC}/mplayer.c
|
|
.endif
|
|
|
|
post-install:
|
|
@${INSTALL_DATA} ${WRKSRC}/etc/example.conf ${PREFIX}/etc/mplayer/mplayer.conf.sample
|
|
.for conf in codecs input
|
|
@${INSTALL_DATA} ${WRKSRC}/etc/${conf}.conf ${PREFIX}/etc/mplayer/${conf}.conf.sample
|
|
.endfor
|
|
@${CAT} ${PKGMESSAGE}
|
|
|
|
.include <bsd.port.mk>
|