svn commit: r335469 - in head/multimedia/dvbcut: . files

Stefan Esser se at FreeBSD.org
Mon Dec 2 08:29:57 UTC 2013


Author: se (src committer)
Date: Mon Dec  2 08:29:54 2013
New Revision: 335469
URL: http://svnweb.freebsd.org/changeset/ports/335469

Log:
  Fix build of dvbcut , which was broken by a recent ffmpeg upgrade.
  
  This port is no longer based on the Qt3 version of dvbcut plus a large
  patch to make it build on Qt4 with the Qt3 emulation layer. A fork that
  uses native Qt4 calls is used instead.
  
  The generated files moc_progressstatusbar.cpp and moc_progresswindow.cpp
  trigger an internal error in clang, if compiled with optimization. This
  bug has been accepted as 18098 in the llvm bug tracker. To work around
  this problem, the above mentioned two files are compiled with -O0 appended
  to the compiler flages. The post-configure target in the ports Makefile is
  to be removed, when a fixed version of clang is distributed in all FreeBSD
  releases supported by the ports infrastructure.

Added:
  head/multimedia/dvbcut/files/patch-lavfmuxer.cpp   (contents, props changed)
  head/multimedia/dvbcut/files/patch-src.pro   (contents, props changed)
Deleted:
  head/multimedia/dvbcut/files/patch-main.cpp
  head/multimedia/dvbcut/files/patch-src_playaudio.cpp
  head/multimedia/dvbcut/files/use-qt4.diff.bz2
Modified:
  head/multimedia/dvbcut/Makefile
  head/multimedia/dvbcut/distinfo
  head/multimedia/dvbcut/files/patch-avframe.cpp
  head/multimedia/dvbcut/files/patch-defines.h
  head/multimedia/dvbcut/files/patch-index.h
  head/multimedia/dvbcut/pkg-descr
  head/multimedia/dvbcut/pkg-plist

Modified: head/multimedia/dvbcut/Makefile
==============================================================================
--- head/multimedia/dvbcut/Makefile	Mon Dec  2 08:25:11 2013	(r335468)
+++ head/multimedia/dvbcut/Makefile	Mon Dec  2 08:29:54 2013	(r335469)
@@ -2,44 +2,50 @@
 # $FreeBSD$
 
 PORTNAME=	dvbcut
-PORTVERSION=	0.6.1
-PORTREVISION=	2
+PORTVERSION=	0.6.2.a1
 CATEGORIES=	multimedia
-MASTER_SITES=	http://www.mr511.de/dvbcut/
 
 MAINTAINER=	se at FreeBSD.org
 COMMENT=	Qt application for cutting of MPEG PS and MPEG TS streams (DVB)
 
 LICENSE=	GPLv2
 
-BUILD_DEPENDS=	mplayer:${PORTSDIR}/multimedia/mplayer
+BUILD_DEPENDS=	mplayer:${PORTSDIR}/multimedia/mplayer \
+		ffmpeg:${PORTSDIR}/multimedia/ffmpeg \
+		pkg-config:${PORTSDIR}/devel/pkgconf
 LIB_DEPENDS=	a52:${PORTSDIR}/audio/liba52 \
 		ao:${PORTSDIR}/audio/libao \
 		mad:${PORTSDIR}/audio/libmad \
 		avutil:${PORTSDIR}/multimedia/ffmpeg
-
 RUN_DEPENDS:=	${BUILD_DEPENDS}
 
-USE_GCC=	any
-USES=		cmake
-USE_QT4=	gui qt3support xml  moc_build qmake_build rcc_build uic_build
+USE_GITHUB=	yes
+GH_ACCOUNT=	nextghost
+GH_PROJECT=	dvbcut-qt4
+GH_TAGNAME=	${GH_COMMIT}
+GH_COMMIT=	81c31ed
+
+WRKSRC=		${WRKDIR}/${GH_ACCOUNT}-${GH_PROJECT}-${GH_COMMIT}
+
+USES=		qmake
+USE_QT4=	gui linguist  moc_build rcc_build uic_build
+INSTALLS_ICONS=	yes
+
 CXXFLAGS+=	-I${LOCALBASE}/include \
 		-I${LOCALBASE}/include/libavcodec \
 		-I${LOCALBASE}/include/libavformat \
 		-I${LOCALBASE}/include/libswscale
 
-BROKEN=		Does not compile due to FFMPEG update - will be fixed soon
-
-pre-patch:
-		cd ${WRKSRC} && ${BZCAT} ${FILESDIR}/use-qt4.diff.bz2 | ${PATCH} -p2
+post-configure:
+		${REINPLACE_CMD} -e '/CXX.*moc_progress/s/ -o / -O0 -o /' ${WRKSRC}/src/Makefile
 
 post-build:
