diff options
author | Jan Lübbe <jluebbe@debian.org> | 2008-07-22 15:50:44 +0000 |
---|---|---|
committer | Jan Lübbe <jluebbe@debian.org> | 2008-07-22 15:50:44 +0000 |
commit | d389748f6ba4325a878f7e3c017b1905409c8700 (patch) | |
tree | efffc49e08a9587a3f32994aed777b995afa5a05 /packages/mythtv | |
parent | 7d283cd8392336998ee9c7c980497b6f03ebca7a (diff) | |
parent | 721b1996622b7032acb6078f0a32d236901e6b3b (diff) |
merge of '832167cf1cc0ab655072532b7c546a8a25821e44'
and 'e4aab546c3b33577e2fb6bcfe199da5a98b4a9a3'
Diffstat (limited to 'packages/mythtv')
-rw-r--r-- | packages/mythtv/mythtv.inc | 10 | ||||
-rw-r--r-- | packages/mythtv/mythtv/.mtn2git_empty | 0 | ||||
-rw-r--r-- | packages/mythtv/mythtv/configure.patch | 131 | ||||
-rw-r--r-- | packages/mythtv/mythtv_0.21.bb | 68 | ||||
-rw-r--r-- | packages/mythtv/mythtv_svn.bb | 93 |
5 files changed, 296 insertions, 6 deletions
diff --git a/packages/mythtv/mythtv.inc b/packages/mythtv/mythtv.inc index 4ceda5d421..9b7a0a768e 100644 --- a/packages/mythtv/mythtv.inc +++ b/packages/mythtv/mythtv.inc @@ -2,15 +2,13 @@ DESCRIPTION = "A full featured personal video recorder system." HOMEPAGE = "http://www.mythtv.org" LICENSE = "GPL" SECTION = "x11/multimedia" -DEPENDS = "libxinerama lame libxv libxxf86vm libxvmc lirc qt-x11-free" -RDEPENDS_${PN} = "qt-x11-plugins-sqldrivers qt-x11-plugins-imageformats" +DEPENDS = "jack alsa-lib lame libxinerama libxv libxxf86vm libxvmc lirc" +#RDEPENDS_${PN} = "qt-x11-plugins-sqldrivers qt-x11-plugins-imageformats" SRC_URI = "http://www.mythtv.org/mc/mythtv-${PV}.tar.bz2" -inherit qmake qt3x11 +inherit qmake2 qt4x11 -# there is a -march=586 somewhere in the source tree -COMPATIBLE_HOST = 'i.86.*-linux' QMAKE_PROFILES = "mythtv.pro" @@ -22,7 +20,7 @@ def mythtv_arch(d): elif arch == "x86_64": arch = "x86" elif arch == "arm": - arch = "armv4l" + arch = "${BASE_PACKAGE_ARCH}" return arch MYTHTV_ARCH := "${@mythtv_arch(d)}" diff --git a/packages/mythtv/mythtv/.mtn2git_empty b/packages/mythtv/mythtv/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/mythtv/mythtv/.mtn2git_empty diff --git a/packages/mythtv/mythtv/configure.patch b/packages/mythtv/mythtv/configure.patch new file mode 100644 index 0000000000..16f5076880 --- /dev/null +++ b/packages/mythtv/mythtv/configure.patch @@ -0,0 +1,131 @@ +--- /tmp/configure 2008-07-22 10:27:56.000000000 +0200 ++++ mythtv/configure 2008-07-22 12:50:43.000000000 +0200 +@@ -476,12 +476,13 @@ + } + + check_cmd(){ +- log "$@" ++ echo "Checking $@" ++ log "$@" + "$@" >>$logfile 2>&1 + } + + check_cc(){ +- log check_cc "$@" ++ log check_cc "$@" + cat >$TMPC + log_file $TMPC + check_cmd $cc $CFLAGS $ECFLAGS $OPTFLAGS "$@" -c -o $TMPO $TMPC +@@ -1117,11 +1118,11 @@ + fi + + # machine +-arch=`uname -m` ++disabled cross_compile && arch=`uname -m` + arch_raw="$arch" + cpu="generic" + cpu_override="no" +-processor=`uname -p 2>/dev/null` ++disabled cross_compile && processor=`uname -p 2>/dev/null` + processor_flags="" + tune="generic" + +@@ -1214,7 +1215,7 @@ + # build settings + SHFLAGS='-shared -Wl,-soname,$@' + VHOOKSHFLAGS='$(SHFLAGS)' +-LDLATEFLAGS='-Wl,-rpath-link,\$(BUILD_ROOT)/libavcodec -Wl,-rpath-link,\$(BUILD_ROOT)/libavformat -Wl,-rpath-link,\$(BUILD_ROOT)/libavutil' ++#LDLATEFLAGS='-Wl,-rpath-link,\$(BUILD_ROOT)/libavcodec -Wl,-rpath-link,\$(BUILD_ROOT)/libavformat -Wl,-rpath-link,\$(BUILD_ROOT)/libavutil' + FFSERVERLDFLAGS=-Wl,-E + LDCONFIG="ldconfig" + LIBPREF="lib" +@@ -1714,7 +1715,7 @@ + + has_library() + { +- if test -f /etc/ld.so.conf ; then ++ if test -f /etc/ld.so.conf && disabled cross_compile ; then + LIBPATHS=`cat /etc/ld.so.conf | grep -v "#" | grep -v "include"` + else + LIBPATHS='' +@@ -1725,7 +1726,7 @@ + LIBPATHS="$LIBPATHS `echo $DYLD_LIBRARY_PATH | sed s/':'/' '/g` " + + # recurse down just one level, should be enough in most cases +- if test -f /etc/ld.so.conf ; then ++ if test -f /etc/ld.so.conf && disabled cross_compile ; then + INCL=`cat /etc/ld.so.conf | grep -v "#" | grep "^include"` + SRCH=`echo "$INCL" | sed '{ s/^include \//\//; s/^include /\/etc\//}'` + for x in $SRCH ; do +@@ -1734,29 +1735,31 @@ + done + fi + +- LIBPATHS="`echo $LIBPATHS /$libdir_name /usr/$libdir_name /usr/local/$libdir_name /usr/X11R6/$libdir_name | sed s/'\/ '/' '/g` " ++ enabled cross_compile || LIBPATHS="`echo $LIBPATHS /$libdir_name /usr/$libdir_name /usr/local/$libdir_name /usr/X11R6/$libdir_name | sed s/'\/ '/' '/g` " + +- HAS_IT="no" ++ HAS_IT="yes" + for LIBPATH in $LIBPATHS ; do + if test x`ls $LIBPATH/$1* 2> /dev/null | head -n 1` != x"" ; then + HAS_IT="yes" + fi + done ++ echo "$1: $HAS_IT" + expr $HAS_IT : "yes" > /dev/null + } + + has_header() + { +- HPATHS="/usr/local/include /usr/include /usr/include/g++-v3 /usr/X11R6/include" ++ enabled cross_compile || HPATHS="/usr/local/include /usr/include /usr/include/g++-v3 /usr/X11R6/include" + INCL=`echo $DYLD_LIBRARY_PATH $LD_LIBRARY_PATH | sed s/':'/' '/g` + HPATHS="$HPATHS "$(echo $INCL | sed "s/$libdir_name/include/g") + +- HAS_IT="no" ++ HAS_IT="yes" + for HPATH in $HPATHS ; do + if test x`ls $HPATH/$1* 2> /dev/null | head -n 1` != x"" ; then + HAS_IT="yes" + fi + done ++ echo "$1: $HAS_IT" + expr $HAS_IT : "yes" > /dev/null + } + +@@ -1863,13 +1866,15 @@ + if test x"$cmov" = x"default"; then + disable cmov + if enabled cpu_override; then +- is_x86_cmov_cpu "$cpu" && enable cmov ++ disabled cross_compile && is_x86_cmov_cpu "$cpu" && enable cmov + disabled cmov || is_x86_slow_cmov_cpu "$cpu" || enable fast_cmov + elif expr "$processor_flags" : ".*cmov" > /dev/null ; then +- enable cmov ++ disabled cross_compile && enable cmov + fi + fi + ++enabled cross_compile && disable cmov ++ + # use different default ARCHFLAGS for CPU missing cmov (Via C3 ...) + if test x"$arch" = x"x86_32" && disabled cmov && disabled cpu_override; then + ARCHFLAGS="-march=i586" +@@ -2254,7 +2259,7 @@ + EOF + + if $cc $CFLAGS $ECFLAGS -o $TMPE $TMPC 2>/dev/null ; then +-$TMPE && cpuclipspositive="yes" ++enabled cross_compile || $TMPE && cpuclipspositive="yes" + fi + + # test negative wrap +@@ -2269,7 +2274,7 @@ + EOF + + if $cc $CFLAGS $ECFLAGS -o $TMPE $TMPC 2>/dev/null ; then +-$TMPE && cpuclipsnegative="yes" ++enabled cross_compile || $TMPE && cpuclipsnegative="yes" + fi + + # test for distcc diff --git a/packages/mythtv/mythtv_0.21.bb b/packages/mythtv/mythtv_0.21.bb new file mode 100644 index 0000000000..a33c446813 --- /dev/null +++ b/packages/mythtv/mythtv_0.21.bb @@ -0,0 +1,68 @@ +require mythtv.inc + +PR = "r0" + +#SRC_URI += "file://configure.patch;patch=1 \ +# file://libmyth-libdir.patch;patch=1" + +# Seen on the mythtv web page: +# http://www.mythtv.org/mc/fix-mythweb-in-0.20.diff;patch=1 + +QMAKE_PROFILES = "mythtv.pro" + +mythlibs = "mythavutil mythavcodec mythavformat myth mythtv mythui mythfreemheg mythupnp mythlivemedia" +PACKAGES =+ "mythtv-backend mythtv-frontend mythtv-bin mythtv-filters mythtv-data" + +FILES_mythtv-backend = "${bindir}/mythbackend ${bindir}/mythcommflag ${bindir}/mythfilldatabase ${bindir}/mythtranscode" +FILES_mythtv-frontend = "${bindir}/mythfrontend ${datadir}/mythtv/i18n/mythfrontend_* ${datadir}/mythtv/*.ttf" +RDEPENDS_mythtv-frontend = "qt-x11-plugins-sqldrivers qt-x11-plugins-imageformats" +FILES_mythtv-bin = "${bindir}" +FILES_mythtv-filters = "${libdir}/mythtv/filters" +FILES_mythtv-data = "${datadir}" +RDEPENDS_${PN} = "mythtv-backend mythtv-frontend mythtv-bin mythtv-filters mythtv-data" +ALLOW_EMPTY_${PN} = "1" + +PACKAGES_DYNAMIC = "mythtv-theme-*" + +python __anonymous () { + import bb + + mythlibs = bb.data.getVar('mythlibs', d).split() + pv = bb.data.expand(bb.data.getVar("PV", d), d) + + for m in mythlibs: + bb.data.setVar("FILES_lib%s%s" % (m, pv), "${libdir}/lib%s-%s.so.*" % (m, pv), d) + bb.data.setVar("FILES_lib%s%s-dev" % (m, pv), "${libdir}/lib%s-%s.*" % (m, pv), d) + + packages = " ".join(map(lambda x: "lib%s%s lib%s%s-dev" % (x, pv, x, pv), mythlibs) + bb.data.getVar("PACKAGES", d).split()) + + bb.data.setVar("PACKAGES", packages, d) +} +do_configure_prepend() { +# it's not autotools anyway, so we call ./configure directly + find . -name "Makefile"|xargs rm -f + ./configure --prefix=/usr \ + --mandir=/usr/man \ + --cpu=${MYTHTV_ARCH} \ + --disable-altivec \ + --enable-v4l \ + --enable-audio-oss \ + --enable-proc-opt \ + --enable-dvb \ + --cross-compile \ + --dvb-path=${STAGING_INCDIR} + + sed 's!PREFIX =.*!PREFIX = ${prefix}!;/INCLUDEPATH += $${PREFIX}\/include/d' < settings.pro > settings.pro.new + mv settings.pro.new settings.pro +} + +python populate_packages_prepend () { + new_packages = [] + + def the_hook(file, pkg, pattern, format, basename): + new_packages.append(pkg) + + do_split_packages(d, root=bb.data.expand('${datadir}/mythtv/themes', d), file_regex='(.*)', output_pattern='mythtv-theme-%s', description='MythTV theme %s', allow_dirs=True, hook=the_hook, prepend=True) + + bb.data.setVar("RDEPENDS_${PN}", "%s %s" % (bb.data.getVar("RDEPENDS_${PN}", d), " ".join(new_packages)), d) +} diff --git a/packages/mythtv/mythtv_svn.bb b/packages/mythtv/mythtv_svn.bb new file mode 100644 index 0000000000..24a8b3d220 --- /dev/null +++ b/packages/mythtv/mythtv_svn.bb @@ -0,0 +1,93 @@ +require mythtv.inc + +DEFAULT_PREFERENCE = "-1" + +PV = "0.21+svnr${SRCREV}" +PR = "r0" + +SRCREV = "17880" +SRC_URI = "svn://svn.mythtv.org/svn/trunk;module=mythtv;proto=http" + +SRC_URI += "file://configure.patch;patch=1 \ + " + +S = "${WORKDIR}/mythtv" + +QMAKE_PROFILES = "mythtv.pro" + +mythlibs = "mythavutil mythavcodec mythavformat myth mythtv mythui mythfreemheg mythupnp mythlivemedia" +PACKAGES =+ "mythtv-backend mythtv-frontend mythtv-bin mythtv-filters mythtv-data" + +FILES_mythtv-backend = "${bindir}/mythbackend ${bindir}/mythcommflag ${bindir}/mythfilldatabase ${bindir}/mythtranscode" +FILES_mythtv-frontend = "${bindir}/mythfrontend ${datadir}/mythtv/i18n/mythfrontend_* ${datadir}/mythtv/*.ttf" +RDEPENDS_mythtv-frontend = "qt-x11-plugins-sqldrivers qt-x11-plugins-imageformats" +FILES_mythtv-bin = "${bindir}" +FILES_mythtv-filters = "${libdir}/mythtv/filters" +FILES_mythtv-data = "${datadir}" +RDEPENDS_${PN} = "mythtv-backend mythtv-frontend mythtv-bin mythtv-filters mythtv-data" +ALLOW_EMPTY_${PN} = "1" + +PACKAGES_DYNAMIC = "mythtv-theme-*" + +python __anonymous () { + import bb + + mythlibs = bb.data.getVar('mythlibs', d).split() + pv = bb.data.expand(bb.data.getVar("PV", d), d) + + for m in mythlibs: + bb.data.setVar("FILES_lib%s%s" % (m, pv), "${libdir}/lib%s-%s.so.*" % (m, pv), d) + bb.data.setVar("FILES_lib%s%s-dev" % (m, pv), "${libdir}/lib%s-%s.*" % (m, pv), d) + + packages = " ".join(map(lambda x: "lib%s%s lib%s%s-dev" % (x, pv, x, pv), mythlibs) + bb.data.getVar("PACKAGES", d).split()) + + bb.data.setVar("PACKAGES", packages, d) +} + +EXTRA_OECONF_armv5te = " --enable-armv5te " +EXTRA_OECONF_armv6 = " --enable-armv6 " +EXTRA_OECONF_armv7a = --enable-armv6" + +#build with support for the iwmmxt instruction and pxa270fb overlay support (pxa270 and up) +#not every iwmmxt machine has the lcd connected to pxafb, but building the module doesn't hurt +MY_ARCH := "${PACKAGE_ARCH}" +PACKAGE_ARCH = "${@base_contains('MACHINE_FEATURES', 'iwmmxt', 'iwmmxt', '${MY_ARCH}',d)}" + +MY_TARGET_CC_ARCH := "${TARGET_CC_ARCH}" +TARGET_CC_ARCH = "${@base_contains('MACHINE_FEATURES', 'iwmmxt', '-march=iwmmxt -mtune=iwmmxt', '${MY_TARGET_CC_ARCH}',d)}" + +EXTRA_OECONF_append = " ${@base_contains('MACHINE_FEATURES', 'iwmmxt', '--enable-pxa --enable-iwmmxt', '',d)} " + + +do_configure_prepend() { +# it's not autotools anyway, so we call ./configure directly + find . -name "Makefile"|xargs rm -f + ./configure --prefix=/usr \ + --mandir=/usr/man \ + --cpu=${MYTHTV_ARCH} \ + --arch=${MYTHTV_ARCH} \ + --disable-altivec \ + --disable-strip \ + --enable-v4l \ + --enable-audio-oss \ + --enable-proc-opt \ + --enable-dvb \ + --enable-libmp3lame \ + --cross-compile \ + --dvb-path=${STAGING_INCDIR} \ + ${EXTRA_OECONF} + + sed 's!PREFIX =.*!PREFIX = ${prefix}!;/INCLUDEPATH += $${PREFIX}\/include/d' < settings.pro > settings.pro.new + mv settings.pro.new settings.pro +} + +python populate_packages_prepend () { + new_packages = [] + + def the_hook(file, pkg, pattern, format, basename): + new_packages.append(pkg) + + do_split_packages(d, root=bb.data.expand('${datadir}/mythtv/themes', d), file_regex='(.*)', output_pattern='mythtv-theme-%s', description='MythTV theme %s', allow_dirs=True, hook=the_hook, prepend=True) + + bb.data.setVar("RDEPENDS_${PN}", "%s %s" % (bb.data.getVar("RDEPENDS_${PN}", d), " ".join(new_packages)), d) +} |