aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoravilla <avilla@FreeBSD.org>2016-12-21 22:27:01 +0800
committeravilla <avilla@FreeBSD.org>2016-12-21 22:27:01 +0800
commit5ec7aca036cfc9e12702fe6d3153be033d795bd9 (patch)
tree9060e1a5cd374a017f5550120ef395e525270d6f
parentda9ccfb2537592dcd16e64c1bbd9439aa5eea1da (diff)
downloadfreebsd-ports-gnome-5ec7aca036cfc9e12702fe6d3153be033d795bd9.tar.gz
freebsd-ports-gnome-5ec7aca036cfc9e12702fe6d3153be033d795bd9.tar.zst
freebsd-ports-gnome-5ec7aca036cfc9e12702fe6d3153be033d795bd9.zip
multimedia/mlt: update to 6.4.1
- Upstream some patches - Remove dependency on Qt 5 OpenGL (will be upstreamed) - Add dependency on math/fftw3 - Completely disable VDPAU option (broken upstream)
-rw-r--r--multimedia/mlt/Makefile24
-rw-r--r--multimedia/mlt/distinfo6
-rw-r--r--multimedia/mlt/files/patch-git_92bd4d229
-rw-r--r--multimedia/mlt/files/patch-git_d4feda934
-rw-r--r--multimedia/mlt/files/patch-git_d7a54ad_fc1e7fd72
-rw-r--r--multimedia/mlt/files/patch-src__modules__gtk2__producer_pango.c12
-rw-r--r--multimedia/mlt/files/patch-src__modules__qt__configure11
-rw-r--r--multimedia/mlt/files/patch-src__modules__vid.stab__Makefile14
-rw-r--r--multimedia/mlt/files/patch-src_modules_qt_configure36
-rw-r--r--multimedia/mlt/files/patch-src_modules_qt_consumer__qglsl.cpp20
-rw-r--r--multimedia/mlt/pkg-plist16
-rw-r--r--multimedia/py-mlt/Makefile3
12 files changed, 221 insertions, 56 deletions
diff --git a/multimedia/mlt/Makefile b/multimedia/mlt/Makefile
index de15015bea56..a9db75a4d973 100644
--- a/multimedia/mlt/Makefile
+++ b/multimedia/mlt/Makefile
@@ -1,8 +1,8 @@
# $FreeBSD$
PORTNAME= mlt
-PORTVERSION= 6.2.0
-PORTREVISION?= 3
+PORTVERSION= 6.4.1
+PORTREVISION?= 0
CATEGORIES?= multimedia
MASTER_SITES= SF/${PORTNAME}/${PORTNAME}
@@ -19,6 +19,8 @@ SLAVE_PORT?= no
# They both install bin/melt.
CONFLICTS_INSTALL= freeze-[0-9]*
+LIB_DEPENDS= libfftw3.so:math/fftw3
+
USE_GNOME= libxml2
USE_SDL= image
USE_XORG= x11
@@ -40,15 +42,16 @@ PORTDOCS= AUTHORS ChangeLog NEWS README docs
PORTEXAMPLES= demo
OPTIONS_DEFINE= DOCS EXAMPLES FFMPEG FREI0R GTK2 JACK KDE4 \
- SAMPLERATE SOX SWFDEC VDPAU VIDSTAB
+ SAMPLERATE SOX SWFDEC VIDSTAB # OPENCV VDPAU
OPTIONS_RADIO= QT
OPTIONS_RADIO_QT= QT4 QT5
OPTIONS_DEFAULT=FFMPEG FREI0R GTK2 QT4 SAMPLERATE SOX SWFDEC VIDSTAB
OPTIONS_SUB= yes
GTK2_DESC= Images and text rendering via GTK+ 2
-KDE4_DESC= Qt extra image formats support
-QT4_DESC= Kdenlive titles and images support via Qt 4
+KDE4_DESC= Qt 4 extra image formats support
+QT4_DESC= Images and Kdenlive titles support via Qt 4
+QT5_DESC= ${QT4_DESC:S/4/5/}
SOX_DESC= SoX audio effects support
VIDSTAB_DESC= Video stabilization support via Vid.Stab
@@ -75,8 +78,13 @@ KDE4_USES= kde:4
KDE4_USE= KDE=kdelibs
KDE4_IMPLIES= QT4
+# Prepare for OpenCV 3 port.
+CONFIGURE_ARGS+= --disable-opencv
+OPENCV_CONFIGURE_ENABLE=opencv
+
QT4_USE= QT4=corelib,gui,opengl,svg,xml
-QT5_USE= QT5=core,gui,opengl,svg,xml
+QT5_USE= QT5=core,gui,svg,widgets,xml
+QT5_PREVENTS= KDE4
SAMPLERATE_LIB_DEPENDS= libsamplerate.so:audio/libsamplerate
SAMPLERATE_CONFIGURE_ENABLE=resample
@@ -88,10 +96,10 @@ SWFDEC_LIB_DEPENDS= libswfdec-0.8.so:graphics/swfdec
SWFDEC_CONFIGURE_ENABLE=swfdec
SWFDEC_USE= GNOME=glib20,cairo
+# https://sourceforge.net/p/mlt/bugs/240/
+CONFIGURE_ARGS+= ${VDPAU_CONFIGURE_OFF}
VDPAU_CONFIGURE_ON= --avformat-vdpau
VDPAU_CONFIGURE_OFF= --avformat-no-vdpau
-# vdpau.c:239:21: error: no member named 'get_buffer' in 'struct AVCodecContext'
-VDPAU_BROKEN= https://sourceforge.net/p/mlt/bugs/240/
VIDSTAB_LIB_DEPENDS= libvidstab.so:multimedia/vid.stab
VIDSTAB_CONFIGURE_ENABLE=vid.stab
diff --git a/multimedia/mlt/distinfo b/multimedia/mlt/distinfo
index 41f8ac571137..988739d430a1 100644
--- a/multimedia/mlt/distinfo
+++ b/multimedia/mlt/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1465366021
-SHA256 (mlt-6.2.0.tar.gz) = 5acdc8760cc28b19e9dc291f66cbe3faa2bc5e8d53e2de3ef543eb5be0feb9f4
-SIZE (mlt-6.2.0.tar.gz) = 1314506
+TIMESTAMP = 1482224942
+SHA256 (mlt-6.4.1.tar.gz) = d3a992f3e67463e68630cb0b455d408a2a12f4da7a19e46807fa08a79f09b2b6
+SIZE (mlt-6.4.1.tar.gz) = 1344030
diff --git a/multimedia/mlt/files/patch-git_92bd4d2 b/multimedia/mlt/files/patch-git_92bd4d2
new file mode 100644
index 000000000000..ab0bb457ed20
--- /dev/null
+++ b/multimedia/mlt/files/patch-git_92bd4d2
@@ -0,0 +1,29 @@
+From 92bd4d2f83827c49b8d826d47b11c63f51e0c67e Mon Sep 17 00:00:00 2001
+From: Alberto Villa <avilla@FreeBSD.org>
+Date: Tue, 20 Dec 2016 15:15:52 +0100
+Subject: [PATCH] Use Vid.Stab CFLAGS even when building *.c files
+
+common.c build is failing as it requires a header from Vid.Stab.
+---
+ src/modules/vid.stab/Makefile | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/src/modules/vid.stab/Makefile b/src/modules/vid.stab/Makefile
+index 7f829f84..0a9e0063 100644
+--- ./src/modules/vid.stab/Makefile
++++ ./src/modules/vid.stab/Makefile
+@@ -12,8 +12,9 @@ OBJS = factory.o \
+ CPPOBJS = filter_deshake.o
+ CPPOBJS += filter_vidstab.o
+
+-CXXFLAGS += -Wno-deprecated $(CFLAGS)
+-CXXFLAGS += $(shell pkg-config --cflags vidstab)
++CFLAGS += -Wno-deprecated
++CFLAGS += $(shell pkg-config --cflags vidstab)
++CXXFLAGS += $(CFLAGS)
+
+ LDFLAGS += -L../../mlt++ -lmlt++
+ LDFLAGS += $(shell pkg-config --libs vidstab)
+--
+2.11.0
+
diff --git a/multimedia/mlt/files/patch-git_d4feda9 b/multimedia/mlt/files/patch-git_d4feda9
new file mode 100644
index 000000000000..42cc3b74b1d0
--- /dev/null
+++ b/multimedia/mlt/files/patch-git_d4feda9
@@ -0,0 +1,34 @@
+From d4feda920a9ea43ba5fcea4de9cb1e48cf08af90 Mon Sep 17 00:00:00 2001
+From: Alberto Villa <avilla@FreeBSD.org>
+Date: Tue, 20 Dec 2016 15:06:48 +0100
+Subject: [PATCH] Fix FreeType header inclusion
+
+As stated in freetype.h:
+
+ Please always use macros to include FreeType header files.
+ Example:
+ #include <ft2build.h>
+ #include FT_FREETYPE_H
+
+This also fixes the build on FreeBSD.
+---
+ src/modules/gtk2/producer_pango.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/src/modules/gtk2/producer_pango.c b/src/modules/gtk2/producer_pango.c
+index 7c5d8d2a..ef6f1a28 100644
+--- ./src/modules/gtk2/producer_pango.c
++++ ./src/modules/gtk2/producer_pango.c
+@@ -25,7 +25,8 @@
+ #include <string.h>
+ #include <gdk-pixbuf/gdk-pixbuf.h>
+ #include <pango/pangoft2.h>
+-#include <freetype.h>
++#include <ft2build.h>
++#include FT_FREETYPE_H
+ #include <iconv.h>
+ #include <pthread.h>
+ #include <ctype.h>
+--
+2.11.0
+
diff --git a/multimedia/mlt/files/patch-git_d7a54ad_fc1e7fd b/multimedia/mlt/files/patch-git_d7a54ad_fc1e7fd
new file mode 100644
index 000000000000..37517466fa36
--- /dev/null
+++ b/multimedia/mlt/files/patch-git_d7a54ad_fc1e7fd
@@ -0,0 +1,72 @@
+From d7a54ad53cd3bc1d50bf09a7cab682ed7aa0534b Mon Sep 17 00:00:00 2001
+From: Alberto Villa <avilla@FreeBSD.org>
+Date: Tue, 20 Dec 2016 14:33:42 +0100
+Subject: [PATCH 1/2] Ensure KDE 4 code is built when requested
+
+This fixes commit 6f8293d, which was incomplete.
+---
+ src/modules/qt/configure | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/modules/qt/configure b/src/modules/qt/configure
+index 1070bb19..57340182 100755
+--- ./src/modules/qt/configure
++++ ./src/modules/qt/configure
+@@ -195,9 +195,9 @@ else
+ if [ -d "$kde_includedir" ] && [ -d "$kde_libdir" ]
+ then
+ echo "- KDE version 4.x detected, will enable extra image formats"
+- echo "#define USE_KDE4" >> config.h
+ echo "USE_KDE4=1" >> config.mak
+ echo KDECXXFLAGS=-I$kde_includedir >> config.mak
++ echo KDECXXFLAGS += -DUSE_KDE4 >> config.mak
+ # the -L with kde4/devel is for Fedora
+ echo KDELIBS=-L$kde_libdir -L${kde_libdir}/kde4/devel -lkdecore >> config.mak
+ fi
+--
+2.11.0
+
+From fc1e7fd095ac8607aa970e65e1060073d025e782 Mon Sep 17 00:00:00 2001
+From: Alberto Villa <avilla@FreeBSD.org>
+Date: Tue, 20 Dec 2016 14:55:55 +0100
+Subject: [PATCH 2/2] Properly make KDE code depend on Qt 4
+
+qt4_found was removed in 51b5668. Checking for it always returns
+false, thus disabling KDE code in every build. Just copy the logic
+from above.
+---
+ src/modules/qt/configure | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/src/modules/qt/configure b/src/modules/qt/configure
+index 57340182..24803baf 100755
+--- ./src/modules/qt/configure
++++ ./src/modules/qt/configure
+@@ -148,6 +148,7 @@ else
+ if [ $? -eq 0 ]
+ then
+ echo "- Qt version 5.x detected"
++ without_kde=true
+ echo QTCXXFLAGS=$(pkg-config --cflags Qt5Core Qt5Gui Qt5Xml Qt5Svg Qt5Widgets) >> config.mak
+ echo QTLIBS=$(pkg-config --libs Qt5Core Qt5Gui Qt5Xml Qt5Svg Qt5Widgets) >> config.mak
+ pkg-config --exists 'Qt5OpenGL'
+@@ -169,6 +170,7 @@ else
+ else
+ echo "- Qt not found - disabling"
+ touch ../disable-qt
++ exit 0
+ fi
+ fi
+ fi
+@@ -181,7 +183,7 @@ else
+ if [ "$without_kde" = "" ]
+ then
+ kde4-config
+- if [ $? -eq 0 ] && [ "$qt4_found" != "" ]
++ if [ $? -eq 0 ]
+ then
+ # test if we have KDE4, required on some systems to get Qt extra formats (xcf, ...)
+ if [ "$kde_includedir" = "" ]
+--
+2.11.0
+
diff --git a/multimedia/mlt/files/patch-src__modules__gtk2__producer_pango.c b/multimedia/mlt/files/patch-src__modules__gtk2__producer_pango.c
deleted file mode 100644
index af7f3ce77d49..000000000000
--- a/multimedia/mlt/files/patch-src__modules__gtk2__producer_pango.c
+++ /dev/null
@@ -1,12 +0,0 @@
---- src/modules/gtk2/producer_pango.c.orig 2014-06-29 20:23:17 UTC
-+++ src/modules/gtk2/producer_pango.c
-@@ -25,7 +25,8 @@
- #include <string.h>
- #include <gdk-pixbuf/gdk-pixbuf.h>
- #include <pango/pangoft2.h>
--#include <freetype.h>
-+#include <ft2build.h>
-+#include FT_FREETYPE_H
- #include <iconv.h>
- #include <pthread.h>
- #include <ctype.h>
diff --git a/multimedia/mlt/files/patch-src__modules__qt__configure b/multimedia/mlt/files/patch-src__modules__qt__configure
deleted file mode 100644
index 0d309e070df0..000000000000
--- a/multimedia/mlt/files/patch-src__modules__qt__configure
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/modules/qt/configure.orig 2015-03-02 07:08:46 UTC
-+++ src/modules/qt/configure
-@@ -181,7 +181,7 @@ else
- if [ "$without_kde" = "" ]
- then
- kde4-config
-- if [ $? -eq 0 ] && [ "$qt4_found" != "" ]
-+ if [ $? -eq 0 ]
- then
- # test if we have KDE4, required on some systems to get Qt extra formats (xcf, ...)
- if [ "$kde_includedir" = "" ]
diff --git a/multimedia/mlt/files/patch-src__modules__vid.stab__Makefile b/multimedia/mlt/files/patch-src__modules__vid.stab__Makefile
deleted file mode 100644
index 3d2e2f029509..000000000000
--- a/multimedia/mlt/files/patch-src__modules__vid.stab__Makefile
+++ /dev/null
@@ -1,14 +0,0 @@
---- src/modules/vid.stab/Makefile.orig 2014-06-29 20:23:17 UTC
-+++ src/modules/vid.stab/Makefile
-@@ -12,8 +12,9 @@
- CPPOBJS = filter_deshake.o
- CPPOBJS += filter_vidstab.o
-
--CXXFLAGS += -Wno-deprecated $(CFLAGS)
--CXXFLAGS += $(shell pkg-config --cflags vidstab)
-+CFLAGS += -Wno-deprecated
-+CFLAGS += $(shell pkg-config --cflags vidstab)
-+CXXFLAGS = $(CFLAGS)
-
- LDFLAGS += -L../../mlt++ -lmlt++
- LDFLAGS += $(shell pkg-config --libs vidstab)
diff --git a/multimedia/mlt/files/patch-src_modules_qt_configure b/multimedia/mlt/files/patch-src_modules_qt_configure
new file mode 100644
index 000000000000..73605e576442
--- /dev/null
+++ b/multimedia/mlt/files/patch-src_modules_qt_configure
@@ -0,0 +1,36 @@
+ src/modules/qt/configure | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- src/modules/qt/configure.orig 2016-12-20 14:22:22 UTC
++++ src/modules/qt/configure
+@@ -107,14 +107,6 @@ else
+ then
+ echo QTCXXFLAGS=-I$qt_includedir -I$qt_includedir/QtCore -I$qt_includedir/QtGui -I$qt_includedir/QtXml -I$qt_includedir/QtSvg -I$qt_includedir/QtWidgets >> config.mak
+ echo QTLIBS=-Wl,-rpath-link,"$qt_libdir" -L"$qt_libdir" -lQt5Core -lQt5Gui -lQt5Xml -lQt5Svg -lQt5Widgets >> config.mak
+- if [ -f "$qt_libdir/libQt5OpenGL.so" ] || [ -f "$qt_libdir/libQt5OpenGL.a" ]
+- then
+- echo QTCXXFLAGS+=-I$qt_includedir/QtOpenGL >> config.mak
+- echo QTLIBS+=-lQt5OpenGL >> config.mak
+- else
+- echo "- Qt5OpenGL not found: disabling"
+- without_opengl=true
+- fi
+ # Qt5 on OS X
+ elif [ -d "$qt_libdir/QtWidgets.framework" ]
+ then
+@@ -151,15 +143,6 @@ else
+ without_kde=true
+ echo QTCXXFLAGS=$(pkg-config --cflags Qt5Core Qt5Gui Qt5Xml Qt5Svg Qt5Widgets) >> config.mak
+ echo QTLIBS=$(pkg-config --libs Qt5Core Qt5Gui Qt5Xml Qt5Svg Qt5Widgets) >> config.mak
+- pkg-config --exists 'Qt5OpenGL'
+- if [ $? -eq 0 ]
+- then
+- echo QTCXXFLAGS+=$(pkg-config --cflags Qt5OpenGL) >> config.mak
+- echo QTLIBS+=$(pkg-config --libs Qt5OpenGL) >> config.mak
+- else
+- echo "- Qt5OpenGL not found: disabling"
+- without_opengl=true
+- fi
+ else
+ pkg-config --exists 'QtGui >= 4'
+ if [ $? -eq 0 ]
diff --git a/multimedia/mlt/files/patch-src_modules_qt_consumer__qglsl.cpp b/multimedia/mlt/files/patch-src_modules_qt_consumer__qglsl.cpp
new file mode 100644
index 000000000000..49fbad325ca2
--- /dev/null
+++ b/multimedia/mlt/files/patch-src_modules_qt_consumer__qglsl.cpp
@@ -0,0 +1,20 @@
+--- src/modules/qt/consumer_qglsl.cpp.orig 2016-11-16 06:53:11 UTC
++++ src/modules/qt/consumer_qglsl.cpp
+@@ -20,13 +20,14 @@
+ #include "common.h"
+ #include <framework/mlt.h>
+ #include <QApplication>
+-#include <QGLWidget>
+-#include <QMutex>
+-#include <QWaitCondition>
+ #include <QtGlobal>
+
+ #if QT_VERSION < QT_VERSION_CHECK(5, 0, 0)
+
++#include <QGLWidget>
++#include <QMutex>
++#include <QWaitCondition>
++
+ class GLWidget : public QGLWidget
+ {
+ private:
diff --git a/multimedia/mlt/pkg-plist b/multimedia/mlt/pkg-plist
index b8062640ce8b..21ff9562a641 100644
--- a/multimedia/mlt/pkg-plist
+++ b/multimedia/mlt/pkg-plist
@@ -23,7 +23,7 @@ include/mlt++/MltService.h
include/mlt++/MltTokeniser.h
include/mlt++/MltTractor.h
include/mlt++/MltTransition.h
-include/mlt++/config.h
+include/mlt++/MltConfig.h
include/mlt/framework/mlt.h
include/mlt/framework/mlt_animation.h
include/mlt/framework/mlt_cache.h
@@ -46,6 +46,7 @@ include/mlt/framework/mlt_properties.h
include/mlt/framework/mlt_property.h
include/mlt/framework/mlt_repository.h
include/mlt/framework/mlt_service.h
+include/mlt/framework/mlt_slices.h
include/mlt/framework/mlt_tokeniser.h
include/mlt/framework/mlt_tractor.h
include/mlt/framework/mlt_transition.h
@@ -253,6 +254,7 @@ man/man1/melt.1.gz
%%DATADIR%%/presets/consumer/avformat/WMA
%%DATADIR%%/presets/consumer/avformat/WMV
%%DATADIR%%/presets/consumer/avformat/XDCAM-HD422
+%%DATADIR%%/presets/consumer/avformat/YouTube
%%DATADIR%%/presets/consumer/avformat/atsc_1080i_50/DNxHD
%%DATADIR%%/presets/consumer/avformat/atsc_1080i_5994/DNxHD
%%DATADIR%%/presets/consumer/avformat/atsc_1080p_2398/DNxHD
@@ -291,14 +293,14 @@ man/man1/melt.1.gz
%%DATADIR%%/presets/consumer/avformat/hdv_720_30p/HDV
%%DATADIR%%/presets/consumer/avformat/hdv_720_50p/HDV
%%DATADIR%%/presets/consumer/avformat/hdv_720_60p/HDV
+%%DATADIR%%/presets/consumer/avformat/intermediate/MJPEG
+%%DATADIR%%/presets/consumer/avformat/intermediate/MPEG-2
+%%DATADIR%%/presets/consumer/avformat/intermediate/MPEG-4
+%%DATADIR%%/presets/consumer/avformat/intermediate/ProRes
+%%DATADIR%%/presets/consumer/avformat/intermediate/ProRes-Kostya
%%DATADIR%%/presets/consumer/avformat/lossless/FFV1
%%DATADIR%%/presets/consumer/avformat/lossless/H.264
%%DATADIR%%/presets/consumer/avformat/lossless/HuffYUV
-%%DATADIR%%/presets/consumer/avformat/lossless/MJPEG
-%%DATADIR%%/presets/consumer/avformat/lossless/MPEG-2
-%%DATADIR%%/presets/consumer/avformat/lossless/MPEG-4
-%%DATADIR%%/presets/consumer/avformat/lossless/ProRes
-%%DATADIR%%/presets/consumer/avformat/lossless/ProRes-Kostya
%%DATADIR%%/presets/consumer/avformat/stills/BMP
%%DATADIR%%/presets/consumer/avformat/stills/DPX
%%DATADIR%%/presets/consumer/avformat/stills/JPEG
@@ -400,9 +402,11 @@ man/man1/melt.1.gz
%%QT%%%%DATADIR%%/qt/filter_audiospectrum.yml
%%QT%%%%DATADIR%%/qt/filter_audiowaveform.yml
%%QT%%%%DATADIR%%/qt/filter_lightshow.yml
+%%QT%%%%DATADIR%%/qt/filter_qtblend.yml
%%QT%%%%DATADIR%%/qt/producer_kdenlivetitle.yml
%%QT%%%%DATADIR%%/qt/producer_qimage.yml
%%QT%%%%DATADIR%%/qt/producer_qtext.yml
+%%QT%%%%DATADIR%%/qt/transition_qtblend.yml
%%QT%%%%DATADIR%%/qt/transition_vqm.yml
%%SAMPLERATE%%%%DATADIR%%/resample/filter_resample.yml
%%DATADIR%%/sdl/consumer_sdl.yml
diff --git a/multimedia/py-mlt/Makefile b/multimedia/py-mlt/Makefile
index a91249a265dd..b6005251a3d3 100644
--- a/multimedia/py-mlt/Makefile
+++ b/multimedia/py-mlt/Makefile
@@ -32,11 +32,10 @@ OPTIONS_DEFINE= EXAMPLES
post-patch:
@${REINPLACE_CMD} -e 's|-L../../mlt++|-L${LOCALBASE}/lib|' \
- -e 's|g++|${CXX} ${CXXFLAGS}|' \
${BUILD_WRKSRC}/build
do-build:
- @cd ${BUILD_WRKSRC} && ${SH} build
+ @cd ${BUILD_WRKSRC} && ${SETENV} ${MAKE_ENV} ${SH} build
do-install:
@${MKDIR} ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}