summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJustin Lecher <jlec@gentoo.org>2010-02-13 10:49:43 +0000
committerJustin Lecher <jlec@gentoo.org>2010-02-13 10:49:43 +0000
commit631c3c03a62892cda6ec4adbc3744f804c3330bd (patch)
tree441b055bea1bc4b95f1db6082637e56946a310cb /sci-biology/ncbi-tools
parentFix building with -Wl,--as-needed. (diff)
downloadhistorical-631c3c03a62892cda6ec4adbc3744f804c3330bd.tar.gz
historical-631c3c03a62892cda6ec4adbc3744f804c3330bd.tar.bz2
historical-631c3c03a62892cda6ec4adbc3744f804c3330bd.zip
Fix for bug 268042 and respect LDFLAGS
Package-Manager: portage-2.2_rc62/cvs/Linux x86_64
Diffstat (limited to 'sci-biology/ncbi-tools')
-rw-r--r--sci-biology/ncbi-tools/ChangeLog10
-rw-r--r--sci-biology/ncbi-tools/Manifest11
-rw-r--r--sci-biology/ncbi-tools/ncbi-tools-20090809-r1.ebuild186
3 files changed, 200 insertions, 7 deletions
diff --git a/sci-biology/ncbi-tools/ChangeLog b/sci-biology/ncbi-tools/ChangeLog
index ec275a52b061..7266a015b18e 100644
--- a/sci-biology/ncbi-tools/ChangeLog
+++ b/sci-biology/ncbi-tools/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for sci-biology/ncbi-tools
-# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sci-biology/ncbi-tools/ChangeLog,v 1.74 2009/12/29 21:23:11 fauli Exp $
+# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/sci-biology/ncbi-tools/ChangeLog,v 1.75 2010/02/13 10:49:43 jlec Exp $
+
+*ncbi-tools-20090809-r1 (13 Feb 2010)
+
+ 13 Feb 2010; Justin Lecher (jlec) <jlec@gentoo.org>
+ +ncbi-tools-20090809-r1.ebuild:
+ Build spidey per bug 268042 and respect LDFLAGS
29 Dec 2009; Christian Faulhammer <fauli@gentoo.org>
ncbi-tools-20090809.ebuild:
diff --git a/sci-biology/ncbi-tools/Manifest b/sci-biology/ncbi-tools/Manifest
index f9c265f1777c..b88139aba4ee 100644
--- a/sci-biology/ncbi-tools/Manifest
+++ b/sci-biology/ncbi-tools/Manifest
@@ -19,13 +19,14 @@ EBUILD ncbi-tools-20061015-r1.ebuild 6516 RMD160 71ce04a50d4112108796258757fb10d
EBUILD ncbi-tools-20070826.ebuild 7143 RMD160 4c276b590925dfd3d31e354a2942db4e502adcd9 SHA1 f6a50ad5f18b56490f542fd8ba641142df202b4f SHA256 34d6b65d94e7ce07a21aa691618dbabaa0e20655b86ab01f98f1681ed3e675aa
EBUILD ncbi-tools-20080302.ebuild 7142 RMD160 e3075bab7683b75cf57d6d05649d439a4c97889a SHA1 cbf189eb91175135b765d532eed3569a1b254900 SHA256 c68218365e73bb1cc38bf7e7003d52789e39bd23e5a77a6ed94a75441cff5b33
EBUILD ncbi-tools-20090301.ebuild 6144 RMD160 0251429f54617b235813f815347e1e75bb2ac5a7 SHA1 7d5eb45821fbb49e8540a3c1cbd5ac4ee49d6c5e SHA256 a51f35b5ab07e2b24088f3d5e0075acc57bf257514fd9d0697126c88eb59091b
+EBUILD ncbi-tools-20090809-r1.ebuild 6369 RMD160 53e310cb8c26e3c558ce5b05e1983cdff8ecfd1b SHA1 a6cc52cedd9c150d3357c302d41fbea9632146d1 SHA256 25fb0726fd7c7a31622037dea83f14af0dbb640eb61a66c5ebd11d8a8f8289a1
EBUILD ncbi-tools-20090809.ebuild 6127 RMD160 23763565ce6c23fd416d31666403c626bf23a08c SHA1 71c96de94e8ebfd23bbd99bb9a7bc897fcfb6979 SHA256 858fcfff115b3eaeb4e11dae74c029173e0b5a4e195c656189354570790f2a3a
-MISC ChangeLog 15164 RMD160 a288edb749a2665a1fc445e3f0b4da5af3d3cad4 SHA1 b4af0eeff9c8d5850e8898fedad111e381069e0a SHA256 524cd82bd53154efc0421511e03f1c6962861f8870aab55fcfec38423995c308
+MISC ChangeLog 15341 RMD160 1ced9f053b7076d8a61d4a10985ea909d048bf13 SHA1 f96f4c65bf3133b30d2f0b62933cbb23c30c7ae8 SHA256 f4976eeaab4daa28d6c83bb62c94c48432916f277774c0eef213d0d6a7d32864
MISC metadata.xml 259 RMD160 d9d81b67d635fabd81aef8ae0edf971211ae9072 SHA1 8e32f751c67ff891fa35405a2cf6fb33752d6eb1 SHA256 541c3fbcf299d9a8ccf4132ee61f9e53a5d737cefdaa6fdc77764d8d4c7f3110
-----BEGIN PGP SIGNATURE-----
-Version: GnuPG v2.0.11 (GNU/Linux)
+Version: GnuPG v2.0.14 (GNU/Linux)
-iEYEARECAAYFAks6c0cACgkQNQqtfCuFnePKkwCgkPPsU+KVx4IeT1Pm5IozGX9r
-rkYAoJYS4j8OTYnMNjGg7FtmhguKk7um
-=69yz
+iEYEARECAAYFAkt2g80ACgkQgAnW8HDreRaz7ACdE45eUqGx8NUGc6UbTOyy+tp4
+Y4QAoKJp9ZkyGPL8R3UHSu3Z2nRqdPOX
+=aKqQ
-----END PGP SIGNATURE-----
diff --git a/sci-biology/ncbi-tools/ncbi-tools-20090809-r1.ebuild b/sci-biology/ncbi-tools/ncbi-tools-20090809-r1.ebuild
new file mode 100644
index 000000000000..780ce6fff16c
--- /dev/null
+++ b/sci-biology/ncbi-tools/ncbi-tools-20090809-r1.ebuild
@@ -0,0 +1,186 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sci-biology/ncbi-tools/ncbi-tools-20090809-r1.ebuild,v 1.1 2010/02/13 10:49:43 jlec Exp $
+
+EAPI="2"
+
+inherit flag-o-matic toolchain-funcs eutils
+
+DESCRIPTION="Development toolkit and applications for computational biology, including NCBI BLAST"
+LICENSE="public-domain"
+HOMEPAGE="http://www.ncbi.nlm.nih.gov/"
+SRC_URI="ftp://ftp.ncbi.nlm.nih.gov/toolbox/ncbi_tools/old/${PV}/ncbi.tar.gz -> ${P}.tar.gz"
+
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~ppc64 ~x86"
+
+# IUSE=mpi deprecated, use sci-biology/mpiblast separately
+IUSE="doc X"
+
+RDEPEND="app-shells/tcsh
+ dev-lang/perl
+ media-libs/libpng
+ X? ( x11-libs/openmotif )"
+DEPEND="${RDEPEND}"
+
+S="${WORKDIR}/ncbi"
+
+EXTRA_VIB="asn2all asn2asn"
+
+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_prepare() {
+ epatch "${FILESDIR}"/${PN}-extra_vib.patch
+
+ if use ppc || use ppc64; then
+ epatch "${FILESDIR}"/${PN}-lop.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} ${LDFLAGS}/" \
+ -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} ${LDFLAGS}/" \
+ -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} ${LDFLAGS}/" \
+ -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} ${LDFLAGS}/" \
+ -e "s/NCBI_OPTFLAG = -O2/NCBI_OPTFLAG = ${CFLAGS}/" \
+ -i ppclinux.ncbi.mk || die
+ # ... on generic 64-bit Linux...
+ sed -e "s/NCBI_CFLAGS1 = -c/NCBI_CFLAGS1 = -c ${CFLAGS}/" \
+ -e "s/NCBI_LDFLAGS1 = -O3/NCBI_LDFLAGS1 = ${CFLAGS} ${LDFLAGS}/" \
+ -e "s/NCBI_OPTFLAG = -O3/NCBI_OPTFLAG = ${CFLAGS}/" \
+ -i linux64.ncbi.mk || die
+ # ... on generic Linux.
+ sed -e "s/NCBI_CFLAGS1 = -c/NCBI_CFLAGS1 = -c ${CFLAGS}/" \
+ -e "s/NCBI_LDFLAGS1 = -O3/NCBI_LDFLAGS1 = ${CFLAGS} ${LDFLAGS}/" \
+ -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 64-bit Linux...
+ sed -i -e "s/NCBI_CC = gcc/NCBI_CC = $(tc-getCC)/" linux64.ncbi.mk || die
+ # ... on generic Linux.
+ sed -i -e "s/NCBI_CC = gcc/NCBI_CC = $(tc-getCC)/" linux.ncbi.mk || die
+
+ # We use dynamic libraries
+ sed -i -e "s/-Wl,-Bstatic//" *linux*.ncbi.mk || die
+}
+
+src_compile() {
+ export EXTRA_VIB
+ 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
+ cd "${S}"/demo
+ emake \
+ -f ../make/makenet.unx \
+ CC="$(tc-getCC) ${CFLAGS} -I../include -L../lib" \
+ LDFLAGS="${LDFLAGS}" \
+ spidey || die
+ cp spidey ../bin/ || die
+}
+
+src_install() {
+ dobin "${S}"/bin/* || die "Failed to install binaries."
+ for i in ${EXTRA_VIB}; do
+ dobin "${S}"/build/${i} || die "Failed to install binaries."
+ done
+ 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."
+
+ # TODO: wwwblast with webapps
+ #insinto /usr/share/ncbi/lib/cgi
+ #doins ${S}/cgi/*
+ #insinto /usr/share/ncbi/lib/real
+ #doins ${S}/real/*
+
+ # 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
+ # 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."
+}