[med-svn] [gmap] 05/08: New upstream version 2017-09-11
Alex Mestiashvili
malex-guest at moszumanska.debian.org
Fri Sep 15 07:55:19 UTC 2017
This is an automated email from the git hooks/post-receive script.
malex-guest pushed a commit to branch master
in repository gmap.
commit 4495e018ec7407f5249c84257984893e1cdbe080
Author: Alexandre Mestiashvili <alex at biotec.tu-dresden.de>
Date: Fri Sep 15 09:16:13 2017 +0200
New upstream version 2017-09-11
---
ChangeLog | 15 ++++++
Makefile.in | 2 +-
TODO | 3 --
VERSION | 2 +-
configure | 24 ++++-----
src/ChangeLog | 0
src/Makefile.in | 2 +-
src/compile | 165 --------------------------------------------------------
src/gmap.c | 26 ++++-----
src/pair.c | 120 ++++++++++++++++++++++++++++++++++-------
10 files changed, 143 insertions(+), 216 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index a5e0526..f8bfc3b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,20 @@
+2017-09-11 twu
+
+ * VERSION: Updated version number
+
+ * gmap.c, src: Merged revision 209800 from trunk to restore --intronlength
+ option
+
+ * pair.c: Merged revisions 209797 and 209798 from trunk to replace gff3
+ printing code for CDS with a call to the code for exons
+
+ * gmap.c, src: Merged revision 209788 from trunk to no longer iterate on
+ check_middle_local
+
2017-09-05 twu
+ * public-2017-09-05: Created public release
+
* sarray-search.c: Fixed bug resulting from check of common diagonal over
circular origin
diff --git a/Makefile.in b/Makefile.in
index 1dc67f7..1a13b09 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -184,7 +184,7 @@ am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/config/compile \
$(top_srcdir)/config/config.sub \
$(top_srcdir)/config/install-sh $(top_srcdir)/config/ltmain.sh \
$(top_srcdir)/config/missing AUTHORS COPYING ChangeLog INSTALL \
- NEWS README TODO config/compile config/config.guess \
+ NEWS README config/compile config/config.guess \
config/config.sub config/install-sh config/ltmain.sh \
config/missing
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
diff --git a/TODO b/TODO
deleted file mode 100644
index c5a7bd7..0000000
--- a/TODO
+++ /dev/null
@@ -1,3 +0,0 @@
-
-Add flag that allows for splitting afterwards.
-
diff --git a/VERSION b/VERSION
index a6b5878..5c57d19 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-2017-09-05
\ No newline at end of file
+2017-09-11
\ No newline at end of file
diff --git a/configure b/configure
index d0d7d18..9f64c4b 100755
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for gmap 2017-09-05.
+# Generated by GNU Autoconf 2.69 for gmap 2017-09-11.
#
# Report bugs to <Thomas Wu <twu at gene.com>>.
#
@@ -590,8 +590,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='gmap'
PACKAGE_TARNAME='gmap'
-PACKAGE_VERSION='2017-09-05'
-PACKAGE_STRING='gmap 2017-09-05'
+PACKAGE_VERSION='2017-09-11'
+PACKAGE_STRING='gmap 2017-09-11'
PACKAGE_BUGREPORT='Thomas Wu <twu at gene.com>'
PACKAGE_URL=''
@@ -1369,7 +1369,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures gmap 2017-09-05 to adapt to many kinds of systems.
+\`configure' configures gmap 2017-09-11 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1440,7 +1440,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of gmap 2017-09-05:";;
+ short | recursive ) echo "Configuration of gmap 2017-09-11:";;
esac
cat <<\_ACEOF
@@ -1577,7 +1577,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-gmap configure 2017-09-05
+gmap configure 2017-09-11
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2183,7 +2183,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by gmap $as_me 2017-09-05, which was
+It was created by gmap $as_me 2017-09-11, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@@ -2533,8 +2533,8 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking package version" >&5
$as_echo_n "checking package version... " >&6; }
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: 2017-09-05" >&5
-$as_echo "2017-09-05" >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: 2017-09-11" >&5
+$as_echo "2017-09-11" >&6; }
### Read defaults
@@ -4401,7 +4401,7 @@ fi
# Define the identity of the package.
PACKAGE='gmap'
- VERSION='2017-09-05'
+ VERSION='2017-09-11'
cat >>confdefs.h <<_ACEOF
@@ -19978,7 +19978,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by gmap $as_me 2017-09-05, which was
+This file was extended by gmap $as_me 2017-09-11, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -20044,7 +20044,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-gmap config.status 2017-09-05
+gmap config.status 2017-09-11
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
diff --git a/src/ChangeLog b/src/ChangeLog
deleted file mode 100644
index e69de29..0000000
diff --git a/src/Makefile.in b/src/Makefile.in
index 2b2e097..5b6c083 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -2598,7 +2598,7 @@ am__define_uniq_tagged_files = \
ETAGS = etags
CTAGS = ctags
am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.h.in \
- $(top_srcdir)/config/depcomp ChangeLog compile
+ $(top_srcdir)/config/depcomp
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
ALLOCA = @ALLOCA@
diff --git a/src/compile b/src/compile
deleted file mode 100644
index 51522be..0000000
--- a/src/compile
+++ /dev/null
@@ -1,165 +0,0 @@
--*- mode: compilation; default-directory: "~/bioinfo/gmap/trunk/src/" -*-
-Compilation started at Mon Dec 14 14:13:20
-
-make -k gsnap.sse42
-/gne/home/twu/bin/gcc -DHAVE_CONFIG_H -I. -pthread -DTARGET=\"x86_64-unknown-linux-gnu\" -DGMAPDB=\"/gne/research/data/bioinfo/gmap/data/genomes\" -DMAX_READLENGTH=300 -DGSNAP=1 -DHAVE_SSE2=1 -DHAVE_SSSE3=1 -DHAVE_SSE4_1=1 -DHAVE_SSE4_2=1 -msse2 -mssse3 -msse4.1 -msse4.2 -mpopcnt -g -Wall -Wextra -DCHECK_ASSERTIONS=1 -MT gsnap_sse42-dynprog_simd.o -MD -MP -MF .deps/gsnap_sse42-dynprog_simd.Tpo -c -o gsnap_sse42-dynprog_simd.o `test -f 'dynprog_simd.c' || echo './'`dynprog_simd.c
-dynprog_simd.c: In function ‘Dynprog_simd_8’:
-dynprog_simd.c:2143:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
- na2 = revp ? nt_to_int_array[gsequence[1-c]] : nt_to_int_array[gsequence[c-1]];
- ^
-dynprog_simd.c:2143:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
-dynprog_simd.c:2144:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
- na2_alt = revp ? nt_to_int_array[gsequence_alt[1-c]] : nt_to_int_array[gsequence_alt[c-1
- ^
-dynprog_simd.c:2144:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
-dynprog_simd.c:2347:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
- na2 = revp ? nt_to_int_array[gsequence[1-c]] : nt_to_int_array[gsequence[c-1]];
- ^
-dynprog_simd.c:2347:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
-dynprog_simd.c:2348:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
- na2_alt = revp ? nt_to_int_array[gsequence_alt[1-c]] : nt_to_int_array[gsequence_alt[c-1
- ^
-dynprog_simd.c:2348:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
-dynprog_simd.c:1942:33: warning: variable ‘extend_ladder’ set but not used [-Wunused-but-set-variable]
- __m128i gap_open, gap_extend, extend_ladder, complement_dummy;
- ^
-dynprog_simd.c: In function ‘Dynprog_simd_8_upper’:
-dynprog_simd.c:2770:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
- na2 = revp ? nt_to_int_array[gsequence[1-c]] : nt_to_int_array[gsequence[c-1]];
- ^
-dynprog_simd.c:2770:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
-dynprog_simd.c:2771:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
- na2_alt = revp ? nt_to_int_array[gsequence_alt[1-c]] : nt_to_int_array[gsequence_alt[c-1
- ^
-dynprog_simd.c:2771:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
-dynprog_simd.c:2896:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
- na2 = revp ? nt_to_int_array[gsequence[1-c]] : nt_to_int_array[gsequence[c-1]];
- ^
-dynprog_simd.c:2896:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
-dynprog_simd.c:2897:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
- na2_alt = revp ? nt_to_int_array[gsequence_alt[1-c]] : nt_to_int_array[gsequence_alt[c-1
- ^
-dynprog_simd.c:2897:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
-dynprog_simd.c:2632:8: warning: unused variable ‘na2_single’ [-Wunused-variable]
- char na2_single;
- ^
-dynprog_simd.c:2626:70: warning: unused variable ‘pairscore’ [-Wunused-variable]
- Score8_T *pairscores[5], *pairscores_std_ptr, *pairscores_alt_ptr, pairscore;
- ^
-dynprog_simd.c: In function ‘Dynprog_simd_8_lower’:
-dynprog_simd.c:3238:3: error: ‘extend_ladder’ undeclared (first use in this function)
- extend_ladder = _mm_setr_epi8(0,extend,2*extend,3*extend,4*extend,5*extend,6*extend,7*ext
- ^
-dynprog_simd.c:3238:3: note: each undeclared identifier is reported only once for each function it appears in
-dynprog_simd.c:3267:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
- na1 = revp ? nt_to_int_array[rsequence[1-r]] : nt_to_int_array[rsequence[r-1]];
- ^
-dynprog_simd.c:3267:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
-dynprog_simd.c:3389:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
- na1 = revp ? nt_to_int_array[rsequence[1-r]] : nt_to_int_array[rsequence[r-1]];
- ^
-dynprog_simd.c:3389:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
-dynprog_simd.c:3089:8: warning: unused variable ‘na2_single’ [-Wunused-variable]
- char na2_single;
- ^
-dynprog_simd.c:3083:45: warning: unused variable ‘pairscore’ [-Wunused-variable]
- Score8_T *pairscores[5], *pairscores_ptr, pairscore;
- ^
-dynprog_simd.c: In function ‘Dynprog_simd_16’:
-dynprog_simd.c:3739:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
- na2 = revp ? nt_to_int_array[gsequence[1-c]] : nt_to_int_array[gsequence[c-1]];
- ^
-dynprog_simd.c:3739:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
-dynprog_simd.c:3740:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
- na2_alt = revp ? nt_to_int_array[gsequence_alt[1-c]] : nt_to_int_array[gsequence_alt[c-1
- ^
-dynprog_simd.c:3740:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
-dynprog_simd.c:3923:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
- na2 = revp ? nt_to_int_array[gsequence[1-c]] : nt_to_int_array[gsequence[c-1]];
- ^
-dynprog_simd.c:3923:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
-dynprog_simd.c:3924:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
- na2_alt = revp ? nt_to_int_array[gsequence_alt[1-c]] : nt_to_int_array[gsequence_alt[c-1
- ^
-dynprog_simd.c:3924:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
-dynprog_simd.c:3563:33: warning: variable ‘extend_ladder’ set but not used [-Wunused-but-set-variable]
- __m128i gap_open, gap_extend, extend_ladder, complement_dummy;
- ^
-dynprog_simd.c: In function ‘Dynprog_simd_16_upper’:
-dynprog_simd.c:4259:3: error: ‘extend_ladder’ undeclared (first use in this function)
- extend_ladder = _mm_setr_epi16(0,extend,2*extend,3*extend,4*extend,5*extend,6*extend,7*ex
- ^
-dynprog_simd.c:4284:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
- na2 = revp ? nt_to_int_array[gsequence[1-c]] : nt_to_int_array[gsequence[c-1]];
- ^
-dynprog_simd.c:4284:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
-dynprog_simd.c:4285:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
- na2_alt = revp ? nt_to_int_array[gsequence_alt[1-c]] : nt_to_int_array[gsequence_alt[c-1
- ^
-dynprog_simd.c:4285:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
-dynprog_simd.c:4381:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
- na2 = revp ? nt_to_int_array[gsequence[1-c]] : nt_to_int_array[gsequence[c-1]];
- ^
-dynprog_simd.c:4381:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
-dynprog_simd.c:4382:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
- na2_alt = revp ? nt_to_int_array[gsequence_alt[1-c]] : nt_to_int_array[gsequence_alt[c-1
- ^
-dynprog_simd.c:4382:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
-dynprog_simd.c:4158:8: warning: unused variable ‘na2_single’ [-Wunused-variable]
- char na2_single;
- ^
-dynprog_simd.c:4152:71: warning: unused variable ‘pairscore’ [-Wunused-variable]
- Score16_T *pairscores[5], *pairscores_std_ptr, *pairscores_alt_ptr, pairscore;
- ^
-dynprog_simd.c: In function ‘Dynprog_simd_16_lower’:
-dynprog_simd.c:4675:3: error: ‘extend_ladder’ undeclared (first use in this function)
- extend_ladder = _mm_setr_epi16(0,extend,2*extend,3*extend,4*extend,5*extend,6*extend,7*ex
- ^
-dynprog_simd.c:4699:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
- na1 = revp ? nt_to_int_array[rsequence[1-r]] : nt_to_int_array[rsequence[r-1]];
- ^
-dynprog_simd.c:4699:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
-dynprog_simd.c:4792:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
- na1 = revp ? nt_to_int_array[rsequence[1-r]] : nt_to_int_array[rsequence[r-1]];
- ^
-dynprog_simd.c:4792:4: warning: array subscript has type ‘char’ [-Wchar-subscripts]
-dynprog_simd.c:4542:8: warning: unused variable ‘na2_single’ [-Wunused-variable]
- char na2_single;
- ^
-dynprog_simd.c:4536:46: warning: unused variable ‘pairscore’ [-Wunused-variable]
- Score16_T *pairscores[5], *pairscores_ptr, pairscore;
- ^
-dynprog_simd.c: In function ‘Dynprog_traceback_8_lower’:
-dynprog_simd.c:5278:8: warning: unused variable ‘add_dashes_p’ [-Wunused-variable]
- bool add_dashes_p;
- ^
-dynprog_simd.c:5275:11: warning: unused parameter ‘cdna_direction’ [-Wunused-parameter]
- int cdna_direction, bool watsonp, int dynprogindex) {
- ^
-dynprog_simd.c: In function ‘Dynprog_traceback_16_lower’:
-dynprog_simd.c:5662:8: warning: unused variable ‘add_dashes_p’ [-Wunused-variable]
- bool add_dashes_p;
- ^
-dynprog_simd.c:5659:12: warning: unused parameter ‘cdna_direction’ [-Wunused-parameter]
- int cdna_direction, bool watsonp, int dynprogindex) {
- ^
-dynprog_simd.c: At top level:
-dynprog_simd.c:1:13: warning: ‘rcsid’ defined but not used [-Wunused-variable]
- static char rcsid[] = "$Id: dynprog_simd.c 146623 2014-09-02 21:31:32Z twu $";
- ^
-dynprog_simd.c:510:1: warning: ‘Directions8_print’ defined but not used [-Wunused-function]
- Directions8_print (Direction8_T **directions_nogap, Direction8_T **directions_Egap, Directi
- ^
-dynprog_simd.c:604:1: warning: ‘Directions8_print_ud’ defined but not used [-Wunused-function]
- Directions8_print_ud (Direction8_T **directions_nogap, Direction8_T **directions_Egap,
- ^
-dynprog_simd.c:713:1: warning: ‘Directions16_print’ defined but not used [-Wunused-function]
- Directions16_print (Direction16_T **directions_nogap, Direction16_T **directions_Egap, Dire
- ^
-dynprog_simd.c:807:1: warning: ‘Directions16_print_ud’ defined but not used [-Wunused-function]
- Directions16_print_ud (Direction16_T **directions_nogap, Direction16_T **directions_Egap,
- ^
-make: *** [gsnap_sse42-dynprog_simd.o] Error 1
-make: Target `gsnap.sse42' not remade because of errors.
-
-Compilation exited abnormally with code 2 at Mon Dec 14 14:13:23
diff --git a/src/gmap.c b/src/gmap.c
index b8e3386..8c9e698 100644
--- a/src/gmap.c
+++ b/src/gmap.c
@@ -1,4 +1,4 @@
-static char rcsid[] = "$Id: gmap.c 209123 2017-08-15 19:30:25Z twu $";
+static char rcsid[] = "$Id: gmap.c 209801 2017-09-11 21:58:12Z twu $";
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif
@@ -120,7 +120,7 @@ static char rcsid[] = "$Id: gmap.c 209123 2017-08-15 19:30:25Z twu $";
#define MAX_BADOLIGOS 0.30 /* Setting to 1.0 effectively turns this check off */
#define MAX_REPOLIGOS 0.40 /* Setting to 1.0 effectively turns this check off */
-#define MAX_CHIMERA_ITER 3
+#define MAX_CHIMERA_ITER 1 /* Values larger than 1 can lead to very long (or infinite?) run times */
#define CHIMERA_PENALTY 30 /* A small value for chimera_margin will reduce this */
#define CHIMERA_IDENTITY 0.98
#define CHIMERA_PVALUE 0.01
@@ -510,6 +510,7 @@ static struct option long_options[] = {
{"expand-offsets", required_argument, 0, 0}, /* expand_offsets_p */
{"min-intronlength", required_argument, 0, 0}, /* min_intronlength */
+ {"intronlength", required_argument, 0, 'K'}, /* maxintronlen, maxintronlen_ends */
{"max-intronlength-middle", required_argument, 0, 0}, /* maxintronlen */
{"max-intronlength-ends", required_argument, 0, 0}, /* maxintronlen_ends */
{"split-large-introns", no_argument, 0, 0}, /* split_large_introns_p */
@@ -907,7 +908,6 @@ evaluate_query (bool *poorp, bool *repetitivep, char *queryuc_ptr, int queryleng
static Stage3_T *
stage3array_from_list (int *npaths_primary, int *npaths_altloc, int *first_absmq, int *second_absmq,
List_T stage3list, bool mergedp, bool chimerap, bool remove_overlaps_p) {
- List_T p;
Stage3_T *array1, *array0, x, y;
bool *eliminate;
int norig_primary, norig_altloc, i_primary, i_altloc, i, j;
@@ -5410,6 +5410,11 @@ parse_command_line (int argc, char *argv[], int optind) {
} else if (!strcmp(long_name,"min-intronlength")) {
min_intronlength = atoi(check_valid_int(optarg));
+ } else if (!strcmp(long_name,"intronlength")) {
+ /* Included for backwards compatibility. Sets both
+ --max-intronlength-middle and --max-intronlength-ends */
+ maxintronlen = maxintronlen_ends = atoi(check_valid_int(optarg));
+
} else if (!strcmp(long_name,"max-intronlength-middle")) {
maxintronlen = atoi(check_valid_int(optarg));
@@ -5658,12 +5663,6 @@ parse_command_line (int argc, char *argv[], int optind) {
}
break;
- case 'K':
- /* Included for backwards compatibility. Sets both
- --max-intronlength-middle and --max-intronlength-ends */
- maxintronlen = maxintronlen_ends = atoi(check_valid_int(optarg));
- break;
-
case 'w': shortsplicedist = strtoul(check_valid_int(optarg),NULL,10); break;
case 'L': maxtotallen_bound = atoi(check_valid_int(optarg)); break;
@@ -7218,13 +7217,14 @@ Usage: gmap [OPTIONS...] <FASTA files...>, or\n\
",min_intronlength);
fprintf(stdout,"\
--max-intronlength-middle=INT Max length for one internal intron (default %d). Note: for backward\n\
- compatibility, the -K flag will set both --max-intronlength-middle\n\
- and --max-intronlength-ends. Also see --split-large-introns below.\n\
+ compatibility, the -K or --intronlength flag will set both\n\
+ --max-intronlength-middle and --max-intronlength-ends.\n\
+ Also see --split-large-introns below.\n\
",maxintronlen);
fprintf(stdout,"\
--max-intronlength-ends=INT Max length for first or last intron (default %d). Note: for backward\n\
- compatibility, the -K flag will set both --max-intronlength-middle\n\
- and --max-intronlength-ends.\n\
+ compatibility, the -K or --intronlength flag will set both\n\
+ --max-intronlength-middle and --max-intronlength-ends.\n\
",maxintronlen_ends);
fprintf(stdout,"\
--split-large-introns Sometimes GMAP will exceed the value for --max-intronlength-middle,\n\
diff --git a/src/pair.c b/src/pair.c
index 83bbc20..1d7fd5e 100644
--- a/src/pair.c
+++ b/src/pair.c
@@ -1,4 +1,4 @@
-static char rcsid[] = "$Id: pair.c 209124 2017-08-15 19:31:32Z twu $";
+static char rcsid[] = "$Id: pair.c 209799 2017-09-11 21:45:19Z twu $";
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif
@@ -2707,12 +2707,13 @@ print_gff3_exons_forward (Filestring_T fp, struct T *pairs, int npairs, int path
char *sourcename, char *accession, char *chrstring,
int querylength_given, int skiplength, int matches, int mismatches,
int qindels, int tindels, int unknowns, bool watsonp, int cdna_direction,
- bool gff_introns_p, bool gff_gene_format_p, bool gff_estmatch_format_p) {
+ bool gff_introns_p, bool gff_gene_format_p, bool gff_estmatch_format_p,
+ bool cds_p) {
bool in_exon = false;
struct T *ptr, *this = NULL;
- int exon_querystart = -1, exon_queryend;
+ int exon_querystart = -1, exon_queryend, exon_phase;
Chrpos_T exon_genomestart = -1, exon_genomeend, intron_start, intron_end;
- int pctidentity, num = 0, den = 0, exonno = 0, i;
+ int pctidentity, num = 0, den = 0, exonno = 0, cdsno = 0, starti, endi, i;
int Mlength = 0, Ilength = 0, Dlength = 0;
List_T tokens = NULL;
char token[11];
@@ -2723,8 +2724,26 @@ print_gff3_exons_forward (Filestring_T fp, struct T *pairs, int npairs, int path
int last_querypos = -1;
Chrpos_T last_genomepos = -1U;
- ptr = pairs;
- for (i = 0; i < npairs; i++) {
+ if (cds_p == false) {
+ starti = 0;
+ endi = npairs;
+
+ } else {
+ i = 0;
+ while (i < npairs && (pairs[i].gapp == false && pairs[i].cdna != ' ' && pairs[i].aaphase_e == -1)) {
+ i++;
+ }
+ starti = i;
+
+ while (i < npairs && (pairs[i].gapp == true || pairs[i].cdna == ' ' || pairs[i].aaphase_e != -1)) {
+ i++;
+ }
+ endi = i;
+ }
+
+
+ ptr = &(pairs[starti]);
+ for (i = starti; i < endi; i++) {
/* prev = this; */
this = ptr++;
@@ -2732,6 +2751,7 @@ print_gff3_exons_forward (Filestring_T fp, struct T *pairs, int npairs, int path
if (in_exon == true) {
exon_queryend = last_querypos + 1;
exon_genomeend = last_genomepos + 1;
+
if (watsonp) {
intron_start = exon_genomeend + 1;
} else {
@@ -2744,7 +2764,11 @@ print_gff3_exons_forward (Filestring_T fp, struct T *pairs, int npairs, int path
pctidentity = (int) floor(100.0*(double) num/(double) den);
}
- if (gff_gene_format_p == true) {
+ if (cds_p == true) {
+ print_gff3_cds(fp,++cdsno,pathnum,sourcename,accession,chrstring,exon_genomestart,exon_genomeend,
+ exon_querystart,exon_queryend,watsonp,cdna_direction,pctidentity,exon_phase);
+
+ } else if (gff_gene_format_p == true) {
print_gff3_exon(fp,++exonno,pathnum,sourcename,accession,chrstring,exon_genomestart,exon_genomeend,
exon_querystart,exon_queryend,watsonp,cdna_direction,pctidentity);
} else {
@@ -2778,6 +2802,7 @@ print_gff3_exons_forward (Filestring_T fp, struct T *pairs, int npairs, int path
if (in_exon == false) {
exon_querystart = this->querypos + 1;
exon_genomestart = this->genomepos + 1;
+ exon_phase = this->aaphase_e;
if (watsonp) {
intron_end = exon_genomestart - 1;
} else {
@@ -2900,7 +2925,11 @@ print_gff3_exons_forward (Filestring_T fp, struct T *pairs, int npairs, int path
pctidentity = (int) floor(100.0*(double) num/(double) den);
}
- if (gff_gene_format_p == true) {
+ if (cds_p == true) {
+ print_gff3_cds(fp,++cdsno,pathnum,sourcename,accession,chrstring,exon_genomestart,exon_genomeend,
+ exon_querystart,exon_queryend,watsonp,cdna_direction,pctidentity,exon_phase);
+
+ } else if (gff_gene_format_p == true) {
print_gff3_exon(fp,++exonno,pathnum,sourcename,accession,chrstring,exon_genomestart,exon_genomeend,
exon_querystart,exon_queryend,watsonp,cdna_direction,pctidentity);
} else {
@@ -2941,12 +2970,12 @@ print_gff3_exons_forward (Filestring_T fp, struct T *pairs, int npairs, int path
static void
print_gff3_exons_backward (Filestring_T fp, struct T *pairs, int npairs, int pathnum, char *sourcename, char *accession, char *chrstring,
- bool watsonp, int cdna_direction, bool gff_introns_p) {
+ bool watsonp, int cdna_direction, bool gff_introns_p, bool cds_p) {
bool in_exon = false;
struct T *ptr, *this = NULL;
- int exon_querystart = -1, exon_queryend;
+ int exon_querystart = -1, exon_queryend, exon_phase;
Chrpos_T exon_genomestart = -1, exon_genomeend;
- int pctidentity, num = 0, den = 0, exonno = 0, i;
+ int pctidentity, num = 0, den = 0, exonno = 0, cdsno = 0, starti, endi, i;
#if 0
int intronno = 0;
Chrpos_T intron_start, intron_end;
@@ -2954,8 +2983,26 @@ print_gff3_exons_backward (Filestring_T fp, struct T *pairs, int npairs, int pat
int last_querypos = -1;
Chrpos_T last_genomepos = -1U;
- ptr = &(pairs[npairs-1]);
- for (i = npairs-1; i >= 0; i--) {
+ if (cds_p == false) {
+ starti = 0;
+ endi = npairs;
+
+ } else {
+ i = 0;
+ while (i < npairs && (pairs[i].gapp == false && pairs[i].cdna != ' ' && pairs[i].aaphase_e == -1)) {
+ i++;
+ }
+ starti = i;
+
+ while (i < npairs && (pairs[i].gapp == true || pairs[i].cdna == ' ' || pairs[i].aaphase_e != -1)) {
+ i++;
+ }
+ endi = i;
+ }
+
+
+ ptr = &(pairs[endi-1]);
+ for (i = endi-1; i >= starti; i--) {
/* prev = this; */
this = ptr--;
@@ -2970,8 +3017,15 @@ print_gff3_exons_backward (Filestring_T fp, struct T *pairs, int npairs, int pat
pctidentity = (int) floor(100.0*(double) num/(double) den);
}
- print_gff3_exon(fp,++exonno,pathnum,sourcename,accession,chrstring,exon_genomestart,exon_genomeend,
- exon_querystart,exon_queryend,watsonp,cdna_direction,pctidentity);
+ if (cds_p == true) {
+ print_gff3_cds(fp,++cdsno,pathnum,sourcename,accession,chrstring,exon_genomestart,exon_genomeend,
+ exon_querystart,exon_queryend,watsonp,cdna_direction,pctidentity,exon_phase);
+
+ } else {
+ print_gff3_exon(fp,++exonno,pathnum,sourcename,accession,chrstring,exon_genomestart,exon_genomeend,
+ exon_querystart,exon_queryend,watsonp,cdna_direction,pctidentity);
+
+ }
in_exon = false;
}
@@ -2983,6 +3037,7 @@ print_gff3_exons_backward (Filestring_T fp, struct T *pairs, int npairs, int pat
if (in_exon == false) {
exon_querystart = this->querypos + 1;
exon_genomestart = this->genomepos + 1;
+ exon_phase = this->aaphase_e;
if (gff_introns_p == true) {
if (i > 0) {
@@ -3036,12 +3091,20 @@ print_gff3_exons_backward (Filestring_T fp, struct T *pairs, int npairs, int pat
pctidentity = (int) floor(100.0*(double) num/(double) den);
}
- print_gff3_exon(fp,++exonno,pathnum,sourcename,accession,chrstring,exon_genomestart,exon_genomeend,
- exon_querystart,exon_queryend,watsonp,cdna_direction,pctidentity);
+ if (cds_p == true) {
+ print_gff3_cds(fp,++cdsno,pathnum,sourcename,accession,chrstring,exon_genomestart,exon_genomeend,
+ exon_querystart,exon_queryend,watsonp,cdna_direction,pctidentity,exon_phase);
+ } else {
+ print_gff3_exon(fp,++exonno,pathnum,sourcename,accession,chrstring,exon_genomestart,exon_genomeend,
+ exon_querystart,exon_queryend,watsonp,cdna_direction,pctidentity);
+ }
+
return;
}
+#if 0
+/* Replaced by print_gff3_exons_forward */
static void
print_gff3_cdss_forward (Filestring_T fp, struct T *pairs, int npairs, int pathnum, char *sourcename, char *accession, char *chrstring,
bool watsonp, int cdna_direction) {
@@ -3140,7 +3203,11 @@ print_gff3_cdss_forward (Filestring_T fp, struct T *pairs, int npairs, int pathn
return;
}
+#endif
+
+#if 0
+/* Replaced by print_gff3_exons_backward */
static void
print_gff3_cdss_backward (Filestring_T fp, struct T *pairs, int npairs, int pathnum, char *sourcename, char *accession, char *chrstring,
bool watsonp, int cdna_direction) {
@@ -3241,6 +3308,7 @@ print_gff3_cdss_backward (Filestring_T fp, struct T *pairs, int npairs, int path
return;
}
+#endif
void
@@ -3276,17 +3344,29 @@ Pair_print_gff3 (Filestring_T fp, struct T *pairs, int npairs, int pathnum, char
print_gff3_exons_forward(fp,pairs,npairs,pathnum,start,end,sourcename,accession,chrstring,
querylength_given,skiplength,matches,mismatches,qindels,tindels,unknowns,
watsonp,cdna_direction,/*gff_introns_p*/false,/*gff_gene_format_p*/true,
- /*gff_estmatch_format_p*/false);
+ /*gff_estmatch_format_p*/false,/*cds_p*/false);
if (translation_end > 0) {
+#if 0
print_gff3_cdss_forward(fp,pairs,npairs,pathnum,sourcename,accession,chrstring,watsonp,
cdna_direction);
+#else
+ print_gff3_exons_forward(fp,pairs,npairs,pathnum,start,end,sourcename,accession,chrstring,
+ querylength_given,skiplength,matches,mismatches,qindels,tindels,unknowns,
+ watsonp,cdna_direction,/*gff_introns_p*/false,/*gff_gene_format_p*/false,
+ /*gff_estmatch_format_p*/false,/*cds_p*/true);
+#endif
}
} else {
print_gff3_exons_backward(fp,pairs,npairs,pathnum,sourcename,accession,chrstring,watsonp,
- cdna_direction,/*gff_introns_p*/false);
+ cdna_direction,/*gff_introns_p*/false,/*cds_p*/false);
if (translation_end > 0) {
+#if 0
print_gff3_cdss_backward(fp,pairs,npairs,pathnum,sourcename,accession,chrstring,watsonp,
cdna_direction);
+#else
+ print_gff3_exons_backward(fp,pairs,npairs,pathnum,sourcename,accession,chrstring,watsonp,
+ cdna_direction,/*gff_introns_p*/false,/*cds_p*/true);
+#endif
}
}
@@ -3294,7 +3374,7 @@ Pair_print_gff3 (Filestring_T fp, struct T *pairs, int npairs, int pathnum, char
print_gff3_exons_forward(fp,pairs,npairs,pathnum,start,end,sourcename,accession,chrstring,
querylength_given,skiplength,matches,mismatches,qindels,tindels,unknowns,
watsonp,cdna_direction,/*gff_introns_p*/false,/*gff_gene_format_p*/false,
- gff_estmatch_format_p);
+ gff_estmatch_format_p,/*cds_p*/false);
}
if (gff3_separators_p == true) {
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-med/gmap.git
More information about the debian-med-commit
mailing list