aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Mokrejš <mmokrejs@fold.natur.cuni.cz>2015-01-15 00:43:07 +0100
committerMartin Mokrejš <mmokrejs@fold.natur.cuni.cz>2015-01-15 00:43:07 +0100
commit2cdc6106ceb9e5c89caccfa078a359df07d8ec0c (patch)
treec9793db6a7fa039cff439f30b767883ff787105b
parentdrop old version which already landed in main tree; add ebuild for new version (diff)
downloadsci-2cdc6106ceb9e5c89caccfa078a359df07d8ec0c.tar.gz
sci-2cdc6106ceb9e5c89caccfa078a359df07d8ec0c.tar.bz2
sci-2cdc6106ceb9e5c89caccfa078a359df07d8ec0c.zip
sci-biology/ncbi-blast+: new package, ebuild derived from ncbi-tools++-12.0.0.ebuild with a Debian patch
-rw-r--r--sci-biology/ncbi-blast+/ChangeLog11
-rw-r--r--sci-biology/ncbi-blast+/Manifest1
-rw-r--r--sci-biology/ncbi-blast+/files/disable-testsuite-compilation.txt3
-rw-r--r--sci-biology/ncbi-blast+/files/fix_lib_deps.patch668
-rw-r--r--sci-biology/ncbi-blast+/metadata.xml9
-rw-r--r--sci-biology/ncbi-blast+/ncbi-blast+-2.2.30.ebuild351
6 files changed, 1043 insertions, 0 deletions
diff --git a/sci-biology/ncbi-blast+/ChangeLog b/sci-biology/ncbi-blast+/ChangeLog
new file mode 100644
index 000000000..819f1f40c
--- /dev/null
+++ b/sci-biology/ncbi-blast+/ChangeLog
@@ -0,0 +1,11 @@
+# ChangeLog for sci-biology/ncbi-blast+
+# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
+# $Header: $
+
+*ncbi-blast+-2.2.30 (14 Jan 2015)
+
+ 14 Jan 2015; Martin Mokrejs <mmokrejs@fold.natur.cuni.cz>
+ +ncbi-blast+-2.2.30.ebuild, +files/disable-testsuite-compilation.txt,
+ +files/fix_lib_deps.patch, +metadata.xml:
+ ebuild derived from ncbi-tools++-12.0.0.ebuild with a Debian patch
+
diff --git a/sci-biology/ncbi-blast+/Manifest b/sci-biology/ncbi-blast+/Manifest
new file mode 100644
index 000000000..9fbe3ef98
--- /dev/null
+++ b/sci-biology/ncbi-blast+/Manifest
@@ -0,0 +1 @@
+DIST ncbi-blast-2.2.30+-src.tar.gz 18985378 SHA256 26f72d51c81b9497f33b7274109565c36692572faef4d72377f79b7e59910e40 SHA512 501727486aaa384ee5c40368332243ec2e19f22ab88f50c9396b4d33738bde4dbb5d3a1025ae599c1b5f4b4dd3d065ba4d0eb30305f42bfc781c95bbc4140a17 WHIRLPOOL 64f63fdf1502f3d069ffa645b378fb50469d689b70eefbbc85e04bbe4ae896d1e4dfc860a81e2d7c27bc9484eb6a9651ac02ee1d712b9a511d33a9be241154e9
diff --git a/sci-biology/ncbi-blast+/files/disable-testsuite-compilation.txt b/sci-biology/ncbi-blast+/files/disable-testsuite-compilation.txt
new file mode 100644
index 000000000..aeaf75e45
--- /dev/null
+++ b/sci-biology/ncbi-blast+/files/disable-testsuite-compilation.txt
@@ -0,0 +1,3 @@
+.*
+-.*/test
+-.*/unit_test
diff --git a/sci-biology/ncbi-blast+/files/fix_lib_deps.patch b/sci-biology/ncbi-blast+/files/fix_lib_deps.patch
new file mode 100644
index 000000000..13dffeee7
--- /dev/null
+++ b/sci-biology/ncbi-blast+/files/fix_lib_deps.patch
@@ -0,0 +1,668 @@
+Subject: ensure that all libraries link against all direct dependencies
+
+ * src/**/Makefile.*.lib: set DLL_(D)LIB correctly. Break the dependency
+ loop between libxblast and libxalgoblastdbindex by having the former
+ provide only the C++ BLAST API, leaving the C core only in libblast.
+ * src/build-system/library_relations.txt: Change xblast's
+ relationship to blast from includes to needs, accordingly.
+ * src/algo/blast/dbindex*/*/Makefile.*.app: Link against libxconnect
+ rather than libconnect for consistency with libblast, which uses the
+ former to keep the aforementioned cycle-breaking from causing
+ inconsistency elsewhere.
+
+Debian-Bug: 633567.
+Author: Aaron M. Ucko <ucko@debian.org>
+Last-Update: 2014-12-02
+--- a/c++/src/algo/blast/core/Makefile.blast.lib
++++ b/c++/src/algo/blast/core/Makefile.blast.lib
+@@ -21,6 +21,7 @@ LIB = blast
+ CFLAGS = $(FAST_CFLAGS)
+ LDFLAGS = $(FAST_LDFLAGS)
+
++DLL_LIB = composition_adjustment xconnect tables
+
+ WATCHERS = madden camacho
+
+--- a/c++/src/algo/blast/dbindex/Makefile.xalgoblastdbindex.lib
++++ b/c++/src/algo/blast/dbindex/Makefile.xalgoblastdbindex.lib
+@@ -11,6 +11,8 @@ SRC = sequence_istream_fasta \
+ CXXFLAGS = -DDO_INLINE $(FAST_CXXFLAGS)
+ LDFLAGS = $(FAST_LDFLAGS)
+
++DLL_LIB = blast seqdb xobjread xobjutil xobjmgr seqset seq xser xutil xncbi
++
+ ASN_DEP = seqset
+
+ WATCHERS = morgulis
+--- a/c++/src/algo/blast/format/Makefile.xblastformat.lib
++++ b/c++/src/algo/blast/format/Makefile.xblastformat.lib
+@@ -7,7 +7,8 @@ SRC = blastfmtutil blastxml_format blast
+
+ CPPFLAGS = -DNCBI_MODULE=BLASTFORMAT $(ORIG_CPPFLAGS)
+
+-DLL_LIB = align_format blastxml blastxml2 xhtml xcgi
++DLL_LIB = xblast align_format xalnmgr xobjmgr xnetblast scoremat blastxml \
++ seq general xser tables xncbi blastxml2
+
+ WATCHERS = jianye zaretska madden camacho fongah2
+
+--- a/c++/src/algo/winmask/Makefile.xalgowinmask.lib
++++ b/c++/src/algo/winmask/Makefile.xalgowinmask.lib
+@@ -21,7 +21,7 @@ SRC = seq_masker seq_masker_score_mean s
+ CXXFLAGS = $(FAST_CXXFLAGS)
+ LDFLAGS = $(FAST_LDFLAGS)
+
+-
++DLL_LIB = seqmasks_io xobjread xobjutil xobjmgr seq xncbi
+
+ USES_LIBRARIES = \
+ seqmasks_io
+--- a/c++/src/cgi/Makefile.cgi.lib
++++ b/c++/src/cgi/Makefile.cgi.lib
+@@ -9,6 +9,8 @@ SRC = ncbicgi cgiapp cgictx ncbicgir ncb
+ user_agent
+ LIB = xcgi
+
++DLL_LIB = xutil xncbi
++
+ CPPFLAGS = $(ORIG_CPPFLAGS) $(FASTCGI_INCLUDE)
+
+ WATCHERS = vakatov
+--- a/c++/src/html/Makefile.html.lib
++++ b/c++/src/html/Makefile.html.lib
+@@ -7,6 +7,8 @@ SRC = node html htmlhelper page pager se
+ commentdiag indentstream html_exception writer_htmlenc
+ LIB = xhtml
+
++DLL_LIB = xncbi
++
+ WATCHERS = ivanov
+
+
+--- a/c++/src/objects/blast/Makefile.xnetblastcli.lib
++++ b/c++/src/objects/blast/Makefile.xnetblastcli.lib
+@@ -3,6 +3,7 @@ ASN_DEP = xnetblast
+ LIB = xnetblastcli
+ SRC = blastclient blastclient_
+
++DLL_LIB = xnetblast xser xconnect xutil xncbi
+
+ USES_LIBRARIES = \
+ xconnect xnetblast
+--- a/c++/src/objtools/align_format/Makefile.align_format.lib
++++ b/c++/src/objtools/align_format/Makefile.align_format.lib
+@@ -13,6 +13,10 @@ SRC = format_flags align_format_util sho
+
+ CPPFLAGS = -DNCBI_MODULE=BLASTFORMAT $(ORIG_CPPFLAGS)
+
++DLL_LIB = xalnmgr ncbi_xloader_genbank seqdb blast_services xobjread xobjutil \
++ xobjmgr xnetblast blastdb gene_info seqset seq general xser \
++ xcgi xhtml tables xncbi
++
+ ### EXAMPLES OF OTHER SETTINGS THAT MIGHT BE OF INTEREST
+ # CFLAGS = $(FAST_CFLAGS)
+ # CXXFLAGS = $(FAST_CXXFLAGS)
+--- a/c++/src/objtools/alnmgr/Makefile.alnmgr.lib
++++ b/c++/src/objtools/alnmgr/Makefile.alnmgr.lib
+@@ -12,7 +12,7 @@ SRC = aln_builders aln_converters aln_ge
+
+ WATCHERS = todorov dicuccio grichenk
+
+-
++DLL_LIB = xobjmgr seqset seq xser tables xncbi
+
+ USES_LIBRARIES = \
+ tables xobjutil
+--- a/c++/src/objtools/readers/Makefile.xobjread.lib
++++ b/c++/src/objtools/readers/Makefile.xobjread.lib
+@@ -21,7 +21,7 @@ SRC = read_util format_guess_ex \
+ message_listener line_error
+
+
+-DLL_LIB = creaders
++DLL_LIB = submit seqset seq pub general xser creaders sequtil xutil xncbi
+
+
+
+--- a/c++/src/objtools/seqmasks_io/Makefile.seqmasks_io.lib
++++ b/c++/src/objtools/seqmasks_io/Makefile.seqmasks_io.lib
+@@ -12,7 +12,7 @@ mask_writer_seqloc \
+ mask_writer_blastdb_maskinfo
+
+ ASN_DEP = seqset
+-DLL_LIB = seqdb blastdb
++DLL_LIB = seqdb xobjread xobjutil xobjmgr blastdb seqset seq xser xncbi
+
+ WATCHERS = morgulis camacho
+
+--- a/c++/src/objtools/simple/Makefile.xobjsimple.lib
++++ b/c++/src/objtools/simple/Makefile.xobjsimple.lib
+@@ -7,6 +7,8 @@ WATCHERS = jcherry
+
+ ASN_DEP = seqset
+
++DLL_LIB = ncbi_xloader_genbank xobjmgr seq xncbi
++
+ LIB = xobjsimple
+ SRC = simple_om
+
+--- a/c++/src/objtools/blast/seqdb_reader/Makefile.seqdb.lib
++++ b/c++/src/objtools/blast/seqdb_reader/Makefile.seqdb.lib
+@@ -24,6 +24,8 @@ seqdbobj
+
+ LIB = seqdb
+
++DLL_LIB = blastdb xobjmgr seq general xser sequtil xncbi
++
+ CFLAGS = $(FAST_CFLAGS)
+ CPPFLAGS = -DNCBI_MODULE=BLASTDB $(ORIG_CPPFLAGS)
+ CXXFLAGS = $(FAST_CXXFLAGS)
+--- a/c++/src/objtools/data_loaders/blastdb/Makefile.ncbi_xloader_blastdb.lib
++++ b/c++/src/objtools/data_loaders/blastdb/Makefile.ncbi_xloader_blastdb.lib
+@@ -7,6 +7,8 @@ CPPFLAGS = -DNCBI_MODULE=BLASTDB $(ORIG_
+
+ ASN_DEP = blastdb seqset
+
++DLL_LIB = seqdb xobjmgr seqset seq xncbi
++
+ WATCHERS = camacho
+
+
+--- a/c++/src/objtools/data_loaders/blastdb/Makefile.ncbi_xloader_blastdb_rmt.lib
++++ b/c++/src/objtools/data_loaders/blastdb/Makefile.ncbi_xloader_blastdb_rmt.lib
+@@ -5,6 +5,8 @@ SRC = bdbloader_rmt remote_blastdb_adapt
+
+ CPPFLAGS = -DNCBI_MODULE=BLASTDB $(ORIG_CPPFLAGS)
+
++DLL_LIB = ncbi_xloader_blastdb blast_services xobjmgr seq xncbi
++
+ ASN_DEP = blastdb xnetblast
+
+ WATCHERS = camacho
+--- a/c++/src/algo/blast/api/Makefile.xblast.lib
++++ b/c++/src/algo/blast/api/Makefile.xblast.lib
+@@ -74,14 +74,15 @@ cdd_pssm_input \
+ deltablast_options \
+ deltablast
+
+-SRC = $(SRC_C:%=.core_%) $(SRC_CXX)
++SRC = $(SRC_CXX) # $(SRC_C:%=.core_%)
+
+ LIB = xblast
+
+ DLL_LIB = xalgoblastdbindex composition_adjustment xalgowinmask \
+ xalgodustmask seqmasks_io seqdb $(OBJREAD_LIBS) xobjutil \
+ blastdb xnetblastcli xnetblast scoremat xconnect tables \
+- $(SOBJMGR_LIBS)
++ $(SOBJMGR_LIBS) blast seqdb seqset seq general \
++ xser xconnect sequtil tables xutil xncbi
+
+ CFLAGS = $(FAST_CFLAGS)
+ CPPFLAGS = -DNCBI_MODULE=BLAST $(ORIG_CPPFLAGS)
+--- a/c++/src/algo/blast/blastinput/Makefile.blastinput.lib
++++ b/c++/src/algo/blast/blastinput/Makefile.blastinput.lib
+@@ -24,7 +24,9 @@ SRC = $(SRC_CXX)
+
+ LIB = blastinput
+
+-DLL_LIB = xblast align_format ncbi_xloader_blastdb_rmt ncbi_xloader_blastdb seqdb $(OBJREAD_LIBS) $(OBJMGR_LIBS) xutil
++ DLL_LIB = xblast align_format ncbi_xloader_blastdb_rmt ncbi_xloader_blastdb seqdb xobjread \
++ $(OBJREAD_LIBS) $(OBJMGR_LIBS) xutil ncbi_xloader_genbank ncbi_xreader_id2 ncbi_xreader \
++ scoremat seqset seq xser xutil xncbi
+
+ # should be redundant, given the above :-/
+ ASN_DEP = seqset xnetblast
+--- a/c++/src/algo/dustmask/Makefile.xalgodustmask.lib
++++ b/c++/src/algo/dustmask/Makefile.xalgodustmask.lib
+@@ -8,6 +8,8 @@ LIB = xalgodustmask
+
+ SRC = symdust
+
++DLL_LIB = xobjmgr seq xncbi
++
+ CXXFLAGS = $(FAST_CXXFLAGS)
+ LDFLAGS = $(FAST_LDFLAGS)
+
+--- a/c++/src/connect/Makefile.xconnect.lib
++++ b/c++/src/connect/Makefile.xconnect.lib
+@@ -14,6 +14,8 @@ UNIX_SRC = $(LOCAL_LBSM)
+ LIB = xconnect
+ PROJ_TAG = core
+
++DLL_LIB = xncbi
++
+ LIBS = $(NETWORK_LIBS) $(ORIG_LIBS)
+
+ WATCHERS = lavr
+--- a/c++/src/connect/ext/Makefile.xconnext.lib
++++ b/c++/src/connect/ext/Makefile.xconnext.lib
+@@ -6,6 +6,8 @@ SRC = $(SRC_C) ncbi_dblb_svcmapper
+
+ LIB = xconnext
+
++DLL_LIB = xconnect xncbi
++
+ WATCHERS = lavr
+
+
+--- a/c++/src/objects/blast/Makefile.blast.lib
++++ b/c++/src/objects/blast/Makefile.blast.lib
+@@ -1,6 +1,8 @@
+ LIB = xnetblast
+ SRC = blast__ blast___ names
+
++DLL_LIB = scoremat seqset seq xser xncbi
++
+ WATCHERS = camacho
+
+
+--- a/c++/src/objects/blastxml/Makefile.blastxml.lib
++++ b/c++/src/objects/blastxml/Makefile.blastxml.lib
+@@ -1,6 +1,8 @@
+ LIB = blastxml
+ SRC = blastxml__ blastxml___
+
++DLL_LIB = xser xncbi
++
+
+ USES_LIBRARIES = \
+ xser
+--- a/c++/src/objects/scoremat/Makefile.scoremat.lib
++++ b/c++/src/objects/scoremat/Makefile.scoremat.lib
+@@ -1,6 +1,8 @@
+ LIB = scoremat
+ SRC = scoremat__ scoremat___
+
++DLL_LIB = seqset seq general xser xncbi
++
+
+ USES_LIBRARIES = \
+ seqset
+--- a/c++/src/objects/seqedit/Makefile.seqedit.lib
++++ b/c++/src/objects/seqedit/Makefile.seqedit.lib
+@@ -1,6 +1,7 @@
+ LIB = seqedit
+ SRC = seqedit__ seqedit___
+-
++
++DLL_LIB = seqset seq general xser xncbi
+
+
+ USES_LIBRARIES = \
+--- a/c++/src/objects/submit/Makefile.submit.lib
++++ b/c++/src/objects/submit/Makefile.submit.lib
+@@ -1,6 +1,8 @@
+ LIB = submit
+ SRC = submit__ submit___
+
++DLL_LIB = seqset seq biblio general xser xncbi
++
+
+ USES_LIBRARIES = \
+ seqset
+--- a/c++/src/objmgr/util/Makefile.util.lib
++++ b/c++/src/objmgr/util/Makefile.util.lib
+@@ -8,6 +8,8 @@ ASN_DEP = submit
+ SRC = weight sequence feature seqtitle create_defline obj_sniff seq_loc_util seq_align_util seq_trimmer bioseqgaps_ci
+ LIB = xobjutil
+
++DLL_LIB = xobjmgr seqset seq pub biblio general xser sequtil xutil xncbi
++
+ WATCHERS = ucko vasilche kornbluh
+
+
+--- a/c++/src/objtools/blast/blastdb_format/Makefile.blastdb_format.lib
++++ b/c++/src/objtools/blast/blastdb_format/Makefile.blastdb_format.lib
+@@ -11,6 +11,7 @@ SRC = seq_writer blastdb_dataextract bla
+
+ CPPFLAGS = -DNCBI_MODULE=BLASTDB $(ORIG_CPPFLAGS)
+
++DLL_LIB = seqdb xobjutil xobjmgr seq xser sequtil xutil xncbi
+
+ ### EXAMPLES OF OTHER SETTINGS THAT MIGHT BE OF INTEREST
+ # CFLAGS = $(FAST_CFLAGS)
+--- a/c++/src/objtools/blast/services/Makefile.blast_services.lib
++++ b/c++/src/objtools/blast/services/Makefile.blast_services.lib
+@@ -8,6 +8,8 @@ SRC = blast_services
+
+ LIB = blast_services
+
++DLL_LIB = xnetblastcli xnetblast xser xconnect xutil xncbi
++
+ CFLAGS = $(FAST_CFLAGS)
+ CPPFLAGS = -DNCBI_MODULE=NETBLAST $(ORIG_CPPFLAGS)
+ CXXFLAGS = $(FAST_CXXFLAGS)
+--- a/c++/src/objtools/data_loaders/genbank/Makefile.ncbi_xloader_genbank.lib
++++ b/c++/src/objtools/data_loaders/genbank/Makefile.ncbi_xloader_genbank.lib
+@@ -12,6 +12,9 @@ LIB_OR_DLL = both
+ # Dependencies for shared library
+ DLL_LIB = ncbi_xreader$(DLL)
+
++DLL_DLIB = ncbi_xreader_cache ncbi_xreader_id1 ncbi_xreader_id2 \
++ id2 id1 ncbi_xreader xobjmgr seq xutil xncbi
++
+ WATCHERS = vasilche
+
+
+--- a/c++/src/objtools/data_loaders/genbank/Makefile.ncbi_xreader.lib
++++ b/c++/src/objtools/data_loaders/genbank/Makefile.ncbi_xreader.lib
+@@ -15,6 +15,9 @@ LIB_OR_DLL = both
+ DLL_LIB =
+ DLL_DLIB = $(GENBANK_READER_LDEP)
+
++DLL_DLIB = xobjmgr id2 seqsplit id1 seqset seq general \
++ xser xconnect xcompress xutil xncbi
++
+ WATCHERS = vasilche
+
+
+--- a/c++/src/objtools/data_loaders/genbank/cache/Makefile.ncbi_xreader_cache.lib
++++ b/c++/src/objtools/data_loaders/genbank/cache/Makefile.ncbi_xreader_cache.lib
+@@ -12,6 +12,8 @@ LIB_OR_DLL = both
+ # Dependencies for shared library
+ DLL_LIB = ncbi_xreader$(DLL)
+
++DLL_DLIB = ncbi_xreader xobjmgr seq xser xncbi
++
+ CPPFLAGS = $(ORIG_CPPFLAGS) $(CMPRS_INCLUDE)
+
+ WATCHERS = vasilche
+--- a/c++/src/objtools/data_loaders/genbank/id1/Makefile.ncbi_xreader_id1.lib
++++ b/c++/src/objtools/data_loaders/genbank/id1/Makefile.ncbi_xreader_id1.lib
+@@ -12,6 +12,8 @@ LIB_OR_DLL = both
+ # Dependencies for shared library
+ DLL_LIB = xconnect ncbi_xreader$(DLL)
+
++DLL_DLIB = ncbi_xreader xobjmgr id1 seq general xser xconnect xutil xncbi
++
+ CPPFLAGS = $(ORIG_CPPFLAGS) $(CMPRS_INCLUDE)
+
+ WATCHERS = vasilche
+--- a/c++/src/objtools/data_loaders/genbank/id2/Makefile.ncbi_xreader_id2.lib
++++ b/c++/src/objtools/data_loaders/genbank/id2/Makefile.ncbi_xreader_id2.lib
+@@ -12,7 +12,10 @@ LIB_OR_DLL = both
+ CPPFLAGS = $(ORIG_CPPFLAGS) $(Z_INCLUDE)
+
+ # Dependencies for shared library (disabled due to problems on Darwin)
+-# DLL_LIB = xconnect ncbi_xreader$(DLL)
++DLL_LIB = xconnect ncbi_xreader$(DLL)
++
++DLL_DLIB = ncbi_xreader xobjmgr id2 seqsplit seq xser xconnect xncbi
++
+
+ WATCHERS = vasilche
+
+--- a/c++/src/util/compress/api/Makefile.compress.lib
++++ b/c++/src/util/compress/api/Makefile.compress.lib
+@@ -7,7 +7,7 @@ LIB = xcompress
+
+ CPPFLAGS = $(ORIG_CPPFLAGS) $(CMPRS_INCLUDE)
+
+-DLL_LIB = $(BZ2_LIB) $(Z_LIB) $(LZO_LIB)
++DLL_LIB = $(BZ2_LIB) $(Z_LIB) $(LZO_LIB) xutil xncbi
+ LIBS = $(BZ2_LIBS) $(Z_LIBS) $(LZO_LIBS) $(ORIG_LIBS)
+
+ WATCHERS = ivanov
+--- a/c++/src/util/sequtil/Makefile.sequtil.lib
++++ b/c++/src/util/sequtil/Makefile.sequtil.lib
+@@ -3,6 +3,8 @@
+ LIB = sequtil
+ SRC = sequtil sequtil_convert sequtil_convert_imp sequtil_manip sequtil_tables sequtil_shared
+
++DLL_LIB = xncbi
++
+ WATCHERS = shomrat
+
+
+--- a/c++/src/corelib/Makefile.test_boost.lib
++++ b/c++/src/corelib/Makefile.test_boost.lib
+@@ -3,6 +3,8 @@
+ SRC = test_boost teamcity_messages
+ LIB = test_boost
+
++DLL_LIB = xncbi
++
+ CPPFLAGS = $(ORIG_CPPFLAGS) $(BOOST_INCLUDE)
+
+ REQUIRES = Boost.Test.Included
+--- a/c++/src/corelib/Makefile.test_mt.lib
++++ b/c++/src/corelib/Makefile.test_mt.lib
+@@ -3,6 +3,8 @@
+ SRC = test_mt
+ LIB = test_mt
+
++DLL_LIB = xncbi
++
+ # REQUIRES = MT
+
+ USE_PCH = no
+--- a/c++/src/objects/biblio/Makefile.biblio.lib
++++ b/c++/src/objects/biblio/Makefile.biblio.lib
+@@ -1,6 +1,8 @@
+ LIB = biblio
+ SRC = biblio__ biblio___ citation_base
+
++DLL_LIB = general xser xncbi
++
+
+ USES_LIBRARIES = \
+ general
+--- a/c++/src/objects/blastdb/Makefile.blastdb.lib
++++ b/c++/src/objects/blastdb/Makefile.blastdb.lib
+@@ -1,5 +1,7 @@
+ # $Id: Makefile.blastdb.lib 427424 2014-02-20 13:38:50Z gouriano $
+
++
++DLL_LIB = seq xser xncbi
+ LIB = blastdb
+ SRC = blastdb__ blastdb___
+
+--- a/c++/src/objects/general/Makefile.general.lib
++++ b/c++/src/objects/general/Makefile.general.lib
+@@ -1,6 +1,8 @@
+ LIB = general
+ SRC = general__ general___ uoconv
+
++DLL_LIB = xser xncbi
++
+
+ USES_LIBRARIES = \
+ xser
+--- a/c++/src/objects/genomecoll/Makefile.genome_collection.lib
++++ b/c++/src/objects/genomecoll/Makefile.genome_collection.lib
+@@ -3,6 +3,8 @@
+ LIB = genome_collection
+ SRC = genome_collection__ genome_collection___
+
++DLL_LIB = seq general xser xncbi
++
+ WATCHERS = dicuccio
+
+
+--- a/c++/src/objects/id1/Makefile.id1.lib
++++ b/c++/src/objects/id1/Makefile.id1.lib
+@@ -3,6 +3,8 @@ ASN_DEP = seq
+ LIB = id1
+ SRC = id1__ id1___
+
++DLL_LIB = seqset seq xser xncbi
++
+ WATCHERS = vasilche
+
+
+--- a/c++/src/objects/id2/Makefile.id2.lib
++++ b/c++/src/objects/id2/Makefile.id2.lib
+@@ -1,6 +1,8 @@
+ LIB = id2
+ SRC = id2__ id2___
+
++DLL_LIB = seqsplit seq xser xncbi
++
+ WATCHERS = vasilche
+
+
+--- a/c++/src/objects/medline/Makefile.medline.lib
++++ b/c++/src/objects/medline/Makefile.medline.lib
+@@ -1,6 +1,8 @@
+ LIB = medline
+ SRC = medline__ medline___
+
++DLL_LIB = biblio general xser xncbi
++
+
+ USES_LIBRARIES = \
+ biblio
+--- a/c++/src/objects/pub/Makefile.pub.lib
++++ b/c++/src/objects/pub/Makefile.pub.lib
+@@ -1,6 +1,8 @@
+ LIB = pub
+ SRC = pub__ pub___
+
++DLL_LIB = medline biblio xser xncbi
++
+
+ USES_LIBRARIES = \
+ medline
+--- a/c++/src/objects/seq/Makefile.seq.lib
++++ b/c++/src/objects/seq/Makefile.seq.lib
+@@ -12,6 +12,8 @@ SRC = $(ASN:%=%__) $(ASN:%=%___) seqport
+ seq_loc_mapper_base seq_align_mapper_base seqlocinfo sofa_map \
+ seq_loc_from_string seq_loc_reverse_complementer
+
++DLL_LIB = seqcode pub biblio general xser sequtil xutil xncbi
++
+ WATCHERS = vasilche grichenk
+
+
+--- a/c++/src/objects/seqcode/Makefile.seqcode.lib
++++ b/c++/src/objects/seqcode/Makefile.seqcode.lib
+@@ -1,6 +1,8 @@
+ LIB = seqcode
+ SRC = seqcode__ seqcode___
+
++DLL_LIB = xser xncbi
++
+
+ USES_LIBRARIES = \
+ xser
+--- a/c++/src/objects/seqset/Makefile.seqset.lib
++++ b/c++/src/objects/seqset/Makefile.seqset.lib
+@@ -1,6 +1,8 @@
+ LIB = seqset
+ SRC = seqset__ seqset___ gb_release_file
+
++DLL_LIB = seq general xser xncbi
++
+
+ USES_LIBRARIES = \
+ $(SEQ_LIBS) pub
+--- a/c++/src/objects/seqsplit/Makefile.seqsplit.lib
++++ b/c++/src/objects/seqsplit/Makefile.seqsplit.lib
+@@ -1,6 +1,8 @@
+ LIB = seqsplit
+ SRC = seqsplit__ seqsplit___
+
++DLL_LIB = seqset seq xser xncbi
++
+ WATCHERS = vasilche
+
+
+--- a/c++/src/serial/Makefile.serial.lib
++++ b/c++/src/serial/Makefile.serial.lib
+@@ -18,6 +18,8 @@ SRC = \
+
+ LIB = xser
+
++DLL_LIB = xutil xncbi
++
+ WATCHERS = gouriano
+
+
+--- a/c++/src/util/Makefile.util.lib
++++ b/c++/src/util/Makefile.util.lib
+@@ -12,6 +12,7 @@ SRC = random_gen utf8 checksum bytesrc s
+ LIB = xutil
+ PROJ_TAG = core
+
++DLL_LIB = xncbi
+ LIBS = $(ORIG_LIBS)
+
+ WATCHERS = vakatov kornbluh
+--- a/c++/src/util/xregexp/Makefile.xregexp.lib
++++ b/c++/src/util/xregexp/Makefile.xregexp.lib
+@@ -6,7 +6,7 @@ LIB = xregexp
+
+ CPPFLAGS = $(ORIG_CPPFLAGS) $(PCRE_INCLUDE)
+
+-DLL_LIB = $(PCRE_LIB)
++DLL_LIB = $(PCRE_LIB) xncbi
+ LIBS = $(PCRE_LIBS)
+
+ WATCHERS = ivanov
+--- a/c++/src/algo/segmask/Makefile.xalgosegmask.lib
++++ b/c++/src/algo/segmask/Makefile.xalgosegmask.lib
+@@ -8,6 +8,8 @@ LIB = xalgosegmask
+
+ SRC = segmask
+
++DLL_LIB = blast xobjmgr xncbi
++
+ CXXFLAGS = $(FAST_CXXFLAGS)
+ LDFLAGS = $(FAST_LDFLAGS)
+
+--- a/c++/src/objmgr/split/Makefile.id2_split.lib
++++ b/c++/src/objmgr/split/Makefile.id2_split.lib
+@@ -17,7 +17,7 @@ LIB = id2_split
+
+ CPPFLAGS = $(ORIG_CPPFLAGS) $(CMPRS_INCLUDE)
+
+-DLL_LIB = $(SOBJMGR_LIBS)
++DLL_LIB = xobjmgr seqsplit seqset seq general xser xcompress xncbi
+
+ WATCHERS = vasilche
+
+--- a/c++/src/objtools/blast/seqdb_writer/Makefile.writedb.lib
++++ b/c++/src/objtools/blast/seqdb_writer/Makefile.writedb.lib
+@@ -8,6 +8,9 @@ SRC = writedb writedb_impl writedb_volum
+
+ LIB = writedb
+
++DLL_LIB = seqdb xobjread xobjmgr blastdb seqset seq general \
++ xser sequtil xutil xncbi
++
+ CFLAGS = $(FAST_CFLAGS)
+ CPPFLAGS = -DNCBI_MODULE=BLASTDB $(ORIG_CPPFLAGS)
+ CXXFLAGS = $(FAST_CXXFLAGS)
+--- a/c++/src/algo/blast/Makefile.blast_macros.mk
++++ b/c++/src/algo/blast/Makefile.blast_macros.mk
+@@ -18,7 +18,7 @@ BLAST_INPUT_LIBS = blastinput \
+ BLAST_SRA_LIBS=blast_sra $(SRAXF_LIBS) vxf $(SRA_LIBS)
+
+ # BLAST_FORMATTER_LIBS and BLAST_INPUT_LIBS need $BLAST_LIBS
+-BLAST_LIBS = xblast xalgoblastdbindex composition_adjustment \
++BLAST_LIBS = xblast xalgoblastdbindex blast composition_adjustment \
+ xalgodustmask xalgowinmask seqmasks_io seqdb blast_services xobjutil \
+ $(OBJREAD_LIBS) xnetblastcli xnetblast blastdb scoremat tables xalnmgr
+ # BLAST additionally needs xconnect $(SOBJMGR_LIBS) or $(OBJMGR_LIBS)
+--- a/c++/src/algo/blast/dbindex/makeindex/Makefile.makeindex.app
++++ b/c++/src/algo/blast/dbindex/makeindex/Makefile.makeindex.app
+@@ -2,7 +2,7 @@ APP = makembindex
+ SRC = main mkindex_app
+
+ LIB_ = xalgoblastdbindex blast composition_adjustment seqdb blastdb \
+- $(OBJREAD_LIBS) xobjutil tables connect $(SOBJMGR_LIBS)
++ $(OBJREAD_LIBS) xobjutil tables xconnect $(SOBJMGR_LIBS)
+ LIB = $(LIB_:%=%$(STATIC))
+
+ CXXFLAGS = $(FAST_CXXFLAGS)
+--- a/c++/src/build-system/library_relations.txt
++++ b/c++/src/build-system/library_relations.txt
+@@ -1189,7 +1189,7 @@ xasmcompare needs $(SEQ_LIBS)
+ xasmcompare needs pub
+ xasn needs xhtml
+ xasn needs3party $(NCBI_C_ncbi)
+-xblast includes blast
++xblast needs blast
+ xblast needs xalgoblastdbindex
+ xblast needs xalgodustmask
+ xblast needs xalgowinmask
diff --git a/sci-biology/ncbi-blast+/metadata.xml b/sci-biology/ncbi-blast+/metadata.xml
new file mode 100644
index 000000000..2bc893037
--- /dev/null
+++ b/sci-biology/ncbi-blast+/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>sci-biology</herd>
+ <maintainer>
+ <email>mmokrejs@fold.natur.cuni.cz</email>
+ <name>Martin Mokrejs</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/sci-biology/ncbi-blast+/ncbi-blast+-2.2.30.ebuild b/sci-biology/ncbi-blast+/ncbi-blast+-2.2.30.ebuild
new file mode 100644
index 000000000..6b95dc413
--- /dev/null
+++ b/sci-biology/ncbi-blast+/ncbi-blast+-2.2.30.ebuild
@@ -0,0 +1,351 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI=5
+
+inherit eutils flag-o-matic multilib toolchain-funcs
+
+MY_PV="2.2.30"
+MY_P="ncbi-blast-${PV}+-src"
+# workdir/ncbi-blast-2.2.30+-src
+# ftp://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/2.2.30/ncbi-blast-2.2.30+-src.tar.gz
+
+DESCRIPTION="A subset of NCBI C++ Toolkit containing just the NCBI BLAST+"
+HOMEPAGE="http://www.ncbi.nlm.nih.gov/books/bv.fcgi?rid=toolkit"
+SRC_URI="
+ ftp://ftp.ncbi.nih.gov/blast/executables/blast+/${PV}/${MY_P}.tar.gz"
+# http://dev.gentoo.org/~jlec/distfiles/${PN}-${PV#0.}-asneeded.patch.xz"
+
+# should also install ftp://ftp.ncbi.nlm.nih.gov/blast/db/taxdb.tar.gz
+# see http://www.biostars.org/p/76551/ and http://blastedbio.blogspot.cz/2012/05/blast-tabular-missing-descriptions.html
+LICENSE="public-domain"
+SLOT="0"
+IUSE="
+ debug static-libs static threads pch
+ test wxwidgets odbc
+ berkdb boost bzip2 cppunit curl expat fastcgi fltk freetype gif
+ glut gnutls hdf5 icu jpeg lzo mesa mysql muparser opengl pcre png python
+ sablotron sqlite sqlite3 tiff xerces xalan xml xpm xslt X"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+#KEYWORDS=""
+
+# sys-libs/db should be compiled with USE=cxx
+DEPEND="
+ !sci-biology/ncbi-tools++
+ !sci-biology/sra_sdk
+ berkdb? ( sys-libs/db:4.3[cxx] )
+ boost? ( dev-libs/boost )
+ curl? ( net-misc/curl )
+ sqlite? ( dev-db/sqlite )
+ sqlite3? ( dev-db/sqlite:3 )
+ mysql? ( virtual/mysql )
+ fltk? ( x11-libs/fltk )
+ opengl? ( virtual/opengl media-libs/glew )
+ mesa? ( media-libs/mesa[osmesa] )
+ glut? ( media-libs/freeglut )
+ freetype? ( media-libs/freetype )
+ fastcgi? ( www-apache/mod_fastcgi )
+ gnutls? ( net-libs/gnutls )
+ python? ( dev-lang/python )
+ cppunit? ( dev-util/cppunit )
+ icu? ( dev-libs/icu )
+ expat? ( dev-libs/expat )
+ sablotron? ( app-text/sablotron )
+ xml? ( dev-libs/libxml2 )
+ xslt? ( dev-libs/libxslt )
+ xerces? ( dev-libs/xerces-c )
+ xalan? ( dev-libs/xalan-c )
+ muparser? ( dev-cpp/muParser )
+ hdf5? ( sci-libs/hdf5[cxx] )
+ gif? ( media-libs/giflib )
+ jpeg? ( virtual/jpeg )
+ png? ( media-libs/libpng )
+ tiff? ( media-libs/tiff )
+ xpm? ( x11-libs/libXpm )
+ dev-libs/lzo
+ app-arch/bzip2
+ dev-libs/libpcre"
+# USE flags which should be added somehow: wxWindows wxWidgets SP ORBacus ODBC OEChem sge
+# Intentionally omitted USE flags:
+# ftds? ( dev-db/freetds ) # support for outside FreeTDS installations is currently broken.
+# The default (heavily patched) embedded copy should work, or you can
+# leave it off altogether -- the only public apps that make use of it are
+# samples and tests, since NCBI's database servers are of course firewalled.
+
+# seems muParser is required, also glew is required. configure exits otherwise if these are explicitly passed to it (due to USE flag enabled)
+
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/${MY_P}/c++"
+# ncbi-blast-2.2.30+-src/c++
+
+src_prepare() {
+# filter-ldflags -Wl,--as-needed
+# append-ldflags -Wl,--no-undefined
+# sed -i -e 's/-print-file-name=libstdc++.a//' \
+# -e '/sed/ s/\([gO]\[0-9\]\)\*/\1\\+/' \
+# src/build-system/configure || die
+# epatch \
+# "${FILESDIR}"/${PN}-${PV#0.}-fix-order-of-libs.patch \
+# "${FILESDIR}"/curl-types.patch \
+# "${FILESDIR}"/malloc_initialize_upstream_fix.patch \
+# "${FILESDIR}"/respect_CXXFLAGS_configure.ac.patch \
+# "${FILESDIR}"/respect_CXXFLAGS_configure.patch \
+# "${FILESDIR}"/report_project_settings_configure.ac.patch \
+# "${FILESDIR}"/report_project_settings_configure.patch \
+# "${FILESDIR}"/make_install.patch
+
+# "${FILESDIR}"/${PN}-${PV#0.}-disable_test_compress.patch
+
+# "${FILESDIR}"/${PN}-${PV#0.}-gcc46.patch \
+# "${FILESDIR}"/${PN}-${PV#0.}-gcc47.patch \
+# "${WORKDIR}"/${PN}-${PV#0.}-asneeded.patch \
+# "${FILESDIR}"/${PN}-${PV#0.}-libpng15.patch \
+# "${FILESDIR}"/${PN}-${PV#0.}-glibc-214.patch
+
+# use prefix && append-ldflags -Wl,-rpath,"${EPREFIX}/usr/$(get_libdir)/${PN}"
+
+# The conf-opts.patch and as-needed.patch need to be adjusted for 12.0.0 line numbers
+## local PATCHES=(
+## "${FILESDIR}"/${P}-conf-opts.patch
+## "${FILESDIR}"/${P}-fix-svn-URL-upstream.patch
+## "${FILESDIR}"/${P}-linkage-tuneups.patch
+## "${FILESDIR}"/${P}-more-patches.patch
+## "${FILESDIR}"/${P}-linkage-tuneups-addons.patch
+## "${FILESDIR}"/${P}-configure.patch
+## "${FILESDIR}"/${P}-drop-STATIC-from-LIB.patch
+## "${FILESDIR}"/${P}-fix-install.patch
+## )
+ # "${FILESDIR}"/${P}-support-autoconf-2.60.patch
+## epatch ${PATCHES[@]}
+
+ # use a Debian patch from http://anonscm.debian.org/viewvc/debian-med/trunk/packages/ncbi-blast%2B/trunk/debian/patches/fix_lib_deps?revision=18535&view=markup
+ epatch "${FILESDIR}"/fix_lib_deps.patch
+ # make sure this one is the last one and contains the actual patches applied unless we can have autoconf-2.59 or 2.60
+ # https://bugs.gentoo.org/show_bug.cgi?id=514706
+
+ tc-export CXX CC
+
+## cd src/build-system || die
+# eautoreconf
+
+ # Temporarily disabling eautoconf because we patch configure via ${P}-support-autoconf-2.60.patch
+ # eautoconf # keep it disabled until we can ensure 2.59 is installed
+ # beware 12.0.0. and previous required autoconf-2.59, a patch for 12.0.0 brings autoconf-2.60 support
+}
+
+# possibly place modified contents of ${W}/src/build-system/config.site.ncbi and {W}/src/build-system/config.site.ex into ${W}/src/build-system/config.site
+src_configure() {
+ local myconf=()
+ #--without-optimization turn off optimization flags in non-debug mode
+ #--with-profiling build profiled versions of libs and apps
+ #--with-tcheck(=DIR) build for Intel Thread Checker (in DIR)
+ #--with-plugin-auto-load always enable the plugin manager by default
+ #--with-bundles build bundles in addition to dylibs on Mac OS X
+ #--with-bin-release build executables suitable for public release
+ # no dll and such
+ #--with-64 compile to 64-bit code
+ #--with-universal build universal binaries on Mac OS X
+ #--with-universal=CPUs build universal binaries targeting the given CPUs
+ #--without-exe do not build executables
+ #--with-relative-runpath=P specify an executable-relative DLL search path
+ #--with-hard-runpath hard-code runtime path, ignoring LD_LIBRARY_PATH
+ #--with-limited-linker don't attempt to build especially large projects
+ #--with-extra-action= script to call after the configuration is complete
+ #--with-autodep automatic generation of dependencies (GNU make)
+ #--with-fake-root=DIR appear to have been built under DIR
+ #--with-build-root-sfx=X add a user-specified suffix to the build dir name
+ #--without-execopy do not copy built executables to the BIN area
+ #--with-lib-rebuilds ensure that apps use up-to-date libraries
+ #--with-lib-rebuilds=ask ask whether to update each app's libraries
+ #--without-deactivation keep old copies of libraries that no longer build
+ #--without-makefile-auto-update do not auto-update generated makefiles
+ #--with-projects=FILE build projects listed in FILE by default
+ #--without-flat-makefile do not generate an all-encompassing flat makefile
+ #--with-configure-dialog allow interactive flat makefile project selection
+ #--with-saved-settings=F load configuration settings from the file F
+ #--with-check-tools=... use the specified tools for testing
+ #--with-ncbi-public ensure compatibility for all in-house platforms
+ #--with-sybase-local=DIR use local SYBASE install (DIR is optional)
+ #--with-sybase-new use newer SYBASE install (12.5 rather than 12.0)
+ #--without-sp do not use SP libraries
+ #--without-orbacus do not use ORBacus CORBA libraries
+ #--with-orbacus=DIR use ORBacus installation in DIR
+ #--with-jni(=JDK-DIR) build Java bindings (against the JDK in JDK-DIR)
+ #--with-sablot=DIR use Sablotron installation in DIR
+ #--without-sablot, do not use Sablotron
+ #--with-oechem=DIR use OpenEye OEChem installation in DIR
+ #--without-oechem do not use OEChem
+ #--with-sge=DIR use Sun Grid Engine installation in DIR
+ #--without-sge do not use Sun Grid Engine
+ #--with-magic=DIR use libmagic installation in DIR
+ #--without-magic do not use libmagic
+ #--without-local-lbsm turn off support for IPC with locally running LBSMD
+ #--without-ncbi-crypt use a dummy stubbed-out version of ncbi_crypt
+ #--without-connext do not build non-public CONNECT library extensions
+ #--without-serial do not build the serialization library and tools
+ #--without-objects do not generate/build serializeable objects from ASNs
+ #--without-dbapi do not build database connectivity libraries
+ #--without-app do not build standalone applications like ID1_FETCH
+ #--without-gui do not build most graphical projects
+ #--without-algo do not build CPU-intensive algorithms
+ #--without-internal do not build internal projects
+ #--with-gbench ensure that Genome Workbench can be built
+ #--without-gbench do not build Genome Workbench
+ myconf+=(
+ --with-dll
+ --with-lfs
+ --with-build-root="${S}"_build
+ --without-suffix
+ --without-hostspec
+ --without-version
+ --with-bincopy
+ --without-strip
+ --without-ccache
+ --without-distcc
+# --with-ncbi-c
+ --without-ctools
+# --with-sss
+# --with-sssutils
+# --with-sssdb
+# --with-included-sss
+ --with-z="${EPREFIX}/usr"
+ --with-bz2="${EPREFIX}/usr"
+ --without-sybase
+ --with-autodep
+# --with-3psw=std:netopt favor standard (system) builds of the above pkgs
+ $(use_with debug)
+ $(use_with debug max-debug)
+ $(use_with debug symbols)
+ $(use_with static-libs static)
+ $(use_with static static-exe)
+ $(use_with threads mt)
+ $(use_with prefix runpath "${EPREFIX}/usr/$(get_libdir)/${PN}")
+ $(use_with test check)
+ $(use_with pch)
+ $(use_with lzo lzo "${EPREFIX}/usr")
+ $(use_with pcre pcre "${EPREFIX}/usr")
+ $(use_with gnutls gnutls "${EPREFIX}/usr")
+ $(use_with mysql mysql "${EPREFIX}/usr")
+ $(use_with muparser muparser "${EPREFIX}/usr")
+ $(usex fltk --with-fltk="${EPREFIX}/usr" "")
+ $(use_with opengl opengl "${EPREFIX}/usr")
+ $(use_with mesa mesa "${EPREFIX}/usr")
+ $(use_with opengl glut "${EPREFIX}/usr")
+ $(use_with opengl glew "${EPREFIX}/usr")
+ $(use_with opengl glew-mx)
+ $(use_with wxwidgets wxwidgets "${EPREFIX}/usr")
+ $(use_with wxwidgets wxwidgets-ucs)
+ $(use_with freetype freetype "${EPREFIX}/usr")
+ $(use_with fastcgi fastcgi "${EPREFIX}/usr")
+# $(use_with berkdb bdb "${EPREFIX}/usr") # not in ncbi-blast+
+ $(usex odbc --with-odbc="${EPREFIX}/usr" "")
+ $(use_with python python "${EPREFIX}/usr")
+ $(use_with boost boost "${EPREFIX}/usr")
+ $(use_with sqlite sqlite3 "${EPREFIX}/usr")
+ $(use_with icu icu "${EPREFIX}/usr")
+ $(use_with expat expat "${EPREFIX}/usr")
+ $(use_with xml libxml "${EPREFIX}/usr")
+ $(use_with xml libxslt "${EPREFIX}/usr")
+ $(use_with xerces xerces "${EPREFIX}/usr")
+ $(use_with hdf5 hdf5 "${EPREFIX}/usr")
+ $(use_with xalan xalan "${EPREFIX}/usr")
+# $(use_with gif gif "${EPREFIX}/usr") # prevent compilation failure in "ncbi-tools++-12.0.0/src/util/image/image_io_gif.cpp:351: error: 'QuantizeBuffer' was not declared in this scope"
+ --without-gif
+ $(use_with jpeg jpeg "${EPREFIX}/usr")
+ $(use_with tiff tiff "${EPREFIX}/usr")
+ $(use_with png png "${EPREFIX}/usr")
+ $(use_with xpm xpm "${EPREFIX}/usr")
+ $(use_with curl curl "${EPREFIX}/usr")
+# $(use_with X x "${EPREFIX}/usr")
+# $(use_with X x) # there is no --with-x option
+ )
+
+ # http://www.ncbi.nlm.nih.gov/books/NBK7167/
+ use test || myconf+=( --with-projects="${FILESDIR}"/disable-testsuite-compilation.txt )
+
+ # TODO
+ # copy optimization -O options from CXXFLAGS to DEF_FAST_FLAGS and pass that also to configure
+ # otherwise your -O2 will be dropped in some subdirectories and replaced by e.g. -O9
+
+ einfo "bash ./src/build-system/configure --srcdir="${S}" --prefix="${EPREFIX}/usr" --libdir=/usr/lib64 ${myconf[@]}"
+
+# ECONF_SOURCE="src/build-system" \
+# econf \
+ bash \
+ ./src/build-system/configure \
+ --srcdir="${S}" \
+ --prefix="${EPREFIX}/usr" \
+ --libdir=/usr/lib64 \
+ --with-flat-makefile \
+ ${myconf[@]} || die
+#--without-debug \
+# --with-bin-release \
+# --with-bincopy \
+# --without-static \
+# --with-dll \
+# --with-mt \
+# --with-openmp \
+# --with-lfs \
+# --prefix="${ED}"/usr \
+# --libdir="${ED}"/usr/$(get_libdir)/"${PN}" \
+# ${myconf} LDFLAGS="-Wl,--no-as-needed" \
+# || die
+# econf ${myconf[@]}
+}
+
+src_compile() {
+ ## all_r would ignore the --with-projects contents and build more
+ ## emake all_r -C GCC*-Release*/build || die
+ ## all_p with compile only selected/required components
+ ##cd "${S}"_build &&\
+ ##emake all_p -C GCC*-Release*/build || die "gcc-4.5.3 crashes at src/objects/valerr/ValidError.cpp:226:1: internal compiler error: Segmentation fault, right?"
+ #emake all_p -C "${S}"_build/build
+
+ #
+ # Re: /usr/lib64/ncbi-tools++/libdbapi_driver.so: undefined reference to `ncbi::NcbiGetlineEOL(std::istream&, std::string&)'
+ #
+ # The next release should automatically address such underlinking, albeit
+ # only in --with-flat-makefile configurations. For now (12.0.0), you'll need to
+ # add or extend more DLL_LIB settings, to which end you may find the
+ # resources at http://www.ncbi.nlm.nih.gov/IEB/ToolBox/CPP_DOC/depgraphs/
+ # helpful. For instance,
+ #
+ # http://www.ncbi.nlm.nih.gov/IEB/ToolBox/CPP_DOC/depgraphs/dbapi_driver.html
+ #
+ # indicates that src/dbapi/driver/Makefile.dbapi_driver.lib should set
+ #
+ # DLL_LIB = xncbi
+ #
+ # (You can find the path to that makefile by examining
+ # .../status/.dbapi_driver.dep or .../build/Makefile.flat.)
+ #
+ # To take full advantage of --with-flat-makefile, you'll need the following (instead of 'emake all_p -C "${S}"_build/build') and call configure --with-flat-makefile:
+ emake -C "${S}"_build/build -f Makefile.flat
+}
+
+src_install() {
+ rm -rvf "${S}"_build/lib/ncbi || die
+ emake install prefix="${ED}/usr" libdir="${ED}/usr/$(get_libdir)/${PN}"
+
+# dobin "${S}"_build/bin/*
+# dolib.so "${S}"_build/lib/*so*
+# dolib.a "${S}"_build/lib/*.a
+# doheader "${S}"_build/inc/*
+
+ # File collisions with sci-biology/ncbi-tools
+ mv "${ED}"/usr/bin/asn2asn "${ED}"/usr/bin/asn2asn+
+ mv "${ED}"/usr/bin/rpsblast "${ED}"/usr/bin/rpsblast+
+ mv -f "${ED}"/usr/bin/test_regexp "${ED}"/usr/bin/test_regexp+ # drop the eventually mistakenly compiled binaries
+ mv "${ED}"/usr/bin/vecscreen "${ED}"/usr/bin/vecscreen+
+ mv "${ED}"/usr/bin/seedtop "${ED}"/usr/bin/seedtop+
+
+ echo "LDPATH=${EPREFIX}/usr/$(get_libdir)/${PN}" > ${S}/99${PN}
+ doenvd "${S}/99${PN}"
+}
+
+pkg_postinst() {
+ einfo 'Please run "source /etc/profile" before using this package in the current shell.'
+ einfo 'Documentation is at http://www.ncbi.nlm.nih.gov/books/NBK7167/'
+}