diff options
author | Olivier Fisette <ribosome@gentoo.org> | 2006-11-03 02:04:56 +0000 |
---|---|---|
committer | Olivier Fisette <ribosome@gentoo.org> | 2006-11-03 02:04:56 +0000 |
commit | f55248f48fe2c46b52b339b49216ea6c6dd0ead7 (patch) | |
tree | 3e597e41989e3edea738562ae3ba69b7760378fe /sci-biology/ncbi-tools | |
parent | New upstream version (diff) | |
download | gentoo-2-f55248f48fe2c46b52b339b49216ea6c6dd0ead7.tar.gz gentoo-2-f55248f48fe2c46b52b339b49216ea6c6dd0ead7.tar.bz2 gentoo-2-f55248f48fe2c46b52b339b49216ea6c6dd0ead7.zip |
New upstream version
(Portage version: 2.1.1-r1)
Diffstat (limited to 'sci-biology/ncbi-tools')
-rw-r--r-- | sci-biology/ncbi-tools/ChangeLog | 8 | ||||
-rw-r--r-- | sci-biology/ncbi-tools/files/digest-ncbi-tools-20061015 | 9 | ||||
-rw-r--r-- | sci-biology/ncbi-tools/ncbi-tools-20061015.ebuild | 195 |
3 files changed, 211 insertions, 1 deletions
diff --git a/sci-biology/ncbi-tools/ChangeLog b/sci-biology/ncbi-tools/ChangeLog index 41c07449a778..c9788936aa7a 100644 --- a/sci-biology/ncbi-tools/ChangeLog +++ b/sci-biology/ncbi-tools/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for sci-biology/ncbi-tools # Copyright 2000-2006 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sci-biology/ncbi-tools/ChangeLog,v 1.48 2006/10/30 19:49:22 opfer Exp $ +# $Header: /var/cvsroot/gentoo-x86/sci-biology/ncbi-tools/ChangeLog,v 1.49 2006/11/03 02:04:56 ribosome Exp $ + +*ncbi-tools-20061015 (03 Nov 2006) + + 03 Nov 2006; Olivier Fisette <ribosome@gentoo.org> + +ncbi-tools-20061015.ebuild: + New upstream version. 30 Oct 2006; Christian Faulhammer <opfer@gentoo.org> ncbi-tools-20060507.ebuild: diff --git a/sci-biology/ncbi-tools/files/digest-ncbi-tools-20061015 b/sci-biology/ncbi-tools/files/digest-ncbi-tools-20061015 new file mode 100644 index 000000000000..21bbf17addbb --- /dev/null +++ b/sci-biology/ncbi-tools/files/digest-ncbi-tools-20061015 @@ -0,0 +1,9 @@ +MD5 14ee6d612d0d86e0dee7eb5f0c38839f mpiblast-20060625.tar.gz 165096 +RMD160 22a9bda3ea63076c1411f8c361c7bbf84213e215 mpiblast-20060625.tar.gz 165096 +SHA256 49eb549196b306d6c152b12522ff2ca08163f4d3a2582118790c88c327c15097 mpiblast-20060625.tar.gz 165096 +MD5 8eca84753fd7a1d39bab256a4944f65e ncbi-tools-20061015.tar.gz 15772715 +RMD160 034124b92d4320be31b2bacbb0966270cbfa63b3 ncbi-tools-20061015.tar.gz 15772715 +SHA256 0833f4b4f0389f75cdc0754329b3b8c1420c5b9abd7f3d8e352b4c134b3446de ncbi-tools-20061015.tar.gz 15772715 +MD5 c0860f787d95623b72fba58dbf1b60c5 ncbi-tools-sdk-doc.tar.bz2 263568 +RMD160 f9c4d610c2535ec2b4afae6ecef065fd5746910b ncbi-tools-sdk-doc.tar.bz2 263568 +SHA256 352ec02e527f24d03bafb7d40b31c98e0a6f931bed34c4933c5f7153b8034cb2 ncbi-tools-sdk-doc.tar.bz2 263568 diff --git a/sci-biology/ncbi-tools/ncbi-tools-20061015.ebuild b/sci-biology/ncbi-tools/ncbi-tools-20061015.ebuild new file mode 100644 index 000000000000..9929a10dd286 --- /dev/null +++ b/sci-biology/ncbi-tools/ncbi-tools-20061015.ebuild @@ -0,0 +1,195 @@ +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sci-biology/ncbi-tools/ncbi-tools-20061015.ebuild,v 1.1 2006/11/03 02:04:56 ribosome Exp $ + +inherit flag-o-matic toolchain-funcs eutils autotools + +DESCRIPTION="Development toolkit and applications for computational biology" +LICENSE="public-domain" +HOMEPAGE="http://www.ncbi.nlm.nih.gov/" +SRC_URI="mirror://gentoo/${P}.tar.gz + doc? ( mirror://gentoo/${PN}-sdk-doc.tar.bz2 ) + mpi? ( mirror://gentoo/mpiblast-20060625.tar.gz )" + +SLOT="0" +KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~sparc ~x86" +IUSE="doc mpi X" + +DEPEND="app-shells/tcsh + dev-lang/perl + media-libs/libpng + sys-devel/pmake + mpi? ( virtual/mpi ) + X? ( virtual/motif )" + +S="${WORKDIR}/ncbi" + +pkg_setup() { + echo + ewarn 'Please note that the NCBI toolkit (and especially the X' + ewarn 'applications) are known to have compilation and run-time' + ewarn 'problems when compiled with agressive compilation flags. The' + ewarn '"-O3" flag is filtered by the ebuild on the x86 architecture if' + ewarn 'X support is enabled.' + echo +} + +src_unpack() { + unpack ${A} + cd "${S}" + + epatch "${FILESDIR}"/${PN}-asn2all.patch + + if use ppc64; then + epatch "${FILESDIR}"/${PN}-lop.patch + fi + + if use mpi; then + cd "${WORKDIR}" + epatch "${WORKDIR}"/mpiblast/ncbi_Dec2005_evalue.patch + fi + + if ! use X; then + cd "${S}"/make + sed -e "s:\#set HAVE_OGL=0:set HAVE_OGL=0:" \ + -e "s:\#set HAVE_MOTIF=0:set HAVE_MOTIF=0:" \ + -i makedis.csh || die + else + if use x86; then + # X applications segfault on startup on x86 with -O3. + replace-flags '-O3' '-O2' + fi + fi + + # Apply user C flags... + cd "${S}"/platform + # ... on x86... + sed -e "s/NCBI_CFLAGS1 = -c/NCBI_CFLAGS1 = -c ${CFLAGS}/" \ + -e "s/NCBI_LDFLAGS1 = -O3 -mcpu=pentium4/NCBI_LDFLAGS1 = ${CFLAGS}/" \ + -e "s/NCBI_OPTFLAG = -O3 -mcpu=pentium4/NCBI_OPTFLAG = ${CFLAGS}/" \ + -i linux-x86.ncbi.mk || die + # ... on alpha... + sed -e "s/NCBI_CFLAGS1 = -c/NCBI_CFLAGS1 = -c ${CFLAGS}/" \ + -e "s/NCBI_LDFLAGS1 = -O3 -mieee/NCBI_LDFLAGS1 = -mieee ${CFLAGS}/" \ + -e "s/NCBI_OPTFLAG = -O3 -mieee/NCBI_OPTFLAG = -mieee ${CFLAGS}/" \ + -i linux-alpha.ncbi.mk || die + # ... on hppa... + sed -e "s/NCBI_CFLAGS1 = -c/NCBI_CFLAGS1 = -c ${CFLAGS}/" \ + -e "s/NCBI_LDFLAGS1 = -O2/NCBI_LDFLAGS1 = ${CFLAGS}/" \ + -e "s/NCBI_OPTFLAG = -O2/NCBI_OPTFLAG = ${CFLAGS}/" \ + -i hppalinux.ncbi.mk || die + # ... on ppc... + sed -e "s/NCBI_CFLAGS1 = -c/NCBI_CFLAGS1 = -c ${CFLAGS}/" \ + -e "s/NCBI_LDFLAGS1 = -O2/NCBI_LDFLAGS1 = ${CFLAGS}/" \ + -e "s/NCBI_OPTFLAG = -O2/NCBI_OPTFLAG = ${CFLAGS}/" \ + -i ppclinux.ncbi.mk || die + # ... on generic Linux. + sed -e "s/NCBI_CFLAGS1 = -c/NCBI_CFLAGS1 = -c ${CFLAGS}/" \ + -e "s/NCBI_LDFLAGS1 = -O3/NCBI_LDFLAGS1 = ${CFLAGS}/" \ + -e "s/NCBI_OPTFLAG = -O3/NCBI_OPTFLAG = ${CFLAGS}/" \ + -i linux.ncbi.mk || die + + # Put in our MAKEOPTS (doesn't work). + # sed -e "s:make \$MFLG:make ${MAKEOPTS}:" -i ncbi/make/makedis.csh + + # Set C compiler... + # ... on x86... + sed -i -e "s/NCBI_CC = gcc/NCBI_CC = $(tc-getCC)/" linux-x86.ncbi.mk || die + # ... on alpha... + sed -i -e "s/NCBI_CC = gcc/NCBI_CC = $(tc-getCC)/" linux-alpha.ncbi.mk || die + # ... on hppa... + sed -i -e "s/NCBI_CC = gcc/NCBI_CC = $(tc-getCC)/" hppalinux.ncbi.mk || die + # ... on ppc... + sed -i -e "s/NCBI_CC = gcc/NCBI_CC = $(tc-getCC)/" ppclinux.ncbi.mk || die + # ... on generic Linux. + sed -i -e "s/NCBI_CC = gcc/NCBI_CC = $(tc-getCC)/" linux.ncbi.mk || die + + # GNU make 3.81 is confused by those nightmarish Makefiles, so we use pmake + # instead. The right solution would be to fix the Makefiles. (Be my guest.) + cd "${S}"/make + sed -i -e "s%CMD='make%CMD='/usr/bin/pmake%" makedis.csh || die \ + "Failed to replace make by pmake." +} + +src_compile() { + cd "${WORKDIR}" + ncbi/make/makedis.csh || die + mkdir "${S}"/cgi + mkdir "${S}"/real + mv "${S}"/bin/*.cgi "${S}"/cgi || die + mv "${S}"/bin/*.REAL "${S}"/real || die + + if use mpi; then + cd "${WORKDIR}"/mpiblast + AM_OPT="-a" + eautoreconf + econf --with-ncbi="${WORKDIR}"/ncbi --with-mpi=/usr || die + emake || die + fi +} + +src_install() { + dobin "${S}"/bin/* || die "Failed to install binaries." + dobin "${S}"/build/asn2all || die "Failed to install binaries." + dolib "${S}"/lib/* || die "Failed to install libraries." + mkdir -p "${D}"/usr/include/ncbi + cp -RL "${S}"/include/* "${D}"/usr/include/ncbi || \ + die "Failed to install headers." + + if use mpi; then + cd "${WORKDIR}"/mpiblast + make install DESTDIR="${D}" || die "Failed to install MPI blast." + fi + + # TODO: Web apps + #insinto /usr/share/ncbi/lib/cgi + #doins ${S}/cgi/* + #insinto /usr/share/ncbi/lib/real + #doins ${S}/real/* + # TODO: Add support for wwwblast. + + # Basic documentation + dodoc "${S}"/{README,VERSION,doc/{*.txt,README.asn2xml}} || \ + die "Failed to install basic documentation." + newdoc "${S}"/doc/fa2htgs/README README.fa2htgs || \ + die "Failed renaming fa2htgs documentation." + newdoc "${S}"/config/README README.config || \ + die "Failed renaming config documentation." + newdoc "${S}"/network/encrypt/README README.encrypt || \ + die "Failed renaming encrypt documentation." + newdoc "${S}"/network/nsclilib/readme README.nsclilib || \ + die "Failed renaming nsclilib documentation." + newdoc "${S}"/sequin/README README.sequin || \ + die "Failed renaming sequin documentation." + doman "${S}"/doc/man/* || \ + die "Failed to install man pages." + + # Hypertext user documentation + dohtml "${S}"/{README.htm,doc/{*.html,*.gif}} || \ + die "Failed to install HTML documentation." + insinto /usr/share/doc/${PF}/html/blast + doins "${S}"/doc/blast/* || die "Failed to install blast HTML documentation." + + # Developer documentation + if use doc; then + # Hypertext SDK documentation + insinto /usr/share/doc/${PF}/html/sdk + doins "${WORKDIR}"/${PN}-sdk-doc/* || die + + # Demo programs + mkdir "${D}"/usr/share/ncbi + mv "${S}"/demo "${D}"/usr/share/ncbi/demo || die + fi + + # Shared data (similarity matrices and such) and database directory. + insinto /usr/share/ncbi/data + doins "${S}"/data/* || die "Failed to install shared data." + dodir /usr/share/ncbi/formatdb || die + + # Default config file to set the path for shared data. + insinto /etc/ncbi + newins "${FILESDIR}"/ncbirc .ncbirc || die "Failed to install config file." + + # Env file to set the location of the config file and BLAST databases. + newenvd "${FILESDIR}"/21ncbi-r1 21ncbi || die "Failed to install env file." +} |