[med-svn] [libseqlib] 02/02: Initial debian/ dir - fails to build due to "error: conflicting declaration ‘typedef struct bseq1_t bseq1_t’"

Andreas Tille tille at debian.org
Fri Jan 27 14:20:49 UTC 2017


This is an automated email from the git hooks/post-receive script.

tille pushed a commit to branch master
in repository libseqlib.

commit 5734c7ab7a92f8e111fe2c39af2b6b78d0bd003d
Author: Andreas Tille <tille at debian.org>
Date:   Fri Jan 27 15:18:48 2017 +0100

    Initial debian/ dir - fails to build due to "error: conflicting declaration ‘typedef struct bseq1_t bseq1_t’"
---
 debian/changelog                              | 19 ++++++++
 debian/compat                                 |  1 +
 debian/control                                | 33 ++++++++++++++
 debian/copyright                              | 28 ++++++++++++
 debian/patches/fix_fermi-lite_usage.patch     | 19 ++++++++
 debian/patches/fix_htslib_usage.patch         | 62 +++++++++++++++++++++++++++
 debian/patches/series                         |  4 ++
 debian/patches/use_debian_packaged_libs.patch | 18 ++++++++
 debian/rules                                  | 26 +++++++++++
 debian/source/format                          |  1 +
 debian/upstream/metadata                      |  8 ++++
 debian/watch                                  |  3 ++
 12 files changed, 222 insertions(+)

