diff options
author | Greg Lehey <grog@FreeBSD.org> | 2007-04-15 09:33:30 +0000 |
---|---|---|
committer | Greg Lehey <grog@FreeBSD.org> | 2007-04-15 09:33:30 +0000 |
commit | 65effc873656f45202998919c204fa65cc323d89 (patch) | |
tree | de3f523dca6236c71c819ffdb77f19c64bfc9733 /multimedia | |
parent | b845a4f62ea72b27e10ea599179f3e00a7a461e8 (diff) |
Notes
Diffstat (limited to 'multimedia')
-rw-r--r-- | multimedia/mythtv/Makefile | 21 | ||||
-rw-r--r-- | multimedia/mythtv/distinfo | 6 | ||||
-rw-r--r-- | multimedia/mythtv/files/patch-configure | 32 | ||||
-rw-r--r-- | multimedia/mythtv/files/patch-httprequest.cpp | 33 | ||||
-rw-r--r-- | multimedia/mythtv/files/patch-libs-libmythtvfreemheg-Programs.cpp | 18 | ||||
-rw-r--r-- | multimedia/mythtv/pkg-descr | 22 | ||||
-rw-r--r-- | multimedia/mythtv/pkg-install | 37 |
7 files changed, 118 insertions, 51 deletions
diff --git a/multimedia/mythtv/Makefile b/multimedia/mythtv/Makefile index 0b1a25444e20..c8322ea58169 100644 --- a/multimedia/mythtv/Makefile +++ b/multimedia/mythtv/Makefile @@ -8,18 +8,18 @@ PORTNAME= mythtv PORTVERSION= 0.20 +PORTREVISION= 1 CATEGORIES= multimedia -MASTER_SITES= http://www.mythtv.org/mc/ -DISTNAME= ${PORTNAME}-${PORTVERSION} +MASTER_SITES= http://chuggalug.clues.com/mythtv/ +DISTNAME= mythtv-fixes-0.20-13053 MAINTAINER= grog@FreeBSD.org COMMENT= MythTV is a homebrew PVR project -BUILD_DEPENDS= qmake:${PORTSDIR}/devel/qmake \ - ${SITE_PERL}/${PERL_ARCH}/XML/Parser/Expat.pm:${PORTSDIR}/textproc/p5-XML-SAX-Expat LIB_DEPENDS= mp3lame.0:${PORTSDIR}/audio/lame \ freetype.9:${PORTSDIR}/print/freetype2 - +BUILD_DEPENDS= qmake:${PORTSDIR}/devel/qmake \ + ${SITE_PERL}/${PERL_ARCH}/XML/Parser/Expat.pm:${PORTSDIR}/textproc/p5-XML-SAX-Expat RUN_DEPENDS= tv_check:${PORTSDIR}/textproc/p5-xmltv \ ${X11BASE}/lib/plugins/sqldrivers/libqsqlmysql.so:${PORTSDIR}/databases/qt-mysql-plugin \ wget:${PORTSDIR}/ftp/wget @@ -34,8 +34,11 @@ CONFIGURE_ENV= QMAKESPEC="${QMAKESPEC}" \ MAKE_ENV= QTDIR="${QT_PREFIX}" QMAKESPEC="${QMAKESPEC}" USE_RC_SUBR= mythbackend -CONFIGURE_ARGS= --with-qt-dir=${LOCALBASE} -# CONFIGURE_TARGET= --build=${MACHINE_ARCH}-portbld-freebsd${OSREL} +CONFIG= --enable-xvmc --enable-opengl-vsync \ + --disable-xvmc-pro --disable-xvmc-vld --disable-xvmcw \ + --prefix=${PREFIX} --extra-cflags=-g --extra-cxxflags=-g + +CONFIGURE_ARGS= --with-qt-dir=${LOCALBASE} ${CONFIG} QMAKESPEC?= ${LOCALBASE}/share/qt/mkspecs/freebsd-g++ @@ -61,9 +64,7 @@ post-extract: ${ECHO_CMD} export QMAKESPEC=${QMAKESPEC} do-configure: - @cd ${WRKSRC} && QMAKESPEC=${QMAKESPEC} \ - ./configure --enable-memalign-hack --prefix=${PREFIX} \ - --extra-cflags=-g --extra-cxxflags=-g + @cd ${WRKSRC} && QMAKESPEC=${QMAKESPEC} ./configure ${CONFIG} @${ECHO_CMD} MAKE_ENV: ${MAKE_ENV} @cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} qmake \ -spec ${LOCALBASE}/share/qt/mkspecs/freebsd-g++ mythtv.pro diff --git a/multimedia/mythtv/distinfo b/multimedia/mythtv/distinfo index 010d6ec667d7..8df78cdff461 100644 --- a/multimedia/mythtv/distinfo +++ b/multimedia/mythtv/distinfo @@ -1,3 +1,3 @@ -MD5 (mythtv-0.20.tar.bz2) = 52bec1e0fadf7d24d6dcac3f773ddf74 -SHA256 (mythtv-0.20.tar.bz2) = 777ff60afa89426f0e52e49b0e7a7661ddb45b59d2ebbfdcbe07fd179e526ff3 -SIZE (mythtv-0.20.tar.bz2) = 12380677 +MD5 (mythtv-fixes-0.20-13053.tar.bz2) = 8beb8c54db79c40428f16d2c63a514b2 +SHA256 (mythtv-fixes-0.20-13053.tar.bz2) = 8f1d25cf3a8380501255465da942aba37be7b0418b2e6f24a69292f8e5d97f88 +SIZE (mythtv-fixes-0.20-13053.tar.bz2) = 12332802 diff --git a/multimedia/mythtv/files/patch-configure b/multimedia/mythtv/files/patch-configure index 479594a17bbf..7f299b12bfd1 100644 --- a/multimedia/mythtv/files/patch-configure +++ b/multimedia/mythtv/files/patch-configure @@ -1,6 +1,24 @@ ---- configure.orig Tue Aug 29 01:48:08 2006 -+++ configure Sun Nov 12 13:25:22 2006 -@@ -712,7 +712,7 @@ +--- configure.really-orig Fri Mar 16 18:11:46 2007 ++++ configure Thu Mar 29 16:18:29 2007 +@@ -463,6 +463,17 @@ + fi + fi + ++# BSD. ++if uname -s | grep BSD > 0; then ++ dmesg=/var/run/dmesg.boot ++ if test -f $dmesg ; then ++ processor=`grep ^CPU: $dmesg` ++# processor_flags is used only to determine whether the processor ++# supports MMX. The script expexts lower-case 'mmx'. Give it to it. ++ processor_flags=`grep '^ Features=' $dmesg | tr "[:upper:]" "[:lower:]"` ++ fi ++fi ++ + # These have to be looked up early for some types of cross-compiling to work + cpu_overide="no" + for opt do +@@ -712,14 +723,14 @@ ;; FreeBSD) joystick_menu="no" @@ -9,3 +27,11 @@ bktr="yes" audio_oss="yes" dv1394="no" + make="gmake" + backend="yes" + v4l="yes" +-CFLAGS="$CFLAGS -pthread" ++CFLAGS="$CFLAGS -pthread -I/usr/local/include" + CCONFIG="$CCONFIG freebsd" + ;; + GNU/kFreeBSD) diff --git a/multimedia/mythtv/files/patch-httprequest.cpp b/multimedia/mythtv/files/patch-httprequest.cpp index 48b2e90e4c32..1ec809934093 100644 --- a/multimedia/mythtv/files/patch-httprequest.cpp +++ b/multimedia/mythtv/files/patch-httprequest.cpp @@ -1,5 +1,5 @@ ---- libs/libmythupnp/httprequest.cpp~ Tue Nov 14 12:29:06 2006 -+++ libs/libmythupnp/httprequest.cpp Tue Nov 14 12:59:13 2006 +--- libs/libmythupnp/httprequest.cpp~ Fri Mar 16 08:25:39 2007 ++++ libs/libmythupnp/httprequest.cpp Fri Mar 16 08:40:32 2007 @@ -21,8 +21,12 @@ #ifdef CONFIG_DARWIN #include "darwin-sendfile.h" @@ -13,14 +13,13 @@ #include <sys/types.h> #include <sys/stat.h> #include <unistd.h> -@@ -281,7 +285,30 @@ - { +@@ -289,6 +293,24 @@ __off64_t offset = llStart; int file = open( sFileName.ascii(), O_RDONLY | O_LARGEFILE ); -- sendfile64( getSocketHandle(), file, &offset, llSize ); -+ int error; -+ + ssize_t sent = 0; +#ifdef __FreeBSD__ ++ ++ int error; + error = sendfile (file, + getSocketHandle (), + offset, @@ -28,20 +27,22 @@ + NULL, + NULL, + NULL ); -+#else -+ error = sendfile64( getSocketHandle(), file, &offset, llSize ); -+#endif -+ -+ /* -+ * Yes, this isn't needed for portability, but I can't stand the sight -+ * of a call not checked for error conditions. -+ */ + if (error) + fprintf (stderr, + "Can't transfer %s: %s (%d)\n", + sFileName.ascii(), + strerror (errno), + errno ); - ++ ++#else + + do + { +@@ -301,6 +319,7 @@ + llSize -= sent; + } + while (( sent >= 0 ) && ( llSize > 0 )); ++#endif + close( file ); } diff --git a/multimedia/mythtv/files/patch-libs-libmythtvfreemheg-Programs.cpp b/multimedia/mythtv/files/patch-libs-libmythtvfreemheg-Programs.cpp new file mode 100644 index 000000000000..ebc08d3a7ab4 --- /dev/null +++ b/multimedia/mythtv/files/patch-libs-libmythtvfreemheg-Programs.cpp @@ -0,0 +1,18 @@ +--- libs/libmythfreemheg/Programs.cpp~ Fri Mar 16 18:11:34 2007 ++++ libs/libmythfreemheg/Programs.cpp Sat Apr 7 11:41:11 2007 +@@ -30,7 +30,15 @@ + #include "freemheg.h" + + #include <sys/timeb.h> ++#ifdef __FreeBSD__ ++/* ++ * This file refers to the non-POSIX structure timezone, which is ++ * defined in sys/time.h. ++ */ ++#include <sys/time.h> ++#else + #include <time.h> ++#endif + + #include "../../config.h" + diff --git a/multimedia/mythtv/pkg-descr b/multimedia/mythtv/pkg-descr index f1aacd9403a4..14bee271ff9b 100644 --- a/multimedia/mythtv/pkg-descr +++ b/multimedia/mythtv/pkg-descr @@ -1,5 +1,21 @@ -MythTV is a Personal Video Recorder, supporting pausing and rewinding live TV, -multiple tuner cards, hardware or software video compression, onscreen program -guides and a distributed architecture. +MythTV is a "Personal Video Recorder", i.e. a computer-based video +recorder. It supports pausing and rewinding live TV, multiple tuner +cards, hardware or software video compression, onscreen program guides +and a distributed architecture. + +The current distributed version of MythTV +(http://www.mythtv.org/modules.php?name=Downloads&d_op=viewdownload&cid=1) +is out of date for just about all platforms. It is also protocol +incompatible with the "bug fix" version, which is maintained under +subversion, rather like the FreeBSD -STABLE branch. This port is a +snapshot of svn version 13053, dated 15 March 2007. Later versions of +this tree are no longer compatible with this port. + +MythTV requires tuner drivers which support the V4L standard. +Currently no official FreeBSD driver does so, but the latest version +of a beta version of the cxm driver is available from +http://usleepless.110mb.com/pvrxxx_port-10042007.tgz. Problems have +been reported with this port; if you use it, you should join the +FreeBSD-multimedia mailing list and report where appropriate. WWW: http://www.mythtv.org diff --git a/multimedia/mythtv/pkg-install b/multimedia/mythtv/pkg-install index 9c40840b4f4e..4b91ed45bd9a 100644 --- a/multimedia/mythtv/pkg-install +++ b/multimedia/mythtv/pkg-install @@ -2,26 +2,28 @@ # $FreeBSD$ PATH=/bin:/usr/sbin:/usr/bin:/usr/local/bin -USER=mythtv -GROUP=${USER} -UID=119 -GID=${UID} -HOME=/home/mythtv +case $2 in +POST-INSTALL) + USER=mythtv + GROUP=${USER} + UID=119 + GID=${UID} + HOME=/home/mythtv -if pw group show "${GROUP}" 2>/dev/null; then + if pw group show "${GROUP}" 2>/dev/null; then echo "You already have a group \"${GROUP}\", so I will use it." -else + else if pw groupadd ${GROUP} -g ${GID}; then echo "Added group \"${GROUP}\"." else echo "Adding group \"${GROUP}\" failed..." exit 1 fi -fi + fi -if pw user show "${USER}" 2>/dev/null; then + if pw user show "${USER}" 2>/dev/null; then echo "You already have a user \"${USER}\", so I will use it." -else + else if pw useradd ${USER} -u ${UID} -g ${GROUP} -h - \ -d ${HOME} -m -s /bin/sh -c "MythTV" then @@ -34,10 +36,10 @@ else echo "Adding user \"${USER}\" failed..." exit 1 fi -fi + fi # Now make the database -if [ -f /usr/local/etc/rc.d/mysql-server ]; then + if [ -f /usr/local/etc/rc.d/mysql-server ]; then pgrep mysqld > /dev/null if [ $? -ne 0 ]; then /usr/local/etc/rc.d/mysql-server start @@ -65,22 +67,25 @@ EOF else echo Created database mythconverg. fi -else + else cat <<EOF No MySQL server found. If you want to run the database on this machine, please install the latest MySQL server and then create the database with this command: -mysql < /usr/local/share/mythtv/database/mc.sql + mysql < /usr/local/share/mythtv/database/mc.sql EOF -fi + fi cat <<EOF To set up mythtv, first assign a password to user mythtv, then log in as mythtv and run -mythtv-setup + mythtv-setup EOF + ;; + +esac |