diff options
author | xmj <xmj@FreeBSD.org> | 2014-11-23 00:23:34 +0800 |
---|---|---|
committer | xmj <xmj@FreeBSD.org> | 2014-11-23 00:23:34 +0800 |
commit | 7ed6ffb0684e6f6b2941842f6f48af6384d96e6a (patch) | |
tree | 69858a5647bf444b8dbaae3a0602f21ce314cc16 /multimedia | |
parent | 3d249881a1fbea4311dce69fd794b3526df0f004 (diff) | |
download | freebsd-ports-gnome-7ed6ffb0684e6f6b2941842f6f48af6384d96e6a.tar.gz freebsd-ports-gnome-7ed6ffb0684e6f6b2941842f6f48af6384d96e6a.tar.zst freebsd-ports-gnome-7ed6ffb0684e6f6b2941842f6f48af6384d96e6a.zip |
multimedia/x264: General overhaul
- Split x264 into two ports: the CLI application (x264), and the library
(libx264). This will allow x264 to use lavf and friends from ffmpeg for
decoding and demuxing while preventing a circular dependency between the
two: x264 can depend on ffmpeg, but ffmpeg will depend on libx264 rather
than x264.
- Add the LAVF option to the CLI port, making the dependency on ffmpeg
optional.
- Update to 0.142.2455.
- Amend fixes to local patches so that they can apply to the new upstream
files.
- Provide the git revision and other version information to the build
environment, allowing the CLI binary to display this information (like the
Windows builds).
- Remove unsupported build options (X11_OUTPUT).
- Ensure that the library and CLI ports each have the appropriate options.
- Add notes for future contributors who wish to update the ports.
- Bump PORTREVISION for all dependent ports.
PR: 187805
Differential Revision: https://reviews.freebsd.org/D1159
Submitted by: Andrew Berg <aberg010@my.hennepintech.edu>
Approved by: koobs (maintainer, mentor)
Diffstat (limited to 'multimedia')
26 files changed, 263 insertions, 58 deletions
diff --git a/multimedia/avidemux2/Makefile b/multimedia/avidemux2/Makefile index 9af34d642371..0cbe7af94de9 100644 --- a/multimedia/avidemux2/Makefile +++ b/multimedia/avidemux2/Makefile @@ -3,7 +3,7 @@ PORTNAME= avidemux2 PORTVERSION= ${AVIDEMUX2_VERSION} -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= multimedia MAINTAINER= multimedia@FreeBSD.org diff --git a/multimedia/avidemux2/Makefile.common b/multimedia/avidemux2/Makefile.common index 5107f4846170..8742b7cf70ad 100644 --- a/multimedia/avidemux2/Makefile.common +++ b/multimedia/avidemux2/Makefile.common @@ -2,7 +2,7 @@ # AVIDEMUX2_VERSION= 2.5.6 -PORTREVISION= 5 +PORTREVISION= 6 MASTER_SITES= BERLIOS \ SF/avidemux/avidemux/${PORTVERSION} DISTNAME= avidemux_${PORTVERSION} @@ -175,7 +175,7 @@ PLIST_SUB+= FAAD="@comment " .endif .if ${PORT_OPTIONS:MX264} -LIB_DEPENDS+= libx264.so:${PORTSDIR}/multimedia/x264 +LIB_DEPENDS+= libx264.so:${PORTSDIR}/multimedia/libx264 PLIST_SUB+= X264="" .else CMAKE_ARGS+= -DX264:BOOL=OFF diff --git a/multimedia/avidemux26/Makefile b/multimedia/avidemux26/Makefile index 2775c7ff58b9..3a34f5f6f33e 100644 --- a/multimedia/avidemux26/Makefile +++ b/multimedia/avidemux26/Makefile @@ -6,7 +6,7 @@ PORTNAME= avidemux26 PORTVERSION= ${AVIDEMUX2_VERSION} -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= multimedia MAINTAINER= multimedia@FreeBSD.org diff --git a/multimedia/avidemux26/Makefile.common b/multimedia/avidemux26/Makefile.common index 6a2f135b01f8..29d7f30236c4 100644 --- a/multimedia/avidemux26/Makefile.common +++ b/multimedia/avidemux26/Makefile.common @@ -195,7 +195,7 @@ PLIST_SUB+= FAAD="@comment " .endif .if ${PORT_OPTIONS:MX264} -LIB_DEPENDS+= libx264.so:${PORTSDIR}/multimedia/x264 +LIB_DEPENDS+= libx264.so:${PORTSDIR}/multimedia/libx264 PLIST_SUB+= X264="" .else CMAKE_ARGS+= -DX264:BOOL=OFF diff --git a/multimedia/ffmpeg/Makefile b/multimedia/ffmpeg/Makefile index 4e70d37c2e99..36b59dab111c 100644 --- a/multimedia/ffmpeg/Makefile +++ b/multimedia/ffmpeg/Makefile @@ -3,7 +3,7 @@ PORTNAME= ffmpeg PORTVERSION= 2.3.5 -PORTREVISION= 1 +PORTREVISION= 2 PORTEPOCH= 1 CATEGORIES= multimedia audio ipv6 net MASTER_SITES= http://ffmpeg.org/releases/ @@ -198,7 +198,7 @@ VPX_LIB_DEPENDS= libvpx.so:${PORTSDIR}/multimedia/libvpx VPX_CONFIGURE_ENABLE= libvpx # x264 -X264_LIB_DEPENDS= libx264.so:${PORTSDIR}/multimedia/x264 +X264_LIB_DEPENDS= libx264.so:${PORTSDIR}/multimedia/libx264 X264_CONFIGURE_ENABLE= libx264 # x265 diff --git a/multimedia/ffmpeg0/Makefile b/multimedia/ffmpeg0/Makefile index 0295b7c1473b..d17bb26500e5 100644 --- a/multimedia/ffmpeg0/Makefile +++ b/multimedia/ffmpeg0/Makefile @@ -3,7 +3,7 @@ PORTNAME= ffmpeg PORTVERSION= 0.7.16 -PORTREVISION= 2 +PORTREVISION= 3 PORTEPOCH= 1 CATEGORIES= multimedia audio ipv6 net MASTER_SITES= http://ffmpeg.org/releases/ @@ -370,7 +370,7 @@ CONFIGURE_ARGS+= --disable-libvpx # x264 .if ${PORT_OPTIONS:MX264} -LIB_DEPENDS+= libx264.so:${PORTSDIR}/multimedia/x264 +LIB_DEPENDS+= libx264.so:${PORTSDIR}/multimedia/libx264 CONFIGURE_ARGS+= --enable-libx264 .else CONFIGURE_ARGS+= --disable-libx264 diff --git a/multimedia/ffmpeg24/Makefile b/multimedia/ffmpeg24/Makefile index 219c63a76ec5..1dd72248e61e 100644 --- a/multimedia/ffmpeg24/Makefile +++ b/multimedia/ffmpeg24/Makefile @@ -3,7 +3,7 @@ PORTNAME= ffmpeg PORTVERSION= 2.4.3 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= multimedia audio ipv6 net MASTER_SITES= http://ffmpeg.org/releases/ PKGNAMESUFFIX= 24 @@ -205,7 +205,7 @@ VPX_LIB_DEPENDS= libvpx.so:${PORTSDIR}/multimedia/libvpx VPX_CONFIGURE_ENABLE= libvpx # x264 -X264_LIB_DEPENDS= libx264.so:${PORTSDIR}/multimedia/x264 +X264_LIB_DEPENDS= libx264.so:${PORTSDIR}/multimedia/libx264 X264_CONFIGURE_ENABLE= libx264 # x265 diff --git a/multimedia/gstreamer-plugins-x264/Makefile b/multimedia/gstreamer-plugins-x264/Makefile index 5f9c557c0eb9..bcb2d8919cae 100644 --- a/multimedia/gstreamer-plugins-x264/Makefile +++ b/multimedia/gstreamer-plugins-x264/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ # $MCom: ports/multimedia/gstreamer-plugins-x264/Makefile,v 1.3 2008/03/19 14:05:37 ahze Exp $ -PORTREVISION= 3 +PORTREVISION= 4 CATEGORIES= multimedia COMMENT= Gstreamer x264 plugin diff --git a/multimedia/gstreamer-plugins/Makefile.common b/multimedia/gstreamer-plugins/Makefile.common index 40519e25f3fa..ed53d12d9312 100644 --- a/multimedia/gstreamer-plugins/Makefile.common +++ b/multimedia/gstreamer-plugins/Makefile.common @@ -584,7 +584,7 @@ gst_vp8_PLIST_FILES= ${GST_LIB_DIR}/libgstvp8.la \ gst_vp8_DIST= bad # x264 -gst_x264_LIB_DEPENDS+= libx264.so:${PORTSDIR}/multimedia/x264 +gst_x264_LIB_DEPENDS+= libx264.so:${PORTSDIR}/multimedia/libx264 gst_x264_PLIST_FILES= ${GST_LIB_DIR}/libgstx264.la \ ${GST_LIB_DIR}/libgstx264.so \ share/gstreamer-${VERSION}/presets/GstX264Enc.prs diff --git a/multimedia/gstreamer1-plugins-x264/Makefile b/multimedia/gstreamer1-plugins-x264/Makefile index 66ac4f231644..bbdf10e0afcc 100644 --- a/multimedia/gstreamer1-plugins-x264/Makefile +++ b/multimedia/gstreamer1-plugins-x264/Makefile @@ -1,6 +1,6 @@ # $FreeBSD$ -PORTREVISION= 0 +PORTREVISION= 1 CATEGORIES= multimedia COMMENT= Gstreamer x264 plugin diff --git a/multimedia/gstreamer1-plugins/Makefile.common b/multimedia/gstreamer1-plugins/Makefile.common index 69744a835c0a..53d2e3ed0827 100644 --- a/multimedia/gstreamer1-plugins/Makefile.common +++ b/multimedia/gstreamer1-plugins/Makefile.common @@ -423,7 +423,7 @@ gst_x_PLIST_FILES= ${GST_LIB_DIR}/libgstximagesrc.la \ .endif # x264 -gst_x264_LIB_DEPENDS= libx264.so:${PORTSDIR}/multimedia/x264 +gst_x264_LIB_DEPENDS= libx264.so:${PORTSDIR}/multimedia/libx264 gst_x264_PLIST_FILES= ${GST_LIB_DIR}/libgstx264.la \ ${GST_LIB_DIR}/libgstx264.so \ share/gstreamer-${VERSION}/presets/GstX264Enc.prs diff --git a/multimedia/libav/Makefile b/multimedia/libav/Makefile index 5d14bb17ad1d..28645b6323da 100644 --- a/multimedia/libav/Makefile +++ b/multimedia/libav/Makefile @@ -2,7 +2,7 @@ PORTNAME= libav PORTVERSION= 10.2 -PORTREVISION= 4 +PORTREVISION= 5 CATEGORIES= multimedia audio ipv6 net MASTER_SITES= http://libav.org/releases/ @@ -146,7 +146,7 @@ WEBP_CONFIGURE_ENABLE= libwebp X11GRAB_USE= XORG=x11,xext,xfixes -X264_LIB_DEPENDS= libx264.so:${PORTSDIR}/multimedia/x264 +X264_LIB_DEPENDS= libx264.so:${PORTSDIR}/multimedia/libx264 X264_CONFIGURE_ENABLE= libx264 XVID_LIB_DEPENDS= libxvidcore.so:${PORTSDIR}/multimedia/xvid diff --git a/multimedia/libquicktime/Makefile b/multimedia/libquicktime/Makefile index f827b38bf252..700ce6de4ceb 100644 --- a/multimedia/libquicktime/Makefile +++ b/multimedia/libquicktime/Makefile @@ -3,7 +3,7 @@ PORTNAME= libquicktime PORTVERSION= 1.2.4 -PORTREVISION?= 7 +PORTREVISION?= 8 CATEGORIES= multimedia MASTER_SITES= SF @@ -112,7 +112,7 @@ CONFIGURE_ARGS+= --without-faad2 .endif .if ${PORT_OPTIONS:MX264} -LIB_DEPENDS+= libx264.so:${PORTSDIR}/multimedia/x264 +LIB_DEPENDS+= libx264.so:${PORTSDIR}/multimedia/libx264 CONFIGURE_ARGS+= --with-x264 .else CONFIGURE_ARGS+= --without-x264 diff --git a/multimedia/libx264/Makefile b/multimedia/libx264/Makefile new file mode 100644 index 000000000000..e8baf7b9ccfb --- /dev/null +++ b/multimedia/libx264/Makefile @@ -0,0 +1,107 @@ +# Created by: Michael Johnson <ahze@FreeBSD.org> +# $FreeBSD$ +# +# Updating notes: see multimedia/x264/Makefile. + +PORTNAME= libx264 +PORTVERSION= 0.${X264_BUILD}.${X264_REV} +CATEGORIES= multimedia +MASTER_SITES= ftp://ftp.videolan.org/pub/videolan/x264/snapshots/ \ + http://samples.mplayerhq.hu/yuv4mpeg2/:pgo +DISTNAME= x264-snapshot-${X264_SNAPSHOT}-2245-stable +DISTFILES= ${DISTNAME}${EXTRACT_SUFX} +DIST_SUBDIR= libx264 +EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX} + +MAINTAINER= koobs@FreeBSD.org +COMMENT= Library and tool for encoding H.264/AVC video streams + +LICENSE= GPLv2 + +BUILD_DEPENDS= yasm>=0.6.0:${PORTSDIR}/devel/yasm \ + ${LOCALBASE}/bin/bash:${PORTSDIR}/shells/bash + +X264_BUILD= 142 +X264_REV= 2455 +X264_COMMIT= 021c0dc6c95c1bc239c9db78a80dd85fc856a4dd +X264_GITVER= ${X264_COMMIT:C/^(.......).*$/\1/g} +X264_SNAPSHOT= 20140827 + +USES= gmake tar:bzip2 +WRKSRC= ${WRKDIR}/${DISTNAME} +USE_LDCONFIG= yes +HAS_CONFIGURE= yes + +OPTIONS_DEFINE= ASM DEBUG HI10P GCC +OPTIONS_DEFAULT= ASM +ASM_DESC= Enable Assembly Optimizations +DEBUG_DESC= Generate Debugging Symbols +GCC_DESC= Use current GCC +HI10P_DESC= Enable High 10 Profile 10-bit encoding + +CONFIGURE_ARGS+= --extra-cflags="-I${LOCALBASE}/include" \ + --extra-ldflags="-L${LOCALBASE}/lib" \ + --enable-static --enable-shared \ + --disable-opencl \ + --disable-cli + +PLIST_SUB+= X264_BUILD=${X264_BUILD} + +.include <bsd.port.options.mk> + +.if ${PORT_OPTIONS:MGCC} +USE_GCC= yes +.endif + +.if !${PORT_OPTIONS:MASM} +CONFIGURE_ARGS+= --disable-asm +.endif + +.if ${PORT_OPTIONS:MHI10P} +CONFIGURE_ARGS+= --bit-depth=10 +.endif + +.if ${PORT_OPTIONS:MDEBUG} || defined(WITH_DEBUG) +CONFIGURE_ARGS+= --enable-debug +.endif + +# Around the time GCC stack protection (aka Propolice) for userland +# was enabled on src/share/mk/bsd.sys.mk +# SVN rev 180012 on 2008-06-25 21:33:28Z by ru +.if ${OSVERSION} >= 800040 +LDFLAGS+= -fstack-protector +.endif + +.if ${PORT_OPTIONS:MPGO} +# y4m sample video +Y4M_VIDEO=example.y4m +Y4M_VIDEO_DISTFILE=example.y4m.bz2 + +DISTFILES+= ${Y4M_VIDEO_DISTFILE}:pgo +ALL_TARGET= fprofiled +MAKE_ENV+= VIDS="${WRKDIR}/${Y4M_VIDEO}" + +RESTRICTED= ${Y4M_VIDEO_DISTFILE} file may not be mirrored +RESTRICTED_FILES= ${Y4M_VIDEO_DISTFILE} +.endif + +post-extract: +.if ${PORT_OPTIONS:MPGO} + @( cd ${WRKDIR} && ${BZIP2_CMD} -dc ${DISTDIR}/${DIST_SUBDIR}/${Y4M_VIDEO_DISTFILE} > ${Y4M_VIDEO} ) +.endif + +post-patch: + @${REINPLACE_CMD} -e 's|/usr/local|${PREFIX}|; \ + s|-lpthread|${PTHREAD_LIBS}|g; \ + s|/bin/bash|${LOCALBASE}/bin/bash|; \ + s|gpac_static|gpac|g' \ + ${WRKSRC}/configure + @${REINPLACE_CMD} -e 's|bash|sh|; \ + s|VER="x"|VER="${X264_REV} ${X264_GITVER}"|; \ + s|VERSION=""|VERSION=" r${X264_REV} ${X264_GITVER}"|' \ + ${WRKSRC}/version.sh + @${REINPLACE_CMD} -e 's|$$(libdir)/pkgconfig|${PREFIX}/libdata/pkgconfig|; \ + s|$${libdir}/pkgconfig|${PREFIX}/libdata/pkgconfig|' \ + ${WRKSRC}/Makefile + +.include <bsd.port.mk> diff --git a/multimedia/libx264/distinfo b/multimedia/libx264/distinfo new file mode 100644 index 000000000000..a8c202a07b68 --- /dev/null +++ b/multimedia/libx264/distinfo @@ -0,0 +1,4 @@ +SHA256 (libx264/x264-snapshot-20140827-2245-stable.tar.bz2) = fb1de3f802a83778527d45e69b552efa73b677ebb3ac633a8720923e71ffc5e3 +SIZE (libx264/x264-snapshot-20140827-2245-stable.tar.bz2) = 624939 +SHA256 (libx264/example.y4m.bz2) = a5bec9d37362bd9d7773fbd0644643f9ec096d654d20823004e88d5df32bbff7 +SIZE (libx264/example.y4m.bz2) = 4910029 diff --git a/multimedia/libx264/files/patch-Makefile b/multimedia/libx264/files/patch-Makefile new file mode 100644 index 000000000000..6d5646214e2c --- /dev/null +++ b/multimedia/libx264/files/patch-Makefile @@ -0,0 +1,33 @@ +--- Makefile.orig 2014-08-27 15:45:08.000000000 -0500 ++++ Makefile 2014-10-21 16:18:59.299348000 -0500 +@@ -85,12 +85,12 @@ + endif + X86SRC = $(X86SRC0:%=common/x86/%) + +-ifeq ($(ARCH),X86) ++ifeq ($(ARCH),i386) + ARCH_X86 = yes + ASMSRC = $(X86SRC) common/x86/pixel-32.asm + endif + +-ifeq ($(ARCH),X86_64) ++ifeq ($(ARCH),amd64) + ARCH_X86 = yes + ASMSRC = $(X86SRC:-32.asm=-64.asm) common/x86/trellis-64.asm + endif +@@ -104,7 +104,14 @@ + endif + + # AltiVec optims +-ifeq ($(ARCH),PPC) ++ifeq ($(ARCH),powerpc) ++ARCH_PPC = yes ++endif ++ifeq ($(ARCH),powerpc64) ++ARCH_PPC = yes ++endif ++ ++ifdef ARCH_PPC + ifneq ($(AS),) + SRCS += common/ppc/mc.c common/ppc/pixel.c common/ppc/dct.c \ + common/ppc/quant.c common/ppc/deblock.c \ diff --git a/multimedia/libx264/files/patch-common_cpu.c b/multimedia/libx264/files/patch-common_cpu.c new file mode 100644 index 000000000000..b1c529d67055 --- /dev/null +++ b/multimedia/libx264/files/patch-common_cpu.c @@ -0,0 +1,29 @@ +--- common/cpu.c.orig 2010-06-24 22:45:07.000000000 +0200 ++++ common/cpu.c 2010-07-18 22:55:49.324572565 +0200 +@@ -234,7 +234,7 @@ + + #elif ARCH_PPC + +-#if SYS_MACOSX || SYS_OPENBSD ++#if SYS_MACOSX || SYS_OPENBSD || SYS_FREEBSD + #include <sys/sysctl.h> + uint32_t x264_cpu_detect( void ) + { +@@ -242,12 +242,16 @@ + uint32_t cpu = 0; + #if SYS_OPENBSD + int selectors[2] = { CTL_MACHDEP, CPU_ALTIVEC }; +-#else ++#elif SYS_MACOSX + int selectors[2] = { CTL_HW, HW_VECTORUNIT }; + #endif + int has_altivec = 0; + size_t length = sizeof( has_altivec ); ++#if SYS_MACOSX || SYS_OPENBSD + int error = sysctl( selectors, 2, &has_altivec, &length, NULL, 0 ); ++#else ++ int error = sysctlbyname("hw.altivec", &has_altivec, &length, NULL, 0 ); ++#endif + + if( error == 0 && has_altivec != 0 ) + cpu |= X264_CPU_ALTIVEC; diff --git a/multimedia/libx264/pkg-descr b/multimedia/libx264/pkg-descr new file mode 100644 index 000000000000..ebadb26dcee2 --- /dev/null +++ b/multimedia/libx264/pkg-descr @@ -0,0 +1,13 @@ +x264 is a free library for encoding H.264/AVC (aka MPEG-4 Part 10) +video streams. + +Encoder features + * CAVLC/CABAC + * Multi-references + * Intra: all modes (4x4 and 16x16 with all predictions) + * Inter P: all partitions (from 16x16 down to 4x4) + * Inter B: partitions from 16x16 down to 8x8 (including SKIP/DIRECT) + * Ratecontrol: constant quantizer, constant bitrate, or multipass ABR + * Scene cut detection + +WWW: http://www.videolan.org/x264.html diff --git a/multimedia/x264/pkg-plist b/multimedia/libx264/pkg-plist index 7bedc90a6bc6..cee118b2477b 100644 --- a/multimedia/x264/pkg-plist +++ b/multimedia/libx264/pkg-plist @@ -1,7 +1,7 @@ -bin/x264 include/x264.h include/x264_config.h lib/libx264.a lib/libx264.so lib/libx264.so.%%X264_BUILD%% +@dir libdata/pkgconfig libdata/pkgconfig/x264.pc diff --git a/multimedia/mpeg4ip/Makefile b/multimedia/mpeg4ip/Makefile index 5dd88cb42f14..d7c5af68545b 100644 --- a/multimedia/mpeg4ip/Makefile +++ b/multimedia/mpeg4ip/Makefile @@ -3,7 +3,7 @@ PORTNAME= mpeg4ip PORTVERSION= 1.6.1 -PORTREVISION= 30 +PORTREVISION= 31 CATEGORIES= multimedia audio ipv6 net MASTER_SITES= LOCAL/ahze # http://sourceforge.net/forum/forum.php?thread_id=1839453&forum_id=59136 @@ -22,7 +22,7 @@ LIB_DEPENDS= libfaac.so:${PORTSDIR}/audio/faac \ liba52.so:${PORTSDIR}/audio/liba52 \ libmpeg2.so:${PORTSDIR}/multimedia/libmpeg2 \ libavcodec0.so:${PORTSDIR}/multimedia/ffmpeg0 \ - libx264.so:${PORTSDIR}/multimedia/x264 + libx264.so:${PORTSDIR}/multimedia/libx264 RUN_DEPENDS= mp4v2>=1.9.1:${PORTSDIR}/multimedia/mp4v2 USE_GNOME= gtk20 diff --git a/multimedia/mplayer/Makefile.optvars b/multimedia/mplayer/Makefile.optvars index a29fc0567bbe..47c5d0329902 100644 --- a/multimedia/mplayer/Makefile.optvars +++ b/multimedia/mplayer/Makefile.optvars @@ -106,7 +106,7 @@ VDPAU_CONFIGURE_OFF= --disable-vdpau VPX_LIB_DEPENDS= libvpx.so:${PORTSDIR}/multimedia/libvpx VPX_CONFIGURE_OFF= --disable-libvpx-lavc -X264_LIB_DEPENDS= libx264.so:${PORTSDIR}/multimedia/x264 +X264_LIB_DEPENDS= libx264.so:${PORTSDIR}/multimedia/libx264 X264_CONFIGURE_OFF= --disable-x264 XVID_LIB_DEPENDS= libxvidcore.so:${PORTSDIR}/multimedia/xvid diff --git a/multimedia/transcode/Makefile b/multimedia/transcode/Makefile index 1eac9aafcfeb..ca08e8dfe151 100644 --- a/multimedia/transcode/Makefile +++ b/multimedia/transcode/Makefile @@ -3,7 +3,7 @@ PORTNAME= transcode PORTVERSION= 1.1.7 -PORTREVISION= 18 +PORTREVISION= 19 CATEGORIES= multimedia MASTER_SITES= http://cdn.bitbucket.org/france/transcode-tcforge/downloads/ @@ -56,7 +56,7 @@ XVID_LIB_DEPENDS= libxvidcore.so:${PORTSDIR}/multimedia/xvid XVID_CONFIGURE_ENABLE= xvid XVID_CONFIGURE_ON= --with-xvid-prefix=${LOCALBASE} -X264_LIB_DEPENDS= libx264.so:${PORTSDIR}/multimedia/x264 +X264_LIB_DEPENDS= libx264.so:${PORTSDIR}/multimedia/libx264 X264_CONFIGURE_ENABLE= x264 OGG_LIB_DEPENDS= libogg.so:${PORTSDIR}/audio/libogg diff --git a/multimedia/vlc/Makefile b/multimedia/vlc/Makefile index 3601bf70326c..c896f7e4c909 100644 --- a/multimedia/vlc/Makefile +++ b/multimedia/vlc/Makefile @@ -3,7 +3,7 @@ PORTNAME= vlc DISTVERSION= 2.1.5 -PORTREVISION= 9 +PORTREVISION= 10 PORTEPOCH= 4 CATEGORIES= multimedia audio ipv6 net www MASTER_SITES= http://download.videolan.org/pub/videolan/${PORTNAME}/${DISTVERSION:S/a$//}/ \ @@ -291,7 +291,7 @@ X11_LIB_DEPENDS= libxcb-keysyms.so:${PORTSDIR}/x11/xcb-util-keysyms X11_CONFIGURE_ENABLE= glx xcb xvideo X11_CONFIGURE_WITH= x -X264_LIB_DEPENDS= libx264.so:${PORTSDIR}/multimedia/x264 +X264_LIB_DEPENDS= libx264.so:${PORTSDIR}/multimedia/libx264 X264_CONFIGURE_ENABLE= x264 ZVBI_LIB_DEPENDS= libzvbi.so:${PORTSDIR}/devel/libzvbi diff --git a/multimedia/x264/Makefile b/multimedia/x264/Makefile index 5bce27c1d575..39e6903c5f28 100644 --- a/multimedia/x264/Makefile +++ b/multimedia/x264/Makefile @@ -1,9 +1,24 @@ # Created by: Michael Johnson <ahze@FreeBSD.org> # $FreeBSD$ +# +# Updating notes: +# We use the nightly tarballs for the *stable* branch of the git repo. +# X264_BUILD is the "core" number, and can always be found in x264.h. +# X264_COMMIT is the commit number, and can be found here: +# http://git.videolan.org/?p=x264.git;a=shortlog;h=refs/heads/stable +# To get X264_REV, you must checkout the git revision for the version to +# which you wish to update, and then run version.sh against it. +# Don't forget to update these for multimedia/libx264 as well: +# X264_BUILD, X264_REV, X264_COMMIT, X264_SNAPSHOT +# +# distinfo for this port and libx264 should always be *identical*. +# +# Bumping PORTREVISION for dependent ports? This is useful: +# cd $PORTSDIR; for x in $(find . -name "Makefile*" -print); +# do str=$(grep -i x264.so $x); if [[ -n $str ]] { echo "$x" }; done PORTNAME= x264 PORTVERSION= 0.${X264_BUILD}.${X264_REV} -PORTREVISION= 4 CATEGORIES= multimedia MASTER_SITES= ftp://ftp.videolan.org/pub/videolan/x264/snapshots/ \ http://samples.mplayerhq.hu/yuv4mpeg2/:pgo @@ -13,39 +28,41 @@ DIST_SUBDIR= x264 EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX} MAINTAINER= koobs@FreeBSD.org -COMMENT= Library and tool for encoding H.264/AVC video streams +COMMENT= Tool for encoding H.264/AVC video streams LICENSE= GPLv2 BUILD_DEPENDS= yasm>=0.6.0:${PORTSDIR}/devel/yasm \ ${LOCALBASE}/bin/bash:${PORTSDIR}/shells/bash +LIB_DEPENDS= libx264.so:${PORTSDIR}/multimedia/libx264 -X264_BUILD= 136 -X264_REV= 2358 -X264_COMMIT= 3361d59a0a83dcb8b321cc0eb8e6ba68ca49c7d4 +X264_BUILD= 142 +X264_REV= 2455 +X264_COMMIT= 021c0dc6c95c1bc239c9db78a80dd85fc856a4dd X264_GITVER= ${X264_COMMIT:C/^(.......).*$/\1/g} -X264_SNAPSHOT= 20130827 +X264_SNAPSHOT= 20140827 -USES= gmake tar:bzip2 +USES= gmake tar:bzip2 pkgconfig WRKSRC= ${WRKDIR}/${DISTNAME} USE_LDCONFIG= yes HAS_CONFIGURE= yes -OPTIONS_DEFINE= ASM DEBUG HI10P PGO GCC GPAC X11_OUTPUT +OPTIONS_DEFINE= ASM DEBUG PGO GCC GPAC LAVF OPTIONS_DEFAULT= ASM GPAC ASM_DESC= Enable Assembly Optimizations +DEBUG_DESC= Generate Debugging Symbols +PGO_DESC= Use Profile-Guided Optimization GCC_DESC= Use current GCC -HI10P_DESC= Enable High 10 Profile 10-bit encoding GPAC_DESC= Enable MPEG-4 Output -X11_OUTPUT_DESC= Enable X11 Output +LAVF_DESC= Enable libav* format input/output support (requires ffmpeg) CONFIGURE_ARGS+= --extra-cflags="-I${LOCALBASE}/include" \ --extra-ldflags="-L${LOCALBASE}/lib" \ - --enable-static --enable-shared \ --disable-opencl \ - --disable-swscale + --system-libx264 PLIST_SUB+= X264_BUILD=${X264_BUILD} +PLIST_FILES= bin/x264 .include <bsd.port.options.mk> @@ -59,10 +76,6 @@ USE_GCC= any CONFIGURE_ARGS+= --disable-asm .endif -.if ${PORT_OPTIONS:MHI10P} -CONFIGURE_ARGS+= --bit-depth=10 -.endif - .if ${PORT_OPTIONS:MDEBUG} || defined(WITH_DEBUG) CONFIGURE_ARGS+= --enable-debug .endif @@ -93,9 +106,13 @@ LIB_DEPENDS+= libgpac.so:${PORTSDIR}/multimedia/gpac-libgpac CONFIGURE_ARGS+= --disable-gpac .endif -.if ${PORT_OPTIONS:MX11_OUTPUT} -CONFIGURE_ARGS+= --enable-visualize -USE_XORG= x11 +.if ${PORT_OPTIONS:MLAVF} +LIB_DEPENDS+= libavcodec.so:${PORTSDIR}/multimedia/ffmpeg +LIB_DEPENDS+= libavformat.so:${PORTSDIR}/multimedia/ffmpeg +LIB_DEPENDS+= libavutil.so:${PORTSDIR}/multimedia/ffmpeg +LIB_DEPENDS+= libswscale.so:${PORTSDIR}/multimedia/ffmpeg +.else +CONFIGURE_ARGS+= --disable-swscale --disable-lavf .endif post-extract: @@ -109,7 +126,10 @@ post-patch: s|/bin/bash|${LOCALBASE}/bin/bash|; \ s|gpac_static|gpac|g' \ ${WRKSRC}/configure - @${REINPLACE_CMD} -e 's|bash|sh|' ${WRKSRC}/version.sh + @${REINPLACE_CMD} -e 's|bash|sh|; \ + s|VER="x"|VER="${X264_REV} ${X264_GITVER}"|; \ + s|VERSION=""|VERSION=" r${X264_REV} ${X264_GITVER}"|' \ + ${WRKSRC}/version.sh @${REINPLACE_CMD} -e 's|$$(libdir)/pkgconfig|${PREFIX}/libdata/pkgconfig|; \ s|$${libdir}/pkgconfig|${PREFIX}/libdata/pkgconfig|' \ ${WRKSRC}/Makefile diff --git a/multimedia/x264/distinfo b/multimedia/x264/distinfo index 1843312f62ed..304371397ce8 100644 --- a/multimedia/x264/distinfo +++ b/multimedia/x264/distinfo @@ -1,4 +1,4 @@ -SHA256 (x264/x264-snapshot-20130827-2245-stable.tar.bz2) = 5e418d6bb0fa8aebd503f7c6298ef0ee007ae8f066811d5427c28edc4a0304ef -SIZE (x264/x264-snapshot-20130827-2245-stable.tar.bz2) = 619606 +SHA256 (x264/x264-snapshot-20140827-2245-stable.tar.bz2) = fb1de3f802a83778527d45e69b552efa73b677ebb3ac633a8720923e71ffc5e3 +SIZE (x264/x264-snapshot-20140827-2245-stable.tar.bz2) = 624939 SHA256 (x264/example.y4m.bz2) = a5bec9d37362bd9d7773fbd0644643f9ec096d654d20823004e88d5df32bbff7 SIZE (x264/example.y4m.bz2) = 4910029 diff --git a/multimedia/x264/files/patch-Makefile b/multimedia/x264/files/patch-Makefile index cca5b3e448ea..6d5646214e2c 100644 --- a/multimedia/x264/files/patch-Makefile +++ b/multimedia/x264/files/patch-Makefile @@ -1,24 +1,23 @@ ---- Makefile.orig 2013-08-27 22:45:07.000000000 +0200 -+++ Makefile 2014-02-04 20:59:54.000000000 +0100 -@@ -86,13 +86,13 @@ +--- Makefile.orig 2014-08-27 15:45:08.000000000 -0500 ++++ Makefile 2014-10-21 16:18:59.299348000 -0500 +@@ -85,12 +85,12 @@ endif X86SRC = $(X86SRC0:%=common/x86/%) - + -ifeq ($(ARCH),X86) +ifeq ($(ARCH),i386) ARCH_X86 = yes ASMSRC = $(X86SRC) common/x86/pixel-32.asm - ASFLAGS += -DARCH_X86_64=0 endif - + -ifeq ($(ARCH),X86_64) +ifeq ($(ARCH),amd64) ARCH_X86 = yes ASMSRC = $(X86SRC:-32.asm=-64.asm) common/x86/trellis-64.asm - ASFLAGS += -DARCH_X86_64=1 -@@ -108,7 +108,14 @@ endif - +@@ -104,7 +104,14 @@ + endif + # AltiVec optims -ifeq ($(ARCH),PPC) +ifeq ($(ARCH),powerpc) |