diff --git a/debian/changelog b/debian/changelog
new file mode 100644
index 0000000..09f6d16
--- /dev/null
+++ b/debian/changelog
@@ -0,0 +1,19 @@
+libseqlib (1.1.1-1) UNRELEASED; urgency=medium
+
+  * Initial release (Closes: #???)
+  TODO:
+  g++ -DHAVE_CONFIG_H -I. -I..  -I../ -I../htslib -Wno-sign-compare -Wdate-time -D_FORTIFY_SOURCE=2 -g  -Wno-unknown-pragmas -g -O2 -fdebug-prefix-map=/build/libseqlib-1.1.1=. -fstack-protector-strong -Wformat -Werror=format-security -c -o libseqlib_a-SeqPlot.o `test -f 'SeqPlot.cpp' || echo './'`SeqPlot.cpp
+  In file included from ../SeqLib/UnalignedSequence.h:5:0,
+                   from ../SeqLib/BamRecord.h:23,
+                   from ../SeqLib/BFC.h:8,
+                   from BFC.cpp:33:
+  /usr/include/bwa/bwa.h:33:3: error: conflicting declaration ‘typedef struct bseq1_t bseq1_t’
+   } bseq1_t;
+   ^~~~~~~
+  In file included from ../SeqLib/BFC.h:5:0,
+                   from BFC.cpp:33:
+  /usr/include/fml.h:11:3: note: previous declaration as ‘typedef struct bseq1_t bseq1_t’
+   } bseq1_t;
+     ^~~~~~~
+
+ -- Andreas Tille <tille at debian.org>  Fri, 27 Jan 2017 13:18:48 +0100
diff --git a/debian/compat b/debian/compat
new file mode 100644
index 0000000..f599e28
--- /dev/null
+++ b/debian/compat
@@ -0,0 +1 @@
+10
diff --git a/debian/control b/debian/control
new file mode 100644
index 0000000..87eaf23
--- /dev/null
+++ b/debian/control
@@ -0,0 +1,33 @@
+Source: libseqlib
+Maintainer: Debian Med Packaging Team <debian-med-packaging at lists.alioth.debian.org>
+Uploaders: Andreas Tille <tille at debian.org>
+Section: science
+Priority: optional
+Build-Depends: debhelper (>= 10),
+               libhts-dev,
+               libcurl4-openssl-dev | libcurl4-dev,
+               zlib1g-dev,
+               libfml-dev,
+               libbwa-dev (>= 0.7.15-3)
+Standards-Version: 3.9.8
+Vcs-Browser: https://anonscm.debian.org/cgit/debian-med/libseqlib.git
+Vcs-Git: https://anonscm.debian.org/git/debian-med/libseqlib.git
+Homepage: https://github.com/walaj/SeqLib.git
+
+Package: libseqlib
+Architecture: any
+Depends: ${shlibs:Depends},
+         ${misc:Depends}
+Description: C++ htslib/bwa-mem/fermi interface for interrogating sequence data
+ C ++ API and command line tool that provides a rapid and user-friendly
+ interface to BAM/SAM/CRAM files, global sequence alignment operations
+ and sequence assembly. Four C libraries perform core operations in
+ SeqLib: HTSlib for BAM access, BWA-MEM and BLAT for sequence alignment
+ and Fermi for error correction and sequence assembly. Benchmarking
+ indicates that SeqLib has lower CPU and memory requirements than leading
+ C ++ sequence analysis APIs. We demonstrate an example of how minimal
+ SeqLib code can extract, error-correct and assemble reads from a CRAM
+ file and then align with BWA-MEM. SeqLib also provides additional
+ capabilities, including chromosome-aware interval queries and read
+ plotting. Command line tools are available for performing integrated
+ error correction, micro-assemblies and alignment.
diff --git a/debian/copyright b/debian/copyright
new file mode 100644
index 0000000..a823a3b
--- /dev/null
+++ b/debian/copyright
@@ -0,0 +1,28 @@
+Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Upstream-Name: SeqLib
+Upstream-Contact: Jeremiah A. Wala <jwala at broadinstitue.org>
+Source: https://github.com/walaj/SeqLib/releases
+
+Files: *
+Copyright: 2016 Jeremiah A. Wala <jwala at broadinstitue.org>
+License: Apache-2.0
+
+Files: debian/*
+Copyright: 2017 Andreas Tille <tille at debian.org>
+License: Apache-2.0
+
+License: Apache-2.0
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+ .
+    http://www.apache.org/licenses/LICENSE-2.0
+ .
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ .
+ On Debian systems you can find a copy of the Apache license version
+ 2.0 at /usr/share/common-licenses/Apache-2.0.
diff --git a/debian/patches/fix_fermi-lite_usage.patch b/debian/patches/fix_fermi-lite_usage.patch
new file mode 100644
index 0000000..9b2ec81
--- /dev/null
+++ b/debian/patches/fix_fermi-lite_usage.patch
@@ -0,0 +1,19 @@
+Author: Andreas Tille <tille at debian.org>
+Last-Update: Fri, 27 Jan 2017 13:18:48 +0100
+Description: Upstream tries to include a header file bfc.h which
+ can not be found in fermi-lite.  Just skip this.
+ .
+ Also use system installed libfml-dev header file.
+
+--- a/SeqLib/BFC.h
++++ b/SeqLib/BFC.h
+@@ -2,8 +2,7 @@
+ #define SEQLIB_BFC_H
+ 
+ extern "C" {
+-  #include "fermi-lite/bfc.h"
+-  #include "fermi-lite/fml.h"
++  #include <fml.h>
+ }
+ 
+ #include "SeqLib/BamRecord.h"
diff --git a/debian/patches/fix_htslib_usage.patch b/debian/patches/fix_htslib_usage.patch
new file mode 100644
index 0000000..cf96ac2
--- /dev/null
+++ b/debian/patches/fix_htslib_usage.patch
@@ -0,0 +1,62 @@
+Author: Andreas Tille <tille at debian.org>
+Last-Update: Fri, 27 Jan 2017 13:18:48 +0100
+Description: Use header files from libhts-dev
+
+--- a/SeqLib/BamRecord.h
++++ b/SeqLib/BamRecord.h
+@@ -10,11 +10,11 @@
+ #include <algorithm>
+ 
+ extern "C" {
+-#include "htslib/htslib/hts.h"
+-#include "htslib/htslib/sam.h"
+-#include "htslib/htslib/bgzf.h"
+-#include "htslib/htslib/kstring.h"
+-#include "htslib/htslib/faidx.h"
++#include <htslib/hts.h>
++#include <htslib/sam.h>
++#include <htslib/bgzf.h>
++#include <htslib/kstring.h>
++#include <htslib/faidx.h>
+ 
+ }
+ 
+--- a/SeqLib/BamHeader.h
++++ b/SeqLib/BamHeader.h
+@@ -1,10 +1,10 @@
+ #ifndef SEQLIB_BAM_HEADER_H__
+ #define SEQLIB_BAM_HEADER_H__
+ 
+-#include "htslib/htslib/hts.h"
+-#include "htslib/htslib/sam.h"
+-#include "htslib/htslib/bgzf.h"
+-#include "htslib/htslib/kstring.h"
++#include <htslib/hts.h>
++#include <htslib/sam.h>
++#include <htslib/bgzf.h>
++#include <htslib/kstring.h>
+ 
+ #include "SeqLib/SeqLibUtils.h"
+ #include <string>
+--- a/SeqLib/RefGenome.h
++++ b/SeqLib/RefGenome.h
+@@ -5,7 +5,7 @@
+ #include <cstdlib>
+ #include <iostream>
+ 
+-#include "htslib/htslib/faidx.h"
++#include <htslib/faidx.h>
+ 
+ namespace SeqLib {
+   
+--- a/src/ReadFilter.cpp
++++ b/src/ReadFilter.cpp
+@@ -1,7 +1,7 @@
+ #include "SeqLib/ReadFilter.h"
+ 
+ #include <cassert>
+-#include "htslib/htslib/khash.h"
++#include <htslib/khash.h>
+ 
+ //#define QNAME "D0EN0ACXX111207:7:2306:6903:136511"
+ //#define QFLAG -1
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644
index 0000000..8c62d80
--- /dev/null
+++ b/debian/patches/series
@@ -0,0 +1,4 @@
+use_debian_packaged_libs.patch
+fix_fermi-lite_usage.patch
+fix_htslib_usage.patch
+remove_duplicated_typedefs.patch
diff --git a/debian/patches/use_debian_packaged_libs.patch b/debian/patches/use_debian_packaged_libs.patch
new file mode 100644
index 0000000..77e482e
--- /dev/null
+++ b/debian/patches/use_debian_packaged_libs.patch
@@ -0,0 +1,18 @@
+Author: Andreas Tille <tille at debian.org>
+Last-Update: Fri, 27 Jan 2017 13:18:48 +0100
+Description: Skip subdirs in favour of Debian packaged development
+ libraries and do not use broken install target
+
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -1,8 +1,8 @@
+ AUTOMAKE_OPTIONS = foreign
+-SUBDIRS = bwa htslib fermi-lite src
++SUBDIRS = src
+ 
+ install:  
+-	mkdir -p bin && cp src/libseqlib.a fermi-lite/libfml.a bwa/libbwa.a htslib/libhts.a bin 
++	echo "mkdir -p bin && cp src/libseqlib.a fermi-lite/libfml.a bwa/libbwa.a htslib/libhts.a bin"
+ 
+ seqtools:
+ 	mkdir -p bin && cd src/seqtools && make && mv seqtools ../../bin
diff --git a/debian/rules b/debian/rules
new file mode 100755
index 0000000..1ef14d9
--- /dev/null
+++ b/debian/rules
@@ -0,0 +1,26 @@
+#!/usr/bin/make -f
+
+# DH_VERBOSE := 1
+export LC_ALL=C.UTF-8
+
+# some helpful variables - uncomment them if needed
+# shamelessly stolen from http://jmtd.net/log/awk/
+#DEBVERS        := $(shell dpkg-parsechangelog | awk '/^Version:/ {print $$2}')
+#VERSION        := $(shell echo '$(DEBVERS)' | sed -e 's/^[0-9]*://' -e 's/-.*//')
+#DEBFLAVOR      := $(shell dpkg-parsechangelog | awk '/^Distribution:/ {print $$2}')
+#DEBPKGNAME     := $(shell dpkg-parsechangelog | awk '/^Source:/ {print $$2}')
+#DEBIAN_BRANCH  := $(shell awk 'BEGIN{FS="[= ]+"} /debian-branch/ {print $$2}' debian/gbp.conf)
+#GIT_TAG        := $(subst ~,_,$(VERSION))
+
+# alternatively to manually set those variables, you can
+#  include /usr/share/dpkg/default.mk
+# and use what is set there.
+
+# for hardening you might like to uncomment this:
+# export DEB_BUILD_MAINT_OPTIONS=hardening=+all
+
+%:
+	dh $@
+
+#get-orig-source:
+#	. debian/get-orig-source
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/metadata b/debian/upstream/metadata
new file mode 100644
index 0000000..a4f0928
--- /dev/null
+++ b/debian/upstream/metadata
@@ -0,0 +1,8 @@
+Reference:
+  Author: Jeremiah Wala and Rameen Beroukhim
+  Title: "SeqLib: a C ++ API for rapid BAM manipulation, sequence alignment and sequence assembly"
+  Journal: Bioinformatics
+  Year: 2016
+  DOI: 10.1093/bioinformatics/btw741
+  PMID: 28011768
+  URL: https://academic.oup.com/bioinformatics/article-abstract/doi/10.1093/bioinformatics/btw741/2571356/SeqLib-a-C-API-for-rapid-BAM-manipulation-sequence
diff --git a/debian/watch b/debian/watch
new file mode 100644
index 0000000..c0a92cf
--- /dev/null
+++ b/debian/watch
@@ -0,0 +1,3 @@
+version=4
+
+https://github.com/walaj/SeqLib/releases .*/archive/(\d[\d.-]+)\.(?:tar(?:\.gz|\.bz2)?|tgz)

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-med/libseqlib.git



More information about the debian-med-commit mailing list