summaryrefslogtreecommitdiff
path: root/sci-biology/ncbi-tools
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /sci-biology/ncbi-tools
reinit the tree, so we can have metadata
Diffstat (limited to 'sci-biology/ncbi-tools')
-rw-r--r--sci-biology/ncbi-tools/Manifest12
-rw-r--r--sci-biology/ncbi-tools/files/21ncbi-r16
-rw-r--r--sci-biology/ncbi-tools/files/ncbi-tools-2.2.26-_DEFAULT_SOURCE.patch81
-rw-r--r--sci-biology/ncbi-tools/files/ncbi-tools-2.2.26-bfr-overflow.patch103
-rw-r--r--sci-biology/ncbi-tools/files/ncbi-tools-2.2.26-format-security.patch124
-rw-r--r--sci-biology/ncbi-tools/files/ncbi-tools-extra_vib.patch37
-rw-r--r--sci-biology/ncbi-tools/files/ncbi-tools-lop.patch15
-rw-r--r--sci-biology/ncbi-tools/files/ncbirc2
-rw-r--r--sci-biology/ncbi-tools/metadata.xml8
-rw-r--r--sci-biology/ncbi-tools/ncbi-tools-2.2.26-r2.ebuild164
10 files changed, 552 insertions, 0 deletions
diff --git a/sci-biology/ncbi-tools/Manifest b/sci-biology/ncbi-tools/Manifest
new file mode 100644
index 000000000000..09a566b3b44c
--- /dev/null
+++ b/sci-biology/ncbi-tools/Manifest
@@ -0,0 +1,12 @@
+AUX 21ncbi-r1 232 SHA256 55d5d53c177200d4a9369102d3e2d8ef232f09dd8559aab6c6e4d2173e8bb411 SHA512 cddde027eb42ce34862c35ad0d809de3738301ea57aec2f84a447efa00eeedbeb528df29390041a1f947dd955d43cabac525316d343aafef001f1de21f5da2d9 WHIRLPOOL d70b9bc3a2b1cdec9c6d2def8b06c70dc0f847992a0720f036a7d2d1e0c90bd8a6a390c7f87c24edd2b0f6326a1d9e0fd0059db20ede0e791cc6ff0c46b8cc70
+AUX ncbi-tools-2.2.26-_DEFAULT_SOURCE.patch 2283 SHA256 fe41b8c4cf389f66471eb5711542b22f3bac2793038fb1d5b427052f30a27de8 SHA512 87cc2442e65d6d3a0fedd2501324834461cfcbbfa9adf83b0f070d5f4d77a1a30c8b9fd22a35263b705c2baefd0dfc11f53d27683b0357d2cd6f74cf379b7979 WHIRLPOOL ef45d0b80d27d1bbd0b76c4b63547a45e72b1bd0fa8cca61c0912f9352edf1a2cc1059395fdb7a9af909723b0209e36028d102ea4115bd1ea294c616e6ce7df8
+AUX ncbi-tools-2.2.26-bfr-overflow.patch 3712 SHA256 65418ea20b92561b1811bec0cd63d79c645afe86ce60f72b852c4860ff4ffe2f SHA512 f88ffb38ca70ffc200943ee9c44d0d3828eec2c681622c8a6eae90f0a59bf6de0e0f609b5a24b42803a39bf0b6d7d203a323a18cead749120e84affbe7405397 WHIRLPOOL a5cc4399a377a0436b30991ae21c9bb385763942ba8df169d70898fdbf206c1cfb910bd63d34f94d55ca2ef607e5abf0b1571a72ef94e44531492ef8cfdc8ea3
+AUX ncbi-tools-2.2.26-format-security.patch 6358 SHA256 7b8f59ffe69f87e07210b745c3438a058b9c6ff924b08418e3b6872fa8f59de3 SHA512 9a33c19913bae7c91bb888177acc89f608c8fd6616c258c73a39ba7c69fa9a3e40d66578a4cf61410300c3d5be851890f2b110c2e6e4580ab71546993b6afcc4 WHIRLPOOL ed07a77bd9ac358330773ef05285bd773e5953e9759bf9ec6d32d558e3d15f04652f7edd9305addcbdf84f1226e69189cf7c34fb82162fc7da19a13f3ea91ec7
+AUX ncbi-tools-extra_vib.patch 1393 SHA256 b7639937d59c8bd636c6b02a65a4469d188645b9a10fffd0c8680fb861a7a8e1 SHA512 faef4b98f7ec4ab842c8a0b99caaf47855f84c2c5f7b6a967bce05afc7d0cc69925a3867da2834778c980dd5b9f848d3ef969eb3be8ea0bac20e937127dcba00 WHIRLPOOL 190278df576d5169c2dddcd6e37b464165f058bcc715be675897635cc7d90fd65b14f73a6306e027482eb7f524541828e0d305247c357a87592c6a34675e1b1b
+AUX ncbi-tools-lop.patch 701 SHA256 9e5c57e944d23920f196f36912933653c236998729f69f28be8b55964865dfbc SHA512 706dfb29f9b1eff1fcc7dc1df1d533563d9d12ead5b930930121ad92a3e8c159d1d7cf30acd9f4462772e8f27e6dcf45cd6125f2fa077b3902145f6faf1c8352 WHIRLPOOL 7d0a9ba13c6ede034ac71870f802ee75945e13944742ffd19086ce71127b97807ea1c87f97d6b3d7a96f5e7fb24b6110f03836a3f0967d1f23e68ca1de4e755a
+AUX ncbirc 57 SHA256 6a9c895368ad801c9b04e08486771c7a96f3f26e81748d81d6c088b4aa97208b SHA512 0b9b68116b362ccc625623abf4e959abfb8555c31117216eefe3093fe2dd122c3ce508fe389c07a069d6f4322d889718e455de65dd3ab7d55a16d947ecb07cfd WHIRLPOOL ecd8c2c38b59801273a1392e02df3e6dbd5ed8331847823f69e878cbea74e2b4488ecce7aed4096d095d9912315b66d75d3dfdc1f6276651854dd6b5265ae795
+DIST ncbi-tools-2.2.26.tar.gz 68691452 SHA256 d8fffac25efc8ca894c707c840a4797a8a949ae6fd983d2f91c9972f788efb7d SHA512 da167216b56386b8c91a660e8ea0f3ac39b991d4519af9e02fc26aa16ed602eb3d9d874446f69a8f6840ae31a4d5a29da170e04e8a72b56f8c3ca038d1437014 WHIRLPOOL 6f390a4487b7ebf9d5ca31018f3b33602a695e4b0a4b090952fec9c7e8c3956edc197e75ffd32588f9431cc04b4262a2ca2e3b0ba50dd622ed73a4da6655a956
+EBUILD ncbi-tools-2.2.26-r2.ebuild 4648 SHA256 ece9d476fa7755d0095961d3233800c28a6b42af5f39db2f0fb0c87c627e9881 SHA512 c2a72119bb087fb210723fbc6ef88e397a2144b7256801ec382c251c1e5355481e0e17b8e6aa0c76e6ed45244c838a2ef9fa26761ffa40be114f241e115b6bde WHIRLPOOL 33e240a9b734d1cb6e82f857909471fd2e58b03d9e8a76515d5184226523d93b8755cac0c66d724dfe70d5186a9a081e8cf2970e3b338cfca138a182801385e8
+MISC ChangeLog 2728 SHA256 4fca9f111d89bb6ba9642023a01bb1d2cd1e5e6d2a3119d41cffc7f4ea446b15 SHA512 be30301617ebbcfe2654ce1994bf7d3c669e61c44a3b093a396269eed426bf4cffc6531ffa86121e15e59814905b3167827fe5d6510c83ec8c078ba1505d21fe WHIRLPOOL 6eb16aef0f2a9bef6158cc421b3b06f48a6876eb522461c3a7620c7a568cdbf9c1d38571b32874f845a584e51a41f981f8bea48916171320cf8606fe16db286c
+MISC ChangeLog-2015 19371 SHA256 fe1ad6dc60461f18d0872d550cb87639fa2aa11ef45db9d9576190f2da9461e4 SHA512 a96ef681f1a530cd78c965d91b0779b66e99a1e31e3bab61416a34ec5acef2c0c18cb3caea0aaf16e644999339605fd14106b2d980d7eef5aecef046bc527ff6 WHIRLPOOL dcc15f67e468bb8d5e19fece87472613a5a1b96f7d9272cb11fca8eb1484564cac2eb12c44457e9e357e12628b81ec60427e80b0d906c8b629e0d2502365ecd3
+MISC metadata.xml 267 SHA256 b3535fccca0fc8511c1245214c1a7c105447b35f21093bda132991874ce82d48 SHA512 91ab266d9ab24401bc0fec759c5b6cfcf44a3c5669fc31c7301d79770839bb5dfa0e155d949392ef06176b4a0b2c32b91b1b54b0027f972db61f0a5e54644403 WHIRLPOOL d841a2f928c50434f2e8c65f583ea3aa2d04e5cebd664b1531ab5373260f735219131991000bbb2b21aa3add05dcdce29548b78eac8d8c0eced6dc5505b64e13
diff --git a/sci-biology/ncbi-tools/files/21ncbi-r1 b/sci-biology/ncbi-tools/files/21ncbi-r1
new file mode 100644
index 000000000000..d4de68e6081a
--- /dev/null
+++ b/sci-biology/ncbi-tools/files/21ncbi-r1
@@ -0,0 +1,6 @@
+# Location of the formatdb data sets
+BLASTDB="/usr/share/ncbi/formatdb"
+# Location of the BLAST matrixes.
+BLASTMAT="/usr/share/ncbi/data"
+# Location of the ".ncbi.rc" file which sets the default path for shared data.
+NCBI=/etc/ncbi
diff --git a/sci-biology/ncbi-tools/files/ncbi-tools-2.2.26-_DEFAULT_SOURCE.patch b/sci-biology/ncbi-tools/files/ncbi-tools-2.2.26-_DEFAULT_SOURCE.patch
new file mode 100644
index 000000000000..bbc4623609c8
--- /dev/null
+++ b/sci-biology/ncbi-tools/files/ncbi-tools-2.2.26-_DEFAULT_SOURCE.patch
@@ -0,0 +1,81 @@
+ corelib/ncbilcl.beos | 2 +-
+ corelib/ncbilcl.hlx | 2 +-
+ corelib/ncbilcl.lnx | 4 ++--
+ corelib/ncbilcl.plx | 2 +-
+ corelib/ncbilcl.qnx | 2 +-
+ 5 files changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/corelib/ncbilcl.beos b/corelib/ncbilcl.beos
+index f720567..fe6346f 100644
+--- a/corelib/ncbilcl.beos
++++ b/corelib/ncbilcl.beos
+@@ -77,7 +77,7 @@
+ #endif
+
+ /* good for the EGCS C/C++ compiler on Linux(e.g. putenv(), tempnam() proto) */
+-#define _SVID_SOURCE 1
++#define _DEFAULT_SOURCE 1
+
+
+ /*----------------------------------------------------------------------*/
+diff --git a/corelib/ncbilcl.hlx b/corelib/ncbilcl.hlx
+index 1492f93..0e98fb6 100644
+--- a/corelib/ncbilcl.hlx
++++ b/corelib/ncbilcl.hlx
+@@ -67,7 +67,7 @@
+ #endif
+
+ /* good for the EGCS C/C++ compiler on Linux(e.g. putenv(), tempnam() proto) */
+-/*#define _SVID_SOURCE 1 */
++/*#define _DEFAULT_SOURCE 1 */
+
+
+ /*----------------------------------------------------------------------*/
+diff --git a/corelib/ncbilcl.lnx b/corelib/ncbilcl.lnx
+index 46e2978..b3256b3 100644
+--- a/corelib/ncbilcl.lnx
++++ b/corelib/ncbilcl.lnx
+@@ -65,7 +65,7 @@
+ * fixes for new RedHat6.2
+ *
+ * Revision 6.3 2000/02/10 16:36:32 vakatov
+-* Added _SVID_SOURCE
++* Added _DEFAULT_SOURCE
+ *
+ * Revision 6.2 1999/07/12 05:50:49 vakatov
+ * Avoid redefinition of #_REENTRANT
+@@ -141,7 +141,7 @@
+ #endif
+
+ /* good for the EGCS C/C++ compiler on Linux(e.g. putenv(), tempnam() proto) */
+-#define _SVID_SOURCE 1
++#define _DEFAULT_SOURCE 1
+ #define _GNU_SOURCE 1
+
+ /*----------------------------------------------------------------------*/
+diff --git a/corelib/ncbilcl.plx b/corelib/ncbilcl.plx
+index bf5824c..f2b53e1 100644
+--- a/corelib/ncbilcl.plx
++++ b/corelib/ncbilcl.plx
+@@ -68,7 +68,7 @@
+ #endif
+
+ /* good for the EGCS C/C++ compiler on Linux(e.g. putenv(), tempnam() proto) */
+-/*#define _SVID_SOURCE 1 */
++/*#define _DEFAULT_SOURCE 1 */
+
+
+ /*----------------------------------------------------------------------*/
+diff --git a/corelib/ncbilcl.qnx b/corelib/ncbilcl.qnx
+index c3d1f0a..4b27bd1 100644
+--- a/corelib/ncbilcl.qnx
++++ b/corelib/ncbilcl.qnx
+@@ -72,7 +72,7 @@
+ #endif
+
+ /* good for the EGCS C/C++ compiler on Linux(e.g. putenv(), tempnam() proto) */
+-#define _SVID_SOURCE 1
++#define _DEFAULT_SOURCE 1
+
+
+
diff --git a/sci-biology/ncbi-tools/files/ncbi-tools-2.2.26-bfr-overflow.patch b/sci-biology/ncbi-tools/files/ncbi-tools-2.2.26-bfr-overflow.patch
new file mode 100644
index 000000000000..e6763214a6e5
--- /dev/null
+++ b/sci-biology/ncbi-tools/files/ncbi-tools-2.2.26-bfr-overflow.patch
@@ -0,0 +1,103 @@
+ cdromlib/cdnewlib.c | 6 +++---
+ corelib/ncbierr.c | 2 +-
+ corelib/ncbisgml.c | 8 ++++----
+ demo/errhdr.c | 2 +-
+ 4 files changed, 9 insertions(+), 9 deletions(-)
+
+diff --git a/cdromlib/cdnewlib.c b/cdromlib/cdnewlib.c
+index 461292c..be4a2d6 100644
+--- a/cdromlib/cdnewlib.c
++++ b/cdromlib/cdnewlib.c
+@@ -2676,7 +2676,7 @@ static int CdDevice_FileBuildPath (CdDevice *cddev, char *fpath, const char *fdi
+ char volname[16];
+ volname[0] = '\0';
+ if (cddev->volume != NULL)
+- strncat(volname,cddev->volume->volume_name,sizeof volname);
++ strncat(volname,cddev->volume->volume_name,sizeof volname - 1);
+ else
+ sprintf(volname,"entrez%d",cddev->hint);
+ if (!FileBuildPath(fpath,volname,NULL))
+@@ -2748,7 +2748,7 @@ static int CdDevice_Init (CdDevice *cddev)
+ memset((void*)&info,0,sizeof info);
+ fpath[0] = '\0';
+ if (cddev->inf.root !=NULL)
+- strncat(fpath,cddev->inf.root,sizeof fpath);
++ strncat(fpath,cddev->inf.root,sizeof fpath - 1);
+
+ if (cddev->ins_volname)
+ {
+@@ -2766,7 +2766,7 @@ static int CdDevice_Init (CdDevice *cddev)
+ {
+ fpath[0] = '\0';
+ if (cddev->inf.root !=NULL)
+- strncat(fpath,cddev->inf.root,sizeof fpath);
++ strncat(fpath,cddev->inf.root,sizeof fpath - 1);
+ sprintf(volname,"entrez%d",j+1);
+ FileBuildPath(fpath,volname,NULL);
+ if (CdTestPath(fpath,&info))
+diff --git a/corelib/ncbierr.c b/corelib/ncbierr.c
+index 0429d86..7b96a2e 100644
+--- a/corelib/ncbierr.c
++++ b/corelib/ncbierr.c
+@@ -952,7 +952,7 @@ static FILE * ErrMsgRoot_fopen (ErrMsgRoot *ctx)
+ if (FileLength(file)==0 || (fd = FileOpen(file,s_msg_mode)) == NULL)
+ {
+ strcpy(path,info->msgpath);
+- strncat(path,file,sizeof(path));
++ strncat(path,file,sizeof(path) - 1);
+ fd = FileOpen(path,s_msg_mode);
+ }
+
+diff --git a/corelib/ncbisgml.c b/corelib/ncbisgml.c
+index 99412be..a653aef 100644
+--- a/corelib/ncbisgml.c
++++ b/corelib/ncbisgml.c
+@@ -260,7 +260,7 @@ NLM_EXTERN char * LIBCALL Nlm_Sgml2Ascii (const char *sgml, char *ascii, size_t
+ }
+ if (i >= num_sgml_entity)
+ {
+- char bad[SGML_ERROR_MSG_LIM];
++ char bad[SGML_ERROR_MSG_LIM + 2];
+ bad[0] = '\0';
+ strncat(bad,sgml,SGML_ERROR_MSG_LIM);
+ ErrPostEx(SEV_ERROR,E_SGML,3,"Unrecognized SGML entity &%s in [%s]",tbuf,bad);
+@@ -279,7 +279,7 @@ NLM_EXTERN char * LIBCALL Nlm_Sgml2Ascii (const char *sgml, char *ascii, size_t
+ from++;
+ if (*from == '\0')
+ {
+- char bad[SGML_ERROR_MSG_LIM];
++ char bad[SGML_ERROR_MSG_LIM + 2];
+ bad[0] = '\0';
+ strncat(bad,sgml,SGML_ERROR_MSG_LIM);
+ ErrPostEx(SEV_ERROR,E_SGML,2, "Unbalanced <> in SGML [%s]",bad);
+@@ -335,7 +335,7 @@ NLM_EXTERN size_t LIBCALL Nlm_Sgml2AsciiLen (const char *sgml)
+ }
+ if (i >= num_sgml_entity)
+ {
+- char bad[SGML_ERROR_MSG_LIM];
++ char bad[SGML_ERROR_MSG_LIM + 2];
+ bad[0] = '\0';
+ strncat(bad,sgml,SGML_ERROR_MSG_LIM);
+ ErrPostEx(SEV_ERROR,E_SGML,3,"Unrecognized SGML entity &%s in [%s]",tbuf,bad);
+@@ -349,7 +349,7 @@ NLM_EXTERN size_t LIBCALL Nlm_Sgml2AsciiLen (const char *sgml)
+ from++;
+ if (*from == '\0')
+ {
+- char bad[SGML_ERROR_MSG_LIM];
++ char bad[SGML_ERROR_MSG_LIM + 2];
+ bad[0] = '\0';
+ strncat(bad,sgml,SGML_ERROR_MSG_LIM);
+ ErrPostEx(SEV_ERROR,E_SGML,2,"Unbalanced <> in SGML [%s]",bad);
+diff --git a/demo/errhdr.c b/demo/errhdr.c
+index 01cd955..5081489 100644
+--- a/demo/errhdr.c
++++ b/demo/errhdr.c
+@@ -41,7 +41,7 @@ int main (int argc, char **argv)
+ else if (mod[0] == '\0')
+ {
+ char *p;
+- strncat(mod,argv[i],sizeof mod);
++ strncat(mod,argv[i],sizeof mod - 1);
+ if ((p = strstr(argv[i],".msg")) != NULL)
+ *p = '\0';
+ }
diff --git a/sci-biology/ncbi-tools/files/ncbi-tools-2.2.26-format-security.patch b/sci-biology/ncbi-tools/files/ncbi-tools-2.2.26-format-security.patch
new file mode 100644
index 000000000000..c12feff51af1
--- /dev/null
+++ b/sci-biology/ncbi-tools/files/ncbi-tools-2.2.26-format-security.patch
@@ -0,0 +1,124 @@
+ api/alignmgr2.c | 2 +-
+ api/pgppop.c | 2 +-
+ api/txalign.c | 10 +++++-----
+ desktop/seqpanel.c | 4 ++--
+ tools/spidey.c | 4 ++--
+ 5 files changed, 11 insertions(+), 11 deletions(-)
+
+diff --git a/api/alignmgr2.c b/api/alignmgr2.c
+index 5b43ef3..4b9007e 100644
+--- a/api/alignmgr2.c
++++ b/api/alignmgr2.c
+@@ -5616,7 +5616,7 @@ NLM_EXTERN void AlnMgr2PrintSeqAlign(SeqAlignPtr sap, Int4 linesize, Boolean isn
+ spp = SeqPortNew(bsp, amp->from_row, amp->to_row, amp->strand, seqcode);
+ ctr = SeqPortRead(spp, (Uint1Ptr)buf, amp->to_row-amp->from_row+1);
+ buf[ctr] = '\0';
+- fprintf(ofp, buf);
++ fprintf(ofp, "%s", buf);
+ SeqPortFree(spp);
+ }
+ }
+diff --git a/api/pgppop.c b/api/pgppop.c
+index d16d79d..b359378 100644
+--- a/api/pgppop.c
++++ b/api/pgppop.c
+@@ -2994,7 +2994,7 @@ Char DefLine[255];
+ if (szSeq){
+ if (!DDV_GetSequenceFromParaG(pgp,&szSeq,bspLength,IsAA,NULL,
+ NULL,NULL)) continue;
+- fprintf(fp,szSeq);
++ fprintf(fp, "%s", szSeq);
+ fprintf(fp,"\n");
+ MemFree(szSeq);
+ }
+diff --git a/api/txalign.c b/api/txalign.c
+index 5877f9c..cb35fbc 100644
+--- a/api/txalign.c
++++ b/api/txalign.c
+@@ -1767,13 +1767,13 @@ static CharPtr DrawTextToBuffer(ValNodePtr tdp_list, CharPtr PNTR m_buf, Boolean
+ if(options&TXALIGN_HTML&&options&TXALIGN_MASTER&&DbHasGi&&(options&TXALIGN_GET_SEQUENCE)){
+ Char checkboxBuf[200];
+ sprintf(checkboxBuf, "<input type=\"checkbox\" name=\"getSeqGi\" value=\"%ld\" onClick=\"synchronizeCheck(this.value, 'getSeqAlignment%ld', 'getSeqGi', this.checked)\">", sip->data.intvalue, query_number_glb);
+- sprintf(docbuf+pos,checkboxBuf);
++ sprintf(docbuf+pos,"%s", checkboxBuf);
+
+ pos += StringLen(checkboxBuf);
+ }
+
+ html_len = StringLen(HTML_buffer);
+- sprintf(docbuf+pos, HTML_buffer);
++ sprintf(docbuf+pos, "%s", HTML_buffer);
+ pos += html_len;
+
+ pos += print_label_to_buffer_all_ex(docbuf+pos, tdp->label, tdp->pos,
+@@ -1790,7 +1790,7 @@ static CharPtr DrawTextToBuffer(ValNodePtr tdp_list, CharPtr PNTR m_buf, Boolean
+ sprintf(HTML_buffer, "<a name = THC%ld></a><a href=\"http://www.tigr.org/docs/tigr-scripts/hgi_scripts/thc_report.spl?est=THC%ld&report_type=n\">", (long) oip->id, (long) oip->id);
+
+ html_len = StringLen(HTML_buffer);
+- sprintf(docbuf+pos, HTML_buffer);
++ sprintf(docbuf+pos, "%s", HTML_buffer);
+ pos += html_len;
+ pos += print_label_to_buffer_all_ex(docbuf+pos, tdp->label, tdp->pos,
+ tdp->strand, FALSE, TRUE, label_size, num_size, show_strand, strip_semicolon);
+@@ -1799,7 +1799,7 @@ static CharPtr DrawTextToBuffer(ValNodePtr tdp_list, CharPtr PNTR m_buf, Boolean
+ sprintf(HTML_buffer, "<a name = TI%ld></a><a href=\"http://www.ncbi.nlm.nih.gov/Traces/trace.cgi?cmd=retrieve&dopt=fasta&val=%ld\">", (long) oip->id, (long) oip->id);
+
+ html_len = StringLen(HTML_buffer);
+- sprintf(docbuf+pos, HTML_buffer);
++ sprintf(docbuf+pos, "%s", HTML_buffer);
+ pos += html_len;
+ pos += print_label_to_buffer_all_ex(docbuf+pos, tdp->label, tdp->pos,
+ tdp->strand, FALSE, TRUE, label_size, num_size, show_strand, strip_semicolon);
+@@ -1816,7 +1816,7 @@ static CharPtr DrawTextToBuffer(ValNodePtr tdp_list, CharPtr PNTR m_buf, Boolean
+ if(options&TXALIGN_HTML&&options&TXALIGN_MASTER&&DbHasGi&&(options&TXALIGN_GET_SEQUENCE)){
+ Char checkboxBuf[200];
+ sprintf(checkboxBuf, "<input type=\"checkbox\" name=\"getSeqMaster\" value=\"\" onClick=\"uncheckable('getSeqAlignment%ld', 'getSeqMaster')\">", query_number_glb);
+- sprintf(docbuf+pos,checkboxBuf);
++ sprintf(docbuf+pos,"%s",checkboxBuf);
+
+ pos += StringLen(checkboxBuf);
+ }
+diff --git a/desktop/seqpanel.c b/desktop/seqpanel.c
+index 2e78e13..c7538aa 100644
+--- a/desktop/seqpanel.c
++++ b/desktop/seqpanel.c
+@@ -8661,7 +8661,7 @@ WriteAlignmentInterleaveToFileEx
+ seqbuf, alnbuf, &alnbuf_len,
+ show_substitutions);
+ MemCpy (printed_line + label_len + 1 + coord_len, alnbuf, alnbuf_len);
+- fprintf (fp, printed_line);
++ fprintf (fp, "%s", printed_line);
+ }
+ fprintf (fp, "\n");
+ start = stop + 1;
+@@ -8757,7 +8757,7 @@ extern void WriteAlignmentContiguousToFile
+ seqbuf, alnbuf, &alnbuf_len,
+ show_substitutions);
+ MemCpy (printed_line, alnbuf, alnbuf_len);
+- fprintf (fp, printed_line);
++ fprintf (fp, "%s", printed_line);
+ start = stop + 1;
+ stop += seq_chars_per_row;
+ }
+diff --git a/tools/spidey.c b/tools/spidey.c
+index d6ce62d..ac9f59a 100644
+--- a/tools/spidey.c
++++ b/tools/spidey.c
+@@ -2088,7 +2088,7 @@ static void SPI_PrintResult(FILE *ofp, FILE *ofp2, SPI_RegionInfoPtr srip, Biose
+ fprintf(ofp2, " ");
+ ctr++;
+ }
+- fprintf(ofp2, buf);
++ fprintf(ofp2, "%s", buf);
+ if (spp){
+ SeqPortFree(spp);
+ }
+@@ -2417,7 +2417,7 @@ static void SPI_PrintHerdResult(FILE *ofp, FILE *ofp2, SPI_mRNAToHerdPtr herd, S
+ ctr = SeqPortRead(spp, (Uint1Ptr)buf, 10);
+ if (ctr > 0)
+ buf[ctr] = '\0';
+- fprintf(ofp2, buf);
++ fprintf(ofp2, "%s", buf);
+ SeqPortFree(spp);
+ }
+ done = TRUE;
diff --git a/sci-biology/ncbi-tools/files/ncbi-tools-extra_vib.patch b/sci-biology/ncbi-tools/files/ncbi-tools-extra_vib.patch
new file mode 100644
index 000000000000..cb7d1adf9208
--- /dev/null
+++ b/sci-biology/ncbi-tools/files/ncbi-tools-extra_vib.patch
@@ -0,0 +1,37 @@
+--- ncbi-20061015/make/makedis.csh 2006-09-14 17:37:03.000000000 +0200
++++ ncbi/make/makedis.csh 2007-03-07 21:00:36.090836460 +0100
+@@ -485,6 +485,34 @@
+
+ set net_stat = $status
+
++if ( $net_stat == 0 ) then
++ # Compile additional tools, usually hidden
++ if ( ! $?EXTRA_VIB ) then
++ set EXTRA_VIB = ( asn2all )
++ endif
++
++ if ("$?NCBI_MT_OTHERLIBS" == "1") then
++ set CMD='make $MFLG -f makenet.unx \
++ CFLAGS1=\"$NCBI_OPTFLAG $NCBI_CFLAGS1 $OGL_INCLUDE\" \
++ LDFLAGS1=\"$NCBI_LDFLAGS1\" SHELL=\"$NCBI_MAKE_SHELL\" \
++ AR=\"$NCBI_AR\" CC=\"$NCBI_CC\" RAN=\"$NCBI_RANLIB\" OTHERLIBS=\"$NCBI_OTHERLIBS\" \
++ THREAD_OBJ=$NCBI_THREAD_OBJ \
++ THREAD_OTHERLIBS=\"$NCBI_MT_OTHERLIBS\" \
++ NETENTREZVERSION=\"$NETENTREZVERSION\" $NET_VIB $EXTRA_VIB'
++ else
++ set CMD='make $MFLG -f makenet.unx \
++ CFLAGS1=\"$NCBI_OPTFLAG $NCBI_CFLAGS1 $OGL_INCLUDE\" \
++ LDFLAGS1=\"$NCBI_LDFLAGS1\" SHELL=\"$NCBI_MAKE_SHELL\" \
++ AR=\"$NCBI_AR\" CC=\"$NCBI_CC\" RAN=\"$NCBI_RANLIB\" OTHERLIBS=\"$NCBI_OTHERLIBS\" \
++ NETENTREZVERSION=\"$NETENTREZVERSION\" $NET_VIB $EXTRA_VIB'
++ endif
++ eval echo $CMD
++ eval echo $CMD | sh
++
++ set net_stat = $status
++
++endif
++
+ if ($make_stat != 0 || $demo_stat != 0 || $threaded_demo_stat != 0 || $net_stat != 0) then
+ echo FAILURE primary make status = $make_stat, demo = $demo_stat, threaded_demo = $threaded_demo_stat, net = $net_stat
+ cat <<EOF
diff --git a/sci-biology/ncbi-tools/files/ncbi-tools-lop.patch b/sci-biology/ncbi-tools/files/ncbi-tools-lop.patch
new file mode 100644
index 000000000000..867b203aecb1
--- /dev/null
+++ b/sci-biology/ncbi-tools/files/ncbi-tools-lop.patch
@@ -0,0 +1,15 @@
+--- platform/linux-power.ncbi.mk.bak 2005-08-04 22:45:13.000000000 -0500
++++ platform/linux-power.ncbi.mk 2005-08-04 22:45:35.000000000 -0500
+@@ -9,10 +9,10 @@
+ #it appears the flags above do not work anymore with newer libc,
+ #the new flags should work. Dima. 08/23/01
+ NCBI_AR=ar
+-NCBI_CC = xlc_r -w -qcpluscmt -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE
++NCBI_CC = gcc -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE
+ NCBI_CFLAGS1 = -c
+ NCBI_LDFLAGS1 = -O3 -D_LARGE_FILES
+-NCBI_OPTFLAG = -O3 -qmaxmem=-1 -D_LARGE_FILE
++NCBI_OPTFLAG = -O3 -D_LARGE_FILE
+ NCBI_BIN_MASTER = /vol/stcfs/rchen/LoP/ncbi/bin
+ NCBI_BIN_COPY = /vol/stcfs/rchen/LoP/ncbi/bin
+ NCBI_INCDIR = /vol/stcfs/rchen/LoP/ncbi/include
diff --git a/sci-biology/ncbi-tools/files/ncbirc b/sci-biology/ncbi-tools/files/ncbirc
new file mode 100644
index 000000000000..dd77b452fe74
--- /dev/null
+++ b/sci-biology/ncbi-tools/files/ncbirc
@@ -0,0 +1,2 @@
+[NCBI]
+Data=@GENTOO_PORTAGE_EPREFIX@/usr/share/ncbi/data
diff --git a/sci-biology/ncbi-tools/metadata.xml b/sci-biology/ncbi-tools/metadata.xml
new file mode 100644
index 000000000000..959160fe46b1
--- /dev/null
+++ b/sci-biology/ncbi-tools/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>sci-biology@gentoo.org</email>
+ <name>Gentoo Biology Project</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/sci-biology/ncbi-tools/ncbi-tools-2.2.26-r2.ebuild b/sci-biology/ncbi-tools/ncbi-tools-2.2.26-r2.ebuild
new file mode 100644
index 000000000000..cc0e8e3b5472
--- /dev/null
+++ b/sci-biology/ncbi-tools/ncbi-tools-2.2.26-r2.ebuild
@@ -0,0 +1,164 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit eutils flag-o-matic prefix toolchain-funcs
+
+DESCRIPTION="Development toolkit and applications for computational biology, including BLAST"
+HOMEPAGE="http://www.ncbi.nlm.nih.gov/"
+SRC_URI="ftp://ftp.ncbi.nlm.nih.gov/blast/executables/release/${PV}/ncbi.tar.gz -> ${P}.tar.gz"
+
+SLOT="0"
+LICENSE="public-domain"
+KEYWORDS="~alpha amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE="doc static-libs X"
+
+RDEPEND="
+ app-shells/tcsh
+ dev-lang/perl
+ media-libs/libpng:0=
+ X? (
+ media-libs/fontconfig
+ x11-libs/motif:0=
+ x11-libs/libICE
+ x11-libs/libX11
+ x11-libs/libXft
+ x11-libs/libXmu
+ x11-libs/libXt
+ )"
+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 \
+ "${FILESDIR}"/${P}-bfr-overflow.patch \
+ "${FILESDIR}"/${P}-format-security.patch \
+ "${FILESDIR}"/${P}-_DEFAULT_SOURCE.patch
+
+ if use ppc || use ppc64; then
+ epatch "${FILESDIR}"/${PN}-lop.patch
+ fi
+
+ if ! use X; then
+ sed \
+ -e "s:\#set HAVE_OGL=0:set HAVE_OGL=0:" \
+ -e "s:\#set HAVE_MOTIF=0:set HAVE_MOTIF=0:" \
+ -i "${S}"/make/makedis.csh || die
+ else
+ # X applications segfault on startup on x86 with -O3.
+ use x86 || replace-flags '-O3' '-O2'
+ fi
+
+ # Apply user C flags...
+ cd "${S}"/platform
+ sed \
+ -e "s:-O[s0-9]\?::g" \
+ -e 's:-m\(cpu\|arch\)=[a-zA-Z0-9]*::g' \
+ -e 's:-x[A-Z]*::g' \
+ -e 's:-pipe::g' \
+ -e "/NCBI_MAKE_SHELL *=/s:=.*:= \"${EPREFIX}/bin/sh\":g" \
+ -e "/NCBI_AR *=/s:ar:$(tc-getAR):g" \
+ -e "/NCBI_RANLIB *=/s:ranlib:$(tc-getRANLIB):g" \
+ -e "/NCBI_CC *=/s:= [a-zA-Z0-9]* := $(tc-getCC) :g" \
+ -e "/NCBI_OPTFLAG *=/s:$: ${CFLAGS}:g" \
+ -e "/NCBI_LDFLAGS1 *=/s:$: ${CFLAGS} ${LDFLAGS}:g" \
+ -e "/NCBI_OGLLIBS *=/s:=.*:= $($(tc-getPKG_CONFIG) --cflags gl glu 2>/dev/null):g" \
+ -e "/OPENGL_LIBS *=/s:=.*:= $($(tc-getPKG_CONFIG) --libs gl glu 2>/dev/null):g" \
+ -e "/NCBI_OGLLIBS *=/s:=.*:= $($(tc-getPKG_CONFIG) --libs gl glu 2>/dev/null):g" \
+ -i * || die
+
+ # We use dynamic libraries
+ sed -i -e "s/-Wl,-Bstatic//" *linux*.ncbi.mk || die
+
+ sed \
+ -re "s:/usr(/bin/.*sh):\1:g" \
+ -e "s:(/bin/.*sh):${EPREFIX}\1:g" \
+ -i $(find "${S}" -type f) || die
+}
+
+src_compile() {
+ export EXTRA_VIB
+ cd "${WORKDIR}"
+ csh ncbi/make/makedis.csh || die
+ mkdir "${S}"/cgi "${S}"/real || die
+ 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
+ cp spidey ../bin/ || die
+}
+
+src_install() {
+ #sci-geosciences/cdat-lite
+ mv "${S}"/bin/cdscan "${S}"/bin/cdscan-ncbi || die
+
+ dobin "${S}"/bin/*
+
+ for i in ${EXTRA_VIB}; do
+ dobin "${S}"/build/${i} || die "Failed to install binaries."
+ done
+ use static-libs && dolib.a "${S}"/lib/*.a
+ mkdir -p "${ED}"/usr/include/ncbi
+ cp -RL "${S}"/include/* "${ED}"/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.*}}
+ 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
+ mv "${S}"/doc/man/fmerge{,-ncbi}.1 || die
+ doman "${S}"/doc/man/*
+
+ # Hypertext user documentation
+ dohtml "${S}"/{README.htm,doc/{*.html,*.htm,*.gif}}
+ insinto /usr/share/doc/${PF}/html
+ doins -r "${S}"/doc/blast "${S}"/doc/images "${S}"/doc/seq_install
+
+ # Developer documentation
+ if use doc; then
+ # Demo programs
+ mkdir "${ED}"/usr/share/ncbi
+ mv "${S}"/demo "${ED}"/usr/share/ncbi/demo || die
+ fi
+
+ # Shared data (similarity matrices and such) and database directory.
+ insinto /usr/share/ncbi
+ doins -r "${S}"/data
+ dodir /usr/share/ncbi/formatdb
+
+ # Default config file to set the path for shared data.
+ insinto /etc/ncbi
+ newins "${FILESDIR}"/ncbirc .ncbirc
+ eprefixify "${ED}"/etc/ncbi/.ncbirc
+
+ # Env file to set the location of the config file and BLAST databases.
+ newenvd "${FILESDIR}"/21ncbi-r1 21ncbi
+}