summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Pipping <sping@gentoo.org>2012-10-29 16:18:41 +0000
committerSebastian Pipping <sping@gentoo.org>2012-10-29 16:18:41 +0000
commitbc20cc8ce18813cf0800ae48e87ed06d0ab9eb6a (patch)
tree0f5d5a7e1325314f2024a7e0fdefb365d30f1f99 /media-gfx/drqueue
parentRemoved myself as co-maintainer. (diff)
downloadgentoo-2-bc20cc8ce18813cf0800ae48e87ed06d0ab9eb6a.tar.gz
gentoo-2-bc20cc8ce18813cf0800ae48e87ed06d0ab9eb6a.tar.bz2
gentoo-2-bc20cc8ce18813cf0800ae48e87ed06d0ab9eb6a.zip
media-gfx/drqueue: 0.64.4
(Portage version: 2.1.10.65/cvs/Linux x86_64)
Diffstat (limited to 'media-gfx/drqueue')
-rw-r--r--media-gfx/drqueue/ChangeLog8
-rw-r--r--media-gfx/drqueue/drqueue-0.64.4.ebuild156
-rw-r--r--media-gfx/drqueue/files/drqueue-0.64.4-fpic.patch11
-rw-r--r--media-gfx/drqueue/files/drqueue-0.64.4-git.patch17
4 files changed, 191 insertions, 1 deletions
diff --git a/media-gfx/drqueue/ChangeLog b/media-gfx/drqueue/ChangeLog
index 34448b648351..45ed998be250 100644
--- a/media-gfx/drqueue/ChangeLog
+++ b/media-gfx/drqueue/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for media-gfx/drqueue
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-gfx/drqueue/ChangeLog,v 1.6 2012/06/01 02:37:14 zmedico Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-gfx/drqueue/ChangeLog,v 1.7 2012/10/29 16:18:41 sping Exp $
+
+*drqueue-0.64.4 (29 Oct 2012)
+
+ 29 Oct 2012; Sebastian Pipping <sping@gentoo.org> +drqueue-0.64.4.ebuild,
+ +files/drqueue-0.64.4-fpic.patch, +files/drqueue-0.64.4-git.patch:
+ Bump to 0.64.4
01 Jun 2012; Zac Medico <zmedico@gentoo.org> drqueue-0.64.3-r1.ebuild,
drqueue-9999.ebuild:
diff --git a/media-gfx/drqueue/drqueue-0.64.4.ebuild b/media-gfx/drqueue/drqueue-0.64.4.ebuild
new file mode 100644
index 000000000000..bea50ef03566
--- /dev/null
+++ b/media-gfx/drqueue/drqueue-0.64.4.ebuild
@@ -0,0 +1,156 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-gfx/drqueue/drqueue-0.64.4.ebuild,v 1.1 2012/10/29 16:18:41 sping Exp $
+
+EAPI="3"
+PYTHON_DEPEND="python? 2"
+SUPPORT_PYTHON_ABIS="1"
+RESTRICT_PYTHON_ABIS="3.* *-jython"
+
+inherit eutils distutils user
+
+DESCRIPTION="Render farm managing software"
+HOMEPAGE="http://www.drqueue.org/"
+SRC_URI="http://drqueue.org/files/${PN}.${PV}.tgz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="X python ruby"
+
+RDEPEND="X? ( x11-libs/gtk+:2 )
+ ruby? ( dev-lang/ruby )
+ app-shells/tcsh"
+
+DEPEND="${RDEPEND}
+ python? ( dev-lang/swig )
+ ruby? ( dev-lang/swig )
+ python? ( dev-python/setuptools )
+ >=dev-util/scons-0.97"
+
+S=${WORKDIR}/DrQueue-${PV}
+
+pkg_setup() {
+ enewgroup drqueue
+ enewuser drqueue -1 /bin/bash /dev/null daemon,drqueue
+
+ use python && python_pkg_setup
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-fpic.patch
+ epatch "${FILESDIR}"/${P}-git.patch
+
+ # Workaround broken SWIG path
+ ln -s ../libdrqueue python/libdrqueue || die
+}
+
+src_compile() {
+ python --version
+
+ if use X; then
+ scons ${MAKEOPTS} build_drman=yes || die "scons failed"
+ else
+ scons ${MAKEOPTS} build_drqman=no || die "scons failed"
+ fi
+
+ if use python; then
+ einfo "compiling python bindings"
+ cd "${S}"/python/
+ distutils_src_compile
+ fi
+
+ if use ruby; then
+ einfo "compiling ruby bindings"
+ cd "${S}"/ruby/
+ ruby extconf.rb
+ emake || die "emake failed"
+ fi
+}
+
+pkg_preinst() {
+ # stop daemons since script is being updated
+ [ -n "$(pidof drqsd)" -a -x /etc/init.d/drqsd ] && \
+ /etc/init.d/drqsd stop
+ [ -n "$(pidof drqmd)" -a -x /etc/init.d/drqmd ] && \
+ /etc/init.d/drqmd stop
+}
+
+src_install() {
+ dodir /var/lib
+ scons PREFIX="${D}"/var/lib install || die "install failed"
+
+ # not really needed
+ rm -R "${D}"/var/lib/drqueue/bin/viewcmd || die "rm failed"
+
+ # install {conf,init,env}.d files
+ for i in drqmd drqsd ; do
+ newinitd "${FILESDIR}"/${PN}-0.64.3-etc-initd-${i} ${i} || die "newinitd failed"
+ newconfd "${FILESDIR}"/${PN}-0.64.3-etc-confd-${i} ${i} || die "newconfd failed"
+ done
+ newenvd "${FILESDIR}"/${PN}-0.64.3-etc-envd-02drqueue 02drqueue || die "newenvd failed"
+
+ # create the drqueue pid directory
+ dodir /var/run/drqueue
+ keepdir /var/run/drqueue
+
+ # move logs dir to /var/log
+ dodir /var/log
+ mv "${D}"/var/lib/drqueue/logs "${D}"/var/log/drqueue
+
+ # fix bins and make links for /usr/bin
+ dodir /usr/bin
+ local commands=( blockhost cjob jobfinfo \
+ jobinfo master requeue sendjob slave )
+ if use X ; then
+ commands=( ${commands[@]} drqman )
+ else
+ # Remove drqman leftovers
+ for i in etc/drqman.rc etc/drqman.conf bin/drqman ; do
+ rm -v "${D}"/var/lib/drqueue/$i || die "rm failed"
+ done
+ fi
+ for cmd in ${commands[@]} ; do
+ dosed 's|SHLIB=\$DRQUEUE_ROOT/bin/shlib|SHLIB=/var/lib/drqueue/bin/shlib|' \
+ /var/lib/drqueue/bin/${cmd} || die "dosed failed"
+ dosym /var/lib/drqueue/bin/${cmd} /usr/bin/ \
+ || die "dosym failed"
+ done
+
+ # install documentation
+ dodoc AUTHORS ChangeLog INSTALL \
+ NEWS README README.mentalray \
+ README.python setenv || die "dodoc failed"
+
+ if use python; then
+ cd "${S}"/python/
+ distutils_src_install
+ dodir /var/lib/${PN}/python
+
+ # Install DRKeewee web service and example python scripts
+ insinto /var/lib/${PN}/python
+ doins -r DrKeewee examples || die "doins failed"
+ python_convert_shebangs -r 2 "${ED}var/lib/${PN}/python"
+ fi
+
+ if use ruby; then
+ cd "${S}"/ruby/
+ emake DESTDIR="${D}" install || die "emake failed"
+ fi
+}
+
+pkg_postinst() {
+ einfo "Edit /etc/conf.d/drqsd /etc/env.d/02drqueue"
+ einfo "and /etc/conf.d/drqmd DRQUEUE_MASTER=\"hostname\""
+ einfo "to reflect your master's hostname."
+ if use python ; then
+ einfo
+ einfo "DrKeewee can be found in /var/lib/drqueue/python"
+
+ distutils_pkg_postinst
+ fi
+}
+
+pkg_postrm() {
+ use python && distutils_pkg_postrm
+}
diff --git a/media-gfx/drqueue/files/drqueue-0.64.4-fpic.patch b/media-gfx/drqueue/files/drqueue-0.64.4-fpic.patch
new file mode 100644
index 000000000000..217728f181a2
--- /dev/null
+++ b/media-gfx/drqueue/files/drqueue-0.64.4-fpic.patch
@@ -0,0 +1,11 @@
+--- DrQueue-0.64.4/SConstruct 2012-10-29 17:11:02.462831439 +0100
++++ DrQueue-0.64.4/SConstruct 2012-10-29 17:11:08.746752880 +0100
+@@ -141,7 +141,7 @@
+
+ print "Platform is: ",sys.platform
+ if sys.platform == "linux2":
+- env_lib.Append (CPPDEFINES = Split ('-D__LINUX'))
++ env_lib.Append (CPPDEFINES = Split ('-D__LINUX'),CFLAGS = Split ('-fPIC'))
+ elif sys.platform == "darwin":
+ env_lib.Append (CPPDEFINES = Split ('-D__OSX'))
+ if env_lib.get('universal_binary'):
diff --git a/media-gfx/drqueue/files/drqueue-0.64.4-git.patch b/media-gfx/drqueue/files/drqueue-0.64.4-git.patch
new file mode 100644
index 000000000000..3d87ceef6345
--- /dev/null
+++ b/media-gfx/drqueue/files/drqueue-0.64.4-git.patch
@@ -0,0 +1,17 @@
+--- DrQueue-0.64.4/SConstruct 2012-10-29 16:40:29.396747920 +0100
++++ DrQueue-0.64.4/SConstruct 2012-10-29 16:49:00.676356045 +0100
+@@ -79,8 +79,12 @@
+ print("Not a Git repository. Can't fetch commit id.")
+ commit_string = ""
+ else:
+- commit_string = gitlog.communicate()[0].split("\n")[0].split(" ")[1]
+- print("Current Git commit id is: "+commit_string)
++ output = gitlog.communicate()[0]
++ if output:
++ commit_string = output.split("\n")[0].split(" ")[1]
++ print("Current Git commit id is: "+commit_string)
++ else:
++ commit_string = ""
+ return commit_string
+
+ def write_git_rev(commit_id):