-		$(SED) -e 's;@prefix@/dvbcut/share/icons;'${PREFIX}/share/icons/dvbcut';' \
+		${SED} -e 's;@prefix@;${PREFIX};' \
 			< ${WRKSRC}/dvbcut.desktop.in \
 			> ${WRKSRC}/dvbcut.desktop
 
 do-install:
-		${INSTALL_PROGRAM} ${WRKSRC}/src/dvbcut ${STAGEDIR}${PREFIX}/bin/
+		${INSTALL_PROGRAM} ${WRKSRC}/bin/dvbcut ${STAGEDIR}${PREFIX}/bin/
 		${INSTALL_MAN} ${WRKSRC}/dvbcut.1 ${STAGEDIR}${MANPREFIX}/man/man1/
 		${MKDIR} $(STAGEDIR)$(PREFIX)/share/applications
 	        $(INSTALL_DATA) ${WRKSRC}/dvbcut.desktop $(STAGEDIR)$(PREFIX)/share/applications/

Modified: head/multimedia/dvbcut/distinfo
==============================================================================
--- head/multimedia/dvbcut/distinfo	Mon Dec  2 08:25:11 2013	(r335468)
+++ head/multimedia/dvbcut/distinfo	Mon Dec  2 08:29:54 2013	(r335469)
@@ -1,2 +1,2 @@
-SHA256 (dvbcut-0.6.1.tar.gz) = 053941abfd4cf8cfe0c86c78a1c22c9a6bf218cd9ae5158f8ec9181d7996ab2c
-SIZE (dvbcut-0.6.1.tar.gz) = 1104382
+SHA256 (dvbcut-0.6.2.a1.tar.gz) = 7ad4b0cf0320a2e3411bd7dc4d83870851d0cf80a1fe0ec9f509921d63296a07
+SIZE (dvbcut-0.6.2.a1.tar.gz) = 1122349

Modified: head/multimedia/dvbcut/files/patch-avframe.cpp
==============================================================================
--- head/multimedia/dvbcut/files/patch-avframe.cpp	Mon Dec  2 08:25:11 2013	(r335468)
+++ head/multimedia/dvbcut/files/patch-avframe.cpp	Mon Dec  2 08:29:54 2013	(r335469)
@@ -1,10 +1,10 @@
---- src/avframe.cpp.orig	2011-04-22 23:51:29.000000000 +0200
-+++ src/avframe.cpp	2013-10-04 11:04:43.876355112 +0200
-@@ -18,6 +18,7 @@
- 
- /* $Id: avframe.cpp 141 2009-01-09 17:53:48Z too-tired $ */
- 
-+#include <sys/types.h>
- #include <qimage.h>
+--- src/avframe.cpp~	2013-06-16 11:57:51.000000000 +0200
++++ src/avframe.cpp	2013-11-29 22:27:30.884805249 +0100
+@@ -22,6 +22,7 @@
+ #include <QImage>
  #include <cstdlib>
  #include <cstdio>
++#include <types.h>
+ #include "avframe.h"
+ 
+ #ifdef HAVE_LIB_SWSCALE

Modified: head/multimedia/dvbcut/files/patch-defines.h
==============================================================================
--- head/multimedia/dvbcut/files/patch-defines.h	Mon Dec  2 08:25:11 2013	(r335468)
+++ head/multimedia/dvbcut/files/patch-defines.h	Mon Dec  2 08:29:54 2013	(r335469)
@@ -1,22 +1,14 @@
---- src/defines.h.orig	2007-09-30 23:31:46.000000000 +0900
-+++ src/defines.h	2009-03-27 01:33:10.000000000 +0900
-@@ -42,6 +42,12 @@
+--- src/defines.h~	2013-06-16 11:57:51.000000000 +0200
++++ src/defines.h	2013-11-29 22:35:26.867434652 +0100
+@@ -42,6 +42,11 @@
  #endif
    }
  
