diff options
author | 2009-08-15 15:28:56 +0000 | |
---|---|---|
committer | 2009-08-15 15:28:56 +0000 | |
commit | c722518dabc8d7ffa3c336c759a0d6dc6a73133f (patch) | |
tree | 0f201a1bb3e2cc804981ab31461c94b7af8b06c0 /sys-cluster | |
parent | sys-cluster/globus-build: New Ebuild for bug 51149 thanks to Tommy[D], sedzim... (diff) | |
download | sunrise-c722518dabc8d7ffa3c336c759a0d6dc6a73133f.tar.gz sunrise-c722518dabc8d7ffa3c336c759a0d6dc6a73133f.tar.bz2 sunrise-c722518dabc8d7ffa3c336c759a0d6dc6a73133f.zip |
sys-cluster/globus: New Ebuild for bug 51149 thanks to Tommy[D], sedzimir and the people over at sunrise
svn path=/sunrise/; revision=9012
Diffstat (limited to 'sys-cluster')
-rw-r--r-- | sys-cluster/globus/ChangeLog | 16 | ||||
-rw-r--r-- | sys-cluster/globus/Manifest | 8 | ||||
-rw-r--r-- | sys-cluster/globus/files/22globus | 7 | ||||
-rw-r--r-- | sys-cluster/globus/files/gaa_test.patch | 11 | ||||
-rw-r--r-- | sys-cluster/globus/files/globus-init.d | 30 | ||||
-rw-r--r-- | sys-cluster/globus/files/gwd_open.patch | 11 | ||||
-rw-r--r-- | sys-cluster/globus/globus-4.2.1.ebuild | 182 | ||||
-rw-r--r-- | sys-cluster/globus/metadata.xml | 36 |
8 files changed, 301 insertions, 0 deletions
diff --git a/sys-cluster/globus/ChangeLog b/sys-cluster/globus/ChangeLog new file mode 100644 index 000000000..6e0a88e6a --- /dev/null +++ b/sys-cluster/globus/ChangeLog @@ -0,0 +1,16 @@ +# ChangeLog for sys-cluster/globus +# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2 +# $Header: $ + + 15 Aug 2009; John (EBo) David <ebo@users.sourceforge.net> +files/22globus, + +globus-4.2.1.ebuild, +files/gaa_test.patch, +files/globus-init.d, + +files/gwd_open.patch, +metadata.xml: + New Ebuild for bug 51149 thanks to Tommy[D], sedzimir and the people over at + sunrise + + 15 Aug 2009; John (EBo) David <ebo@users.sourceforge.net> +files/22globus, + +globus-4.2.1.ebuild, +files/gaa_test.patch, +files/globus-init.d, + +files/gwd_open.patch, +metadata.xml: + New Ebuild for bug 51149 thanks to Tommy[D], sedzimir and the people over at + sunrise + diff --git a/sys-cluster/globus/Manifest b/sys-cluster/globus/Manifest new file mode 100644 index 000000000..3d07abb70 --- /dev/null +++ b/sys-cluster/globus/Manifest @@ -0,0 +1,8 @@ +AUX 22globus 187 RMD160 2c9f1bd0051f19721a9fc43024cbbd920c8bc965 SHA1 55f53f00e674631402ed7cb90813de585360aa26 SHA256 21b2c26cc49ea4808918b1f6bb253e251ed6a228b6fab93996835ff9eadda741 +AUX gaa_test.patch 596 RMD160 a35a8600e546e78b0abd19feab2d918c83124eb9 SHA1 3e6e57a4a0557e01d0423ed83a423d5b04bc7771 SHA256 d781a97e961c821e4059e9a548d2ec18a7d51d1239e12f10e446bb00126b2e9f +AUX globus-init.d 867 RMD160 dd063be48c78a263622c419af830a5c1a9f89d3a SHA1 4e468a64293e594adb33d51a8eee450bde98ad0d SHA256 78ec22c11cf93bbf3e12810d6e5524cb6389578ad6959fbb284e7b8e155e5285 +AUX gwd_open.patch 470 RMD160 a561456c15e6e6b01cd6d1291da0e76dcf3bca32 SHA1 c846e281e0251490c4f0b0fb7e4d8b4c901d6277 SHA256 95e66415b01f6971379c07447d7a25875f7f9261381f26730323d92fd465b2a3 +DIST gt4.2.1-all-source-installer.tar.bz2 111057292 RMD160 a8ffb66c47c0221acdf17256e1495e613417226e SHA1 33c6868189a6652a8714abe9ad8fa2cc481dd1d7 SHA256 f22deb1d47556e9c4be8ed556f497e6cded641c41f103663d7f499f9175d3705 +EBUILD globus-4.2.1.ebuild 6430 RMD160 1ac94d257667a18fd9313ae45298355a9a8fe490 SHA1 77257a94f9cc560ed8d8f406a1febf8820bc29d6 SHA256 c94cd3284dbf80074c37a66288976d55c913fbf20f3bca4d664049aaad1f8d4b +MISC ChangeLog 671 RMD160 004f85c8f6561743502c8db6830539056685f724 SHA1 263b82a8b8c419afbae4ebcadb56dcc61ad2744a SHA256 1e0843f6df328013d1ab15700384f8a941dfa2fc85f01a9e24265355fe86c4b6 +MISC metadata.xml 1434 RMD160 b96dc3a576183b200dd56cad0c58b8c11a724cf5 SHA1 22235a184117d466f81f0625fd079c6326d06795 SHA256 5d7ef0796e86277177b6886b487bf3f5c9dccaf2ecb45f85871e5797f24d57d7 diff --git a/sys-cluster/globus/files/22globus b/sys-cluster/globus/files/22globus new file mode 100644 index 000000000..4b9e1bf1f --- /dev/null +++ b/sys-cluster/globus/files/22globus @@ -0,0 +1,7 @@ +GPT_LOCATION=%%GLOBUS%% +PATH=%%GLOBUS%%/sbin:%%GLOBUS%%/bin +LDPATH=%%GLOBUS%%/lib +DYLD_LIBRARY_PATH=%%GLOBUS%%/lib +MANPATH=%%GLOBUS%%/man +SHLIB_PATH=%%GLOBUS%%/lib +LIBPATH=%%GLOBUS%%/lib diff --git a/sys-cluster/globus/files/gaa_test.patch b/sys-cluster/globus/files/gaa_test.patch new file mode 100644 index 000000000..c5b68388b --- /dev/null +++ b/sys-cluster/globus/files/gaa_test.patch @@ -0,0 +1,11 @@ +--- ./source-trees/gsi/gaa_callbacks/gaa_simple/test/Makefile.in 2009-08-13 07:22:15.882621388 -0600 ++++ ./source-trees/gsi/gaa_callbacks/gaa_simple/test/Makefile.in 2009-08-13 07:22:49.067486988 -0600 +@@ -68,7 +68,7 @@ + gaa_test_with_assertion_file_OBJECTS = \ + $(am_gaa_test_with_assertion_file_OBJECTS) + gaa_test_with_assertion_file_DEPENDENCIES = $(am__DEPENDENCIES_1) +-DEFAULT_INCLUDES = -I. -I$(srcdir) ++DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(srcdir)/../../gaa_gss_generic/source/ + depcomp = + am__depfiles_maybe = + COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ diff --git a/sys-cluster/globus/files/globus-init.d b/sys-cluster/globus/files/globus-init.d new file mode 100644 index 000000000..bc97d3e9f --- /dev/null +++ b/sys-cluster/globus/files/globus-init.d @@ -0,0 +1,30 @@ +#!/sbin/runscript +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +source ${GLOBUS_LOCATION}/etc/globus-user-env.sh + +depend() { + need net +} + +start() { + ebegin "Starting Globus WS Container" + ${GLOBUS_LOCATION}/bin/globus-start-container ${CONTAINER_OPTS} > +${LOG_FILE} 2>&1 & + eend ${?} +} + +stop() { + ebegin "Stopping Globus WS Container" + ${GLOBUS_LOCATION}/bin/grid-proxy-init \ + -cert /etc/grid-security/containercert.pem \ + -key /etc/grid-security/containerkey.pem \ + -out /tmp/containerproxy.pem > /dev/null + export X509_USER_PROXY=/tmp/containerproxy.pem + ${GLOBUS_LOCATION}/bin/globus-stop-container + export X509_USER_PROXY + rm /tmp/containerproxy.pem + eend ${?} +} diff --git a/sys-cluster/globus/files/gwd_open.patch b/sys-cluster/globus/files/gwd_open.patch new file mode 100644 index 000000000..920ac11db --- /dev/null +++ b/sys-cluster/globus/files/gwd_open.patch @@ -0,0 +1,11 @@ +--- ./source-trees/gridway/src/gwd/gwd.c.~1.9.2.2.~ 2008-04-01 11:59:01.000000000 -0600 ++++ ./source-trees/gridway/src/gwd/gwd.c 2009-08-08 22:14:25.490391881 -0600 +@@ -138,7 +138,7 @@ + /* Close stds, we no longer need them */ + /* ----------------------------------------------------------- */ + +- fd = open("/dev/null", O_RDWR|O_CREAT); ++ fd = open("/dev/null", O_RDWR|O_CREAT, 0640); + + dup2(fd,0); + dup2(fd,1); diff --git a/sys-cluster/globus/globus-4.2.1.ebuild b/sys-cluster/globus/globus-4.2.1.ebuild new file mode 100644 index 000000000..6035942b3 --- /dev/null +++ b/sys-cluster/globus/globus-4.2.1.ebuild @@ -0,0 +1,182 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI="2" + +inherit eutils java-pkg-2 java-ant-2 + +MY_P="gt${PV}-all-source-installer" + +DESCRIPTION="The Globus Toolkit - grid middleware package" +HOMEPAGE="http://www.globus.org/toolkit/" + +SRC_URI="http://www-unix.globus.org/ftppub/gt${PV:0:1}/${PV}/installers/src/${MY_P}.tar.bz2" + +LICENSE="GTPL" + +SLOT="4" +KEYWORDS="~x86" + +# The original build system does not build the following USE +# controlled components by default (i18n prews wsjava wsc wsdel wsrft +# wscas wsctests). You may turn them off as you wish... +IUSE="condor +gridftp +gridway i18n iodbc lsf odbc pbs prews + +prews-test +prewsgram +rls wsc wscas wsctests wsdel + +wsgram wsjava +wsmds wsrft +wstests" + +COMMON_DEP=" + dev-java/ant + sys-libs/zlib + dev-lang/perl + app-admin/sudo + dev-libs/openssl + dev-db/postgresql + dev-perl/XML-Parser + virtual/mpi + =sys-cluster/globus-build-${PV} + iodbc? ( dev-db/libiodbc ) + odbc? ( !iodbc? ( dev-db/unixODBC ) )" + +DEPEND=">=virtual/jdk-1.5 + ${COMMON_DEP}" + +RDEPEND=">=virtual/jre-1.5 + ${COMMON_DEP}" + +S="${WORKDIR}/${MY_P}" + +GLOBUS="/opt/globus${PV:0:1}" + +src_prepare() { + mkdir "${S}"/build || die "making build directory failed" + + # Do not build the globus-build tools by default (in this case it is + # supplied with sci-physics/globus-build) + sed -e "s|: gpt|:|" \ + -i Makefile.in || die "sed Makefile.in failed" + + # Fixing RLS so it can find sql.h etc..." + sed -e 's?DEFAULT_INCLUDES = -I.?& -I/usr/include/iodbc?' \ + -i source-trees/replica/rls/server/Makefile.in \ + || die "sed RLS Makefile.in failed" + + # apply patches + epatch "${FILESDIR}"/gwd_open.patch + epatch "${FILESDIR}"/gaa_test.patch + + sed -e "s|%%GLOBUS%%|${GLOBUS}|" \ + "${FILESDIR}"/22globus > "${T}"/22globus \ + || die "sed envfile failed" +} + +src_configure() { + local myconfig + + # should we use odbc with iodbc or unixodbc + if use iodbc ; then + myconfig="--with-iodbc-libs=$(iodbc-config --prefix)/lib" + myconfig="${myconfig} --with-iodbc-includes=$(iodbc-config --prefix)/include/iodbc" + elif use odbc ; then + myconfig="--with-unixodbc-libs=/usr/lib" + myconfig="${myconfig} --with-unixodbc-includes=/usr/include/unixodbc" + fi + + java-pkg_switch-vm + + econf --prefix="${S}/build/${GLOBUS}" \ + --with-gptlocation=${GLOBUS} \ + $(use_enable condor wsgram-condor) \ + $(use_enable lsf wsgram-lsf) \ + $(use_enable pbs wsgram-pbs) ${myconfig} +} + +src_compile() { + # Build these basic components always, then the individual + # components can be built as desired (controlled by the USE flags + # above). The initial components must always be built in order + # to build some of the optional ones (ORDER MATTERS). + local mycomponents="gsi-myproxy gsi-openssh gt4-java-ws-core gt4-java-admin gt4-mds gt4-delegation gt4-rft gt4-cas gt4-c-ws-core prews-test globus-gsi-test gt4-replicator gt4-replication-client globus_rendezvous" + + # These components are built as part of the original "all:" + # target. The project INSTALL file specifies that the desired + # behaviour is to allow building of individual components without + # building the entire system. Therefore, these should be + # optional, but ON by default. + mycomponents="${mycomponents} $(use gridftp && echo gridftp)" + mycomponents="${mycomponents} $(use prewsgram && echo prewsgram)" + mycomponents="${mycomponents} $(use rls && echo rls)" + mycomponents="${mycomponents} $(use wsgram && echo wsgram)" + mycomponents="${mycomponents} $(use wsmds && echo wsmds)" + mycomponents="${mycomponents} $(use prews-test && echo prews-test)" + mycomponents="${mycomponents} $(use wstests && echo wstests)" + mycomponents="${mycomponents} $(use gridway && echo gridway)" + + # These components are strictly optional, and are turned OFF + # default in the IUSE flags. + mycomponents="${mycomponents} $(use i18n && echo i18n)" + mycomponents="${mycomponents} $(use prews && echo prews)" + mycomponents="${mycomponents} $(use wsjava && echo wsjava)" + mycomponents="${mycomponents} $(use wsc && echo wsc)" + mycomponents="${mycomponents} $(use wsdel && echo wsdel)" + mycomponents="${mycomponents} $(use wsrft && echo wsrft)" + mycomponents="${mycomponents} $(use wscas && echo wscas)" + mycomponents="${mycomponents} $(use wsctests && echo wsctests)" + + einfo + einfo "Making components = ${mycomponents}" + einfo + emake -j1 ${mycomponents} || die "make failed!" +} + +src_install() { + einfo "Hand installing..." + # The supplied Makefile install violates standard practices. The + # following simulates a "make DESTDIR=${D}" and moves the built + # programs/files into ${D} + mv build/* "${D}/" || die "mv failed" + + doenvd "${T}"/22globus || die "install env.d/globus died" + newinitd "${FILESDIR}"/${PN}-init.d globus \ + || die "install env.d/globus died" + + insinto "${GLOBUS}/share/extras" + doins quickstart.html || die "install quickstart.html died" + + einfo "linking globus_packages directory" + dosym "${ROOT}${GLOBUS}"/etc/gpt/packages \ + "${ROOT}${GLOBUS}"/etc/globus_packages \ + || die "generating symbolic link died" + + einfo "Updating ownership and permissions..." + fowners -R globus:globus ${GLOBUS} || die "fowners failed" +} + +pkg_postinst() { + # The Makefile provided with the package does not respect + # DESTDIR=${D}, or conventional installs for that matter, and + # builds directly into the installation directories + # (i.e. /${GLOBUS}) thus generating access violations. In + # addition, pkg_postinst assumes that you are done with ${S} so + # we (re)implement the postinstall phase of the package here so + # that any assumptions inherent in the Makefile are ignored. + einfo "running gpt-postinstall" + GLOBUS_LOCATION="${ROOT}${GLOBUS}" GPT_LOCATION="${ROOT}${GLOBUS}" \ + "${ROOT}${GLOBUS}"/sbin/gpt-postinstall || die "gpt-postinstall failed" + + elog "If you wish to configure the optional GAA-based Globus" + elog "Authorization callouts, run thesetup-globus-gaa-authz-callout" + elog "setup script." + elog + elog "You will have to install a cert file (eg. /etc/grid-security/hostcert.pem)" + elog "and then re-run setup-globus-gram-job-manager." +} + +pkg_postrm() { + if [ -z has_version ]; then + ewarn "Globus builds and installs files into ${GLOBUS}" + ewarn "after package installation. After uninstalling" + ewarn "you may want to manually remove all or part of the Globus" + ewarn "installation directory ${GLOBUS}." + fi +} diff --git a/sys-cluster/globus/metadata.xml b/sys-cluster/globus/metadata.xml new file mode 100644 index 000000000..7fdabf283 --- /dev/null +++ b/sys-cluster/globus/metadata.xml @@ -0,0 +1,36 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<herd> not sure yet </herd> +<maintainer> + <email>maintainer-wanted@gentoo.org</email> + <name>maintainer-wanted</name> +</maintainer> +<longdescription> + The Globus Toolkit - grid middleware package +</longdescription> +<use> + <flag name='condor'>Condor-G scheduler support</flag> + <flag name='lsf'>Platform LSF support</flag> + <flag name='pbs'>Portable Batch System support</flag> + + <flag name='i18n'> Internationalization libraries</flag> + <flag name='prewsgram'> Pre-webservices GRAM</flag> + <flag name='gridftp'> GridFTP</flag> + <flag name='gridway'> GridWay DRMAA Library</flag> + <flag name='prews'> Pre-WS GRAM, MDS2, and GridFTP</flag> + <flag name='wsjava'> Java WS Core</flag> + <flag name='wsc'> C WS core</flag> + <flag name='wsmds'> MDS4</flag> + <flag name='wsdel'> Delegation Service</flag> + <flag name='wsrft'> Reliable File Transfer service</flag> + <flag name='wsgram'> GRAM4</flag> + <flag name='wscas'> Community Authorization Service</flag> + <flag name='wstests'> Tests for java webservices</flag> + <flag name='wsctests'> Tests for C webservices</flag> + <flag name='prews-test'> Tests for pre-webservices components</flag> + <flag name='rls'> Replica Location Service</flag> + +</use> +</pkgmetadata> + |