[ncbi-blast+] Initial import

Jan Kaluža jkaluza at fedoraproject.org
Thu Aug 29 05:46:05 UTC 2013


commit 92ad3e28d9137d0aa46759f19e09bb2c5f28e1ba
Author: Jan Kaluza <jkaluza at redhat.com>
Date:   Thu Aug 29 07:45:33 2013 +0200

    Initial import

 .gitignore                       |    1 +
 ncbi-blast+-2.2.28-gnutls.patch  |   10 +
 ncbi-blast+-2.2.28-libdeps.patch |  594 ++++++++++++++++++++++++++++++++++++++
 ncbi-blast+.spec                 |  163 +++++++++++
 sources                          |    1 +
 5 files changed, 769 insertions(+), 0 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index e69de29..0ee553b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/ncbi-blast-2.2.28+-src.tar.gz
diff --git a/ncbi-blast+-2.2.28-gnutls.patch b/ncbi-blast+-2.2.28-gnutls.patch
new file mode 100644
index 0000000..6ca6dba
--- /dev/null
+++ b/ncbi-blast+-2.2.28-gnutls.patch
@@ -0,0 +1,10 @@
+--- trunk/c++/src/connect/ncbi_gnutls.c	2013/04/19 19:54:44	57856
++++ trunk/c++/src/connect/ncbi_gnutls.c	2013/04/24 11:51:23	57915
+@@ -156,7 +156,6 @@
+     0
+ };
+ static const int kGnuTlsCompPrio[] = {
+-    GNUTLS_COMP_LZO,
+     GNUTLS_COMP_ZLIB,
+     GNUTLS_COMP_NULL,
+     0
diff --git a/ncbi-blast+-2.2.28-libdeps.patch b/ncbi-blast+-2.2.28-libdeps.patch
new file mode 100644
index 0000000..fc310ca
--- /dev/null
+++ b/ncbi-blast+-2.2.28-libdeps.patch
@@ -0,0 +1,594 @@
+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/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 at debian.org>
+Last-Update: 2011-08-28
+--- a/c++/src/algo/blast/core/Makefile.blast.lib
++++ b/c++/src/algo/blast/core/Makefile.blast.lib
+@@ -21,5 +21,6 @@
+ CFLAGS  = $(FAST_CFLAGS)
+ LDFLAGS = $(FAST_LDFLAGS)
+ 
++DLL_LIB = composition_adjustment xconnect tables
+ 
+ WATCHERS = coulouri maning madden camacho
+--- a/c++/src/algo/blast/dbindex/Makefile.xalgoblastdbindex.lib
++++ b/c++/src/algo/blast/dbindex/Makefile.xalgoblastdbindex.lib
+@@ -11,6 +11,8 @@
+ 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,6 +7,7 @@
+ 
+ CPPFLAGS = $(ORIG_CPPFLAGS)
+ 
+-DLL_LIB = align_format blastxml xhtml xcgi
++DLL_LIB = xblast align_format xalnmgr xobjmgr xnetblast scoremat blastxml \
++          seq general xser tables xncbi
+ 
+ WATCHERS = jianye zaretska madden camacho fongah2
+--- a/c++/src/algo/winmask/Makefile.xalgowinmask.lib
++++ b/c++/src/algo/winmask/Makefile.xalgowinmask.lib
+@@ -21,3 +21,4 @@
+ CXXFLAGS = $(FAST_CXXFLAGS)
+ LDFLAGS  = $(FAST_LDFLAGS)
+ 
++DLL_LIB = seqmasks_io xobjread xobjutil xobjmgr seq xncbi
+--- a/c++/src/cgi/Makefile.cgi.lib
++++ b/c++/src/cgi/Makefile.cgi.lib
+@@ -9,6 +9,8 @@
+       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,4 +7,6 @@
+       jsmenu 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
+@@ -2,3 +2,5 @@
+ 
+ LIB = xnetblastcli
+ SRC = blastclient blastclient_
++
++DLL_LIB = xnetblast xser xconnect xutil xncbi
+--- a/c++/src/objtools/align_format/Makefile.align_format.lib
++++ b/c++/src/objtools/align_format/Makefile.align_format.lib
+@@ -13,6 +13,10 @@
+ 
+ CPPFLAGS = $(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,3 +12,5 @@
+ 
+ WATCHERS = todorov dicuccio grichenk
+ 
++DLL_LIB = xobjmgr seqset seq xser tables xncbi
++
+--- a/c++/src/objtools/readers/Makefile.xobjread.lib
++++ b/c++/src/objtools/readers/Makefile.xobjread.lib
+@@ -19,5 +19,5 @@
+       best_feat_finder source_mod_parser fasta_exception
+ 
+ 
+-DLL_LIB = creaders
++DLL_LIB = 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,6 +12,6 @@
+ 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 @@
+ 
+ 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 @@
+ 
+ LIB = seqdb
+ 
++DLL_LIB = blastdb xobjmgr seq general xser sequtil xncbi
++
+ CFLAGS   = $(FAST_CFLAGS)
+ CXXFLAGS = $(FAST_CXXFLAGS)
+ LDFLAGS  = $(FAST_LDFLAGS)
+--- a/c++/src/objtools/data_loaders/blastdb/Makefile.ncbi_xloader_blastdb.lib
++++ b/c++/src/objtools/data_loaders/blastdb/Makefile.ncbi_xloader_blastdb.lib
+@@ -5,4 +5,6 @@
+ 
+ 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
+@@ -3,6 +3,8 @@
+ LIB = ncbi_xloader_blastdb_rmt
+ SRC = bdbloader_rmt remote_blastdb_adapter
+ 
++DLL_LIB = ncbi_xloader_blastdb blast_services xobjmgr seq xncbi
++
+ ASN_DEP = blastdb xnetblast
+ 
+ WATCHERS = camacho
+--- a/c++/src/objtools/blast/gene_info_reader/Makefile.gene_info.lib
++++ b/c++/src/objtools/blast/gene_info_reader/Makefile.gene_info.lib
+@@ -4,3 +4,5 @@
+ 
+ LIB = gene_info
+ SRC = gene_info gene_info_reader file_utils
++
++DLL_LIB = xncbi
+--- a/c++/src/algo/blast/api/Makefile.xblast.lib
++++ b/c++/src/algo/blast/api/Makefile.xblast.lib
+@@ -74,14 +74,15 @@
+ 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)
+ # Strict gcc flags
+--- a/c++/src/algo/blast/blastinput/Makefile.blastinput.lib
++++ b/c++/src/algo/blast/blastinput/Makefile.blastinput.lib
+@@ -24,7 +24,9 @@
+ 
+ LIB = blastinput
+ 
+-DLL_LIB = xblast align_format ncbi_xloader_blastdb_rmt ncbi_xloader_blastdb seqdb xobjread $(OBJMGR_LIBS) xutil
++    DLL_LIB = xblast align_format ncbi_xloader_blastdb_rmt ncbi_xloader_blastdb seqdb xobjread \
++              $(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 @@
+ 
+ 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 @@
+ 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,4 +6,6 @@
+ 
+ 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,4 +1,6 @@
+ 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,2 +1,4 @@
+ LIB = blastxml
+ SRC = blastxml__ blastxml___
++
++DLL_LIB = xser xncbi
+--- a/c++/src/objects/entrez2/Makefile.entrez2.lib
++++ b/c++/src/objects/entrez2/Makefile.entrez2.lib
+@@ -2,3 +2,5 @@
+ 
+ LIB = entrez2
+ SRC = entrez2__ entrez2___
++
++DLL_LIB = xser xncbi
+--- a/c++/src/objects/entrez2/Makefile.entrez2cli.lib
++++ b/c++/src/objects/entrez2/Makefile.entrez2cli.lib
+@@ -4,3 +4,5 @@
+ 
+ LIB = entrez2cli
+ SRC = entrez2_client entrez2_client_
++
++DLL_LIB = entrez2 xser xconnect xutil xncbi
+--- a/c++/src/objects/scoremat/Makefile.scoremat.lib
++++ b/c++/src/objects/scoremat/Makefile.scoremat.lib
+@@ -1,2 +1,4 @@
+ LIB = scoremat
+ SRC = scoremat__ scoremat___
++
++DLL_LIB = seqset seq general xser xncbi
+--- a/c++/src/objects/seqedit/Makefile.seqedit.lib
++++ b/c++/src/objects/seqedit/Makefile.seqedit.lib
+@@ -1,3 +1,4 @@
+ LIB = seqedit
+ SRC = seqedit__ seqedit___
+- 
++
++DLL_LIB = seqset seq general xser xncbi
+--- a/c++/src/objects/submit/Makefile.submit.lib
++++ b/c++/src/objects/submit/Makefile.submit.lib
+@@ -1,2 +1,4 @@
+ LIB = submit
+ SRC = submit__ submit___
++
++DLL_LIB = seqset seq biblio general xser xncbi
+--- a/c++/src/objmgr/util/Makefile.util.lib
++++ b/c++/src/objmgr/util/Makefile.util.lib
+@@ -8,5 +8,7 @@
+ SRC = weight sequence feature seqtitle create_defline obj_sniff seq_loc_util seq_align_util
+ LIB = xobjutil
+ 
++DLL_LIB = xobjmgr seqset seq pub biblio general xser sequtil xutil xncbi
++
+ WATCHERS = ucko vasilche
+ 
+--- 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 @@
+ 
+ CPPFLAGS = $(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 @@
+ 
+ LIB = blast_services
+ 
++DLL_LIB = xnetblastcli xnetblast xser xconnect xutil xncbi
++
+ CFLAGS   = $(FAST_CFLAGS)
+ CXXFLAGS = $(FAST_CXXFLAGS)
+ LDFLAGS  = $(FAST_LDFLAGS)
+--- 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,4 +12,7 @@
+ # Dependencies for shared library
+ DLL_LIB = ncbi_xreader$(DLL)
+ 
++DLL_DLIB = ncbi_xreader_id2 ncbi_xreader_id1 ncbi_xreader_cache 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,4 +15,7 @@
+ 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 @@
+ # 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 @@
+ # 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,6 +12,9 @@
+ 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
+@@ -6,7 +6,7 @@
+ 
+ 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)
+ 
+ WATCHERS = ivanov
+--- a/c++/src/util/sequtil/Makefile.sequtil.lib
++++ b/c++/src/util/sequtil/Makefile.sequtil.lib
+@@ -3,4 +3,6 @@
+ 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
+ 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,2 +1,4 @@
+ LIB = biblio
+ SRC = biblio__ biblio___ citation_base
++
++DLL_LIB = general xser xncbi
+--- a/c++/src/objects/blastdb/Makefile.blastdb.lib
++++ b/c++/src/objects/blastdb/Makefile.blastdb.lib
+@@ -1,2 +1,4 @@
+ LIB = blastdb
+ SRC = blastdb__ blastdb___
++
++DLL_LIB = seq xser xncbi
+--- a/c++/src/objects/general/Makefile.general.lib
++++ b/c++/src/objects/general/Makefile.general.lib
+@@ -1,2 +1,4 @@
+ LIB = general
+ SRC = general__ general___ uoconv
++
++DLL_LIB = xser xncbi
+--- a/c++/src/objects/genomecoll/Makefile.genome_collection.lib
++++ b/c++/src/objects/genomecoll/Makefile.genome_collection.lib
+@@ -3,4 +3,6 @@
+ 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,4 +3,6 @@
+ 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,4 +1,6 @@
+ 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,2 +1,4 @@
+ LIB = medline
+ SRC = medline__ medline___
++
++DLL_LIB = biblio general xser xncbi
+--- a/c++/src/objects/pub/Makefile.pub.lib
++++ b/c++/src/objects/pub/Makefile.pub.lib
+@@ -1,2 +1,4 @@
+ LIB = pub
+ SRC = pub__ pub___
++
++DLL_LIB = medline biblio xser xncbi
+--- a/c++/src/objects/seq/Makefile.seq.lib
++++ b/c++/src/objects/seq/Makefile.seq.lib
+@@ -12,4 +12,6 @@
+       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,2 +1,4 @@
+ LIB = seqcode
+ SRC = seqcode__ seqcode___
++
++DLL_LIB = xser xncbi
+--- a/c++/src/objects/seqset/Makefile.seqset.lib
++++ b/c++/src/objects/seqset/Makefile.seqset.lib
+@@ -1,2 +1,4 @@
+ LIB = seqset
+ SRC = seqset__ seqset___ gb_release_file
++
++DLL_LIB = seq general xser xncbi
+--- a/c++/src/objects/seqsplit/Makefile.seqsplit.lib
++++ b/c++/src/objects/seqsplit/Makefile.seqsplit.lib
+@@ -1,4 +1,6 @@
+ 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,4 +18,6 @@
+ 
+ LIB    = xser
+ 
++DLL_LIB = xutil xncbi
++
+ WATCHERS = gouriano
+--- a/c++/src/util/Makefile.util.lib
++++ b/c++/src/util/Makefile.util.lib
+@@ -11,6 +11,7 @@
+ LIB = xutil
+ PROJ_TAG = core
+ 
++DLL_LIB = xncbi
+ LIBS = $(ORIG_LIBS)
+ 
+ WATCHERS = vakatov
+--- a/c++/src/util/xregexp/Makefile.xregexp.lib
++++ b/c++/src/util/xregexp/Makefile.xregexp.lib
+@@ -6,7 +6,7 @@
+ 
+ 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 @@
+ 
+ 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,6 +17,6 @@
+ 
+ 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 @@
+ 
+ LIB = writedb
+ 
++DLL_LIB = seqdb xobjread xobjmgr blastdb seqset seq general \
++          xser sequtil xutil xncbi
++
+ CFLAGS   = $(FAST_CFLAGS)
+ CXXFLAGS = $(FAST_CXXFLAGS)
+ LDFLAGS  = $(FAST_LDFLAGS)
+--- a/c++/src/algo/blast/Makefile.blast_macros.mk
++++ b/c++/src/algo/blast/Makefile.blast_macros.mk
+@@ -18,7 +18,7 @@
+ 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 \
+ 		xobjread creaders 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 @@
+ SRC = main mkindex_app
+ 
+ LIB_ = xalgoblastdbindex blast composition_adjustment seqdb blastdb \
+-      xobjread creaders xobjutil tables connect $(SOBJMGR_LIBS)
++      xobjread creaders xobjutil tables xconnect $(SOBJMGR_LIBS)
+ LIB = $(LIB_:%=%$(STATIC))
+ 
+ CXXFLAGS = $(FAST_CXXFLAGS)
diff --git a/ncbi-blast+.spec b/ncbi-blast+.spec
new file mode 100644
index 0000000..884a7bf
--- /dev/null
+++ b/ncbi-blast+.spec
@@ -0,0 +1,163 @@
+# Drop automatic provides of shared modules not used by anything else
+%global __provides_exclude %{?__provides_exclude:__provides_exclude|}^lib
+%global __requires_exclude %{?__requires_exclude:__requires_exclude|}^libalign_format.so
+%global __requires_exclude %__requires_exclude|^libbiblio.so
+%global __requires_exclude %__requires_exclude|^libblastdb_format.so
+%global __requires_exclude %__requires_exclude|^libblastdb.so
+%global __requires_exclude %__requires_exclude|^libblastinput.so
+%global __requires_exclude %__requires_exclude|^libblast_services.so
+%global __requires_exclude %__requires_exclude|^libblast.so
+%global __requires_exclude %__requires_exclude|^libblastxml.so
+%global __requires_exclude %__requires_exclude|^libcomposition_adjustment.so
+%global __requires_exclude %__requires_exclude|^libcreaders.so
+%global __requires_exclude %__requires_exclude|^libentrez2cli.so
+%global __requires_exclude %__requires_exclude|^libentrez2.so
+%global __requires_exclude %__requires_exclude|^libgene_info.so
+%global __requires_exclude %__requires_exclude|^libgeneral.so
+%global __requires_exclude %__requires_exclude|^libgenome_collection.so
+%global __requires_exclude %__requires_exclude|^libid1.so
+%global __requires_exclude %__requires_exclude|^libid2.so
+%global __requires_exclude %__requires_exclude|^libid2_split.so
+%global __requires_exclude %__requires_exclude|^libigblast.so
+%global __requires_exclude %__requires_exclude|^libmedline.so
+%global __requires_exclude %__requires_exclude|^libncbi_xloader_blastdb_rmt.so
+%global __requires_exclude %__requires_exclude|^libncbi_xloader_blastdb.so
+%global __requires_exclude %__requires_exclude|^libncbi_xloader_genbank.so
+%global __requires_exclude %__requires_exclude|^libncbi_xreader_cache.so
+%global __requires_exclude %__requires_exclude|^libncbi_xreader_id1.so
+%global __requires_exclude %__requires_exclude|^libncbi_xreader_id2.so
+%global __requires_exclude %__requires_exclude|^libncbi_xreader.so
+%global __requires_exclude %__requires_exclude|^libpub.so
+%global __requires_exclude %__requires_exclude|^libscoremat.so
+%global __requires_exclude %__requires_exclude|^libseqcode.so
+%global __requires_exclude %__requires_exclude|^libseqdb.so
+%global __requires_exclude %__requires_exclude|^libseqedit.so
+%global __requires_exclude %__requires_exclude|^libseqmasks_io.so
+%global __requires_exclude %__requires_exclude|^libseqset.so
+%global __requires_exclude %__requires_exclude|^libseq.so
+%global __requires_exclude %__requires_exclude|^libseqsplit.so
+%global __requires_exclude %__requires_exclude|^libsequtil.so
+%global __requires_exclude %__requires_exclude|^libsubmit.so
+%global __requires_exclude %__requires_exclude|^libtables.so
+%global __requires_exclude %__requires_exclude|^libtaxon1.so
+%global __requires_exclude %__requires_exclude|^libtest_boost.so
+%global __requires_exclude %__requires_exclude|^libtest_mt.so
+%global __requires_exclude %__requires_exclude|^libvariation.so
+%global __requires_exclude %__requires_exclude|^libwritedb.so
+%global __requires_exclude %__requires_exclude|^libxalgoblastdbindex.so
+%global __requires_exclude %__requires_exclude|^libxalgodustmask.so
+%global __requires_exclude %__requires_exclude|^libxalgosegmask.so
+%global __requires_exclude %__requires_exclude|^libxalgowinmask.so
+%global __requires_exclude %__requires_exclude|^libxalnmgr.so
+%global __requires_exclude %__requires_exclude|^libxblastformat.so
+%global __requires_exclude %__requires_exclude|^libxblast.so
+%global __requires_exclude %__requires_exclude|^libxcgi.so
+%global __requires_exclude %__requires_exclude|^libxcompress.so
+%global __requires_exclude %__requires_exclude|^libxconnect.so
+%global __requires_exclude %__requires_exclude|^libxconnext.so
+%global __requires_exclude %__requires_exclude|^libxhtml.so
+%global __requires_exclude %__requires_exclude|^libxncbi.so
+%global __requires_exclude %__requires_exclude|^libxnetblastcli.so
+%global __requires_exclude %__requires_exclude|^libxnetblast.so
+%global __requires_exclude %__requires_exclude|^libxobjmgr.so
+%global __requires_exclude %__requires_exclude|^libxobjread.so
+%global __requires_exclude %__requires_exclude|^libxobjsimple.so
+%global __requires_exclude %__requires_exclude|^libxobjutil.so
+%global __requires_exclude %__requires_exclude|^libxregexp.so
+%global __requires_exclude %__requires_exclude|^libxser.so
+%global __requires_exclude %__requires_exclude|^libxutil.so
+
+Name:        ncbi-blast+
+Version:     2.2.28
+Release:     1%{?dist}
+License:     Public Domain and MIT
+Url:         http://blast.ncbi.nlm.nih.gov/Blast.cgi?CMD=Web&PAGE_TYPE=BlastDocs&DOC_TYPE=Download
+Source0:     ftp://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/LATEST/ncbi-blast-%{version}+-src.tar.gz
+# Backported upstream patch to fix build with newer gnutls
+# http://www.ncbi.nlm.nih.gov/viewvc/v1/trunk/c%2B%2B/src/connect/ncbi_gnutls.c?r1=57856&r2=57915&view=patch
+Patch0:      ncbi-blast+-2.2.28-gnutls.patch
+# Debian patch to fix shared libraries dependencies
+Patch1:      ncbi-blast+-2.2.28-libdeps.patch
+Summary:     NCBI BLAST+ finds regions of similarity between biological sequences
+
+BuildRequires: hostname
+BuildRequires: boost-devel
+BuildRequires: bzip2-devel
+BuildRequires: pcre-devel
+BuildRequires: zlib-devel
+BuildRequires: gnutls-devel
+BuildRequires: libxml2-devel
+BuildRequires: libxslt-devel
+
+%description
+The NCBI Basic Local Alignment Search Tool (BLAST) finds regions of
+local similarity between sequences. The program compares nucleotide or
+protein sequences to sequence databases and calculates the statistical
+significance of matches. BLAST can be used to infer functional and
+evolutionary relationships between sequences as well as help identify
+members of gene families.
+
+%prep 
+%setup -q -n ncbi-blast-%{version}+-src
+%patch0 -p1 -b .gnutls
+%patch1 -p1 -b .libdeps
+
+# Remove executable mode from header files
+find c++ -type f -name *.h -exec chmod -x {} \;
+find c++ -type f -name *.hpp -exec chmod -x {} \;
+find c++ -type f -name *.cpp -exec chmod -x {} \;
+
+# Remove sources of all projects we do not build
+rm -rf c++/src/build-system/project_tree_builder_gui/
+rm -rf c++/src/util/compress/bzip2
+rm -rf c++/src/util/compress/zlib
+
+%build
+export CFLAGS="%{optflags}"
+
+pushd c++
+# We are not using configure macro here, because ncbi-blast has special
+# configure script which does not understand all options passed to it
+# by configure macro...
+# This package also contains runpath. This is expected and according to
+# guidelines, because rpath is used for internal libraries shared across
+# various tools in this packages. If we link them statically, the binary
+# .rpm would have >100MB.
+./configure --with-dll --with-mt --without-autodep \
+--without-makefile-auto-update --with-flat-makefile --without-caution \
+--without-dbapi --without-lzo --with-runpath=%{_libdir}/ncbi-blast+ \
+--with-build-root=BUILD
+popd
+
+pushd c++/BUILD/build
+make -f Makefile.flat all_projects="algo/blast/ app/ objmgr/ objtools/align_format/ objtools/blast/" %{_smp_mflags}
+popd
+
+%install
+mkdir -p %{buildroot}/%_bindir
+mkdir -p %{buildroot}/%{_libdir}/ncbi-blast+
+
+install -p -m755 c++/BUILD/lib/*.so %{buildroot}/%{_libdir}/ncbi-blast+
+
+pushd c++/BUILD/bin
+install -p -m755 blastp blastn blastx tblastn tblastx psiblast rpsblast \
+rpstblastn blast_formatter deltablast makembindex segmasker dustmasker \
+windowmasker makeblastdb makeprofiledb blastdbcmd blastdb_aliastool \
+convert2blastmask blastdbcheck legacy_blast.pl update_blastdb.pl \
+%{buildroot}/%_bindir
+popd
+
+%files
+%doc c++/scripts/projects/blast/ChangeLog
+%doc c++/scripts/projects/blast/README
+%doc c++/scripts/projects/blast/LICENSE
+%_bindir/*
+%{_libdir}/ncbi-blast+
+
+%changelog
+* Tue Aug 20 2013 Jan Kaluza <jkaluza at redhat.com> - 2.2.28-1
+- changed .spec file to fit Fedora Packaging Guidelines
+
+* Mon Jul 21 2008 Christiam Camacho <camacho at ncbi.nlm.nih.gov> - 2.2.26-1
+- See ChangeLog file
+
diff --git a/sources b/sources
index e69de29..be7a6e6 100644
--- a/sources
+++ b/sources
@@ -0,0 +1 @@
+41b87107894d5714eca4217b4739e241  ncbi-blast-2.2.28+-src.tar.gz


More information about the scm-commits mailing list