diff options
author | Olivier Fisette <ribosome@gentoo.org> | 2004-12-23 18:47:51 +0000 |
---|---|---|
committer | Olivier Fisette <ribosome@gentoo.org> | 2004-12-23 18:47:51 +0000 |
commit | 4c489cccd4717b51564e3e3f9e839f18093e51c4 (patch) | |
tree | ba77f2b0fb9d1185303be9545f90caa34fcff6e3 /sci-biology/ncbi-tools/ncbi-tools-20040616.ebuild | |
parent | Moving to sci-biology/ncbi-tools (diff) | |
download | gentoo-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.ebuild | 165 |
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 +} |