Bug 74483 - torque-1.1.0-r5.ebuild (New Package)
|
Bug#:
74483
|
Product: Gentoo Linux
|
Version: unspecified
|
Platform: All
|
|
OS/Version: Linux
|
Status: RESOLVED
|
Severity: enhancement
|
Priority: P2
|
|
Resolution: FIXED
|
Assigned To: hp-cluster@gentoo.org
|
Reported By: duxxx001@yahoo.com
|
|
Component: Ebuilds
|
|
|
URL:
http://www.supercluster.org/torque/
|
|
Summary: torque-1.1.0-r5.ebuild (New Package)
|
|
Keywords: EBUILD
|
|
Status Whiteboard:
|
|
Opened: 2004-12-15 05:30 0000
|
Hi!
Please find attached torque-1.1.0-r5.ebuild
Torque is a freely downloadable and enhanced version of OpenPBS that can be easily coupled with mpiexec and maui-scheduler. It resides in sys-cluster/torque
Dusan
Created an attachment (id=46033) [details]
torque-1.1.0-r5.ebuild (New ebuild)
Attached ebuild introduces new version of torque and also introduces new
options in the ebuild, not handled in the previos version.
Now, ebuild properly installs all options, depending on "USE" (particularly
xpbs and xpbsmon when USE="X" specified).
version 1.1.0-r5 introduces new patches that improfe performance and
scalability of this queuing system.
(From update of attachment 46033 [details])
# Copyright 1999-2004 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License v2
S=${WORKDIR}/`echo ${A} | sed -e 's/\.tar\.gz//g'`
DESCRIPTION="Improved cluster resource manager and queuing system based on
OpenPBS"
HOMEPAGE="http://www.supercluster.org/torque/"
SRC_URI="http://supercluster.org/downloads/torque/torque-1.1.0p5.tar.gz"
LICENSE="openpbs"
SLOT="0"
KEYWORDS="x86 amd64"
IUSE="X tcltk debug"
DEPEND="virtual/libc
X? ( virtual/x11 )
tcltk? ( dev-lang/tk )"
RDEPEND="net-misc/openssh"
src_unpack() {
cd ${WORKDIR}
unpack ${A}
cd ${S}
# this thing doesn't use standard "make install", but rather it's own
install script
# fix it here so the install dirs are set to the ${D} directory
cd buildutils
mv pbs_mkdirs.in pbs_mkdirs.in-orig
sed -e "s|prefix=@prefix@|prefix=\${D}@prefix@| ; \
s|PBS_SERVER_HOME=@PBS_SERVER_HOME@|PBS_SERVER_HOME=\${D}@PBS_SERVER_HOME@| ; \
s|PBS_DEFAULT_FILE=@PBS_DEFAULT_FILE@|PBS_DEFAULT_FILE=\${D}@PBS_DEFAULT_FILE@|
; \
s|PBS_ENVIRON=@PBS_ENVIRON@|PBS_ENVIRON=\${D}@PBS_ENVIRON@|" \
pbs_mkdirs.in-orig > pbs_mkdirs.in
}
src_compile() {
local myconf
# set default parameters
myconf="--prefix=/usr"
myconf="${myconf} --mandir=/usr/share/man"
myconf="${myconf} --enable-docs"
myconf="${myconf} --enable-server"
myconf="${myconf} --enable-mom"
myconf="${myconf} --enable-clients"
myconf="${myconf} --enable-syslog"
myconf="${myconf} --set-server-home=/usr/spool/PBS"
myconf="${myconf} --set-environ=/etc/pbs_environment"
# check if GUI (xpbs & xpbsmon) will be installed
if use X && use tcltk
then
myconf="${myconf} --enable-gui"
else
myconf="${myconf} --disable-gui"
fi
# add additional options depending on USE variable
use tcltk && myconf="${myconf} --with-tcl --enable-tcl-qstat"
use debug && myconf="${myconf} --enable-debug"
# do the configuration
./configure ${myconf} || die "./configure failed"
# compile
emake || die "emake failed"
}
src_install() {
make prefix=${D}/usr \
mandir=${D}/usr/share/man \
PBS_SERVER_HOME=${D}/usr/spool/PBS \
install || die "make install failed"
dodoc INSTALL PBS_License.txt README.torque Release_Notes CHANGELOG
exeinto /etc/init.d ; newexe ${FILESDIR}/pbs.rc pbs
}
pkg_postinst() {
# Since we introduced changes in installation, gui version doesn't
# work properly, since "make install" puts bad paths in certain files
# This affects xpbs & xpbsmon functioning.
# only perform this if GUI was enabled during installation
if use X && use tcltk
then
# xpbs - remove wrong paths from related files
sed -e "s|${D}||g" /usr/bin/xpbs > /usr/bin/xpbs.new
mv /usr/bin/xpbs.new /usr/bin/xpbs
cd /usr/lib/xpbs && rm tclIndex && ./buildindex /usr/lib/xpbs
# xpbsmon - remove wrong paths from related files
sed -e "s|${D}||g" /usr/bin/xpbsmon > /usr/bin/xpbsmon.new
mv /usr/bin/xpbsmon.new /usr/bin/xpbsmon
cd /usr/lib/xpbsmon && rm tclIndex && ./buildindex /usr/lib/xpbsmon
# change permissions
chmod 755 /usr/bin/xpbs*
fi
# print some info on the screen
einfo
einfo
"####################################################################"
einfo " 1. configuring torque as server:"
einfo " - edit \"/usr/spool/PBS/server_name\" and put name of the"
einfo " PBS server (if local host is not the server)"
einfo " - edit \"/usr/spool/PBS/server_priv/nodes\" and put names
of"
einfo " the nodes"
einfo
einfo " 2. configuring torque as client (node):"
einfo " - edit \"/usr/spool/PBS/mom_priv/config\" and set
\"\$clienthost\""
einfo " variable"
einfo
einfo " 3. running torque:"
einfo " - use \"/etc/init.d/pbs\" script to start/stop"
einfo " (i.e. add it to default runlevel \"rc-update add pbs
default\")"
einfo
einfo "NOTE: for handling of MPI jobs, torque perform best with "
einfo " \"sys-cluster/mpich\" and \"sys-cluster/mpiexec\""
einfo " (instead of starting MPI jobs with mpirun, you use mpiexec)"
einfo
"####################################################################"
einfo "check documentation:
http://www.clusterresources.com/products/torque"
einfo
"####################################################################"
einfo
}
Created an attachment (id=46197) [details]
sys-cluster/torque-1.1.0-r5.ebuild (New Ebuild)
if installed for the first time, two folders are missing from the installation,
so ebuild now checks for the existance of those two folders, and creates them
if necessary.
ebuild checked on:
1) amd64, x86
2) new installation, re-installation, update from previos version
it works in all cases
Created an attachment (id=46200) [details]
sys-cluster/torque-1.1.0-r5.ebuild (New Ebuild)
When updating from previos version, if service is running, one of the missing
directories is not inserted.
This has now been fixed, so update is possible even when service is working.
Could you, please, add this ebuild to portage tree (sys-cluster/torque)
Added 1.2.0_p1, which should obsolete this. I also cleaned up the ebuild a bit.
Sorry about the delay.
This might be considered a problem, dunno...
If you're reinstalling torque (1.2.0_p1) over itself, and say, haven't configured it yet the first time, nearly all of the directories in /usr/spool/PBS (btw, why isn't it in /var/spool like everything else??) get wiped out at the end of the emerge process.. We need a number of '.keep' files to be generated on installation so this doesn't happen.