aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoravilla <avilla@FreeBSD.org>2010-02-26 09:05:03 +0800
committeravilla <avilla@FreeBSD.org>2010-02-26 09:05:03 +0800
commit7506c61b28562c2a08d97df440976949ded86223 (patch)
tree365fc281c2c10ee887542c590230e4908faeef8f
parentde20ee6f53e0369cef99fcf9e6b8a45c60a3c7f4 (diff)
downloadfreebsd-ports-gnome-7506c61b28562c2a08d97df440976949ded86223.tar.gz
freebsd-ports-gnome-7506c61b28562c2a08d97df440976949ded86223.tar.zst
freebsd-ports-gnome-7506c61b28562c2a08d97df440976949ded86223.zip
- Update to 0.5.0.
This is an enhancement release, confined mainly to the modules rather than the framework. In particular, this adds support for VDPAU, YADIF, and HD-SDI technologies! Approved by: tabthorpe (mentor) Feature safe: yes
-rw-r--r--multimedia/mlt/Makefile35
-rw-r--r--multimedia/mlt/distinfo6
-rw-r--r--multimedia/mlt/files/patch-src__modules__xine__Makefile16
-rw-r--r--multimedia/mlt/files/patch-src__modules__xine__yadif.c111
-rw-r--r--multimedia/mlt/pkg-plist13
5 files changed, 162 insertions, 19 deletions
diff --git a/multimedia/mlt/Makefile b/multimedia/mlt/Makefile
index df2dc572603f..725acedc620b 100644
--- a/multimedia/mlt/Makefile
+++ b/multimedia/mlt/Makefile
@@ -5,8 +5,7 @@
# $FreeBSD$
PORTNAME= mlt
-PORTVERSION= 0.4.10
-PORTREVISION= 3
+PORTVERSION= 0.5.0
CATEGORIES= multimedia
MASTER_SITES= SF
@@ -21,8 +20,7 @@ GNU_CONFIGURE= yes
CONFIGURE_ARGS= --disable-debug \
--enable-gpl
USE_GMAKE= yes
-# required by FreeBSD 6
-MAKE_ENV= LDFLAGS="-lc"
+MAKE_ENV= LDFLAGS="-lc" # required by FreeBSD 6
CFLAGS+= -I${LOCALBASE}/include
USE_LDCONFIG= ${PREFIX}/lib ${PREFIX}/lib/mlt
@@ -41,7 +39,8 @@ OPTIONS= AVFORMAT "Avformat module" on \
QIMAGE "Qimage module" on \
RESAMPLE "Secret Rabbit Code module" on \
SOX "Sound eXchange module" on \
- SSE "SSE support (requires MMX, caution on x86-64)" off \
+ SSE "SSE support (requires MMX)" off \
+ SSE2 "SSE2 support" off \
VORBIS "Vorbis module" on
.include <bsd.port.pre.mk>
@@ -144,6 +143,12 @@ CONFIGURE_ARGS+= --enable-sse
CONFIGURE_ARGS+= --disable-sse
.endif
+.ifdef(WITH_SSE2)
+CONFIGURE_ARGS+= --enable-sse2
+.else
+CONFIGURE_ARGS+= --disable-sse2
+.endif
+
.ifdef(WITH_VORBIS)
LIB_DEPENDS+= vorbis.4:${PORTSDIR}/audio/libvorbis
CONFIGURE_ARGS+= --enable-vorbis
@@ -154,20 +159,22 @@ PLIST_SUB+= VORBIS="@comment "
.endif
pre-configure:
- @${REINPLACE_CMD} -e 's|-pthread|${PTHREAD_LIBS}|g' \
+.if ${OSVERSION} < 700041
+ ${REINPLACE_CMD} -E -e 's|^(LDFLAGS.*)|\1 -lthr|' \
+ ${WRKSRC}/src/framework/Makefile \
+ ${WRKSRC}/src/modules/avformat/Makefile \
+ ${WRKSRC}/src/modules/core/Makefile \
+ ${WRKSRC}/src/modules/dv/Makefile \
+ ${WRKSRC}/src/modules/sdl/Makefile
+.endif
+ ${REINPLACE_CMD} -e 's|-pthread|${PTHREAD_LIBS}|g' \
${WRKSRC}/configure \
${WRKSRC}/src/swig/*/build
- @${REINPLACE_CMD} -e 's|-lpthread|${PTHREAD_LIBS}|g' \
+ ${REINPLACE_CMD} -e 's|-lpthread|${PTHREAD_LIBS}|g' \
${WRKSRC}/src/framework/Makefile \
${WRKSRC}/src/melt/Makefile \
${WRKSRC}/src/modules/*/Makefile
- @${REINPLACE_CMD} -E -e 's|^(LDFLAGS.*)|\1 -lthr|' \
- ${WRKSRC}/src/framework/Makefile \
- ${WRKSRC}/src/modules/avformat/Makefile \
- ${WRKSRC}/src/modules/core/Makefile \
- ${WRKSRC}/src/modules/dv/Makefile \
- ${WRKSRC}/src/modules/sdl/Makefile
- @${REINPLACE_CMD} -e 's|$$(libdir)/pkgconfig|${PREFIX}/libdata/pkgconfig|g' \
+ ${REINPLACE_CMD} -e 's|$$(libdir)/pkgconfig|${PREFIX}/libdata/pkgconfig|g' \
${WRKSRC}/Makefile
post-install:
diff --git a/multimedia/mlt/distinfo b/multimedia/mlt/distinfo
index 35adf3170323..0f037b6e2b60 100644
--- a/multimedia/mlt/distinfo
+++ b/multimedia/mlt/distinfo
@@ -1,3 +1,3 @@
-MD5 (mlt-0.4.10.tar.gz) = 7b0ba842277ea0a77e40a15917ab623f
-SHA256 (mlt-0.4.10.tar.gz) = 28eed979b8c412d0fdfb92ad9d23516b0419b7f996d5e5e0e30c47a75a948c5a
-SIZE (mlt-0.4.10.tar.gz) = 766911
+MD5 (mlt-0.5.0.tar.gz) = 5e904e02c879d64f1c6fe14c75be0479
+SHA256 (mlt-0.5.0.tar.gz) = 6741488a067a79f0149b3e4f9fc81706017b1d0db8415c0b1a9ae2264882c6bf
+SIZE (mlt-0.5.0.tar.gz) = 796572
diff --git a/multimedia/mlt/files/patch-src__modules__xine__Makefile b/multimedia/mlt/files/patch-src__modules__xine__Makefile
new file mode 100644
index 000000000000..adcdb470aede
--- /dev/null
+++ b/multimedia/mlt/files/patch-src__modules__xine__Makefile
@@ -0,0 +1,16 @@
+--- ./src/modules/xine/Makefile.orig 2010-02-16 07:40:46.000000000 +0100
++++ ./src/modules/xine/Makefile 2010-02-25 23:10:51.286144467 +0100
+@@ -1,4 +1,4 @@
+-CFLAGS += -I../../ -DARCH_X86
++CFLAGS += -I../../
+
+ LDFLAGS += -L../../framework -lmlt
+
+@@ -12,6 +12,7 @@
+ filter_deinterlace.o
+
+ ifdef MMX_FLAGS
++CFLAGS += -DARCH_X86
+ OBJS += cpu_accel.o
+ endif
+
diff --git a/multimedia/mlt/files/patch-src__modules__xine__yadif.c b/multimedia/mlt/files/patch-src__modules__xine__yadif.c
new file mode 100644
index 000000000000..335a4ada0594
--- /dev/null
+++ b/multimedia/mlt/files/patch-src__modules__xine__yadif.c
@@ -0,0 +1,111 @@
+--- ./src/modules/xine/yadif.c.orig 2010-02-16 07:40:46.000000000 +0100
++++ ./src/modules/xine/yadif.c 2010-02-25 23:10:51.289144010 +0100
+@@ -34,7 +34,8 @@
+
+ static void (*filter_line)(int mode, uint8_t *dst, const uint8_t *prev, const uint8_t *cur, const uint8_t *next, int w, int refs, int parity);
+
+-#ifdef __GNUC__
++#if defined(__GNUC__) && defined(USE_SSE)
++
+ #define LOAD4(mem,dst) \
+ "movd "mem", "#dst" \n\t"\
+ "punpcklbw %%mm7, "#dst" \n\t"
+@@ -264,6 +265,7 @@
+ #endif
+
+ // ================= SSE2 =================
++#ifdef USE_SSE2
+ #define PABS(tmp,dst) \
+ "pxor "#tmp", "#tmp" \n\t"\
+ "psubw "#dst", "#tmp" \n\t"\
+@@ -271,17 +273,19 @@
+
+ #define FILTER_LINE_FUNC_NAME filter_line_sse2
+ #include "vf_yadif_template.h"
++#endif
+
+ // ================ SSSE3 =================
++#ifdef USE_SSE3
+ #define PABS(tmp,dst) \
+ "pabsw "#dst", "#dst" \n\t"
+
+ #define FILTER_LINE_FUNC_NAME filter_line_ssse3
+ #include "vf_yadif_template.h"
+-
+ #endif
+
+-#endif
++#endif // GCC 4.2+
++#endif // GNUC, USE_SSE
+
+ static void filter_line_c(int mode, uint8_t *dst, const uint8_t *prev, const uint8_t *cur, const uint8_t *next, int w, int refs, int parity){
+ int x;
+@@ -356,15 +360,22 @@
+ filter_line = filter_line_c;
+ #ifdef __GNUC__
+ #if (__GNUC__ > 4 || __GNUC__ == 4 && __GNUC_MINOR__>1)
++#ifdef USE_SSE3
+ if (cpu & AVS_CPU_SSSE3)
+ filter_line = filter_line_ssse3;
+- else if (cpu & AVS_CPU_SSE2)
++ else
++#endif
++#ifdef USE_SSE2
++ if (cpu & AVS_CPU_SSE2)
+ filter_line = filter_line_sse2;
+ else
+ #endif
++#endif // GCC 4.2+
++#ifdef USE_SSE
+ if (cpu & AVS_CPU_INTEGER_SSE)
+ filter_line = filter_line_mmx2;
+ #endif
++#endif // GNUC
+ y=0;
+ if(((y ^ parity) & 1)){
+ memcpy(dst, cur0 + refs, w);// duplicate 1
+@@ -401,14 +412,13 @@
+ memcpy(dst + (h-1)*dst_stride, cur0 + (h-1)*refs, w); // copy original
+ }
+
+-#ifdef __GNUC__
++#if defined(__GNUC__) && defined(USE_SSE)
+ if (cpu >= AVS_CPU_INTEGER_SSE)
+ asm volatile("emms");
+ #endif
+ }
+
+-#ifdef __GNUC__
+-#ifndef PIC
++#if defined(__GNUC__) && defined(USE_SSE) && !defined(PIC)
+ static attribute_align_arg void YUY2ToPlanes_mmx(const unsigned char *srcYUY2, int pitch_yuy2, int width, int height,
+ unsigned char *py, int pitch_y,
+ unsigned char *pu, unsigned char *pv, int pitch_uv)
+@@ -486,8 +496,7 @@
+ }
+ asm ("sfence \n\t emms");
+ }
+-#endif
+-#endif
++#endif // GNUC, USE_SSE, !PIC
+
+ //----------------------------------------------------------------------------------------------
+
+@@ -498,7 +507,7 @@
+
+ int h,w;
+ int w0 = 0;
+-#if defined(__GNUC__) && !defined(PIC)
++#if defined(__GNUC__) && defined(USE_SSE) && !defined(PIC)
+ if (cpu & AVS_CPU_INTEGER_SSE) {
+ w0 = (nWidth/8)*8;
+ YUY2ToPlanes_mmx(pSrcYUY2, nSrcPitchYUY2, w0, nHeight, pSrcY, srcPitchY, pSrcU, pSrcV, srcPitchUV);
+@@ -529,7 +538,7 @@
+ {
+ int h,w;
+ int w0 = 0;
+-#if defined(__GNUC__) && !defined(PIC)
++#if defined(__GNUC__) && defined(USE_SSE) && !defined(PIC)
+ if (cpu & AVS_CPU_INTEGER_SSE) {
+ w0 = (nWidth/8)*8;
+ YUY2FromPlanes_mmx(pSrcYUY2, nSrcPitchYUY2, w0, nHeight, pSrcY, srcPitchY, pSrcU, pSrcV, srcPitchUV);
diff --git a/multimedia/mlt/pkg-plist b/multimedia/mlt/pkg-plist
index b8ab23341840..6ec70c2888f2 100644
--- a/multimedia/mlt/pkg-plist
+++ b/multimedia/mlt/pkg-plist
@@ -48,10 +48,10 @@ include/mlt/framework/mlt_tractor.h
include/mlt/framework/mlt_transition.h
include/mlt/framework/mlt_types.h
lib/libmlt++.so
-lib/libmlt++.so.0.4.10
+lib/libmlt++.so.0.5.0
lib/libmlt++.so.3
lib/libmlt.so
-lib/libmlt.so.0.4.10
+lib/libmlt.so.0.5.0
lib/libmlt.so.2
%%AVFORMAT%%lib/mlt/libmltavformat.so
lib/mlt/libmltcore.so
@@ -153,13 +153,21 @@ libdata/pkgconfig/mlt-framework.pc
%%DATADIR%%/oldfilm/tcolor.svg
%%DATADIR%%/oldfilm/vignette.svg
%%DATADIR%%/profiles/atsc_1080i_50
+%%DATADIR%%/profiles/atsc_1080i_5994
%%DATADIR%%/profiles/atsc_1080i_60
%%DATADIR%%/profiles/atsc_1080p_2398
%%DATADIR%%/profiles/atsc_1080p_24
%%DATADIR%%/profiles/atsc_1080p_25
%%DATADIR%%/profiles/atsc_1080p_2997
%%DATADIR%%/profiles/atsc_1080p_30
+%%DATADIR%%/profiles/atsc_720p_2398
+%%DATADIR%%/profiles/atsc_720p_24
+%%DATADIR%%/profiles/atsc_720p_25
+%%DATADIR%%/profiles/atsc_720p_2997
%%DATADIR%%/profiles/atsc_720p_30
+%%DATADIR%%/profiles/atsc_720p_50
+%%DATADIR%%/profiles/atsc_720p_5994
+%%DATADIR%%/profiles/atsc_720p_60
%%DATADIR%%/profiles/cif_15
%%DATADIR%%/profiles/cif_ntsc
%%DATADIR%%/profiles/cif_pal
@@ -185,6 +193,7 @@ libdata/pkgconfig/mlt-framework.pc
%%DATADIR%%/profiles/quarter_ntsc_wide
%%DATADIR%%/profiles/quarter_pal
%%DATADIR%%/profiles/quarter_pal_wide
+%%DATADIR%%/profiles/sdi_486i_5994
%%DATADIR%%/profiles/square_ntsc
%%DATADIR%%/profiles/square_ntsc_wide
%%DATADIR%%/profiles/square_pal