summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOlivier Fisette <ribosome@gentoo.org>2004-12-23 18:47:51 +0000
committerOlivier Fisette <ribosome@gentoo.org>2004-12-23 18:47:51 +0000
commit4c489cccd4717b51564e3e3f9e839f18093e51c4 (patch)
treeba77f2b0fb9d1185303be9545f90caa34fcff6e3 /sci-biology/ncbi-tools/ncbi-tools-20040616.ebuild
parentMoving to sci-biology/ncbi-tools (diff)
downloadgentoo-2-4c489cccd4717b51564e3e3f9e839f18093e51c4.tar.gz
gentoo-2-4c489cccd4717b51564e3e3f9e839f18093e51c4.tar.bz2
gentoo-2-4c489cccd4717b51564e3e3f9e839f18093e51c4.zip
Moved from app-sci/ncbi-tools to sci-biology/ncbi-tools.
Diffstat (limited to 'sci-biology/ncbi-tools/ncbi-tools-20040616.ebuild')
-rw-r--r--sci-biology/ncbi-tools/ncbi-tools-20040616.ebuild165
1 files changed, 165 insertions, 0 deletions
diff --git a/sci-biology/ncbi-tools/ncbi-tools-20040616.ebuild b/sci-biology/ncbi-tools/ncbi-tools-20040616.ebuild
new file mode 100644
index 000000000000..facce5e9d1dc
--- /dev/null
+++ b/sci-biology/ncbi-tools/ncbi-tools-20040616.ebuild
@@ -0,0 +1,165 @@
+# Copyright 1999-2004 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sci-biology/ncbi-tools/ncbi-tools-20040616.ebuild,v 1.1 2004/12/23 18:47:51 ribosome Exp $
+
+inherit flag-o-matic gcc
+
+DESCRIPTION="Development toolkit and applications (BLAST, entrez, ddv, udv, sequin...) 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 )"
+
+SLOT="0"
+KEYWORDS="~x86 ~ppc ~sparc ~alpha ~amd64 ~ppc-macos"
+IUSE="doc X"
+
+DEPEND="app-shells/tcsh
+ dev-lang/perl
+ media-libs/libpng
+ X? ( virtual/x11
+ x11-libs/openmotif
+ )"
+
+S=${WORKDIR}/ncbi
+
+pkg_setup() {
+ echo
+ ewarn 'It is important to note that the NCBI tools (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. If you experience difficulties with this'
+ ewarn 'package and use agressive "CFLAGS", lower the "CFLAGS" and try'
+ ewarn 'to install the NCBI tools again.'
+ echo
+}
+
+src_unpack() {
+ unpack ${A}
+
+ if ! use X; then
+ cd ${S}/make
+ sed -e "s:\#set HAVE_OGL=0:set HAVE_OGL=0:" -i makedis.csh
+ sed -e "s:\#set HAVE_MOTIF=0:set HAVE_MOTIF=0:" -i makedis.csh
+ 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 -i -e "s/NCBI_CFLAGS1 = -c/NCBI_CFLAGS1 = -c ${CFLAGS}/" linux-x86.ncbi.mk
+ sed -i -e "s/NCBI_LDFLAGS1 = -O3 -mcpu=pentiumpro/NCBI_LDFLAGS1 = ${CFLAGS}/" linux-x86.ncbi.mk
+ sed -i -e "s/NCBI_OPTFLAG = -O3 -mcpu=pentiumpro/NCBI_OPTFLAG = ${CFLAGS}/" linux-x86.ncbi.mk
+ # ... on alpha...
+ sed -i -e "s/NCBI_CFLAGS1 = -c/NCBI_CFLAGS1 = -c ${CFLAGS}/" linux-alpha.ncbi.mk
+ sed -i -e "s/NCBI_LDFLAGS1 = -O3 -mieee/NCBI_LDFLAGS1 = -mieee ${CFLAGS}/" linux-alpha.ncbi.mk
+ sed -i -e "s/NCBI_OPTFLAG = -O3 -mieee/NCBI_OPTFLAG = -mieee ${CFLAGS}/" linux-alpha.ncbi.mk
+ # ... on hppa...
+ sed -i -e "s/NCBI_CFLAGS1 = -c/NCBI_CFLAGS1 = -c ${CFLAGS}/" hppalinux.ncbi.mk
+ sed -i -e "s/NCBI_LDFLAGS1 = -O2/NCBI_LDFLAGS1 = ${CFLAGS}/" hppalinux.ncbi.mk
+ sed -i -e "s/NCBI_OPTFLAG = -O2/NCBI_OPTFLAG = ${CFLAGS}/" hppalinux.ncbi.mk
+ # ... on ppc...
+ sed -i -e "s/NCBI_CFLAGS1 = -c/NCBI_CFLAGS1 = -c ${CFLAGS}/" ppclinux.ncbi.mk
+ sed -i -e "s/NCBI_LDFLAGS1 = -O2/NCBI_LDFLAGS1 = ${CFLAGS}/" ppclinux.ncbi.mk
+ sed -i -e "s/NCBI_OPTFLAG = -O2/NCBI_OPTFLAG = ${CFLAGS}/" ppclinux.ncbi.mk
+ # ... on generic Linux.
+ sed -i -e "s/NCBI_CFLAGS1 = -c/NCBI_CFLAGS1 = -c ${CFLAGS}/" linux.ncbi.mk
+ sed -i -e "s/NCBI_LDFLAGS1 = -O3/NCBI_LDFLAGS1 = ${CFLAGS}/" linux.ncbi.mk
+ sed -i -e "s/NCBI_OPTFLAG = -O3/NCBI_OPTFLAG = ${CFLAGS}/" linux.ncbi.mk
+
+ # 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 = $(gcc-getCC)/" linux-x86.ncbi.mk
+ # ... on alpha...
+ sed -i -e "s/NCBI_CC = gcc/NCBI_CC = $(gcc-getCC)/" linux-alpha.ncbi.mk
+ # ... on hppa...
+ sed -i -e "s/NCBI_CC = gcc/NCBI_CC = $(gcc-getCC)/" hppalinux.ncbi.mk
+ # ... on ppc...
+ sed -i -e "s/NCBI_CC = gcc/NCBI_CC = $(gcc-getCC)/" ppclinux.ncbi.mk
+ # ... on generic Linux.
+ sed -i -e "s/NCBI_CC = gcc/NCBI_CC = $(gcc-getCC)/" linux.ncbi.mk
+}
+
+src_compile() {
+ cd ${WORKDIR}
+ ncbi/make/makedis.csh || die
+ mkdir ${S}/cgi
+ mkdir ${S}/real
+ mv ${S}/bin/*.cgi ${S}/cgi
+ mv ${S}/bin/*.REAL ${S}/real
+}
+
+src_install() {
+ dobin ${S}/bin/*
+ dolib ${S}/lib/*
+ mkdir -p ${D}/usr/include/ncbi
+ cp -RL ${S}/include/* ${D}/usr/include/ncbi
+
+ # 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}}
+ newdoc ${S}/doc/fa2htgs/README README.fa2htgs
+ newdoc ${S}/config/README README.config
+ newdoc ${S}/network/encrypt/README README.encrypt
+ newdoc ${S}/network/nsclilib/readme README.nsclilib
+ newdoc ${S}/sequin/README README.sequin
+ doman ${S}/doc/man/*
+
+ # Hypertext user documentation
+ dohtml ${S}/{README.html,doc/{*.html *.gif}}
+ insinto /usr/share/doc/${PF}/html/blast
+ doins ${S}/doc/blast/*
+
+ # Developer documentation
+ if use doc; then
+ # "socks" documentation
+ SOCKS="network/socks/socks.cstc.4.2"
+ insinto /usr/share/doc/${PF}/socks
+ doins ${S}/${SOCKS}/{CHANGES,How_to_SOCKSify,README.{1st,4.{0,1,2},DK},What_are_the_risks,What_SOCKS_expects}
+ newins ${S}/${SOCKS}/libident/README README.libident
+ doins ${S}/${SOCKS}/sockd/sockd.conf.sample
+ doman ${S}/${SOCKS}/{doc/*.{1,5,8},libident/ident.3}
+ # "regexp" documentation
+ insinto /usr/share/doc/${PF}/regexp
+ doins ${S}/regexp/doc/{AUTHORS,NEWS,README,Tech.Notes,*.txt}
+ insinto /usr/share/doc/${PF}/regexp/html
+ doins ${S}/regexp/doc/*.html
+ doman ${S}/regexp/doc/*.{1,3}
+ # Hypertext SDK documentation
+ insinto /usr/share/doc/${PF}/html/sdk
+ doins ${WORKDIR}/${PN}-sdk-doc/*
+ # Demo programs
+ mkdir ${D}/usr/share/ncbi
+ mv ${S}/demo ${D}/usr/share/ncbi/demo
+ mv ${S}/regexp/demo ${D}/usr/share/ncbi/demo/regexp
+ mv ${S}/regexp/test ${D}/usr/share/ncbi/demo/regexp/test
+ fi
+
+ # Shared data (similarity matrices and such) and database directory.
+ insinto /usr/share/ncbi/data
+ doins ${S}/data/*
+ dodir /usr/share/ncbi/formatdb
+
+ # Default config file to set the path for shared data.
+ insinto /etc/ncbi
+ newins ${FILESDIR}/ncbirc .ncbirc
+
+ # Env file to set the location of the config file and BLAST databases.
+ dodir /etc/env.d
+ insinto /etc/env.d
+ doins ${FILESDIR}/21ncbi
+}