From 236e9a90805a48b6229cf600f9eebfb144459580 Mon Sep 17 00:00:00 2001 From: Andreas Tille Date: Tue, 12 Apr 2016 13:01:40 +0200 Subject: [PATCH] Re-add debian/ dir --- debian/README.Debian | 10 + debian/README.source | 7 + debian/changelog | 253 +++++++ debian/compat | 1 + debian/control | 49 ++ debian/copyright | 190 +++++ debian/dirs | 2 + debian/docs | 0 debian/get-orig-source | 7 + debian/legacy/legacy.sh | 4 + debian/ncbi-blast+-legacy.dirs | 1 + debian/ncbi-blast+-legacy.links | 8 + debian/ncbi-blast+.1 | 33 + debian/ncbi-blast+.dirs | 2 + debian/ncbi-blast+.manpages | 1 + debian/patches/allow_gcc5 | 47 ++ .../do_not_output_everything_to_stderr.patch | 46 ++ .../patches/enable_clean_after_failed_compile | 16 + debian/patches/fix_arm_mips_build | 19 + debian/patches/fix_checks | 17 + debian/patches/fix_compilation | 32 + debian/patches/fix_configure | 14 + debian/patches/fix_gcc46_errors | 28 + debian/patches/fix_gcc47_errors | 320 +++++++++ debian/patches/fix_kfreebsd_ftbs.patch | 34 + debian/patches/fix_lib_deps | 657 ++++++++++++++++++ debian/patches/hurd_fixes | 55 ++ debian/patches/include_typeinfo | 16 + debian/patches/legacy_rename_rpsblast | 14 + debian/patches/no_multiarch_rpath | 32 + debian/patches/series | 11 + debian/patches/skip_services_unit_test | 16 + debian/patches/support_other_cpus | 74 ++ debian/patches/use_pie_for_apps | 29 + debian/patches/wrong_path_to_touch.patch | 112 +++ debian/rules | 112 +++ debian/source/format | 1 + debian/source/lintian-overrides | 3 + debian/watch | 3 + 39 files changed, 2276 insertions(+) create mode 100644 debian/README.Debian create mode 100644 debian/README.source create mode 100644 debian/changelog create mode 100644 debian/compat create mode 100644 debian/control create mode 100644 debian/copyright create mode 100644 debian/dirs create mode 100644 debian/docs create mode 100755 debian/get-orig-source create mode 100755 debian/legacy/legacy.sh create mode 100644 debian/ncbi-blast+-legacy.dirs create mode 100644 debian/ncbi-blast+-legacy.links create mode 100644 debian/ncbi-blast+.1 create mode 100644 debian/ncbi-blast+.dirs create mode 100644 debian/ncbi-blast+.manpages create mode 100644 debian/patches/allow_gcc5 create mode 100644 debian/patches/do_not_output_everything_to_stderr.patch create mode 100644 debian/patches/enable_clean_after_failed_compile create mode 100644 debian/patches/fix_arm_mips_build create mode 100644 debian/patches/fix_checks create mode 100644 debian/patches/fix_compilation create mode 100644 debian/patches/fix_configure create mode 100644 debian/patches/fix_gcc46_errors create mode 100644 debian/patches/fix_gcc47_errors create mode 100644 debian/patches/fix_kfreebsd_ftbs.patch create mode 100644 debian/patches/fix_lib_deps create mode 100644 debian/patches/hurd_fixes create mode 100644 debian/patches/include_typeinfo create mode 100644 debian/patches/legacy_rename_rpsblast create mode 100644 debian/patches/no_multiarch_rpath create mode 100644 debian/patches/series create mode 100644 debian/patches/skip_services_unit_test create mode 100644 debian/patches/support_other_cpus create mode 100644 debian/patches/use_pie_for_apps create mode 100644 debian/patches/wrong_path_to_touch.patch create mode 100755 debian/rules create mode 100644 debian/source/format create mode 100644 debian/source/lintian-overrides create mode 100644 debian/watch diff --git a/debian/README.Debian b/debian/README.Debian new file mode 100644 index 00000000..ff4641b0 --- /dev/null +++ b/debian/README.Debian @@ -0,0 +1,10 @@ +blast+ for Debian +--------------------- + + This package does not include the documentation of the software. Documentation is available online. + Detail is available: man ncbi-blast+ + Package does not include test binaries nor datatool and projet_tree_builder from upstream. + Those binaries are indeed for internal upstream use, and are of no use nor related to blast+ tool itself + (see Bug #642991 discussion with upstream answers) + + -- Olivier Sallou Wed, 27 Apr 2011 15:19:59 +0200 diff --git a/debian/README.source b/debian/README.source new file mode 100644 index 00000000..6dde0846 --- /dev/null +++ b/debian/README.source @@ -0,0 +1,7 @@ +blast+ for Debian +--------------------- + +Lintian raises hardening no fortify warnings that are false positives. + + + diff --git a/debian/changelog b/debian/changelog new file mode 100644 index 00000000..55abee75 --- /dev/null +++ b/debian/changelog @@ -0,0 +1,253 @@ +ncbi-blast+ (2.2.31-4) unstable; urgency=medium + + * Really enable building architecture independent package separately + Closes: #809120 + * Save time and do nothing for architecture independent builds + + -- Andreas Tille Thu, 07 Jan 2016 18:50:31 +0100 + +ncbi-blast+ (2.2.31-3) unstable; urgency=medium + + * Drop explicite mentioning of quilt + * Enable building architecture independent package separately + Closes: #809120 + * Override false lintian error + * DEP5 fixes + + -- Andreas Tille Mon, 28 Dec 2015 12:32:23 +0100 + +ncbi-blast+ (2.2.31-2) unstable; urgency=medium + + * Fix a long-standing typo for GNU/kFreeBSD FTBS (Aaron M. Ucko) + + -- Olivier Sallou Fri, 11 Dec 2015 09:44:43 +0100 + +ncbi-blast+ (2.2.31-1) unstable; urgency=medium + + * New upstream release + * Allow parallel build (Closes: #798277). Thanks to Aron Xu + * GCC break fix (recompile with gcc5, Closes: #793263). + + -- Olivier Sallou Thu, 10 Dec 2015 13:37:03 +0100 + +ncbi-blast+ (2.2.30-4) unstable; urgency=medium + + * d/patches/fix_compilation: Add an upstream patch to + include/util/bitset/bmconst.h to fix builds with GCC 5 on platforms + such as arm64 on which char is unsigned. (Closes: #790667.) + + -- Aaron M. Ucko Thu, 02 Jul 2015 16:22:39 -0400 + +ncbi-blast+ (2.2.30-3) unstable; urgency=medium + + * Switch to unstable after unfreeze. + + -- Olivier Sallou Mon, 18 May 2015 14:34:50 +0200 + +ncbi-blast+ (2.2.30-2) experimental; urgency=medium + + * d/patches/allow_gcc5 (new): Allow compilation with GCC 5, per upstream. + (Closes: #778021.) + + -- Aaron M. Ucko Mon, 16 Feb 2015 22:38:50 -0500 + +ncbi-blast+ (2.2.30-1) experimental; urgency=medium + + * New upstream release + * d/control: switch to Standards 3.9.6 + fix svn url + * d/patches/fix_compilation: fix compilation issue + + -- Olivier Sallou Fri, 21 Nov 2014 18:21:26 +0100 + +ncbi-blast+ (2.2.29-3) unstable; urgency=medium + + * debian/patches/include_typeinfo: Patch include/corelib/ncbistl.hpp to + ensure sufficient coverage; fix typos in patch headers. (Closes: #753190.) + * Standards-Version: 3.9.4. (Already compliant.) + + -- Aaron M. Ucko Tue, 01 Jul 2014 18:27:46 -0400 + +ncbi-blast+ (2.2.29-2) unstable; urgency=medium + + * d/patches/include_typeinfo (Closes: #753190). + + -- Olivier Sallou Sat, 07 Jun 2014 11:28:22 +0200 + +ncbi-blast+ (2.2.29-1) unstable; urgency=medium + + * New upstream release + + -- Olivier Sallou Fri, 06 Jun 2014 22:38:40 +0200 + +ncbi-blast+ (2.2.28-2) unstable; urgency=low + + * debian/patches/use_pie_for_apps: Explicitly build all executables with + -fPIE -pie, to avoid giving project_tree_builder a partial PIE + treatment that now fails on mips and mipsel. (Closes: #710807.) + * debian/rules: Retire redundant APP_LDFLAGS override. + * Standards-Version: 3.9.4. (Already compliant.) + + -- Aaron M. Ucko Sun, 02 Jun 2013 23:00:44 -0400 + +ncbi-blast+ (2.2.28-1) unstable; urgency=low + + * New upstream release + - Thanks to Tim Booth for package update help. + + -- Olivier Sallou Sat, 01 Jun 2013 08:40:51 +0200 + +ncbi-blast+ (2.2.27-3) unstable; urgency=low + + * debian/series: active patch fix_arm_mips_build (Closes: #688661). + + -- Olivier Sallou Fri, 05 Oct 2012 11:03:03 +0200 + +ncbi-blast+ (2.2.27-2) unstable; urgency=low + + * debian/patches/fix_arm_mips_build: Fix FTBS on ARM and MIPS + (Closes: #688661). + * debian/rules: rename seedtop to seedtop+ to avoid blast2 conflict + (Closes: #688684). + + -- Olivier Sallou Mon, 24 Sep 2012 09:28:29 +0200 + +ncbi-blast+ (2.2.27-1) unstable; urgency=low + + * New upstream release + + -- Olivier Sallou Fri, 21 Sep 2012 17:25:41 +0200 + +ncbi-blast+ (2.2.26-3) unstable; urgency=low + + [ Aaron M. Ucko ] + * debian/patches/fix_gcc47_errors: fix various GCC 4.7 compilation + errors and warnings. (Closes: #669679.) + - Explicitly qualify more dependent names originating in base templates. + - Directly #include headers as needed. + - Use modern syntax for making protected base members public. + - Add forward declarations as needed. + * Wrap and sort build dependencies to ease maintenance thereof. + * Enable full hardening flags, introducing a small patch + (use_pie_for_apps) to reflect the need to build executables and + libraries differently. + * Use upstream's new --with-symbols flag in nostrip builds. + + [ Andreas Tille ] + * debian/control: Modernize Vcs-* fields. + + -- Aaron M. Ucko Thu, 10 May 2012 23:42:49 -0400 + +ncbi-blast+ (2.2.26-2) unstable; urgency=low + + * debian/patches/wrong_path_to_touch.patch :Fix upstream FTBFS on the Hurd + hardcodes wrong path to touch (Closes: #663244) + + -- Olivier Sallou Wed, 07 Mar 2012 17:29:23 +0100 + +ncbi-blast+ (2.2.26-1) unstable; urgency=low + + [ Olivier Sallou ] + * New upstream release + * Remove some patches, applied upstream + + [ Andreas Tille] + * debian/copyright: Added Upstream-Contact + + -- Olivier Sallou Wed, 07 Mar 2012 09:37:10 +0100 + +ncbi-blast+ (2.2.25-7) unstable; urgency=low + + * Do not output everything to STDERR in + c++/src/app/blast/update_blastdb.pl + Closes: #644237 + * debian/control: Depends s/${python:Depends}/python/ because + the python dependency of /usr/bin/windowmasker_2.2.22_adapter + is not detected obviosely + * debian/copyright: Indentation fixes to get DEP5 compatibility + + -- Andreas Tille Wed, 21 Dec 2011 15:47:04 +0100 + +ncbi-blast+ (2.2.25-6) unstable; urgency=low + + * debian/control: + Luca Capello , fix reference for legacy_blast (Closes: #642986). + + add a new line to separate the actual description from usage + instruction in the long Description:. + * debian/rules: add gene_info_reader binary in package + + -- Olivier Sallou Fri, 30 Sep 2011 12:31:05 -0400 + +ncbi-blast+ (2.2.25-5) unstable; urgency=low + + * Team upload. + * debian/patches/hurd_fixes: further patch configure(.ac) to reflect + -Wl,rpath,... support. (Closes: #629656.) + * debian/patches/fix_lib_deps: link makembindex and srsearch against + libxconnect rather than libconnect for consistency with libblast, + which uses the former for consistency with other projects. + + -- Aaron M. Ucko Mon, 29 Aug 2011 12:31:05 -0400 + +ncbi-blast+ (2.2.25-4) unstable; urgency=low + + [ Aaron M. Ucko ] + * Team upload. + * debian/patches/support_other_cpus: belatedly add a descriptive header. + * debian/patches/hurd_fixes: new; fix hurd-specific issues. + (In conjunction with the following change, finally closes: #629656.) + * debian/control: + - Build-Depends += libc0.3-dev (>= 2.13-9~) [hurd-i386] to avoid #630180. + - Declare both binary packages as Multi-Arch: foreign. + * debian/patches/fix_lib_deps: new; ensure that all libraries link against + all direct dependencies. (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.) (Closes: #633567.) + * debian/rules: tweak LDFLAGS, supplying -Wl,--as-needed across the + board (as it is now safe to do so) and adding -Wl,--enable-new-dtags + to allow LD_LIBRARY_PATH to override the private rpath. + * debian/patches/no_multiarch_rpath: new; avoid redundant rpath entries + on multiarch systems (courtesy of overzealous logic to ensure + executables will be able to find libstdc++.) + + [ Andreas Tille ] + * Enhances: t-coffee (as stated in tasks file) + + -- Aaron M. Ucko Sun, 28 Aug 2011 18:45:19 -0400 + +ncbi-blast+ (2.2.25-3) unstable; urgency=low + + * Team upload. + * debian/rules: + - Export MAKE to override an internal upstream build script that + otherwise incorrectly defaults to gmake on non-Linux + architectures. (Really closes: #629656, with any luck.) + - Force CONFIG_SHELL=/bin/bash to avoid lossage that can occur with zsh4 + masquerading as ksh, which configure otherwise favors (due to complaints + from users with broken BASH_ENV scripts that change directories). + + -- Aaron M. Ucko Thu, 09 Jun 2011 19:25:45 -0400 + +ncbi-blast+ (2.2.25-2) unstable; urgency=low + + * Team upload. + * Fix several sources of build failures (closes: #629656): + - debian/rules (override_dh_install): Correctly support building only + architecture-dependent packages. + (DEB_CONFIGURE_EXTRA_FLAGS): Add --without-caution to override the + upstream build system's reluctance to build shared libraries on the + Hurd or kFreeBSD, which it doesn't specifically recognize. Limit C++ + optimization level to -O (rather than the default -O2) on mips(el), + on which g++ otherwise crashes. :-/ + - debian/patches/support_other_cpus (new; committed upstream too): + build correctly on architectures that wound up defining + NCBI_SLOW_ATOMIC_SWAP (spuriously in the case of powerpc, + whose detection the patch fixes as well). + + -- Aaron M. Ucko Wed, 08 Jun 2011 21:42:52 -0400 + +ncbi-blast+ (2.2.25-1) unstable; urgency=low + + * Initial release (Closes: #624394) + + -- Olivier Sallou Wed, 08 Jun 2011 00:15:15 +0200 diff --git a/debian/compat b/debian/compat new file mode 100644 index 00000000..ec635144 --- /dev/null +++ b/debian/compat @@ -0,0 +1 @@ +9 diff --git a/debian/control b/debian/control new file mode 100644 index 00000000..902dd059 --- /dev/null +++ b/debian/control @@ -0,0 +1,49 @@ +Source: ncbi-blast+ +Section: science +Priority: optional +Build-Depends: autotools-dev (>= 20100122), + debhelper (>= 9), + dpkg-dev (>= 1.16.1), + libboost-test-dev, + libbz2-dev, + libc0.3-dev (>= 2.13-9~) [hurd-i386], + libpcre3-dev, + time, + zlib1g-dev +Standards-Version: 3.9.6 +Uploaders: Olivier Sallou , Andreas Tille +Maintainer: Debian Med Packaging Team +Homepage: http://www.ncbi.nlm.nih.gov/IEB/ToolBox/CPP_DOC/ +Vcs-Svn: svn://anonscm.debian.org/debian-med/trunk/packages/ncbi-blast+/trunk/ +Vcs-Browser: http://anonscm.debian.org/viewvc/debian-med/trunk/packages/ncbi-blast+/trunk/ + +Package: ncbi-blast+ +Architecture: any +Enhances: t-coffee +Depends: ncbi-data, python, ${misc:Depends}, ${perl:Depends}, ${shlibs:Depends} +Multi-Arch: foreign +Description: next generation suite of BLAST sequence search tools + The Basic Local Alignment Search Tool (BLAST) is the most widely + used sequence similarity tool. There are versions of BLAST that + compare protein queries to protein databases, nucleotide queries + to nucleotide databases, as well as versions that translate nucleotide + queries or databases in all six frames and compare to protein databases + or queries. + PSI-BLAST produces a position-specific-scoring-matrix (PSSM) starting + with a protein query, and then uses that PSSM to perform further searches. + It is also possible to compare a protein or nucleotide query to a + database of PSSM’s. + The NCBI supports a BLAST web page at blast.ncbi.nlm.nih.gov as well as + a network service. + +Package: ncbi-blast+-legacy +Architecture: all +Depends: ncbi-blast+, ${misc:Depends} +Multi-Arch: foreign +Description: NCBI Blast legacy call script + This package adds some fake scripts to call NCBI+ programs + with the NCBI blast command line. It makes use of the + legacy_blast script in ncbi-blast+ package. + . + To use those scripts, /usr/share/ncbi-blast+/bin must be added + to the PATH. diff --git a/debian/copyright b/debian/copyright new file mode 100644 index 00000000..e20323a4 --- /dev/null +++ b/debian/copyright @@ -0,0 +1,190 @@ +Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: ncbi-blast+ +Upstream-Contact: blastsoft@ncbi.nlm.nih.gov + +Files: c++/* +Copyright: NCBI +License: PD + PUBLIC DOMAIN NOTICE + National Center for Biotechnology Information + . + This software/database is a "United States Government Work" under the + terms of the United States Copyright Act. It was written as part of + the author's official duties as a United States Government employee and + thus cannot be copyrighted. This software/database is freely available + to the public for use. The National Library of Medicine and the U.S. + Government have not placed any restriction on its use or reproduction. + . + Although all reasonable efforts have been taken to ensure the accuracy + and reliability of the software and data, the NLM and the U.S. + Government do not and cannot warrant the performance or results that + may be obtained by using this software or data. The NLM and the U.S. + Government disclaim all warranties, express or implied, including + warranties of performance, merchantability or fitness for any particular + purpose. + . + Please cite the author in any work or product based on this material. + +Files: c++/*/util/compress/zlib/* +Copyright: 1995-2004 Jean-loup Gailly and Mark Adler +License: BSD-3-clause + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + . + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + . + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. + +Files: c++/*/util/regexp/* +Copyright: 1997-2009 University of Cambridge + 2008-2009 Google Inc +License: BSD-4-clause + +Files: c++/*/util/compress/bzip2/* +Copyright: 1996-2002 Julian R Seward +License: BSD-4-clause + +License: BSD-4-clause + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + 2. The origin of this software must not be misrepresented; you must + not claim that you wrote the original software. If you use this + software in a product, an acknowledgment in the product + documentation would be appreciated but is not required. + 3. Altered source versions must be plainly marked as such, and must + not be misrepresented as being the original software. + 4. The name of the author may not be used to endorse or promote + products derived from this software without specific prior written + permission. + . + THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS + OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE + GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Files: c++/src/build-system/config.*s* c++/src/util/regexp/missing +Copyright: 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc +License: GPL-2 + +Files: c++/src/build-system/ax_jni_include_dir.m4 +Copyright: 2008 Don Anderson +License: as_is + Copying and distribution of this file, with or without modification, are + permitted in any medium without royalty provided the copyright notice + and this notice are preserved. This file is offered as-is, without any + warranty. + +Files: c++/include/util/impl/floating_point_comparison.hpp +Copyright: 2001-2008 Gennadiy Rozental +License: Boost + Permission is hereby granted, free of charge, to any person or organization + obtaining a copy of the software and accompanying documentation covered by + this license (the "Software") to use, reproduce, display, distribute, + execute, and transmit the Software, and to prepare derivative works of the + Software, and to permit third-parties to whom the Software is furnished to + do so, all subject to the following: + . + The copyright notices in the Software and this entire statement, including + the above license grant, this restriction and the following disclaimer, + must be included in all copies of the Software, in whole or in part, and + all derivative works of the Software, unless such copies or derivative + works are solely in the form of machine-executable object code generated by + a source language processor. + . + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT + SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE + FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, + ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + DEALINGS IN THE SOFTWARE. + +Files: c++/include/dbapi/driver/odbc/unix_odbc/sqlfront.h +Copyright: 1998-1999 Brian Bruns +License: GPL-2 + +License: GPL-2 + This package is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + . + This package is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + . + You should have received a copy of the GNU General Public License + along with this program. If not, see + . + On Debian systems, the complete text of the GNU General + Public License version 2 can be found in "/usr/share/common-licenses/GPL-2". + + +Files: c++/src/html/ncbi_menu_*.js +Copyright: 1997-1999 Netscape Communications Corp. +License: Netscape + Netscape grants you a royalty free license to use or modify this + software provided that this copyright notice appears on all copies. + This software is provided "AS IS," without a warranty of any kind. + + +Files: c++/include/util/bitset/* +Copyright: 2002-2003 Anatoliy Kuznetsov +License: MIT + Permission is hereby granted, free of charge, to any person + obtaining a copy of this software and associated documentation + files (the "Software"), to deal in the Software without restriction, + including without limitation the rights to use, copy, modify, merge, + publish, distribute, sublicense, and/or sell copies of the Software, + and to permit persons to whom the Software is furnished to do so, + subject to the following conditions: + The above copyright notice and this permission notice shall be included + in all copies or substantial portions of the Software. + . + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES + OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. + IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, + DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, + ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + OTHER DEALINGS IN THE SOFTWARE. + + +Files: debian/* +Copyright: 2011 Olivier Sallou +License: GPL-2+ + This package is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + . + This package is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + . + You should have received a copy of the GNU General Public License + along with this program. If not, see + . + On Debian systems, the complete text of the GNU General + Public License version 2 can be found in "/usr/share/common-licenses/GPL-2". diff --git a/debian/dirs b/debian/dirs new file mode 100644 index 00000000..2b9d1904 --- /dev/null +++ b/debian/dirs @@ -0,0 +1,2 @@ +usr/bin +var/lib/ncbi-blast+/db diff --git a/debian/docs b/debian/docs new file mode 100644 index 00000000..e69de29b diff --git a/debian/get-orig-source b/debian/get-orig-source new file mode 100755 index 00000000..58c44865 --- /dev/null +++ b/debian/get-orig-source @@ -0,0 +1,7 @@ +#!/bin/bash + +set -e + +uscan --rename --verbose --force-download + + diff --git a/debian/legacy/legacy.sh b/debian/legacy/legacy.sh new file mode 100755 index 00000000..dba6d0ca --- /dev/null +++ b/debian/legacy/legacy.sh @@ -0,0 +1,4 @@ +#!/bin/sh + +# Execute legacy blast +exec legacy_blast ${0##*/} $@ diff --git a/debian/ncbi-blast+-legacy.dirs b/debian/ncbi-blast+-legacy.dirs new file mode 100644 index 00000000..da6a4081 --- /dev/null +++ b/debian/ncbi-blast+-legacy.dirs @@ -0,0 +1 @@ +/usr/share/ncbi-blast+/bin diff --git a/debian/ncbi-blast+-legacy.links b/debian/ncbi-blast+-legacy.links new file mode 100644 index 00000000..c7320566 --- /dev/null +++ b/debian/ncbi-blast+-legacy.links @@ -0,0 +1,8 @@ +usr/share/ncbi-blast+/bin/legacy.sh usr/share/ncbi-blast+/bin/blastall +usr/share/ncbi-blast+/bin/legacy.sh usr/share/ncbi-blast+/bin/megablast +usr/share/ncbi-blast+/bin/legacy.sh usr/share/ncbi-blast+/bin/blastpgp +usr/share/ncbi-blast+/bin/legacy.sh usr/share/ncbi-blast+/bin/bl2seq +usr/share/ncbi-blast+/bin/legacy.sh usr/share/ncbi-blast+/bin/rpsblast +usr/share/ncbi-blast+/bin/legacy.sh usr/share/ncbi-blast+/bin/fastacmd +usr/share/ncbi-blast+/bin/legacy.sh usr/share/ncbi-blast+/bin/formatdb +usr/share/ncbi-blast+/bin/legacy.sh usr/share/ncbi-blast+/bin/seedtop diff --git a/debian/ncbi-blast+.1 b/debian/ncbi-blast+.1 new file mode 100644 index 00000000..fe9e0c35 --- /dev/null +++ b/debian/ncbi-blast+.1 @@ -0,0 +1,33 @@ +.TH ncbi-blast+ 1 "April 29, 2011" "version 2.2.25" "USER COMMANDS" +.SH NAME +ncbi-blast+ \- NCBI command tools for BLAST+ +.SH ONELINE DOCUMENTATION +.B BLAST+ documentation is available online at http://www.ncbi.nlm.nih.gov/books/NBK1763/ +.PP +.SH DESCRIPTION +The NCBI BLAST+ is a group of tools for basic alignment search. BLAST+ + is a rewrite of BLAST with new features and performance improvements. +BLAST+ commands differ from original BLAST. For BLAST users, one should read + the BLAST USERS paragraph. +.PP +.SH CONFIGURATION +BLAST+ uses the BLASTDB environment variable to get default db directory. +It is possible to update the file /etc/ncbi/.ncbirc to add the following: +.B [BLAST] +.B BLASTDB=/var/lib/ncbi-blast+/db +.SH BLAST USERS +The easiest way to get started using these command line applications is + by means of the legacy_blast.pl PERL script which is bundled along with + the BLAST+ applications. +To utilize this script, simply prefix it to the invocation of the C toolkit + BLAST command line application and append the --path option pointing to the +installation directory of the BLAST+ applications. For example, instead of using + +.B blastall -i query -d nr -o blast.out +use +.B legacy_blast.pl blastall -i query -d nr -o blast.out --path /usr/bin + +.PP +.SH AUTHOR +Olivier Sallou (olivier.sallou (at) irisa.fr) - Man page and packaging +NCBI - BLAST+ diff --git a/debian/ncbi-blast+.dirs b/debian/ncbi-blast+.dirs new file mode 100644 index 00000000..32fdc473 --- /dev/null +++ b/debian/ncbi-blast+.dirs @@ -0,0 +1,2 @@ +usr/bin +usr/lib/ncbi-blast+ diff --git a/debian/ncbi-blast+.manpages b/debian/ncbi-blast+.manpages new file mode 100644 index 00000000..0f651869 --- /dev/null +++ b/debian/ncbi-blast+.manpages @@ -0,0 +1 @@ +debian/*.1 diff --git a/debian/patches/allow_gcc5 b/debian/patches/allow_gcc5 new file mode 100644 index 00000000..3814965e --- /dev/null +++ b/debian/patches/allow_gcc5 @@ -0,0 +1,47 @@ +Subject: allow compilation with GCC 5 +Description: Formally allow compilation with GCC 5, otherwise okay +Author: Aaron M. Ucko +Forwarded: yes +Last-Updated: 2015-02-16 +--- a/c++/src/build-system/configure ++++ b/c++/src/build-system/configure +@@ -5819,14 +5819,10 @@ + + if test "$GCC" = "yes" ; then + compiler_ver="`$real_CXX -dumpversion 2>&1`" +- case "$compiler_ver" in +- 2.95* | 2.96* | 3.* | 4.* ) +- compiler="GCC" +- ncbi_compiler="GCC" +- ncbi_compiler_ver="$compiler_ver" +- WithFeatures="$WithFeatures${WithFeaturesSep}GCC"; WithFeaturesSep=" " +- ;; +- esac ++ compiler="GCC" ++ ncbi_compiler="GCC" ++ ncbi_compiler_ver="$compiler_ver" ++ WithFeatures="$WithFeatures${WithFeaturesSep}GCC"; WithFeaturesSep=" " + elif test "$KCC" = "yes" ; then + compiler_ver="$kcc_ver" + compiler="KCC" +--- a/c++/src/build-system/configure.ac ++++ b/c++/src/build-system/configure.ac +@@ -800,14 +800,10 @@ + + if test "$GCC" = "yes" ; then + compiler_ver="`$real_CXX -dumpversion 2>&1`" +- case "$compiler_ver" in +- 2.95* | 2.96* | 3.* | 4.* ) +- compiler="GCC" +- ncbi_compiler="GCC" +- ncbi_compiler_ver="$compiler_ver" +- NCBI_FEATURE(GCC) +- ;; +- esac ++ compiler="GCC" ++ ncbi_compiler="GCC" ++ ncbi_compiler_ver="$compiler_ver" ++ NCBI_FEATURE(GCC) + elif test "$KCC" = "yes" ; then + compiler_ver="$kcc_ver" + compiler="KCC" diff --git a/debian/patches/do_not_output_everything_to_stderr.patch b/debian/patches/do_not_output_everything_to_stderr.patch new file mode 100644 index 00000000..2fdcf00d --- /dev/null +++ b/debian/patches/do_not_output_everything_to_stderr.patch @@ -0,0 +1,46 @@ +Author: Andreas Tille +Date: Wed, 21 Dec 2011 15:47:04 +0100 +Bug-Closed: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=644237 +Description: Output non-erroneous messages to STDOUT instead of STDERR + +--- ncbi-blast+-2.2.25.orig/c++/src/app/blast/update_blastdb.pl ++++ ncbi-blast+-2.2.25/c++/src/app/blast/update_blastdb.pl +@@ -104,7 +104,7 @@ + or die "Failed to login to " . NCBI_FTP . ": $!\n"; + $ftp->cwd(BLAST_DB_DIR); + $ftp->binary(); +- print STDERR "Connected to NCBI\n" if $opt_verbose; ++ print STDOUT "Connected to NCBI\n" if $opt_verbose; + return $ftp; + } + +@@ -170,14 +170,14 @@ + if ($opt_verbose and &is_multivolume_db($file)) { + my $db_name = &extract_db_name($file); + my $nvol = &get_num_volumes($db_name, @_); +- print STDERR "Downloading $db_name (" . $nvol . " volumes) ...\n"; ++ print STDOUT "Downloading $db_name (" . $nvol . " volumes) ...\n"; + } + + download_file: + if ($opt_force_download or + not -f $file or + ((stat($file))->mtime < $ftp->mdtm($file))) { +- print STDERR "Downloading $file... " if $opt_verbose; ++ print STDOUT "Downloading $file... " if $opt_verbose; + $ftp->get($file); + if ($opt_check_md5) { + unless ($ftp->get("$file.md5")) { +@@ -199,10 +199,10 @@ + } + } + } +- print STDERR "done.\n" if $opt_verbose; ++ print STDOUT "done.\n" if $opt_verbose; + $retval = 1 if ($retval == 0); + } else { +- print STDERR "$file is up to date.\n" if $opt_verbose; ++ print STDOUT "$file is up to date.\n" if $opt_verbose; + } + } + return $retval; diff --git a/debian/patches/enable_clean_after_failed_compile b/debian/patches/enable_clean_after_failed_compile new file mode 100644 index 00000000..75434fb8 --- /dev/null +++ b/debian/patches/enable_clean_after_failed_compile @@ -0,0 +1,16 @@ +Subject: clean after failure +Description: Enable clean +Author: Tim Booth +Last-Updated: 2013-06-01 +Forwarded: no +--- a/c++/src/build-system/new_module.sh.in ++++ b/c++/src/build-system/new_module.sh.in +@@ -180,7 +180,7 @@ + if test -x "$bindir/datatool"; then + datatool=$bindir/datatool + COMMON_AddRunpath "$libdir" +- else ++ elif [ "$1" != "purge_sources" ] ; then + echo "Unable to find datatool." >&2 + exit 2 + fi diff --git a/debian/patches/fix_arm_mips_build b/debian/patches/fix_arm_mips_build new file mode 100644 index 00000000..017298a0 --- /dev/null +++ b/debian/patches/fix_arm_mips_build @@ -0,0 +1,19 @@ +Subject: FTBS issue on ARM and MIPS +Descrition: switch NCBI_BIG_TYPE's baseline to Int8 from NCBI_INT8_TYPE + to fix build failures on Linux systems with ARM or MIPS processors, + which have inttypes.h and lack an extra-wide scalar type. + Bug fixed upstream. +Last-Updated: 2012-09-25 +Author: Aaron Ucko +Forwarded: not-needed +--- trunk/c++/include/corelib/ncbitype.h 2012/06/01 19:13:24 54673 ++++ trunk/c++/include/corelib/ncbitype.h 2012/09/24 14:15:47 55773 +@@ -150,7 +150,7 @@ + /* BigScalar + */ + +-#define NCBI_BIG_TYPE NCBI_INT8_TYPE ++#define NCBI_BIG_TYPE Int8 + #define SIZEOF_NCBI_BIG 8 + #if (SIZEOF_LONG_DOUBLE > SIZEOF_NCBI_BIG) + # undef NCBI_BIG_TYPE diff --git a/debian/patches/fix_checks b/debian/patches/fix_checks new file mode 100644 index 00000000..f64ede60 --- /dev/null +++ b/debian/patches/fix_checks @@ -0,0 +1,17 @@ +Subject: checks misreported as absent when unpacked under /*/src/* + + * src/build-system/Makefile.meta.in: supply it to check_add.sh + +Author: Aaron M. Ucko +Last-Update: 2011-05-23 +--- a/c++/src/build-system/Makefile.meta.in 2011-05-23 18:48:59.000000000 -0400 ++++ b/c++/src/build-system/Makefile.meta.in 2011-05-23 18:49:20.000000000 -0400 +@@ -188,7 +188,7 @@ + expendable=false ; \ + for i in $$x_project ; do \ + if test "x$$i" = "x-" ; then expendable=true ; continue ; fi ; \ +- $(check_add) $(abs_srcdir) $$i @signature@ @exe_ext@ ++ $(check_add) $(abs_srcdir) $$i @signature@ $(subdir) + CHECK_ADD_KET = || exit 5 ; \ + done ; \ + fi diff --git a/debian/patches/fix_compilation b/debian/patches/fix_compilation new file mode 100644 index 00000000..f5a8940b --- /dev/null +++ b/debian/patches/fix_compilation @@ -0,0 +1,32 @@ +Subject: Fix compilation error +Description: error in compilation, bug sent by mail to upstream +Forwarded: yes +Author: Olivier Sallou +Last-Updated: 2014-12-14 +--- a/c++/src/util/regexp/pcretest.c ++++ b/c++/src/util/regexp/pcretest.c +@@ -250,7 +250,7 @@ for (;;) + /* Read the next line by normal means, prompting if the file is stdin. */ + + { +- if (f == stdin) printf(prompt); ++ if (f == stdin) printf("%s",prompt); + if (fgets((char *)here, rlen, f) == NULL) + return (here == start)? NULL : start; + } +--- a/c++/include/util/bitset/bmconst.h ++++ b/c++/include/util/bitset/bmconst.h +@@ -147,11 +147,11 @@ const unsigned DeBruijn_bit_position: + */ + template struct first_bit_table + { +- static const char _idx[256]; ++ static const signed char _idx[256]; + }; + + template +-const char first_bit_table::_idx[256] = { ++const signed char first_bit_table::_idx[256] = { + -1, 0, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, diff --git a/debian/patches/fix_configure b/debian/patches/fix_configure new file mode 100644 index 00000000..c360ef0d --- /dev/null +++ b/debian/patches/fix_configure @@ -0,0 +1,14 @@ +Subject: fix path for debian build +Description: Debian build is not done in configure directory, + need to update way to get relative configure.orig script +Author: Olivier Sallou +Forwarded: no +Last-Updated: 2014-06-06 +--- a/c++/configure.orig ++++ b/c++/configure.orig +@@ -1,3 +1,4 @@ + #!/bin/sh +-srcdir=`dirname $0` ++srcdir=$(readlink -f $0) ++srcdir=`dirname $srcdir` + exec $srcdir/src/build-system/configure --srcdir=$srcdir ${1+"$@"} diff --git a/debian/patches/fix_gcc46_errors b/debian/patches/fix_gcc46_errors new file mode 100644 index 00000000..a28de4ea --- /dev/null +++ b/debian/patches/fix_gcc46_errors @@ -0,0 +1,28 @@ +Subject: GCC 4.6 compilation error due to missing def + + * include/corelib/ncbistre.hpp: Add stddef definition required by gcc4.6 + * src/objtools/blast/seqdb_reader/seqdbimpl.hpp: remove mutable reference + +Author: Olivier Sallou +Last-Update: 2011-05-03 +--- a/c++/include/corelib/ncbistre.hpp ++++ b/c++/include/corelib/ncbistre.hpp +@@ -116,6 +116,7 @@ + #define SEEKOFF PUBSEEKOFF + + #include ++#include + + + // (BEGIN_NCBI_SCOPE must be followed by END_NCBI_SCOPE later in this file) +--- a/c++/src/objtools/blast/seqdb_reader/seqdbimpl.hpp ++++ b/c++/src/objtools/blast/seqdb_reader/seqdbimpl.hpp +@@ -1245,7 +1245,7 @@ + CSeqDBAtlasHolder m_AtlasHolder; + + /// Reference to memory management layer. +- mutable CSeqDBAtlas & m_Atlas; ++ CSeqDBAtlas & m_Atlas; + + /// The list of database names provided to the constructor. + string m_DBNames; diff --git a/debian/patches/fix_gcc47_errors b/debian/patches/fix_gcc47_errors new file mode 100644 index 00000000..ba6255e2 --- /dev/null +++ b/debian/patches/fix_gcc47_errors @@ -0,0 +1,320 @@ +Subject: fix various GCC 4.7 compilation errors and warnings + + * Explicitly qualify more dependent names originating in base templates. + * Directly #include headers as needed. + * Use modern syntax for making protected base members public. + * Add forward declarations as needed. + +Author: Aaron M. Ucko +Last-Update: 2012-04-13 +--- a/c++/include/connect/ncbi_conn_stream.hpp ++++ b/c++/include/connect/ncbi_conn_stream.hpp +@@ -259,7 +259,7 @@ + class CConn_IOStreamSetReadTimeout : protected CConn_IOStreamSetTimeout + { + public: +- CConn_IOStreamSetTimeout::GetTimeout; ++ using CConn_IOStreamSetTimeout::GetTimeout; + + protected: + CConn_IOStreamSetReadTimeout(const STimeout* timeout) +@@ -289,7 +289,7 @@ + class CConn_IOStreamSetWriteTimeout : protected CConn_IOStreamSetTimeout + { + public: +- CConn_IOStreamSetTimeout::GetTimeout; ++ using CConn_IOStreamSetTimeout::GetTimeout; + + protected: + CConn_IOStreamSetWriteTimeout(const STimeout* timeout) +--- a/c++/include/corelib/ncbiexpt.hpp ++++ b/c++/include/corelib/ncbiexpt.hpp +@@ -852,7 +852,7 @@ + exception_class(const exception_class& other) \ + : base_class(other) \ + { \ +- x_Assign(other); \ ++ this->x_Assign(other); \ + } \ + public: \ + virtual ~exception_class(void) throw() {} \ +@@ -1172,7 +1172,7 @@ + : TBase( other) + { + m_Errno = other.m_Errno; +- x_Assign(other); ++ this->x_Assign(other); + } + + /// Destructor. +--- a/c++/include/corelib/ncbimisc.hpp ++++ b/c++/include/corelib/ncbimisc.hpp +@@ -39,6 +39,7 @@ + #ifdef HAVE_SYS_TYPES_H + # include + #endif ++#include + #ifdef NCBI_COMPILER_ICC + // Preemptively pull in , which breaks if we've already + // repointed is* at NCBI_is*. +--- a/c++/include/corelib/ncbistl.hpp ++++ b/c++/include/corelib/ncbistl.hpp +@@ -37,6 +37,7 @@ + + #include + ++#include + + // Get rid of some warnings in MSVC++ + #if (_MSC_VER >= 1200) +--- a/c++/include/corelib/ncbistr.hpp ++++ b/c++/include/corelib/ncbistr.hpp +@@ -3039,7 +3039,7 @@ + : TBase(other) + { + m_Pos = other.m_Pos; +- x_Assign(other); ++ this->x_Assign(other); + } + + /// Destructor. +--- a/c++/include/serial/impl/stltypes.hpp ++++ b/c++/include/serial/impl/stltypes.hpp +@@ -412,6 +412,7 @@ + typedef StlIterator TStlIterator; + typedef TypeInfoIterator TTypeInfoIterator; + typedef typename TTypeInfoIterator::TObjectPtr TObjectPtr; ++ typedef CStlClassInfoFunctions CParent; + + static TStlIterator& It(TTypeInfoIterator& iter) + { +@@ -437,7 +438,8 @@ + } + static bool InitIterator(TTypeInfoIterator& iter) + { +- TStlIterator stl_iter = Get(iter.GetContainerPtr()).begin(); ++ TStlIterator stl_iter ++ = CParent::Get(iter.GetContainerPtr()).begin(); + if ( sizeof(TStlIterator) <= sizeof(iter.m_IteratorData) ) { + void* data = &iter.m_IteratorData; + new (data) TStlIterator(stl_iter); +@@ -445,7 +447,7 @@ + else { + iter.m_IteratorData = new TStlIterator(stl_iter); + } +- return stl_iter != Get(iter.GetContainerPtr()).end(); ++ return stl_iter != CParent::Get(iter.GetContainerPtr()).end(); + } + static void ReleaseIterator(TTypeInfoIterator& iter) + { +@@ -466,7 +468,7 @@ + + static bool NextElement(TTypeInfoIterator& iter) + { +- return ++It(iter) != Get(iter.GetContainerPtr()).end(); ++ return ++It(iter) != CParent::Get(iter.GetContainerPtr()).end(); + } + static TObjectPtr GetElementPtr(const TTypeInfoIterator& iter) + { +@@ -503,7 +505,7 @@ + + static bool EraseElement(TTypeInfoIterator& iter) + { +- TStlIterator& it = It(iter); ++ TStlIterator& it = CParent::It(iter); + Container* c = static_cast(iter.GetContainerPtr()); + it = c->erase(it); + return it != c->end(); +@@ -511,7 +513,7 @@ + static void EraseAllElements(TTypeInfoIterator& iter) + { + Container* c = static_cast(iter.GetContainerPtr()); +- c->erase(It(iter), c->end()); ++ c->erase(CParent::It(iter), c->end()); + } + + static void SetIteratorFunctions(CStlOneArgTemplate* info) +@@ -542,7 +544,7 @@ + } + static bool EraseElement(TTypeInfoIterator& iter) + { +- TStlIterator& it = It(iter); ++ TStlIterator& it = CParent::It(iter); + Container* c = static_cast(iter.GetContainerPtr()); + TStlIterator erase = it++; + c->erase(erase); +@@ -551,7 +553,7 @@ + static void EraseAllElements(TTypeInfoIterator& iter) + { + Container* c = static_cast(iter.GetContainerPtr()); +- c->erase(It(iter), c->end()); ++ c->erase(CParent::It(iter), c->end()); + } + + static void SetIteratorFunctions(CStlOneArgTemplate* info) +--- a/c++/include/serial/iterator.hpp ++++ b/c++/include/serial/iterator.hpp +@@ -520,13 +520,13 @@ + CTypeIteratorBase(TTypeInfo needType, const TBeginInfo& beginInfo) + : m_NeedType(needType) + { +- Init(beginInfo); ++ this->Init(beginInfo); + } + CTypeIteratorBase(TTypeInfo needType, const TBeginInfo& beginInfo, + const string& filter) + : m_NeedType(needType) + { +- Init(beginInfo, filter); ++ this->Init(beginInfo, filter); + } + + virtual bool CanSelect(const CConstObjectInfo& object) +--- a/c++/include/util/bitset/bmfunc.h ++++ b/c++/include/util/bitset/bmfunc.h +@@ -39,6 +39,13 @@ + namespace bm + { + ++bm::id_t bit_block_any_range(const bm::word_t* block, ++ bm::word_t left, ++ bm::word_t right); ++ ++bm::id_t bit_block_calc_count_range(const bm::word_t* block, ++ bm::word_t left, ++ bm::word_t right); + + /*! + @brief Structure with statistical information about bitset's memory +--- a/c++/include/util/bitset/bmserial.h ++++ b/c++/include/util/bitset/bmserial.h +@@ -1381,7 +1381,7 @@ + case set_block_arrgap: + case set_block_arrgap_egamma: + { +- unsigned arr_len = read_id_list(dec, btype, this->id_array_); ++ unsigned arr_len = this->read_id_list(dec, btype, this->id_array_); + gap_len = gap_set_array(gap_temp_block_, this->id_array_, arr_len); + break; + } +@@ -1390,7 +1390,7 @@ + (sizeof(gap_word_t) == 2 ? dec.get_16() : dec.get_32()); + case set_block_arrgap_egamma_inv: + case set_block_arrgap_inv: +- gap_len = read_gap_block(dec, btype, gap_temp_block_, gap_head); ++ gap_len = this->read_gap_block(dec, btype, gap_temp_block_, gap_head); + break; + default: + BM_ASSERT(0); +--- a/c++/include/util/linkedset.hpp ++++ b/c++/include/util/linkedset.hpp +@@ -268,10 +268,10 @@ + pair ins = m_Container.insert(value); + if ( ins.second ) { + if ( ins.first == begin() ) +- insertToStart(*ins.first); ++ this->insertToStart(*ins.first); + else { + iterator prev = ins.first; +- insertAfter(*--prev, *ins.first); ++ this->insertAfter(*--prev, *ins.first); + } + } + return ins; +@@ -280,10 +280,10 @@ + void erase(iterator iter) + { + if ( iter == begin() ) +- removeFromStart(*iter); ++ this->removeFromStart(*iter); + else { + iterator prev = iter; +- removeAfter(*--prev, *iter); ++ this->removeAfter(*--prev, *iter); + } + m_Container.erase(iter); + } +@@ -422,10 +422,10 @@ + { + iterator iter = m_Container.insert(value); + if ( iter == begin() ) +- insertToStart(get(iter)); ++ this->insertToStart(get(iter)); + else { + iterator prev = iter; +- insertAfter(get(--prev), get(iter)); ++ this->insertAfter(get(--prev), get(iter)); + } + return iter; + } +@@ -433,10 +433,10 @@ + void erase(iterator iter) + { + if ( iter == begin() ) +- removeFromStart(get(iter)); ++ this->removeFromStart(get(iter)); + else { + iterator prev = iter; +- removeAfter(get(--prev), get(iter)); ++ this->removeAfter(get(--prev), get(iter)); + } + m_Container.erase(iter); + } +--- a/c++/include/util/rangemap.hpp ++++ b/c++/include/util/rangemap.hpp +@@ -578,7 +578,7 @@ + // get level + + // insert element +- TSelectMapI selectIter = insertLevel(selectKey); ++ TSelectMapI selectIter = this->insertLevel(selectKey); + pair levelIns = selectIter->second.insert(value); + + pair ret; +@@ -640,7 +640,7 @@ + // insert element + iterator ret; + ret.m_Range = range_type::GetWhole(); +- ret.m_SelectIter = insertLevel(selectKey); ++ ret.m_SelectIter = this->insertLevel(selectKey); + ret.m_SelectIterEnd = this->m_SelectMap.end(); + ret.m_LevelIter = ret.m_SelectIter->second.insert(value); + return ret; +--- a/c++/src/serial/stdtypes.cpp ++++ b/c++/src/serial/stdtypes.cpp +@@ -720,7 +720,7 @@ + if ( IsSigned() ) { + // signed -> unsigned + // check for negative value +- if ( IsNegative(value) ) ++ if ( CParent::IsNegative(value) ) + ThrowIntegerOverflow(); + } + if ( sizeof(value) > sizeof(result) ) { +@@ -751,7 +751,7 @@ + // unsigned -> signed + if ( sizeof(value) == sizeof(result) ) { + // same size - check for sign change only +- if ( IsNegative(result) ) ++ if ( CParent::IsNegative(result) ) + ThrowIntegerOverflow(); + } + } +@@ -786,7 +786,7 @@ + if ( IsSigned() ) { + // signed -> unsigned + // check for negative value +- if ( IsNegative(value) ) ++ if ( CParent::IsNegative(value) ) + ThrowIntegerOverflow(); + } + if ( sizeof(value) > sizeof(result) ) { +@@ -817,7 +817,7 @@ + // unsigned -> signed + if ( sizeof(value) == sizeof(result) ) { + // same size - check for sign change only +- if ( IsNegative(result) ) ++ if ( CParent::IsNegative(result) ) + ThrowIntegerOverflow(); + } + } diff --git a/debian/patches/fix_kfreebsd_ftbs.patch b/debian/patches/fix_kfreebsd_ftbs.patch new file mode 100644 index 00000000..8a82e614 --- /dev/null +++ b/debian/patches/fix_kfreebsd_ftbs.patch @@ -0,0 +1,34 @@ +Subject: Fix missing colon +Description: colon missing causing FTBS on some archs +Author: Olivier Sallou +Forwarded: yes +Comment: updated upstream at revision 70194 +--- a/c++/src/corelib/ncbifile.cpp ++++ b/c++/src/corelib/ncbifile.cpp +@@ -4423,7 +4423,7 @@ + if (statvfs(path.c_str(), &st) != 0) { \ + NCBI_THROW(CFileErrnoException, eFileSystemInfo, msg); \ + } \ +- info->total_space = (Uint8)st.f_bsize * st.f_blocks \ ++ info->total_space = (Uint8)st.f_bsize * st.f_blocks; \ + if (st.f_frsize) { \ + info->free_space = (Uint8)st.f_frsize * st.f_bavail; \ + info->block_size = (unsigned long)st.f_frsize; \ +@@ -4431,7 +4431,7 @@ + info->free_space = (Uint8)st.f_bsize * st.f_bavail; \ + info->block_size = (unsigned long)st.f_bsize; \ + } \ +- info->used_space = info->total_space - info->free_space ++ info->used_space = info->total_space - info->free_space; + + + #define GET_STATFS_INFO \ +@@ -4443,7 +4443,7 @@ + info->total_space = (Uint8)st.f_bsize * st.f_blocks; \ + info->free_space = (Uint8)st.f_bsize * st.f_bavail; \ + info->used_space = info->total_space - info->free_space; \ +- info->block_size = (unsigned long)st.f_bsize ++ info->block_size = (unsigned long)st.f_bsize; + + + diff --git a/debian/patches/fix_lib_deps b/debian/patches/fix_lib_deps new file mode 100644 index 00000000..086900a8 --- /dev/null +++ b/debian/patches/fix_lib_deps @@ -0,0 +1,657 @@ +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 +Last-Update: 2014-12-02 +--- 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 \ + $(OBJREAD_LIBS) xnetblastcli xnetblast blastdb scoremat tables xalnmgr + # BLAST additionally needs xconnect $(SOBJMGR_LIBS) or $(OBJMGR_LIBS) +--- 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) + 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 @@ + + 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/blast/core/Makefile.blast.lib ++++ b/c++/src/algo/blast/core/Makefile.blast.lib +@@ -21,6 +21,7 @@ + CFLAGS = $(FAST_CFLAGS) + LDFLAGS = $(FAST_LDFLAGS) + ++DLL_LIB = composition_adjustment xconnect tables + + WATCHERS = madden camacho fongah2 + +--- 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/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 \ +- $(OBJREAD_LIBS) xobjutil tables connect $(SOBJMGR_LIBS) ++ $(OBJREAD_LIBS) xobjutil tables xconnect $(SOBJMGR_LIBS) + LIB = $(LIB_:%=%$(STATIC)) + + CXXFLAGS = $(FAST_CXXFLAGS) +--- a/c++/src/algo/blast/format/Makefile.xblastformat.lib ++++ b/c++/src/algo/blast/format/Makefile.xblastformat.lib +@@ -7,7 +7,8 @@ + + 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/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/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/algo/winmask/Makefile.xalgowinmask.lib ++++ b/c++/src/algo/winmask/Makefile.xalgowinmask.lib +@@ -21,7 +21,7 @@ + CXXFLAGS = $(FAST_CXXFLAGS) + LDFLAGS = $(FAST_LDFLAGS) + +- ++DLL_LIB = seqmasks_io xobjread xobjutil xobjmgr seq xncbi + + USES_LIBRARIES = \ + seqmasks_io +--- a/c++/src/build-system/library_relations.txt ++++ b/c++/src/build-system/library_relations.txt +@@ -1163,7 +1163,7 @@ + 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 +--- 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/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/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/html/Makefile.html.lib ++++ b/c++/src/html/Makefile.html.lib +@@ -7,6 +7,8 @@ + commentdiag indentstream html_exception writer_htmlenc + LIB = xhtml + ++DLL_LIB = xncbi ++ + WATCHERS = ivanov + + +--- 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/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/blast/Makefile.xnetblastcli.lib ++++ b/c++/src/objects/blast/Makefile.xnetblastcli.lib +@@ -3,6 +3,7 @@ + LIB = xnetblastcli + SRC = blastclient blastclient_ + ++DLL_LIB = xnetblast xser xconnect xutil xncbi + + USES_LIBRARIES = \ + xconnect xnetblast +--- 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/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/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 @@ + 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/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/seq/Makefile.seq.lib ++++ b/c++/src/objects/seq/Makefile.seq.lib +@@ -12,6 +12,8 @@ + 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/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/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/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/split/Makefile.id2_split.lib ++++ b/c++/src/objmgr/split/Makefile.id2_split.lib +@@ -17,7 +17,7 @@ + + CPPFLAGS = $(ORIG_CPPFLAGS) $(CMPRS_INCLUDE) + +-DLL_LIB = $(SOBJMGR_LIBS) ++DLL_LIB = xobjmgr seqsplit seqset seq general xser xcompress xncbi + + WATCHERS = vasilche + +--- a/c++/src/objmgr/util/Makefile.util.lib ++++ b/c++/src/objmgr/util/Makefile.util.lib +@@ -8,6 +8,8 @@ + 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/align_format/Makefile.align_format.lib ++++ b/c++/src/objtools/align_format/Makefile.align_format.lib +@@ -13,6 +13,10 @@ + + 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 @@ + + WATCHERS = todorov dicuccio grichenk + +- ++DLL_LIB = xobjmgr seqset seq xser tables xncbi + + USES_LIBRARIES = \ + tables xobjutil +--- 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 = -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/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) + CPPFLAGS = -DNCBI_MODULE=BLASTDB $(ORIG_CPPFLAGS) + CXXFLAGS = $(FAST_CXXFLAGS) +--- 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) + CPPFLAGS = -DNCBI_MODULE=BLASTDB $(ORIG_CPPFLAGS) + CXXFLAGS = $(FAST_CXXFLAGS) +--- 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) + CPPFLAGS = -DNCBI_MODULE=NETBLAST $(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 @@ + + 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 @@ + + 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/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 @@ + # 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 @@ + 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,7 +12,10 @@ + 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/objtools/readers/Makefile.xobjread.lib ++++ b/c++/src/objtools/readers/Makefile.xobjread.lib +@@ -21,7 +21,7 @@ + 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_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/serial/Makefile.serial.lib ++++ b/c++/src/serial/Makefile.serial.lib +@@ -18,6 +18,8 @@ + + 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 @@ + LIB = xutil + PROJ_TAG = core + ++DLL_LIB = xncbi + LIBS = $(ORIG_LIBS) + + WATCHERS = vakatov kornbluh +--- a/c++/src/util/compress/api/Makefile.compress.lib ++++ b/c++/src/util/compress/api/Makefile.compress.lib +@@ -7,7 +7,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) $(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/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 diff --git a/debian/patches/hurd_fixes b/debian/patches/hurd_fixes new file mode 100644 index 00000000..97b76d66 --- /dev/null +++ b/debian/patches/hurd_fixes @@ -0,0 +1,55 @@ +Subject: fix portability issues that led to Hurd build failures + +* src/build-system/configure(.ac): + - Reflect the Hurd's support for -Wl,rpath,... . +* src/connect/ncbi_socket_cxx.cpp, src/connect/ext/ncbi_localnet.c: + cope with missing PATH_MAX everywhere, not just under Windows. + +Author: Aaron M. Ucko +Last-Update: 2011-06-10 +--- a/c++/src/build-system/configure ++++ b/c++/src/build-system/configure +@@ -7420,7 +7420,7 @@ + solaris* ) + CONF_f_runpath="-R" + ;; +- linux*:[GI]CC | *bsd*:GCC | cygwin*:GCC | osf*:GCC ) ++ linux*:[GI]CC | *bsd*:GCC | cygwin*:GCC | osf*:GCC | gnu*:GCC) + CONF_f_runpath="-Wl,-rpath," + ;; + irix*:* | linux*:KCC | *:Compaq ) +--- a/c++/src/build-system/configure.ac ++++ b/c++/src/build-system/configure.ac +@@ -1558,7 +1558,7 @@ + solaris* ) + CONF_f_runpath="-R" + ;; +- linux*:[[GI]]CC | *bsd*:GCC | cygwin*:GCC | osf*:GCC ) ++ linux*:[[GI]]CC | *bsd*:GCC | cygwin*:GCC | osf*:GCC | gnu*:GCC ) + CONF_f_runpath="-Wl,-rpath," + ;; + irix*:* | linux*:KCC | *:Compaq ) +--- a/c++/src/connect/ncbi_socket_cxx.cpp ++++ b/c++/src/connect/ncbi_socket_cxx.cpp +@@ -35,7 +35,7 @@ + #include "ncbi_assert.h" // no _ASSERT()s, keep clean from xncbi + #include + #include // for PATH_MAX +-#if defined(NCBI_OS_MSWIN) && !defined(PATH_MAX) ++#ifndef PATH_MAX + # define PATH_MAX 512 // will actually use less than 32 chars + #endif // NCBI_OS_MSWIN && !PATH_MAX + +--- a/c++/src/connect/ext/ncbi_localnet.c ++++ b/c++/src/connect/ext/ncbi_localnet.c +@@ -62,6 +62,10 @@ + # endif /*_MAX_PATH*/ + #endif /*NCBI_OS_MSWIN && !PATH_MAX*/ + ++#if !defined(PATH_MAX) ++# define PATH_MAX 4096 ++#endif /*Patch added for Ubuntu build*/ ++ + #if PATH_MAX < 256 + # define BUFSIZE 256 + #else diff --git a/debian/patches/include_typeinfo b/debian/patches/include_typeinfo new file mode 100644 index 00000000..e9fe46ac --- /dev/null +++ b/debian/patches/include_typeinfo @@ -0,0 +1,16 @@ +Subject: include required by recent compiler +Description: a recent gcc version requires an include +Author: Olivier Sallou +Forwarded: yes +Bug: sent by mail +Last-Updated: 2014-06-30 +--- a/c++/include/corelib/ncbistl.hpp ++++ b/c++/include/corelib/ncbistl.hpp +@@ -215,6 +215,7 @@ END_NCBI_SCOPE + # elif defined(_GLIBCXX_DEPRECATED) + # include + # ifdef _GLIBCXX_THROW_OR_ABORT /* using libstdc++ from GCC 4.8 or later */ ++# include + # include + # include + # endif diff --git a/debian/patches/legacy_rename_rpsblast b/debian/patches/legacy_rename_rpsblast new file mode 100644 index 00000000..f40204b1 --- /dev/null +++ b/debian/patches/legacy_rename_rpsblast @@ -0,0 +1,14 @@ +Author: Olivier Sallou +Description: rename binary as blast+ for package coherency. +Last-Updated: 2011-10-03 +--- a/c++/src/app/blast/legacy_blast.pl ++++ b/c++/src/app/blast/legacy_blast.pl +@@ -1064,7 +1064,7 @@ + if (defined $opt_p and $opt_p =~ /f/i) { + $retval .= "/rpstblastn"; + } else { +- $retval .= "/rpsblast"; ++ $retval .= "/rpsblast+"; + } + $retval .= &add_exe_extension(); + diff --git a/debian/patches/no_multiarch_rpath b/debian/patches/no_multiarch_rpath new file mode 100644 index 00000000..169cc2fe --- /dev/null +++ b/debian/patches/no_multiarch_rpath @@ -0,0 +1,32 @@ +Subject: avoid redundant rpath entries on multiarch systems + + * src/build-system/configure(.ac): when ensuring that executables + will be able to find libstdc++, don't add rpath entries that files + under /etc/ld.so.conf.d already specify, even if they don't resemble + traditional single-architecture or biarch locations. + +Debian-Bug: 633567. +Author: Aaron M. Ucko +Last-Update: 2011-08-28 +--- a/c++/src/build-system/configure ++++ b/c++/src/build-system/configure +@@ -7480,7 +7480,7 @@ + break + ;; + /* ) +- found=true ++ fgrep -qsx $abs_dir /etc/ld.so.conf.d/* || found=true + break + ;; + esac +--- a/c++/src/build-system/configure.ac ++++ b/c++/src/build-system/configure.ac +@@ -1837,7 +1837,7 @@ + break + ;; + /* ) +- found=true ++ fgrep -qsx $abs_dir /etc/ld.so.conf.d/* || found=true + break + ;; + esac diff --git a/debian/patches/series b/debian/patches/series new file mode 100644 index 00000000..f60154b6 --- /dev/null +++ b/debian/patches/series @@ -0,0 +1,11 @@ +enable_clean_after_failed_compile +#hurd_fixes +legacy_rename_rpsblast +fix_lib_deps +no_multiarch_rpath +use_pie_for_apps +skip_services_unit_test +fix_configure +fix_compilation +allow_gcc5 +fix_kfreebsd_ftbs.patch diff --git a/debian/patches/skip_services_unit_test b/debian/patches/skip_services_unit_test new file mode 100644 index 00000000..d23a1643 --- /dev/null +++ b/debian/patches/skip_services_unit_test @@ -0,0 +1,16 @@ +Subject: remove network required test +Author: Tim Booth +Forwarded: no +Description: test require internet connection +Last-Updated: 2013-06-01 +--- a/c++/src/objtools/blast/services/unit_test/Makefile.blast_services_unit_test.app ++++ b/c++/src/objtools/blast/services/unit_test/Makefile.blast_services_unit_test.app +@@ -11,6 +11,7 @@ + + LIBS = $(NETWORK_LIBS) $(CMPRS_LIBS) $(DL_LIBS) $(ORIG_LIBS) + +-CHECK_CMD = blast_services_unit_test ++# This test requires an internet connection, shouldn't be run on a build server ++# CHECK_CMD = blast_services_unit_test + + WATCHERS = madden camacho diff --git a/debian/patches/support_other_cpus b/debian/patches/support_other_cpus new file mode 100644 index 00000000..e8ae1e7e --- /dev/null +++ b/debian/patches/support_other_cpus @@ -0,0 +1,74 @@ +Subject: build correctly on architectures that wound up w/NCBI_SLOW_ATOMIC_SWAP + +* include/corelib/impl/ncbi_atomic_defs.h, include/corelib/ncbiatomic.h: + fix powerpc detection, which previously only worked under Darwin. +* src/objects/seq/seq_id_*.hpp: move sx_GetSeqIdMutex to join its users. + +Author: Aaron M. Ucko +Last-Update: 2011-06-08 +Index: b/c++/include/corelib/impl/ncbi_atomic_defs.h +=================================================================== +--- a/c++/include/corelib/impl/ncbi_atomic_defs.h 2011-06-08 20:26:07.000000000 -0400 ++++ b/c++/include/corelib/impl/ncbi_atomic_defs.h 2011-06-08 20:29:25.000000000 -0400 +@@ -259,7 +259,7 @@ + # endif + #endif + +-#if !defined(NCBI_SWAP_POINTERS) && !defined(NCBI_SWAP_POINTERS_CONDITIONALLY) && !defined(NCBI_NO_THREADS) && (!defined(NCBI_COUNTER_ASM_OK) || (!defined(__i386) && !defined(__ppc__) && !defined(__ppc64__) && !defined(__sparc) && !defined(__x86_64))) ++#if !defined(NCBI_SWAP_POINTERS) && !defined(NCBI_SWAP_POINTERS_CONDITIONALLY) && !defined(NCBI_NO_THREADS) && (!defined(NCBI_COUNTER_ASM_OK) || (!defined(__i386) && !defined(__powerpc__) && !defined(__powerpc64__) && !defined(__ppc__) && !defined(__ppc64__) && !defined(__sparc) && !defined(__x86_64))) + # define NCBI_SWAP_POINTERS_EXTERN 1 + # define NCBI_SLOW_ATOMIC_SWAP 1 + #endif +Index: b/c++/include/corelib/ncbiatomic.h +=================================================================== +--- a/c++/include/corelib/ncbiatomic.h 2011-06-08 20:26:00.000000000 -0400 ++++ b/c++/include/corelib/ncbiatomic.h 2011-06-08 20:30:34.000000000 -0400 +@@ -121,14 +121,14 @@ + asm volatile("swap [%2], %1" : "=m" (*nv_loc), "=r" (old_value) + : "r" (nv_loc), "1" (new_value), "m" (*nv_loc)); + return old_value; +-# elif defined(__ppc__) || defined(__ppc64__) ++# elif defined(__powerpc__) || defined(__powerpc64__) || defined(__ppc__) || defined(__ppc64__) + void* old_value; + int swapped = 0; + NCBI_SCHED_SPIN_INIT(); + while ( !swapped ) { + swapped = 0; + asm volatile( +-#ifdef __ppc64__ ++#if defined(__powerpc64__) || defined(__ppc64__) + "ldarx %1,0,%4\n\tstdcx. %3,0,%4" + #else + "lwarx %1,0,%4\n\tstwcx. %3,0,%4" +Index: b/c++/src/objects/seq/seq_id_handle.cpp +=================================================================== +--- a/c++/src/objects/seq/seq_id_handle.cpp 2011-06-08 20:26:34.000000000 -0400 ++++ b/c++/src/objects/seq/seq_id_handle.cpp 2011-06-08 20:28:43.000000000 -0400 +@@ -47,11 +47,6 @@ + // CSeq_id_Info + // + +-//#define NCBI_SLOW_ATOMIC_SWAP +-#ifdef NCBI_SLOW_ATOMIC_SWAP +-DEFINE_STATIC_FAST_MUTEX(sx_GetSeqIdMutex); +-#endif +- + + CSeq_id_Info::CSeq_id_Info(CSeq_id::E_Choice type, + CSeq_id_Mapper* mapper) +Index: b/c++/src/objects/seq/seq_id_tree.cpp +=================================================================== +--- a/c++/src/objects/seq/seq_id_tree.cpp 2011-06-08 20:26:34.000000000 -0400 ++++ b/c++/src/objects/seq/seq_id_tree.cpp 2011-06-08 20:28:53.000000000 -0400 +@@ -42,6 +42,11 @@ + BEGIN_NCBI_SCOPE + BEGIN_SCOPE(objects) + ++//#define NCBI_SLOW_ATOMIC_SWAP ++#ifdef NCBI_SLOW_ATOMIC_SWAP ++DEFINE_STATIC_FAST_MUTEX(sx_GetSeqIdMutex); ++#endif ++ + //////////////////////////////////////////////////////////////////// + // + // CSeq_id_***_Tree:: diff --git a/debian/patches/use_pie_for_apps b/debian/patches/use_pie_for_apps new file mode 100644 index 00000000..1900f335 --- /dev/null +++ b/debian/patches/use_pie_for_apps @@ -0,0 +1,29 @@ +Subject: build executables with -fPIE, not -fPIC + +* -fPIC is only useful for shared libraries; substitute -fPIE (along + with -pie at link time) when building executables. + +Author: Aaron M. Ucko +Last-Update: 2012-05-10 +--- a/c++/src/build-system/Makefile.app.in ++++ b/c++/src/build-system/Makefile.app.in +@@ -24,8 +24,8 @@ + + ### C/C++ source file compilation setup + +-CXXFLAGS_ALL = @f_compile@ $(CXXFLAGS) $(LOCAL_CPPFLAGS) $(CPPFLAGS) +-CFLAGS_ALL = @f_compile@ $(CFLAGS) $(LOCAL_CPPFLAGS) $(CPPFLAGS) ++CXXFLAGS_ALL = @f_compile@ $(CXXFLAGS:-fPIC=-fPIE) $(LOCAL_CPPFLAGS) $(CPPFLAGS) ++CFLAGS_ALL = @f_compile@ $(CFLAGS:-fPIC=-fPIE) $(LOCAL_CPPFLAGS) $(CPPFLAGS) + SOURCES = @UNIX_SRC@ $(SRC) + + ### Standard application build rules +@@ -133,7 +133,7 @@ + else + $(XAPP): $(XOBJ) $(XOBJ2) $(XLIBDEP) + @-$(RM) .$(XAPP).stamp +- $(LINK_WRAPPER) $(LINK) $(LDFLAGS) $(APP_LDFLAGS) $(XOBJ) $(XOBJ2) $(PRE_LIBS) $(XLIB) $(XAPP_LIBS) @f_outexe@$(XAPP) $(LINK_FILTER) ++ $(LINK_WRAPPER) $(LINK) $(LDFLAGS) $(APP_LDFLAGS) -fPIE -pie $(XOBJ) $(XOBJ2) $(PRE_LIBS) $(XLIB) $(XAPP_LIBS) @f_outexe@$(XAPP) $(LINK_FILTER) + $(STRIP) $(XAPP) + $(POST_LINK) $(XAPP) + ifneq "$(BINCOPY)" "@:" diff --git a/debian/patches/wrong_path_to_touch.patch b/debian/patches/wrong_path_to_touch.patch new file mode 100644 index 00000000..f418da73 --- /dev/null +++ b/debian/patches/wrong_path_to_touch.patch @@ -0,0 +1,112 @@ +Subject: upstream bug using hard path for touch +Description: upstream makes use of a hard path that +does not match on hurd systems. Patch comes from upstream + and will be included in next release +Author: Olivier Sallou +Last-Updated: 12/03/2012 +--- a/c++/src/build-system/Makefile.meta.in ++++ b/c++/src/build-system/Makefile.meta.in +@@ -28,7 +28,7 @@ + + @make_shell@ + RM = /bin/rm +-TOUCH = /usr/bin/touch ++TOUCH = @TOUCH@ + MKDIR = /bin/mkdir + + signature = @signature@ +--- a/c++/src/build-system/Makefile.mk.in ++++ b/c++/src/build-system/Makefile.mk.in +@@ -54,7 +54,7 @@ + RMDIR = /bin/rm -rf + COPY = /bin/cp -p + BINCOPY = @BINCOPY@ +-TOUCH = /usr/bin/touch ++TOUCH = @TOUCH@ + MKDIR = /bin/mkdir + BINTOUCH = $(TOUCH) + LN_S = @LN_S@ +--- a/c++/src/build-system/NEWS ++++ b/c++/src/build-system/NEWS +@@ -8,3 +8,5 @@ + 2011-05-17: new @ncbi_java@ variable for --with-jni builds. + + 2011-10-05: new @FEATURES@ variable for the unit test framework. ++ ++2012-02-27: new @TOUCH@ variable to avoid hard-coded paths. +--- a/c++/src/build-system/configure.ac ++++ b/c++/src/build-system/configure.ac +@@ -1965,6 +1965,7 @@ + AC_MSG_RESULT(no) + fi + ++AC_PATH_PROG(TOUCH, touch, [], /bin:/usr/bin:$PATH) + AC_PROG_EGREP + AC_MSG_CHECKING([how to run $EGREP quietly]) + if test -z "`echo foo | $EGREP -q fo+ 2>>config.log || echo $?`"; then +--- a/c++/src/build-system/configure ++++ b/c++/src/build-system/configure +@@ -318,7 +318,7 @@ + # include + #endif" + +-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS PROJECTS build build_cpu build_vendor build_os host host_cpu host_vendor host_os INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CXX CXXFLAGS ac_ct_CXX MT_SFX DLL DLL_LIB_SETTING IF_WITH_DLL UNLESS_WITH_DLL STATIC USUAL_AND_DLL USUAL_AND_LIB LN_S RANLIB ac_ct_RANLIB AR STRIP DISTCC CCACHE TAIL EGREP VALGRIND_PATH CXXCPP TCHECK_CL AMQ CPP Z_INCLUDE Z_LIBS BZ2_INCLUDE BZ2_LIBS LZO_INCLUDE LZO_LIBS PCRE_INCLUDE PCRE_LIBS LIBGNUTLS_CONFIG GNUTLS_INCLUDE GNUTLS_LIBS OPENSSL_INCLUDE OPENSSL_LIBS FTDS64_INCLUDE FTDS64_LIBS FTDS64_LIB FTDS64_CTLIB_INCLUDE FTDS64_CTLIB_LIBS FTDS64_CTLIB_LIB FTDS_INCLUDE FTDS_LIBS FTDS_LIB freetds ftds64 mysql_config PYTHON PYTHON_INCLUDE PYTHON_LIBS PYTHON23 PYTHON23_INCLUDE PYTHON23_LIBS PYTHON24 PYTHON24_INCLUDE PYTHON24_LIBS PYTHON25 PYTHON25_INCLUDE PYTHON25_LIBS _ACJNI_JAVAC X_CFLAGS X_PRE_LIBS X_LIBS X_EXTRA_LIBS wxconf EXPAT_INCLUDE EXPAT_LIBS SABLOT_INCLUDE SABLOT_LIBS LIBXML_INCLUDE LIBXML_LIBS LIBXSLT_INCLUDE LIBXSLT_LIBS XSLTPROC SQLITE3_INCLUDE SQLITE3_LIBS OECHEM_INCLUDE OECHEM_LIBS SGE_INCLUDE SGE_LIBS MUPARSER_INCLUDE MUPARSER_LIBS HDF5_INCLUDE HDF5_LIBS JPEG_INCLUDE JPEG_LIBS PNG_INCLUDE PNG_LIBS TIFF_INCLUDE TIFF_LIBS UNGIF_INCLUDE UNGIF_LIBS GIF_INCLUDE GIF_LIBS XPM_INCLUDE XPM_LIBS freetype_config MAGIC_INCLUDE MAGIC_LIBS CURL_INCLUDE CURL_LIBS signature build_root top_srcdir srcdir status_dir builddir runpath ncbi_runpath c_ncbi_runpath LINK C_LINK TAIL_N EGREP_Q FAST_CFLAGS FAST_CXXFLAGS OBJCXX_CXXFLAGS DEPFLAGS DEPFLAGS_POST FAST_LDFLAGS APP_LDFLAGS DLL_LDFLAGS C_LIBS OBJCXX_LIBS GCCPCH RUNPATH_ORIGIN NO_STRICT_ALIASING D_SFX DEBUG_SFX LIB_OR_DLL FORCE_STATIC_LIB APP_LIB_SETTING APP_LIBS_SETTING LINK_DLL has_dll_loadable LINK_LOADABLE CFLAGS_DLL CXXFLAGS_DLL ALLOW_UNDEF FORBID_UNDEF OPT_GROUPS local_lbsm ncbi_crypt CONNEXT XCONNEXT serial bdb dbapi objects gui algo app internal sra check CHECK_ARG CHECK_TOOLS CHECK_TIMEOUT_MULT CHECK_OS_NAME FEATURES script_shell make_shell obj_ext lib_pre lib_l_pre lib_ext dll_ext loadable_ext lib_l_ext exe_ext f_compile f_outobj f_outlib f_libpath f_runpath f_outexe BDB_LIB BDB_CACHE_LIB DBAPI_DRIVER DBAPI_CTLIB DBAPI_DBLIB DBAPI_MYSQL DBAPI_ODBC THREAD_LIBS NCBIATOMIC_LIB NETWORK_LIBS NETWORK_PURE_LIBS RESOLVER_LIBS MATH_LIBS KSTAT_LIBS RPCSVC_LIBS CRYPT_LIBS DL_LIBS RT_LIBS UUID_LIBS DEMANGLE_LIBS ICONV_LIBS Z_LIB BZ2_LIB PCREPOSIX_LIBS PCRE_LIB OPENSSL_STATIC_LIBS TLS_INCLUDE TLS_LIBS SYBASE_PATH SYBASE_LCL_PATH SYBASE_INCLUDE SYBASE_LIBS SYBASE_DLLS SYBASE_DBLIBS MYSQL_INCLUDE MYSQL_LIBS BERKELEYDB_INCLUDE BERKELEYDB_LIBS BERKELEYDB_STATIC_LIBS BERKELEYDB_CXX_LIBS BERKELEYDB_CXX_STATIC_LIBS ODBC_INCLUDE ODBC_LIBS BOOST_INCLUDE BOOST_LIBPATH BOOST_TAG BOOST_REGEX_LIBS BOOST_REGEX_STATIC_LIBS BOOST_TEST_PEM_LIBS BOOST_TEST_PEM_STATIC_LIBS BOOST_TEST_TEM_LIBS BOOST_TEST_TEM_STATIC_LIBS BOOST_TEST_UTF_LIBS BOOST_TEST_UTF_STATIC_LIBS BOOST_THREAD_LIBS BOOST_THREAD_STATIC_LIBS NCBI_C_INCLUDE NCBI_C_LIBPATH OPENGL_INCLUDE OPENGL_LIBS OPENGL_STATIC_LIBS OSMESA_INCLUDE OSMESA_LIBS OSMESA_STATIC_LIBS GLUT_INCLUDE GLUT_LIBS GLEW_INCLUDE GLEW_LIBS GLEW_STATIC_LIBS FLTK_INCLUDE FLTK_LIBS FLTK_LIBS_GL FLTK_LIBS_IMAGES FLTK_LIBS_ALL FLTK_STATIC_LIBS FLTK_STATIC_LIBS_GL FLTK_STATIC_LIBS_IMAGES FLTK_STATIC_LIBS_ALL FLTK_CONFIG WXWIDGETS_INCLUDE WXWIDGETS_LIBS WXWIDGETS_STATIC_LIBS WXWIDGETS_GL_LIBS WXWIDGETS_GL_STATIC_LIBS WXWIDGETS_POST_LINK FASTCGI_INCLUDE FASTCGI_LIBS FASTCGI_OBJS NCBI_SSS_INCLUDE NCBI_SSS_LIBPATH LIBSSSUTILS LIBSSSDB sssutils SP_INCLUDE SP_LIBS ORBACUS_INCLUDE ORBACUS_LIBPATH LIBOB LIBIMR ICU_CONFIG ICU_INCLUDE ICU_LIBS ICU_STATIC_LIBS EXPAT_STATIC_LIBS SABLOT_STATIC_LIBS LIBXML_STATIC_LIBS LIBXSLT_STATIC_LIBS XERCES_INCLUDE XERCES_LIBS XERCES_STATIC_LIBS XALAN_INCLUDE XALAN_LIBS XALAN_STATIC_LIBS SQLITE3_STATIC_LIBS FREETYPE_INCLUDE FREETYPE_LIBS ncbi_xreader_pubseqos ncbi_xreader_pubseqos2 UNLESS_PUBSEQOS JDK_PATH JDK_INCLUDE ncbi_java NCBI_C_ncbi BINCOPY APP_NOCOPY APP_OR_NULL IF_REBUILDING_LIBS IF_REBUILDING_CONDITIONALLY IF_DEACTIVATING configurables_mfname CC_FILTER CXX_FILTER AR_FILTER LINK_FILTER CC_WRAPPER CXX_WRAPPER AR_WRAPPER LINK_WRAPPER KeepStateTarget Rules serial_ws50_rtti_kludge ncbicntr UNIX_SRC UNIX_USR_PROJ compiler compiler_root compiler_version COMPILER OSTYPE NCBI_PLATFORM_BITS LIBOBJS LTLIBOBJS' ++ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS PROJECTS build build_cpu build_vendor build_os host host_cpu host_vendor host_os INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CXX CXXFLAGS ac_ct_CXX MT_SFX DLL DLL_LIB_SETTING IF_WITH_DLL UNLESS_WITH_DLL STATIC USUAL_AND_DLL USUAL_AND_LIB LN_S RANLIB ac_ct_RANLIB AR STRIP DISTCC CCACHE TAIL TOUCH EGREP VALGRIND_PATH CXXCPP TCHECK_CL AMQ CPP Z_INCLUDE Z_LIBS BZ2_INCLUDE BZ2_LIBS LZO_INCLUDE LZO_LIBS PCRE_INCLUDE PCRE_LIBS LIBGNUTLS_CONFIG GNUTLS_INCLUDE GNUTLS_LIBS OPENSSL_INCLUDE OPENSSL_LIBS FTDS64_INCLUDE FTDS64_LIBS FTDS64_LIB FTDS64_CTLIB_INCLUDE FTDS64_CTLIB_LIBS FTDS64_CTLIB_LIB FTDS_INCLUDE FTDS_LIBS FTDS_LIB freetds ftds64 mysql_config PYTHON PYTHON_INCLUDE PYTHON_LIBS PYTHON23 PYTHON23_INCLUDE PYTHON23_LIBS PYTHON24 PYTHON24_INCLUDE PYTHON24_LIBS PYTHON25 PYTHON25_INCLUDE PYTHON25_LIBS _ACJNI_JAVAC X_CFLAGS X_PRE_LIBS X_LIBS X_EXTRA_LIBS wxconf EXPAT_INCLUDE EXPAT_LIBS SABLOT_INCLUDE SABLOT_LIBS LIBXML_INCLUDE LIBXML_LIBS LIBXSLT_INCLUDE LIBXSLT_LIBS XSLTPROC SQLITE3_INCLUDE SQLITE3_LIBS OECHEM_INCLUDE OECHEM_LIBS SGE_INCLUDE SGE_LIBS MUPARSER_INCLUDE MUPARSER_LIBS HDF5_INCLUDE HDF5_LIBS JPEG_INCLUDE JPEG_LIBS PNG_INCLUDE PNG_LIBS TIFF_INCLUDE TIFF_LIBS UNGIF_INCLUDE UNGIF_LIBS GIF_INCLUDE GIF_LIBS XPM_INCLUDE XPM_LIBS freetype_config MAGIC_INCLUDE MAGIC_LIBS CURL_INCLUDE CURL_LIBS signature build_root top_srcdir srcdir status_dir builddir runpath ncbi_runpath c_ncbi_runpath LINK C_LINK TAIL_N EGREP_Q FAST_CFLAGS FAST_CXXFLAGS OBJCXX_CXXFLAGS DEPFLAGS DEPFLAGS_POST FAST_LDFLAGS APP_LDFLAGS DLL_LDFLAGS C_LIBS OBJCXX_LIBS GCCPCH RUNPATH_ORIGIN NO_STRICT_ALIASING D_SFX DEBUG_SFX LIB_OR_DLL FORCE_STATIC_LIB APP_LIB_SETTING APP_LIBS_SETTING LINK_DLL has_dll_loadable LINK_LOADABLE CFLAGS_DLL CXXFLAGS_DLL ALLOW_UNDEF FORBID_UNDEF OPT_GROUPS local_lbsm ncbi_crypt CONNEXT XCONNEXT serial bdb dbapi objects gui algo app internal sra check CHECK_ARG CHECK_TOOLS CHECK_TIMEOUT_MULT CHECK_OS_NAME FEATURES script_shell make_shell obj_ext lib_pre lib_l_pre lib_ext dll_ext loadable_ext lib_l_ext exe_ext f_compile f_outobj f_outlib f_libpath f_runpath f_outexe BDB_LIB BDB_CACHE_LIB DBAPI_DRIVER DBAPI_CTLIB DBAPI_DBLIB DBAPI_MYSQL DBAPI_ODBC THREAD_LIBS NCBIATOMIC_LIB NETWORK_LIBS NETWORK_PURE_LIBS RESOLVER_LIBS MATH_LIBS KSTAT_LIBS RPCSVC_LIBS CRYPT_LIBS DL_LIBS RT_LIBS UUID_LIBS DEMANGLE_LIBS ICONV_LIBS Z_LIB BZ2_LIB PCREPOSIX_LIBS PCRE_LIB OPENSSL_STATIC_LIBS TLS_INCLUDE TLS_LIBS SYBASE_PATH SYBASE_LCL_PATH SYBASE_INCLUDE SYBASE_LIBS SYBASE_DLLS SYBASE_DBLIBS MYSQL_INCLUDE MYSQL_LIBS BERKELEYDB_INCLUDE BERKELEYDB_LIBS BERKELEYDB_STATIC_LIBS BERKELEYDB_CXX_LIBS BERKELEYDB_CXX_STATIC_LIBS ODBC_INCLUDE ODBC_LIBS BOOST_INCLUDE BOOST_LIBPATH BOOST_TAG BOOST_REGEX_LIBS BOOST_REGEX_STATIC_LIBS BOOST_TEST_PEM_LIBS BOOST_TEST_PEM_STATIC_LIBS BOOST_TEST_TEM_LIBS BOOST_TEST_TEM_STATIC_LIBS BOOST_TEST_UTF_LIBS BOOST_TEST_UTF_STATIC_LIBS BOOST_THREAD_LIBS BOOST_THREAD_STATIC_LIBS NCBI_C_INCLUDE NCBI_C_LIBPATH OPENGL_INCLUDE OPENGL_LIBS OPENGL_STATIC_LIBS OSMESA_INCLUDE OSMESA_LIBS OSMESA_STATIC_LIBS GLUT_INCLUDE GLUT_LIBS GLEW_INCLUDE GLEW_LIBS GLEW_STATIC_LIBS FLTK_INCLUDE FLTK_LIBS FLTK_LIBS_GL FLTK_LIBS_IMAGES FLTK_LIBS_ALL FLTK_STATIC_LIBS FLTK_STATIC_LIBS_GL FLTK_STATIC_LIBS_IMAGES FLTK_STATIC_LIBS_ALL FLTK_CONFIG WXWIDGETS_INCLUDE WXWIDGETS_LIBS WXWIDGETS_STATIC_LIBS WXWIDGETS_GL_LIBS WXWIDGETS_GL_STATIC_LIBS WXWIDGETS_POST_LINK FASTCGI_INCLUDE FASTCGI_LIBS FASTCGI_OBJS NCBI_SSS_INCLUDE NCBI_SSS_LIBPATH LIBSSSUTILS LIBSSSDB sssutils SP_INCLUDE SP_LIBS ORBACUS_INCLUDE ORBACUS_LIBPATH LIBOB LIBIMR ICU_CONFIG ICU_INCLUDE ICU_LIBS ICU_STATIC_LIBS EXPAT_STATIC_LIBS SABLOT_STATIC_LIBS LIBXML_STATIC_LIBS LIBXSLT_STATIC_LIBS XERCES_INCLUDE XERCES_LIBS XERCES_STATIC_LIBS XALAN_INCLUDE XALAN_LIBS XALAN_STATIC_LIBS SQLITE3_STATIC_LIBS FREETYPE_INCLUDE FREETYPE_LIBS ncbi_xreader_pubseqos ncbi_xreader_pubseqos2 UNLESS_PUBSEQOS JDK_PATH JDK_INCLUDE ncbi_java NCBI_C_ncbi BINCOPY APP_NOCOPY APP_OR_NULL IF_REBUILDING_LIBS IF_REBUILDING_CONDITIONALLY IF_DEACTIVATING configurables_mfname CC_FILTER CXX_FILTER AR_FILTER LINK_FILTER CC_WRAPPER CXX_WRAPPER AR_WRAPPER LINK_WRAPPER KeepStateTarget Rules serial_ws50_rtti_kludge ncbicntr UNIX_SRC UNIX_USR_PROJ compiler compiler_root compiler_version COMPILER OSTYPE NCBI_PLATFORM_BITS LIBOBJS LTLIBOBJS' + ac_subst_files='' + + # Initialize some variables set by options. +@@ -6615,6 +6615,46 @@ + echo "${ECHO_T}no" >&6 + fi + ++# Extract the first word of "touch", so it can be a program name with args. ++set dummy touch; ac_word=$2 ++echo "$as_me:$LINENO: checking for $ac_word" >&5 ++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 ++if test "${ac_cv_path_TOUCH+set}" = set; then ++ echo $ECHO_N "(cached) $ECHO_C" >&6 ++else ++ case $TOUCH in ++ [\\/]* | ?:[\\/]*) ++ ac_cv_path_TOUCH="$TOUCH" # Let the user override the test with a path. ++ ;; ++ *) ++ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR ++as_dummy="/bin:/usr/bin:$PATH" ++for as_dir in $as_dummy ++do ++ IFS=$as_save_IFS ++ test -z "$as_dir" && as_dir=. ++ for ac_exec_ext in '' $ac_executable_extensions; do ++ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ++ ac_cv_path_TOUCH="$as_dir/$ac_word$ac_exec_ext" ++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 ++ break 2 ++ fi ++done ++done ++ ++ ;; ++esac ++fi ++TOUCH=$ac_cv_path_TOUCH ++ ++if test -n "$TOUCH"; then ++ echo "$as_me:$LINENO: result: $TOUCH" >&5 ++echo "${ECHO_T}$TOUCH" >&6 ++else ++ echo "$as_me:$LINENO: result: no" >&5 ++echo "${ECHO_T}no" >&6 ++fi ++ + echo "$as_me:$LINENO: checking for egrep" >&5 + echo $ECHO_N "checking for egrep... $ECHO_C" >&6 + if test "${ac_cv_prog_egrep+set}" = set; then +@@ -33848,6 +33888,7 @@ + s,@DISTCC@,$DISTCC,;t t + s,@CCACHE@,$CCACHE,;t t + s,@TAIL@,$TAIL,;t t ++s,@TOUCH@,$TOUCH,;t t + s,@EGREP@,$EGREP,;t t + s,@VALGRIND_PATH@,$VALGRIND_PATH,;t t + s,@CXXCPP@,$CXXCPP,;t t diff --git a/debian/rules b/debian/rules new file mode 100755 index 00000000..a24b083d --- /dev/null +++ b/debian/rules @@ -0,0 +1,112 @@ +#!/usr/bin/make -f +# -*- makefile -*- + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +NUMJOBS=1 +ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) + NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) +endif + + +DEB_CONFIGURE_EXTRA_FLAGS=--with-dll --with-mt --without-autodep \ + --without-makefile-auto-update --with-flat-makefile --without-caution \ + --without-dbapi --without-lzo --with-runpath=/usr/lib/ncbi-blast+ \ + --with-build-root=BUILD --without-debug +proj=algo/blast/ app/ objmgr/ objtools/align_format/ objtools/blast/ + +ifneq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS))) +DEB_CONFIGURE_EXTRA_FLAGS += --with-symbols +endif + +#export DEB_BUILD_MAINT_OPTIONS=hardening=+all,-pie +export DEB_BUILD_MAINT_OPTIONS=hardening=+all,-pie +export DEB_CFLAGS_MAINT_APPEND=-Wall -pedantic +export DEB_LDFLAGS_MAINT_APPEND=-Wl,--as-needed + +DEB_HOST_ARCH := $(shell dpkg-architecture -qDEB_HOST_ARCH) + +CFLAGS := $(shell dpkg-buildflags --get CFLAGS) +CPPFLAGS := $(shell dpkg-buildflags --get CPPFLAGS) +CXXFLAGS := $(shell dpkg-buildflags --get CXXFLAGS) +LDFLAGS := $(shell dpkg-buildflags --get LDFLAGS) -Wl,--as-needed + +ifneq (,$(findstring mips,$(DEB_HOST_ARCH))) +CXXFLAGS := $(CXXFLAGS:-O%=-O) +DEB_CONFIGURE_EXTRA_FLAGS += FAST_CXXFLAGS=-O +endif + +export CFLAGS CPPFLAGS CXXFLAGS LDFLAGS MAKE + + +llp=LD_LIBRARY_PATH +override_dh_auto_configure: + cd c++ && $(llp)=$(CURDIR)/c++/BUILD/lib$${$(llp)+:$$$(llp)} \ + CONFIG_SHELL=/bin/bash ./configure $(DEB_CONFIGURE_EXTRA_FLAGS) + +override_dh_auto_build-arch: + cd c++/BUILD/build && \ + make -j$(NUMJOBS) -f Makefile.flat all_projects="$(proj)" +# make all_r + +override_dh_auto_build-indep: + echo "Save time and do nothing for architecture independent builds" + +override_dh_auto_test: + -dh_auto_test + -c++/BUILD/build/check.sh concat_err + -cat c++/BUILD/build/check.sh.out_err + +instroot = debian/ncbi-blast+/usr +leg_bin = debian/ncbi-blast+-legacy/usr/share/ncbi-blast+/bin +override_dh_auto_install-arch: + cp c++/BUILD/lib/*.so $(instroot)/lib/ncbi-blast+/ + cp c++/BUILD/bin/* $(instroot)/bin/ + +override_dh_auto_install-indep: + echo "Nothing to do for architecture independant installs" + +override_dh_install-arch: + # dh_install + mv $(instroot)/bin/rpsblast $(instroot)/bin/rpsblast+ + mv $(instroot)/bin/seedtop $(instroot)/bin/seedtop+ + mv $(instroot)/bin/legacy_blast.pl $(instroot)/bin/legacy_blast + mv $(instroot)/bin/update_blastdb.pl $(instroot)/bin/update_blastdb + mv $(instroot)/bin/windowmasker_2.2.22_adapter.py \ + $(instroot)/bin/windowmasker_2.2.22_adapter +# Clean up tests, demos, and internal build tools + rm -f $(instroot)/bin/*test* $(instroot)/bin/seqdb_demo \ + $(instroot)/bin/datatool \ + $(instroot)/bin/project_tree_builder \ + $(instroot)/lib/ncbi-blast+/libtest_*.so + +override_dh_install-indep: + if test -d $(leg_bin); then cp debian/legacy/legacy.sh $(leg_bin)/; fi + +override_dh_clean: + cp c++/configure.orig configure.orig.save + dh_clean + #Tricky - for each module directory there may be several module files + #or there may be none but then there is still a module named after the + #directory. Clean everything! + -for x in c++/src/objects/* ; do \ + (cd "$$x" && ( \ + mods="`echo *.module`" ; \ + [ "$${mods#*\*}" = "$$mods" ] || mods="`basename $$x`" ; \ + for mod in $$mods ; do \ + ../../../BUILD/build/new_module.sh $$mod purge_sources ; \ + done ) ; \ + ) ; \ + done + rm -rf c++/compilers/dll c++/config.log c++/Makefile + rm -f c++/configure.lineno c++/src/objects/blastxml/blastxml.module + find -name check_exec.pid -delete + rm -rf c++/BUILD + mv configure.orig.save c++/configure.orig + +%: + dh $@ -Dc++ --with autotools_dev + +get-orig-source: + . debian/get-orig-source diff --git a/debian/source/format b/debian/source/format new file mode 100644 index 00000000..163aaf8d --- /dev/null +++ b/debian/source/format @@ -0,0 +1 @@ +3.0 (quilt) diff --git a/debian/source/lintian-overrides b/debian/source/lintian-overrides new file mode 100644 index 00000000..9bb4b0e0 --- /dev/null +++ b/debian/source/lintian-overrides @@ -0,0 +1,3 @@ +# False positive since these files are actually source files +ncbi-blast+ source: source-is-missing c++/src/html/ncbi_menu*.js + diff --git a/debian/watch b/debian/watch new file mode 100644 index 00000000..6494f990 --- /dev/null +++ b/debian/watch @@ -0,0 +1,3 @@ +version=3 +opts=pasv,filenamemangle=s/\+-src/-orig/,filenamemangle=s/blast/blast+/ \ + ftp://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/LATEST/ncbi-blast-(.*)\+-src\.tar\.gz debian uupdate -- 2.30.2