From: Charles Plessy Date: Fri, 22 Jun 2012 03:42:40 +0000 (+0900) Subject: Merge tag 'upstream/0.2.6' X-Git-Url: http://woldlab.caltech.edu/gitweb/?p=tabix.git;a=commitdiff_plain;h=f96c23c6f65057130fab79f8b7387e0010366809;hp=60eb37429f4812e01374ce2624f59ee600a2b452 Merge tag 'upstream/0.2.6' Upstream version 0.2.6 --- diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..845ca06 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.pc diff --git a/debian/README.test b/debian/README.test new file mode 100644 index 0000000..a7b2e86 --- /dev/null +++ b/debian/README.test @@ -0,0 +1,39 @@ +Notes on how to test tabix +────────────────────────── + +The tabix package contains example data to test the tabix program. It is +already compressed and indexed. The following instruction decompress, +recompress, re-index and test the example data. + +# Create a temporary file +TABIXDATA=$(mktemp) + +# Uncompress example data +zcat /usr/share/doc/tabix/examples/example.gtf.gz > $TABIXDATA + +# Compress example data with bgzip +bgzip $TABIXDATA + +# Index with tabix +tabix $TABIXDATA.gz + +# Extract with tabix the he features on chromosome 1 whose coordinates overlap +# the interval 150,309–150,309. +tabix $TABIXDATA.gz chr1:150309-150309 > $TABIXDATA.out + +# Reference result at the bottom of this file +grep H\AVANA /usr/share/doc/tabix/README.test > $TABIXDATA.ref + +# No difference ? +diff $TABIXDATA.ref $TABIXDATA.out + +# Clean +rm $TABIXDATA.gz $TABIXDATA.gz.tbi $TABIXDATA.out $TABIXDATA.ref + + -- Charles Plessy Tue, 10 May 2011 19:12:19 +0900 + + + +chr1 HAVANA exon 150309 150553 . + . gene_id "ENSG00000241599"; transcript_id "ENST00000496488"; gene_type "processed_transcript"; gene_status "KNOWN"; gene_name "AL627309.12"; transcript_type "processed_transcript"; transcript_status "KNOWN"; transcript_name "AL627309.12-201"; level 2; havana_gene "OTTHUMG00000002525"; havana_transcript "OTTHUMT00000007169"; +chr1 HAVANA gene 150309 151388 . + . gene_id "ENSG00000241599"; transcript_id "ENSG00000241599"; gene_type "processed_transcript"; gene_status "KNOWN"; gene_name "AL627309.12"; transcript_type "processed_transcript"; transcript_status "KNOWN"; transcript_name "AL627309.12"; level 2; havana_gene "OTTHUMG00000002525"; +chr1 HAVANA transcript 150309 151388 . + . gene_id "ENSG00000241599"; transcript_id "ENST00000496488"; gene_type "processed_transcript"; gene_status "KNOWN"; gene_name "AL627309.12"; transcript_type "processed_transcript"; transcript_status "KNOWN"; transcript_name "AL627309.12-201"; level 2; havana_gene "OTTHUMG00000002525"; havana_transcript "OTTHUMT00000007169"; diff --git a/debian/changelog b/debian/changelog new file mode 100644 index 0000000..568625f --- /dev/null +++ b/debian/changelog @@ -0,0 +1,53 @@ +tabix (0.2.5-3) unstable; urgency=low + + * debian/patches/use-dpkg-buildflags.patch: Really enable hardening + build flags (Thanks for the patch to Simon Ruderich ) + Closes: #670759 + * debian/patches/ld-as-needed.patch: Enable building with --as-needed + (Thanks to David Shorten for the patch) + Closes: #632150 + + -- Andreas Tille Fri, 11 May 2012 13:32:56 +0200 + +tabix (0.2.5-2) unstable; urgency=low + + [ Charles Plessy ] + 7a09003 Added metadata about Upstream in debian/upstream. + 1a85d96 Refreshed Debian copyright file + 9c70833 Include 7 digits of the commit ID in the changelog entry. + + [ Andreas Tille ] + * debian/patches/count-set-but-not-used.patch: uncomment unused + variable + Closes: #626267 + * debian/control: + - Standards-Version: 3.9.3 (no changes needed) + - removed cdbs from Build-Depends + * debian/rules: Switched to dh to easily enable hardening flags + * debhelper 9 (control+compat) to enable building with hardening + flags + * debian/patches/use-dpkg-buildflags.patch: Regard hardening flags + * debian/watch: Use sf.net redirector + + -- Andreas Tille Wed, 25 Apr 2012 17:02:10 +0200 + +tabix (0.2.5-1) unstable; urgency=low + + * New upstream release. + * Added debian/README.test to explain how to test tabix and bgzip. + + -- Charles Plessy Tue, 10 May 2011 19:42:07 +0900 + +tabix (0.2.4-1) unstable; urgency=low + + * New upstream release. + * Incremented Standards-Version to reflect conformance with Policy 3.9.2 + (debian/control). + + -- Charles Plessy Tue, 12 Apr 2011 17:15:33 +0900 + +tabix (0.2.3-1) unstable; urgency=low + + * Initial release (Closes: #606446) + + -- Charles Plessy Wed, 19 Jan 2011 22:16:39 +0900 diff --git a/debian/compat b/debian/compat new file mode 100644 index 0000000..ec63514 --- /dev/null +++ b/debian/compat @@ -0,0 +1 @@ +9 diff --git a/debian/control b/debian/control new file mode 100644 index 0000000..40d7181 --- /dev/null +++ b/debian/control @@ -0,0 +1,23 @@ +Source: tabix +Section: science +Priority: optional +Maintainer: Debian Med Packaging Team +DM-Upload-Allowed: yes +Uploaders: Charles Plessy , + Andreas Tille +Build-Depends: debhelper (>= 9), zlib1g-dev +Standards-Version: 3.9.3 +Homepage: http://samtools.sourceforge.net/tabix.shtml +Vcs-Git: git://git.debian.org/debian-med/tabix.git +Vcs-Browser: http://git.debian.org/?p=debian-med/tabix.git + +Package: tabix +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends} +Description: generic indexer for TAB-delimited genome position files + Tabix indexes files where some columns indicate sequence coordinates: name + (usually a chromosme), start and stop. The input data file must be position + sorted and compressed by bgzip (provided in this package), which has a gzip + like interface. After indexing, tabix is able to quickly retrieve data lines by + chromosomal coordinates. Fast data retrieval also works over network if an URI + is given as a file name. diff --git a/debian/copyright b/debian/copyright new file mode 100644 index 0000000..6c6c52b --- /dev/null +++ b/debian/copyright @@ -0,0 +1,35 @@ +Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Source: http://sourceforge.net/projects/samtools/files/tabix/tabix-0.2.5.tar.bz2 + +Files: * +Copyright: © 2008 Genome Research Ltd (GRL). + © 2008 Broad Institute / Massachusetts Institute of Technology + © 2009 Genome Research Ltd (GRL), 2010 Broad Institute + © 2010 Broad Institute. +License: MIT + +Files: python/* +Copyright: © 2011 Seoul National University. +License: MIT + +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. + diff --git a/debian/docs b/debian/docs new file mode 100644 index 0000000..c3f0f84 --- /dev/null +++ b/debian/docs @@ -0,0 +1,2 @@ +NEWS +debian/README.test diff --git a/debian/examples b/debian/examples new file mode 100644 index 0000000..0fbb01d --- /dev/null +++ b/debian/examples @@ -0,0 +1,2 @@ +example.gtf.gz +example.gtf.gz.tbi diff --git a/debian/gbp.conf b/debian/gbp.conf new file mode 100644 index 0000000..99de1d4 --- /dev/null +++ b/debian/gbp.conf @@ -0,0 +1,10 @@ +# Configuration file for git-buildpackage and friends + +[DEFAULT] +# use pristine-tar: +pristine-tar = True +# Configuration file for git-buildpackage and friends + +[git-dch] +# Include 7 digits of the commit ID in the changelog entry. +id-length = 7 diff --git a/debian/install b/debian/install new file mode 100644 index 0000000..431c734 --- /dev/null +++ b/debian/install @@ -0,0 +1,2 @@ +tabix usr/bin +bgzip usr/bin diff --git a/debian/links b/debian/links new file mode 100644 index 0000000..f8f82ba --- /dev/null +++ b/debian/links @@ -0,0 +1 @@ +/usr/share/man/man1/tabix.1.gz /usr/share/man/man1/bgzip.1.gz diff --git a/debian/manpages b/debian/manpages new file mode 100644 index 0000000..bb616e0 --- /dev/null +++ b/debian/manpages @@ -0,0 +1 @@ +tabix.1 diff --git a/debian/patches/count-set-but-not-used.patch b/debian/patches/count-set-but-not-used.patch new file mode 100644 index 0000000..6204a1d --- /dev/null +++ b/debian/patches/count-set-but-not-used.patch @@ -0,0 +1,22 @@ +Author: Andreas Tille +Date: Wed, 25 Apr 2012 17:01:06 +0200 +Bug-Closed: http://bugs.debian.org/626267 +Description: Do not set unused variables + +--- tabix.orig/bgzf.c ++++ tabix/bgzf.c +@@ -627,11 +627,11 @@ + if (fp->open_mode == 'w') { + if (bgzf_flush(fp) != 0) return -1; + { // add an empty block +- int count, block_length = deflate_block(fp, 0); ++ int /* count, */ block_length = deflate_block(fp, 0); + #ifdef _USE_KNETFILE +- count = fwrite(fp->compressed_block, 1, block_length, fp->x.fpw); ++ /* count = */ fwrite(fp->compressed_block, 1, block_length, fp->x.fpw); + #else +- count = fwrite(fp->compressed_block, 1, block_length, fp->file); ++ /* count = */ fwrite(fp->compressed_block, 1, block_length, fp->file); + #endif + } + #ifdef _USE_KNETFILE diff --git a/debian/patches/ld-as-needed.patch b/debian/patches/ld-as-needed.patch new file mode 100644 index 0000000..bc0e2c8 --- /dev/null +++ b/debian/patches/ld-as-needed.patch @@ -0,0 +1,16 @@ +Description: Reorder libraries to build with ld --as-needed +Author: David Shorten +Bug-Ubuntu: http://bugs.launchpad.net/ubuntu/+source/tabix/+bug/803202 +Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=632150 +Last-Update: 2011-06-30 +--- tabix.orig/Makefile ++++ tabix/Makefile +@@ -41,7 +41,7 @@ + $(AR) -cru $@ $(LOBJS) + + tabix:lib $(AOBJS) +- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(AOBJS) -lm $(LIBPATH) -lz -L. -ltabix ++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(AOBJS) -L. -ltabix -lm $(LIBPATH) -lz + + bgzip:bgzip.o bgzf.o knetfile.o + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ bgzip.o bgzf.o knetfile.o -lz diff --git a/debian/patches/series b/debian/patches/series new file mode 100644 index 0000000..32e9be1 --- /dev/null +++ b/debian/patches/series @@ -0,0 +1,3 @@ +count-set-but-not-used.patch +use-dpkg-buildflags.patch +ld-as-needed.patch diff --git a/debian/patches/use-dpkg-buildflags.patch b/debian/patches/use-dpkg-buildflags.patch new file mode 100644 index 0000000..7ece66b --- /dev/null +++ b/debian/patches/use-dpkg-buildflags.patch @@ -0,0 +1,49 @@ +Author: Simon Ruderich +Date: Sat, 28 Apr 2012 19:09:02 UTC +Description: Fix build system to enable hardening flags + +--- tabix.orig/Makefile ++++ tabix/Makefile +@@ -1,5 +1,8 @@ + CC= gcc +-CFLAGS= -g -Wall -O2 -fPIC #-m64 #-arch ppc ++# Use flags when CFLAGS is not already defined in the environment. ++CFLAGS?= -g -Wall -O2 ++# But always append special flags we need. ++CFLAGS+= -fPIC #-m64 #-arch ppc + DFLAGS= -D_FILE_OFFSET_BITS=64 -D_USE_KNETFILE + LOBJS= bgzf.o kstring.o knetfile.o index.o bedidx.o + AOBJS= main.o +@@ -12,7 +15,7 @@ + .SUFFIXES:.c .o + + .c.o: +- $(CC) -c $(CFLAGS) $(DFLAGS) $(INCLUDES) $< -o $@ ++ $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DFLAGS) $(INCLUDES) $< -o $@ + + all-recur lib-recur clean-recur cleanlocal-recur install-recur: + @target=`echo $@ | sed s/-recur//`; \ +@@ -29,19 +32,19 @@ + lib:libtabix.a + + libtabix.so.1:$(LOBJS) +- $(CC) -shared -Wl,-soname,libtabix.so -o $@ $(LOBJS) -lc -lz ++ $(CC) $(CFLAGS) $(LDFLAGS) -shared -Wl,-soname,libtabix.so -o $@ $(LOBJS) -lc -lz + + libtabix.1.dylib:$(LOBJS) +- libtool -dynamic $(LOBJS) -o $@ -lc -lz ++ libtool $(CFLAGS) $(LDFLAGS) -dynamic $(LOBJS) -o $@ -lc -lz + + libtabix.a:$(LOBJS) + $(AR) -cru $@ $(LOBJS) + + tabix:lib $(AOBJS) +- $(CC) $(CFLAGS) -o $@ $(AOBJS) -lm $(LIBPATH) -lz -L. -ltabix ++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(AOBJS) -lm $(LIBPATH) -lz -L. -ltabix + + bgzip:bgzip.o bgzf.o knetfile.o +- $(CC) $(CFLAGS) -o $@ bgzip.o bgzf.o knetfile.o -lz ++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ bgzip.o bgzf.o knetfile.o -lz + + TabixReader.class:TabixReader.java + javac -cp .:sam.jar TabixReader.java diff --git a/debian/rules b/debian/rules new file mode 100755 index 0000000..3cfec41 --- /dev/null +++ b/debian/rules @@ -0,0 +1,7 @@ +#!/usr/bin/make -f + +%: + dh $@ + +override_dh_compress: + dh_compress --exclude=.tbi diff --git a/debian/source/format b/debian/source/format new file mode 100644 index 0000000..163aaf8 --- /dev/null +++ b/debian/source/format @@ -0,0 +1 @@ +3.0 (quilt) diff --git a/debian/upstream b/debian/upstream new file mode 100644 index 0000000..262bd1f --- /dev/null +++ b/debian/upstream @@ -0,0 +1,21 @@ +Archive: SourceForge +Name: Tabix +Homepage: http://samtools.sourceforge.net/tabix.shtml +Reference: + author: Li, Heng + title: > + Tabix: Fast retrieval of sequence features from generic TAB-delimited files + journal: Bioinformatics + year: 2011 + volume: 27 + number: 5 + pages: 718-9 + pmid: 21208982 + doi: 10.1093/bioinformatics/btq671 + URL: http://bioinformatics.oxfordjournals.org/content/early/2011/01/05/bioinformatics.btq671.abstract + eprint: http://bioinformatics.oxfordjournals.org/content/early/2011/01/05/bioinformatics.btq671.full.pdf+html +watch: | + version=3 + opts=downloadurlmangle=s/\/download//,filenamemangle=s/http...sourceforge.net.projects.samtools.files.tabix.//;s/.download// \ + http://sourceforge.net/projects/samtools/files/tabix/ \ + http://sourceforge.net/projects/samtools/files/tabix/tabix-(.*).tar.bz2/download diff --git a/debian/watch b/debian/watch new file mode 100644 index 0000000..8d4fd8b --- /dev/null +++ b/debian/watch @@ -0,0 +1,2 @@ +version=3 +http://sf.net/samtools/tabix-(.+)\.(?:zip|tgz|tbz2|txz|tar\.gz|tar\.bz2|tar\.xz)