pkgsrc/multimedia/mplayer-share/options.mk
wiz f288ae9d3e Update mplayer packages to 1.1, provided by Leonardo Taccari in PR 46566.
Pkgsrc changes:
* Fix some pkglint(1) warnings (no functional changes intended)
* Modified options.mk in order to always enable or disable a
  PKG_SUPPORTED_OPTION (for more information please give a look to
  the second "Note" of options.mk)
* Removed the mplayer-internal-faad PKG_SUPPORTED_OPTION, now faad support is
  only enabled via audio/faad2.
* Changed MASTER_SITES, now MPlayer distfile is fetched directly from its
  mirror.

MPlayer changes:

  1.1: "We gave up on 1.0"

    Decoders:
    * FFmpeg AAC decoder is now preferred over libfaad2 and the internal
      libfaad2 forked copy has been removed in its favor

    Demuxers:
    * experimental support for using binary Quicktime codecs with -demuxer lavf.
    * correct runtime and average bitrate for VBR (variable bitrate) MP3

    Filters:
    * delogo: allow to change the rectangle based on the time.
    * lavfi: libavfilter filter graphs (experimental).

    Other:
    * support adding noise at output resolution with -vo gl:noise-strength=8
    * experimental support for OpenGL ES 1.0 in -vo gl
    * support for PGS (BluRay-compatible), DVB and XSUB subtitles.
    * af_cmdline slave command to change e.g. audio equalizer options at runtime.
    * vo x11: don't hide or show cursor any more if attached to an existing window (-wid)
    * try reconnecting network streams e.g. after network timeouts
    * lots of bug fixes as always (and surely a few new bugs, too :-( )

    GUI: Support for the GUI continues.
    * numerous fixes, improvements and updates
    * UTF-8 support
    * all skin messages available as slave commands (gui <message>)
    * fancy new icon

    Ports:
    * Wine (see DOCS/tech/crosscompile.txt)

    MEncoder:
    * -force-key-frames option to set explicit seek points.

MPlayer (1.0)

  rc4: "Yes We Can"

    GUI: Changes towards removing the GUI
    * The GUI will no longer display any error or warning messages.
    * Special GUI slave commands (gui_*) were removed, along with
      the related key bindings.

    Decoders:
    * YUY2 Lossless Codec (YLC0) via binary DLL
    * Truemotion RT codec (TR20) via binary DLL
    * Nogantech Codec (NTN1 and NTN2) via binary DLL
    * add new FourCCs (m1v1, yuvs, VYUY, Y42B, V422, YUNV, UYNV, UYNY, uyv1,
      2Vu1, P422, HDYC, IJLV, MVJP)
      TwoCCs (0xA106, 0x6c75, 0xAAC0, 0x55005354)
      to existing decoders
    * AMR now handled via OpenCORE decoder
    * updated Windows Media Screen Codec (MSS1, MSS2) via binary DLL
    * CoreAVC H.264 decoder via binary DLL (Windows only)
    * Kega Game video codec (KGV1) via binary DLL
    * SoftLab-NSK Forward MPEG-2 I-frames (SLIF) via binary DLL
    * JPEG 2000 support via OpenJPEG
    * internal liba52 copy removed
    * CineForm HD (CFHD) via binary DLL
    * VP8 en-/decoding through libvpx wrapper and native decoder in FFmpeg
    * support for external libmpeg2 added
    * hardware MPEG decoder priority lowered
    * external libmpg123 support

    Demuxers:
    * Mostly fixed timing issues with some H.264 (PAFF) samples
    * Matroska and Ogg demuxers switched to use libavformat by default.
      Report issues and use -demuxer ogg and -demuxer mkv to work around them.
    * support for TrueHD in Blu-ray streams in libmpdemux
    * more Blu-ray codec support with lavf
    * fix length in ASF/WMV files
    * support ISDB-Tb DVB streams

    Filters:
    * remove vf_yuy2, functionality is replaced by -vf format=yuv2
    * remove vf_rgb2bgr, functionality is replaced by sws and vf_format

    Streaming:
    * Support for unencrypted Blu-ray playback through libbluray.
      Use it through: mplayer br:////path/to/disc

    Drivers:
    * -vo yuv4mpeg:interlaced no longer does its own interlaced RGB->YUV
      conversion. Use -vf scale=::1 to keep the same behavior and report
      if there are any issues with that.
    * X11: Window manager chooses Window position by default.
      Add geometry=50%:50% to your configuration to get the old behavior.
    * -vo md5sum md5 calculation changed so output matches FFmpeg's -f framemd5
    * Support for more formats in OpenGL video output drivers (different YUV
      subsampling, 16 bit per component)
    * Selectable YUV to RGB conversion standard for -vo gl
      (-vo gl:colorspace=...:levelconv=...)
    * -vo gl now tries to use yuv=2 by default if possible
    * -vo gl:stereo=... for experimental stereo (3D) support
    * -vo matrixview finally added
    * add OS/2 KAI audio driver (-ao kai)

    Other:
    * -nosub option for disabling auto-selected subtitles
    * support for displaying subs in the terminal (FIXME)
    * support for subtitles with audio-only files
    * support for right-to-left languages with embedded subtitles
    * support for UTF-16 encoded external subtitles
    * support for 8 channel audio
    * sync dvd:// and dvdnav:// features
    * support for MPEG-4 ASP in VDPAU video output (non-B-frame only)
    * support for live and non-live DVB teletext with demuxer lavf
    * -name, -title and -use-filename-title options for MPlayer
    * support for stream handling via FFmpeg, in particular RTMP and RTSP
      (use e.g. ffmpeg://http://example.com/test)
    * experimental support for external libass, configure with
      --disable-ass-internal
    * better support for 16-bit-per-component formats and formats
      with alpha channel
    * better out-of-the-box support for compiling for ARM, IA64,
      MinGW32 and MinGW-w64, MinGW has ASLR enabled with recent
      enough binutils
    * libdvdcss synced with upstream Subversion snapshot

    MEncoder:
    * add -tsprog for demuxer lavf
2012-06-11 13:41:12 +00:00

365 lines
9.7 KiB
Makefile

# $NetBSD: options.mk,v 1.45 2012/06/11 13:41:12 wiz Exp $
.if defined(PKGNAME) && empty(PKGNAME:Mmplayer-share*)
# Note: This expression is the same as ${PKGBASE}, but the latter is
# not defined yet, so we cannot use it here.
PKG_OPTIONS_VAR= PKG_OPTIONS.${PKGNAME:C/-[0-9].*//}
.include "../../mk/oss.buildlink3.mk"
.include "../../multimedia/libvdpau/available.mk"
# -------------------------------------------------------------------------
# Define PKG_SUPPORTED_OPTIONS based on the current package and system.
# -------------------------------------------------------------------------
# Note: It is a good practice that all PKG_SUPPORTED_OPTIONS are
# enabled or disabled with --enable-option or --disable-option.
# It is better to add missing libs via EXTRA_LIBS, when it is possible,
# instead of patching the configure script in order to make the update of
# the packages easier.
# Options supported by both mplayer* or mencoder*.
PKG_SUPPORTED_OPTIONS= gif jpeg mad dts dv png theora vorbis x264 debug
PKG_SUPPORTED_OPTIONS+= dvdread dvdnav
.if ${OSS_TYPE} != "none"
PKG_SUPPORTED_OPTIONS+= oss
.endif
PKG_SUPPORTED_OPTIONS+= faad
PKG_SUGGESTED_OPTIONS+= faad
# Set options based on the specific package being built.
.if !empty(PKGNAME:M*mplayer*)
PKG_SUPPORTED_OPTIONS+= aalib caca esound ggi mplayer-menu nas pulseaudio sdl
.if ${VDPAU_AVAILABLE} == "yes"
PKG_SUPPORTED_OPTIONS+= vdpau
.endif
. if ${OPSYS} != "SunOS"
PKG_SUPPORTED_OPTIONS+= arts
. endif
.elif !empty(PKGNAME:M*mencoder*)
PKG_SUPPORTED_OPTIONS+= faac lame
.endif
# OS-specific options.
.if ${OPSYS} == "FreeBSD" || ${OPSYS} == "Linux" || ${OPSYS} == "NetBSD"
PKG_SUPPORTED_OPTIONS+= cdparanoia
.elif ${OPSYS} == "SunOS"
PKG_SUPPORTED_OPTIONS+= mlib
.endif
.if ${OPSYS} == "Linux"
PKG_SUPPORTED_OPTIONS+= vidix
.endif
# TODO: v4l2 option probably could be supported on Linux and OpenBSD too
.if ${OPSYS} == "NetBSD" && exists(/usr/include/sys/videoio.h)
PKG_SUPPORTED_OPTIONS+= v4l2
PKG_SUGGESTED_OPTIONS+= v4l2
.endif
# Platform-specific options.
.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64" || \
${MACHINE_ARCH} == "powerpc"
PKG_SUPPORTED_OPTIONS+= mplayer-runtime-cpudetection
.endif
.if ${MACHINE_ARCH} == "i386"
PKG_SUPPORTED_OPTIONS+= mplayer-default-cflags mplayer-win32
.endif
.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "powerpc" || \
${MACHINE_ARCH} == "alpha"
PKG_SUPPORTED_OPTIONS+= mplayer-real
.endif
.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64"
PKG_SUPPORTED_OPTIONS+= mplayer-ssse3
.endif
.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64" || \
${MACHINE_ARCH} == "powerpc" || ${MACHINE_ARCH} == "sparc64"
PKG_SUPPORTED_OPTIONS+= xvid
.endif
# -------------------------------------------------------------------------
# Define PKG_SUGGESTED_OPTIONS.
# -------------------------------------------------------------------------
.for o in aalib arts cdparanoia dv esound gif jpeg \
dvdread dvdnav \
lame mad mplayer-menu mplayer-real \
mplayer-default-cflags mplayer-runtime-cpudetection mplayer-win32 \
nas oss pulseaudio png sdl theora vorbis x264 xvid vdpau
. if !empty(PKG_SUPPORTED_OPTIONS:M${o})
PKG_SUGGESTED_OPTIONS+= ${o}
. endif
.endfor
.if ${OPSYS} == "Linux"
PKG_SUGGESTED_OPTIONS+= vidix
.endif
# -------------------------------------------------------------------------
# Handle extra libraries (part 1)
# -------------------------------------------------------------------------
EXTRA_LIBS=
# -------------------------------------------------------------------------
# Handle chosen options.
# -------------------------------------------------------------------------
.include "../../mk/bsd.options.mk"
.if !empty(PKG_OPTIONS:Maalib)
CONFIGURE_ARGS+= --enable-aa
. include "../../graphics/aalib/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-aa
.endif
.if !empty(PKG_OPTIONS:Marts)
CONFIGURE_ARGS+= --enable-arts
EXTRA_LIBS+= -lartsc
. include "../../audio/arts/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-arts
.endif
.if !empty(PKG_OPTIONS:Mcaca)
CONFIGURE_ARGS+= --enable-caca
. include "../../graphics/libcaca/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-caca
.endif
.if !empty(PKG_OPTIONS:Mcdparanoia)
CONFIGURE_ARGS+= --enable-cdparanoia
. include "../../audio/cdparanoia/buildlink3.mk"
CFLAGS+= -I${BUILDLINK_PREFIX.cdparanoia}/include/cdparanoia
.else
CONFIGURE_ARGS+= --disable-cdparanoia
.endif
.if !empty(PKG_OPTIONS:Mdebug)
CONFIGURE_ARGS+= --enable-debug
.endif
.if !empty(PKG_OPTIONS:Mdts)
# The configure handling for --enable-libdca is broken.
# However, it works if you omit the argument and let
# configure autodetect support.
#CONFIGURE_ARGS+= --enable-libdca
. include "../../audio/libdca/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-libdca
.endif
.if !empty(PKG_OPTIONS:Mdv)
CONFIGURE_ARGS+= --enable-libdv
. include "../../multimedia/libdv/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-libdv
.endif
CONFIGURE_ARGS+= --disable-dvdread-internal
.if !empty(PKG_OPTIONS:Mdvdread)
CONFIGURE_ARGS+= --enable-dvdread
CONFIGURE_ARGS+= --with-dvdread-config=${BUILDLINK_PREFIX.libdvdread}/bin/dvdread-config
. include "../../multimedia/libdvdread/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-dvdread
.endif
.if !empty(PKG_OPTIONS:Mdvdnav)
CONFIGURE_ARGS+= --enable-dvdnav
CONFIGURE_ARGS+= --with-dvdnav-config=${BUILDLINK_PREFIX.libdvdnav}/bin/dvdnav-config
. include "../../multimedia/libdvdnav/buildlink3.mk"
#CFLAGS+= -I${BUILDLINK_PREFIX.libdvdnav}/include/dvdnav
.else
CONFIGURE_ARGS+= --disable-dvdnav
.endif
.if !empty(PKG_OPTIONS:Mesound)
CONFIGURE_ARGS+= --enable-esd
. include "../../audio/esound/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-esd
.endif
.if !empty(PKG_OPTIONS:Mfaac)
CONFIGURE_ARGS+= --enable-faac
EXTRA_LIBS+= -lfaac
. include "../../audio/faac/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-faac
.endif
.if !empty(PKG_OPTIONS:Mfaad)
CONFIGURE_ARGS+= --enable-faad
. include "../../audio/faad2/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-faad
.endif
.if !empty(PKG_OPTIONS:Mggi)
CONFIGURE_ARGS+= --enable-ggi
. include "../../graphics/libggi/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-ggi
.endif
.if !empty(PKG_OPTIONS:Mgif)
CONFIGURE_ARGS+= --enable-gif
. include "../../mk/giflib.buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-gif
.endif
.if !empty(PKG_OPTIONS:Mjpeg)
CONFIGURE_ARGS+= --enable-jpeg
. include "../../mk/jpeg.buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-jpeg
.endif
.if !empty(PKG_OPTIONS:Mlame)
CONFIGURE_ARGS+= --enable-mp3lame
. include "../../audio/lame/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-mp3lame
.endif
.if !empty(PKG_OPTIONS:Mmad)
CONFIGURE_ARGS+= --enable-mad
. include "../../audio/libmad/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-mad
.endif
.if !empty(PKG_OPTIONS:Mmlib)
CONFIGURE_ARGS+= --enable-mlib
.else
CONFIGURE_ARGS+= --disable-mlib
.endif
.if !empty(PKG_OPTIONS:Mmplayer-menu)
CONFIGURE_ARGS+= --enable-menu
.else
CONFIGURE_ARGS+= --disable-menu
.endif
.if !empty(PKG_OPTIONS:Mmplayer-real)
CONFIGURE_ARGS+= --enable-real
DEPENDS+= realplayer-codecs>=8nb2:../../multimedia/realplayer-codecs
.else
CONFIGURE_ARGS+= --disable-real
.endif
.if !empty(PKG_OPTIONS:Mmplayer-runtime-cpudetection)
CONFIGURE_ARGS+= --enable-runtime-cpudetection
.else
CONFIGURE_ARGS+= --disable-runtime-cpudetection
.endif
.if !empty(PKG_OPTIONS:Mmplayer-win32)
CONFIGURE_ARGS+= --enable-win32dll
DEPENDS+= win32-codecs>=011227:../../multimedia/win32-codecs
.else
CONFIGURE_ARGS+= --disable-win32dll
.endif
.if !empty(PKG_OPTIONS:Mnas)
CONFIGURE_ARGS+= --enable-nas
. include "../../audio/nas/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-nas
.endif
.if ${OSS_TYPE} != "none" && !empty(PKG_OPTIONS:Moss)
CONFIGURE_ARGS+= --enable-ossaudio
.else
CONFIGURE_ARGS+= --disable-ossaudio
.endif
.if !empty(PKG_OPTIONS:Mpng)
CONFIGURE_ARGS+= --enable-png
. include "../../graphics/png/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-png
.endif
.if !empty(PKG_OPTIONS:Mpulseaudio)
CONFIGURE_ARGS+= --enable-pulse
. include "../../devel/glib2/buildlink3.mk"
. include "../../audio/pulseaudio/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-pulse
.endif
.if !empty(PKG_OPTIONS:Msdl)
CONFIGURE_ARGS+= --enable-sdl
. include "../../devel/SDL/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-sdl
.endif
.if !empty(PKG_OPTIONS:Mtheora)
CONFIGURE_ARGS+= --enable-theora
. include "../../multimedia/libtheora/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-theora
.endif
.if empty(PKG_OPTIONS:Mv4l2)
CONFIGURE_ARGS+= --disable-tv-v4l2
.endif
# disable vidix if not in options
.if empty(PKG_OPTIONS:Mvidix)
CONFIGURE_ARGS+= --disable-vidix
.endif
.if !empty(PKG_OPTIONS:Mvorbis)
CONFIGURE_ARGS+= --enable-libvorbis
.else
CONFIGURE_ARGS+= --disable-libvorbis
.endif
.if !empty(PKG_OPTIONS:Mx264)
CONFIGURE_ARGS+= --enable-x264
EXTRA_LIBS+= -lx264
. include "../../multimedia/x264-devel/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-x264
.endif
.if !empty(PKG_OPTIONS:Mxvid)
CONFIGURE_ARGS+= --enable-xvid
EXTRA_LIBS+= -lxvidcore
. include "../../multimedia/xvidcore/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-xvid
.endif
.if !empty(PKG_OPTIONS:Mmplayer-ssse3)
# needs a recent assembler
.include "../../devel/binutils/buildlink3.mk"
.include "../../devel/binutils/override-as.mk"
.else
CONFIGURE_ARGS+= --disable-ssse3
.endif
.if !empty(PKG_OPTIONS:Mvdpau)
CONFIGURE_ARGS+= --enable-vdpau
. include "../../multimedia/libvdpau/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-vdpau
.endif
# -------------------------------------------------------------------------
# Handle extra libraries (part 1)
# -------------------------------------------------------------------------
.if ${EXTRA_LIBS} != ""
CONFIGURE_ARGS+= --extra-libs=${EXTRA_LIBS:C/^ //:Q}
.endif
.endif # defined(PKGNAME) && empty(PKGNAME:Mmplayer-share*)