-+#if defined(__FreeBSD__)
-+#define mbo32(x) htobe32(x)
-+#define htom32(x) htobe32(x)
-+#define mbo16(x) htobe16(x)
-+#define htom16(x) htobe16(x)
-+#else
++#ifdef __FreeBSD__
++#define __bswap_32(x) __bswap32(x)
++#define __bswap_16(x) __bswap16(x)
++#endif
++
  #if __BYTE_ORDER == __LITTLE_ENDIAN
  #define mbo32(x) \
        ((((x) & 0xff000000) >> 24) | (((x) & 0x00ff0000) >>  8) | \
-@@ -55,5 +61,6 @@
- #define mbo16(x) (x)
- #define htom16(x) (x)
- #endif
-+#endif
- 
- #endif

Modified: head/multimedia/dvbcut/files/patch-index.h
==============================================================================
--- head/multimedia/dvbcut/files/patch-index.h	Mon Dec  2 08:25:11 2013	(r335468)
+++ head/multimedia/dvbcut/files/patch-index.h	Mon Dec  2 08:29:54 2013	(r335469)
@@ -1,14 +1,12 @@
---- src/index.h.orig	2008-10-11 20:13:37.000000000 +0900
-+++ src/index.h	2009-03-27 01:33:10.000000000 +0900
-@@ -22,7 +22,11 @@
+--- src/index.h~	2013-06-16 11:57:51.000000000 +0200
++++ src/index.h	2013-11-29 22:22:16.383291556 +0100
+@@ -22,7 +22,7 @@
  #define _DVBCUT_INDEX_H
  
  #include <stdint.h>
-+#if defined(__FreeBSD__)
-+#include <sys/endian.h>
-+#else
- #include <byteswap.h>
-+#endif
+-#include <byteswap.h>
++//#include <endian.h>
  #include <set>
  #include <vector>
  #include "types.h"
+ 

Added: head/multimedia/dvbcut/files/patch-lavfmuxer.cpp
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/multimedia/dvbcut/files/patch-lavfmuxer.cpp	Mon Dec  2 08:29:54 2013	(r335469)
@@ -0,0 +1,13 @@
+--- src/lavfmuxer.cpp~	2013-06-16 11:57:51.000000000 +0200
++++ src/lavfmuxer.cpp	2013-11-29 22:24:36.075415060 +0100
+@@ -40,6 +40,10 @@
+ 	#define CODEC_TYPE_AUDIO AVMEDIA_TYPE_AUDIO
+ #endif
+ 
++#ifndef AVCODEC_MAX_AUDIO_FRAME_SIZE
++#define AVCODEC_MAX_AUDIO_FRAME_SIZE 192000 // 1 second of 48khz 32bit audio
++#endif
++
+ lavfmuxer::lavfmuxer(const char *format, uint32_t audiostreammask, mpgfile &mpg, const char *filename)
+     : muxer(), avfc(0), fileopened(false)
+   {

Added: head/multimedia/dvbcut/files/patch-src.pro
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/multimedia/dvbcut/files/patch-src.pro	Mon Dec  2 08:29:54 2013	(r335469)
@@ -0,0 +1,12 @@
+--- src/src.pro.orig	2013-06-16 11:57:51.000000000 +0200
++++ src/src.pro	2013-12-01 14:55:10.313369943 +0100
+@@ -70,8 +70,8 @@
+ 
+ QMAKE_EXTRA_TARGETS += verinfo
+ 
+-qtPrepareTool(LRELEASE, lrelease)
++qtPrepareTool(LRELEASE, lrelease-qt4)
+ 
+ l10n.commands = $$LRELEASE ${QMAKE_FILE_IN} -qm ${QMAKE_FILE_OUT}
+ l10n.input = TRANSLATIONS
+ l10n.output = ${QMAKE_FILE_BASE}.qm

Modified: head/multimedia/dvbcut/pkg-descr
==============================================================================
--- head/multimedia/dvbcut/pkg-descr	Mon Dec  2 08:25:11 2013	(r335468)
+++ head/multimedia/dvbcut/pkg-descr	Mon Dec  2 08:29:54 2013	(r335469)
@@ -5,4 +5,4 @@ surgery" approach. Thus, the input video
 unchanged, only very few frames at the beginning and/or end of the selected
 range are recoded in order to obtain a valid MPEG file.
 
-WWW: http://dvbcut.sourceforge.net/
+WWW: http://github.com/nextghost/dvbcut-qt4

Modified: head/multimedia/dvbcut/pkg-plist
==============================================================================
--- head/multimedia/dvbcut/pkg-plist	Mon Dec  2 08:25:11 2013	(r335468)
+++ head/multimedia/dvbcut/pkg-plist	Mon Dec  2 08:29:54 2013	(r335469)
@@ -7,9 +7,7 @@ share/icons/dvbcut/dvbcut.svg
 share/icons/dvbcut/play.svgz
 share/icons/dvbcut/stop.png
 share/icons/dvbcut/play.png
-share/icons/dvbcut/icons.qrc.orig
 share/icons/dvbcut/bookmark.svgz
-share/icons/dvbcut/icons.qrc
 share/icons/dvbcut/chapter.png
 share/icons/dvbcut/stop.svgz
 man/man1/dvbcut.1.gz


More information about the svn-ports-head mailing list