2004-02-01 07:40:53 +01:00
# Ports collection makefile for: sge
# Date created: Fri Jul 11, 2003
# Whom: Brooks Davis <brooks@FreeBSD.org>
#
# $FreeBSD$
#
PORTNAME = sge
2005-09-10 01:13:26 +02:00
PORTVERSION = ${ SGE_VERSION }
2009-01-03 00:57:58 +01:00
PORTREVISION = 1
2004-02-01 07:40:53 +01:00
CATEGORIES = sysutils parallel
2008-12-23 00:53:15 +01:00
MASTER_SITES = http://gridengine.sunsource.net/files/documents/7/190/:src \
2008-12-15 21:45:44 +01:00
${ MASTER_SITE_LOCAL } :src
2005-10-07 20:11:04 +02:00
MASTER_SITE_SUBDIR = brooks
2008-02-13 16:39:06 +01:00
DISTNAME = ge-V${ SGE_RELEASE : S /.// } _TAG-src
2008-12-15 21:45:44 +01:00
DISTFILES = ${ DISTNAME } .tar.gz:src
2008-02-13 16:39:06 +01:00
EXTRACT_ONLY = ${ DISTNAME } .tar.gz
2004-02-01 07:40:53 +01:00
MAINTAINER = brooks@FreeBSD.org
2005-07-29 04:13:32 +02:00
COMMENT = Sun Grid Engine, a batch queueing system
2007-01-09 09:26:10 +01:00
OPTIONS = BDB "Use DB based spooler" on \
2008-04-14 21:10:08 +02:00
X11 "Qmon X11 GUI" on \
QSH "Enable qsh (requires xterm on exec hosts)" on
2005-07-29 04:13:32 +02:00
2008-12-15 21:45:44 +01:00
LATEST_LINK = sge62
2008-06-11 18:51:05 +02:00
CONFLICTS = sge-6.[ 013-9] * sge-5* sgeee-[ 0-9] * sge-0.*
2006-04-14 07:38:33 +02:00
2005-07-29 04:13:32 +02:00
NOT_FOR_ARCHS = alpha
2004-02-01 07:40:53 +01:00
2004-02-25 20:35:41 +01:00
USE_GETTEXT = yes
2004-02-01 07:40:53 +01:00
USE_GMAKE = yes
2004-02-25 20:35:41 +01:00
USE_OPENSSL = yes
2007-02-15 23:30:10 +01:00
USE_LDCONFIG = ${ SGE_ROOT } /lib/${ SGE_ARCH }
2006-01-11 03:33:30 +01:00
2004-02-01 07:40:53 +01:00
SGE_BASE ?= sge
2007-08-04 13:41:30 +02:00
SGE_ROOT = ${ PREFIX } /${ SGE_BASE }
2004-02-01 07:40:53 +01:00
SGE_ARCH = fbsd-${ ARCH }
2007-02-15 23:30:10 +01:00
SGE_BUILD_ARCH = FREEBSD_${ ARCH : U }
2008-12-23 00:53:15 +01:00
SGE_RELEASE = 6.2u1
2008-06-11 18:51:05 +02:00
SGE_VERSION = ${ SGE_RELEASE : S /u/./ : S /beta/.b/ }
2004-02-01 07:40:53 +01:00
PLIST_SUB += SGE_ARCH = ${ SGE_ARCH }
PLIST_SUB += SGE_BASE = ${ SGE_BASE }
2005-07-29 04:13:32 +02:00
SUB_FILES = pkg-message pkg-install
SUB_LIST += SGE_BASE = ${ SGE_BASE }
USE_RC_SUBR = sge.sh
2004-02-01 07:40:53 +01:00
PKGMESSAGE = ${ WRKDIR } /pkg-message
2005-07-29 04:13:32 +02:00
PKGINSTALL = ${ WRKDIR } /pkg-install
2005-09-10 01:13:26 +02:00
WRKSRC = ${ WRKDIR } /gridengine/source
2005-07-29 04:13:32 +02:00
TMP_SGE_ROOT = ${ WRKDIR } /sgeroot
AIMK_CMD = ${ SETENV } ${ AIMK_ENV } ./aimk ${ AIMK_ARGS }
2008-02-13 16:39:06 +01:00
# From DEFAULTPROGS in scripts/distinst
2005-07-29 04:13:32 +02:00
INST_PROGS = man common \
sge_qmaster \
sge_execd \
sge_shadowd \
sge_shepherd \
sge_coshepherd \
qstat \
qsub \
qalter \
qconf \
qdel \
qacct \
qmod \
qsh \
utilbin \
jobs \
2008-02-13 16:39:06 +01:00
${ QMON } \
2005-07-29 04:13:32 +02:00
qhost \
qmake \
qtcsh \
qping \
qloadsensor.exe \
sgepasswd \
2008-02-13 16:39:06 +01:00
qquota
2005-07-29 04:13:32 +02:00
2004-02-01 07:40:53 +01:00
MANPREFIX = ${ SGE_ROOT }
2005-07-29 04:13:32 +02:00
. i n c l u d e "${.CURDIR}/Makefile.man"
EXCEPTFILES = arc_depend_irix.asc arc_depend_solaris.asc man testsuite
2004-02-01 07:40:53 +01:00
2004-12-09 00:42:02 +01:00
. i n c l u d e < b s d . p o r t . p r e . m k >
2005-07-29 04:13:32 +02:00
2009-03-16 09:49:32 +01:00
. i f ${ARCH} = = "sparc64"
BROKEN = Does not configure on sparc64
. e n d i f
2005-07-29 04:13:32 +02:00
. i f d e f i n e d ( W I T H _ B D B )
LIB_DEPENDS = db-4.2:${ PORTSDIR } /databases/db42
PLIST_SUB += BDB_SPOOL =
. e l s e
AIMK_ARGS += -spool-classic
PLIST_SUB += BDB_SPOOL = "@comment "
. e n d i f
2008-02-13 16:39:06 +01:00
AIMK_ARGS += -no-java -no-jni
2005-07-29 04:13:32 +02:00
2007-12-18 18:48:53 +01:00
. i f d e f i n e d ( W I T H _ X 1 1 )
2005-07-29 04:13:32 +02:00
USE_MOTIF = yes
PLIST_SUB += QMON =
QMON = qmon
. e l s e
AIMK_ARGS += -no-qmon
PLIST_SUB += QMON = "@comment "
QMON = noqmon
2004-12-09 00:42:02 +01:00
. e n d i f
2004-02-01 07:40:53 +01:00
post-patch :
@${ REINPLACE_CMD } -e " s|%%PREFIX%%| ${ PREFIX } |g " \
- Remove unneeded dependency from gtk12/gtk20 [1]
- Remove USE_XLIB/USE_X_PREFIX/USE_XPM in favor of USE_XORG
- Remove X11BASE support in favor of LOCALBASE or PREFIX
- Use USE_LDCONFIG instead of INSTALLS_SHLIB
- Remove unneeded USE_GCC 3.4+
Thanks to all Helpers:
Dmitry Marakasov, Chess Griffin, beech@, dinoex, rafan, gahr,
ehaupt, nox, itetcu, flz, pav
PR: 116263
Tested on: pointyhat
Approved by: portmgr (pav)
2008-04-19 19:56:05 +02:00
-e " s|%%LOCALBASE%%| ${ LOCALBASE } |g " \
2004-02-01 07:40:53 +01:00
-e " s|%%LOCALBASE%%| ${ LOCALBASE } |g " \
${ WRKSRC } /dist/util/arch_variables \
${ WRKSRC } /dist/pvm/src/aimk
2006-12-04 17:39:10 +01:00
@${ REINPLACE_CMD } -e " s|%%CC%%| ${ CC } |g " \
-e " s|%%CXX%%| ${ CXX } |g " \
-e " s|%%CFLAGS%%| ${ CFLAGS } |g " \
-e " s|%%CXXFLAGS%%| ${ CXXFLAGS } |g " \
- Remove unneeded dependency from gtk12/gtk20 [1]
- Remove USE_XLIB/USE_X_PREFIX/USE_XPM in favor of USE_XORG
- Remove X11BASE support in favor of LOCALBASE or PREFIX
- Use USE_LDCONFIG instead of INSTALLS_SHLIB
- Remove unneeded USE_GCC 3.4+
Thanks to all Helpers:
Dmitry Marakasov, Chess Griffin, beech@, dinoex, rafan, gahr,
ehaupt, nox, itetcu, flz, pav
PR: 116263
Tested on: pointyhat
Approved by: portmgr (pav)
2008-04-19 19:56:05 +02:00
-e " s|%%LOCALBASE%%| ${ LOCALBASE } |g " \
2004-02-01 07:40:53 +01:00
${ WRKSRC } /aimk \
${ WRKSRC } /dist/pvm/src/aimk
2007-02-15 23:30:10 +01:00
@test -d ${ WRKSRC } /3rdparty/qtcsh/${ SGE_BUILD_ARCH } || \
( ${ CP } -r ${ WRKSRC } /3rdparty/qtcsh/FREEBSD_I386 \
${ WRKSRC } /3rdparty/qtcsh/${ SGE_BUILD_ARCH } && \
${ REINPLACE_CMD } -e 's|FREEBSD_I386|${SGE_BUILD_ARCH}|' \
${ WRKSRC } /3rdparty/qtcsh/${ SGE_BUILD_ARCH } /Makefile)
2004-02-25 20:35:41 +01:00
@${ REINPLACE_CMD } -e 's|^CC = gcc|CC = ${CC}|' \
-e 's|^CPP = gcc -E|CPP = ${CPP}|' \
${ WRKSRC } /3rdparty/qmake/FREEBSD_*/Makefile \
${ WRKSRC } /3rdparty/qmake/FREEBSD_*/glob/Makefile \
2007-02-15 23:30:10 +01:00
${ WRKSRC } /3rdparty/qtcsh/${ SGE_BUILD_ARCH } /Makefile
2004-02-01 07:40:53 +01:00
@${ RM } ${ WRKSRC } /dist/util/arch_variables.orig
2008-04-11 22:31:49 +02:00
@${ RM } ${ WRKSRC } /dist/util/create_settings.sh.orig
2005-07-30 19:39:23 +02:00
@${ RM } ${ WRKSRC } /dist/util/install_modules/inst_common.sh.orig
2004-02-01 07:40:53 +01:00
@${ FIND } ${ WRKSRC } -name Makefile | ${ XARGS } \
${ REINPLACE_CMD } " s|-g -O2| ${ CFLAGS } | "
2005-07-29 04:13:32 +02:00
@${ SED } -e 's|%%LOCALBASE%%|${LOCALBASE}|g' \
2007-02-05 18:33:22 +01:00
-e 's|%%OPENSSLBASE%%|${OPENSSLBASE}|g' \
- Remove unneeded dependency from gtk12/gtk20 [1]
- Remove USE_XLIB/USE_X_PREFIX/USE_XPM in favor of USE_XORG
- Remove X11BASE support in favor of LOCALBASE or PREFIX
- Use USE_LDCONFIG instead of INSTALLS_SHLIB
- Remove unneeded USE_GCC 3.4+
Thanks to all Helpers:
Dmitry Marakasov, Chess Griffin, beech@, dinoex, rafan, gahr,
ehaupt, nox, itetcu, flz, pav
PR: 116263
Tested on: pointyhat
Approved by: portmgr (pav)
2008-04-19 19:56:05 +02:00
-e 's|%%LOCALBASE%%|${LOCALBASE}|g' \
2005-07-29 04:13:32 +02:00
${ FILESDIR } /aimk.private > ${ WRKSRC } /aimk.private
2007-01-09 09:26:10 +01:00
@${ SED } -e 's|%%LOCALBASE%%|${LOCALBASE}|g' \
2008-02-13 16:39:06 +01:00
-e 's|%%OPENSSLBASE%%|${OPENSSLBASE}|g' \
-e 's|%%WRKDIR%%|${WRKDIR}|g' \
2007-01-09 09:26:10 +01:00
${ FILESDIR } /distinst.private > ${ WRKSRC } /distinst.private
2007-12-18 18:48:53 +01:00
. i f ! d e f i n e d ( W I T H _ X 1 1 )
@${ REINPLACE_CMD } -e 's/qmon//' ${ WRKSRC } /dist/util/setfileperm.sh
. e n d i f
2004-02-01 07:40:53 +01:00
do-build :
2007-12-18 18:48:53 +01:00
@cd ${ WRKSRC } && ${ AIMK_CMD } -only-depend
@cd ${ WRKSRC } && ./scripts/zerodepend
@cd ${ WRKSRC } && ${ AIMK_CMD } depend
@cd ${ WRKSRC } && \
2006-01-11 03:33:30 +01:00
${ AIMK_CMD } -debug && \
2008-02-13 16:39:06 +01:00
${ AIMK_CMD } -man ${ SGE_PRODUCT }
2007-12-18 18:48:53 +01:00
@${ MKDIR } ${ TMP_SGE_ROOT }
@cd ${ WRKSRC } && ${ SETENV } SGE_ROOT = ${ TMP_SGE_ROOT } \
2005-07-29 04:13:32 +02:00
./scripts/distinst -local -libs ${ SGE_ARCH } -- ${ INST_PROGS }
2008-04-14 21:10:08 +02:00
. i f d e f i n e d ( W I T H O U T _ Q S H )
2008-04-29 19:22:03 +02:00
@${ RM } ${ TMP_SGE_ROOT } /bin/${ SGE_ARCH } /qlogin
@${ RM } ${ TMP_SGE_ROOT } /bin/${ SGE_ARCH } /qrsh
@${ MV } ${ TMP_SGE_ROOT } /bin/${ SGE_ARCH } /qsh ${ TMP_SGE_ROOT } /bin/${ SGE_ARCH } /qrsh
@${ LN } -s qrsh ${ TMP_SGE_ROOT } /bin/${ SGE_ARCH } /qlogin
@${ INSTALL_SCRIPT } ${ FILESDIR } /qsh-disabled.sh ${ TMP_SGE_ROOT } /bin/${ SGE_ARCH } /qsh
2008-04-14 21:10:08 +02:00
. e n d i f
2007-12-18 18:48:53 +01:00
. i f ! d e f i n e d ( W I T H _ X 1 1 )
@${ RM } ${ TMP_SGE_ROOT } /catman/cat/cat1/qmon.1
@${ RM } -r ${ TMP_SGE_ROOT } /3rd_party/qmon
. e n d i f
2004-02-01 07:40:53 +01:00
do-install :
2007-12-18 18:48:53 +01:00
@${ MKDIR } ${ SGE_ROOT }
@cd ${ TMP_SGE_ROOT } && \
2005-07-29 04:13:32 +02:00
${ FIND } . | ${ TAR } cTf - - | ${ TAR } xUCf ${ SGE_ROOT } -
2007-12-18 18:48:53 +01:00
@cd ${ SGE_ROOT } && ${ SETENV } SGE_ROOT = ${ SGE_ROOT } util/setfileperm.sh -auto ${ SGE_ROOT }
2004-02-01 07:40:53 +01:00
. i f ! d e f i n e d ( N O P O R T D O C S )
2007-12-18 18:48:53 +01:00
@${ MKDIR } ${ DOCSDIR }
@cd ${ WRKSRC } /../doc && ${ FIND } * \( -name CVS \
2005-09-13 00:54:48 +02:00
${ EXCEPTFILES : S /^/-o -name / } \) -a -prune -o -type f -print \
2004-02-01 07:40:53 +01:00
| ${ TAR } cTf - - | ${ TAR } xUCf ${ DOCSDIR } -
. e n d i f
post-install :
2005-07-29 04:13:32 +02:00
@${ SH } ${ PKGINSTALL } ${ PKGNAME } POST-INSTALL
2004-02-01 07:40:53 +01:00
@${ CAT } ${ PKGMESSAGE }
@${ ECHO }
2005-07-29 04:13:32 +02:00
# Automaticly produce the offical machine dependent bits tarball from
# the temporary root. This can be used if FreeBSD machines are to be
# included in a shared SGE installation.
release-tar : build
cd ${ TMP_SGE_ROOT } && \
2004-02-25 20:35:41 +01:00
${ TAR } cfvz ${ .CURDIR } /sge-${ SGE_RELEASE } -bin-${ SGE_ARCH } .tar.gz \
2005-07-29 04:13:32 +02:00
` ${ FIND } . -name ${ SGE_ARCH } `
#########################################################################
# Maintainer support below this line. No user servicable parts inside. #
#########################################################################
2004-02-25 20:35:41 +01:00
2005-07-29 04:13:32 +02:00
# Build a pkg-plist and Makefile.man
build-plist : build
2008-12-15 21:45:44 +01:00
. i f d e f i n e d ( W I T H O U T _ B D B ) | | d e f i n e d ( W I T H O U T _ X 1 1 )
2008-04-11 22:31:49 +02:00
@echo "ERROR: All OPTIONS must be enabled to build plist!" && ${ FALSE }
. e n d i f
2005-07-29 04:13:32 +02:00
@${ FIND } ${ TMP_SGE_ROOT } /* -name man -prune -o \
\( -type f -o -type l \) -print | \
${ SORT } | \
${ SED } -e 's|^${TMP_SGE_ROOT}|%%SGE_BASE%%|' \
-e 's|${SGE_ARCH}|%%SGE_ARCH%%|' \
-e 's|\(.*libspool[bc].so\)|%%BDB_SPOOL%%\1|' \
2007-01-09 09:26:10 +01:00
-e 's|\(.*libdb-4.2.so\)|%%BDB_SPOOL%%\1|' \
-e 's|\(.*utilbin.*db_.*\)|%%BDB_SPOOL%%\1|' \
2005-07-29 04:13:32 +02:00
-e 's|\(.*libXltree.so\)|%%QMON%%\1|' \
-e 's|\(.*qmon.*\)|%%QMON%%\1|' \
> ${ PLIST }
2005-09-10 01:13:26 +02:00
@${ FIND } ${ WRKSRC } /../doc \( -name CVS \
2005-07-29 04:13:32 +02:00
${ EXCEPTFILES : S /^/-o -name / } \) -a -prune -o -type f -print | \
${ SORT } | \
${ SED } -e 's|${WRKSRC}/../doc|%%PORTDOCS%%%%DOCSDIR%%|' \
>> ${ PLIST }
@${ FIND } ${ TMP_SGE_ROOT } /* -type d | \
${ SORT } -r | \
${ SED } -e 's|^${TMP_SGE_ROOT}|@dirrm %%SGE_BASE%%|' \
-e 's|${SGE_ARCH}|%%SGE_ARCH%%|' \
-e 's|\(.*qmon.*\)|%%QMON%%\1|' \
>> ${ PLIST }
2005-09-10 01:13:26 +02:00
@${ FIND } ${ WRKSRC } /../doc \( -name CVS \
2005-07-29 04:13:32 +02:00
${ EXCEPTFILES : S /^/-o -name / } \) -a -prune -o -type d -print | \
${ SORT } -r | \
${ SED } -e 's|${WRKSRC}/../doc|%%PORTDOCS%%@dirrm %%DOCSDIR%%|' \
>> ${ PLIST }
2007-02-15 23:30:10 +01:00
@echo '@dirrmtry %%SGE_BASE%%' >> ${ PLIST }
2007-09-04 20:00:07 +02:00
@echo '@unexec test ! -d %D/%%SGE_BASE%% || ( echo "Configuration information saved. If you will *NOT* use this package anymore," && echo "please remove %D/%%SGE_BASE%% and its contents manually.")' >> ${ PLIST }
2005-07-29 04:13:32 +02:00
@echo "# Do not edit! Auto-generated file." > ${ .CURDIR } /Makefile.man
@echo "# See build-plist target in Makefile." >> ${ .CURDIR } /Makefile.man
@echo "#" >> ${ .CURDIR } /Makefile.man
@${ FIND } ${ TMP_SGE_ROOT } /man -type f | ${ XARGS } ${ GREP } -H ^\\ .so | \
${ SED } \
-e 's|.*/\([^ :/][^ :/]*\):.*/\([^ :/][^ :/]*\)$$|MLINKS+=\2 \1|' \
>> ${ .CURDIR } /Makefile.man
@${ FIND } ${ TMP_SGE_ROOT } /man -type f | ${ XARGS } ${ GREP } -L ^\\ .so | \
${ SED } -e 's|.*man\([0-9LN]\)/\(.*\)|MAN\1+=\2|' \
>> ${ .CURDIR } /Makefile.man
2004-12-09 00:42:02 +01:00
. i n c l u d e < b s d . p o r t . p o s t . m k >