[med-svn] [Git][med-team/hilive][master] 7 commits: Team upload.

Andreas Tille (@tille) gitlab at salsa.debian.org
Mon Apr 27 15:53:25 BST 2026



Andreas Tille pushed to branch master at Debian Med / hilive


Commits:
e4e1a950 by Enrico Seiler at 2024-11-26T17:43:02+01:00
Team upload.

* Team upload.
* d/control: Experimental rebuild using the 3rd release candidate of
  SeqAn 2.5.0

- - - - -
2f2cec9f by Enrico Seiler at 2024-11-26T17:50:44+01:00
Added patch for the explicit seqan2 namespace.

- - - - -
adbe5662 by Enrico Seiler at 2024-11-26T17:58:17+01:00
salsa ci: added

- - - - -
ca97c907 by Enrico Seiler at 2024-11-26T17:58:32+01:00
ready for uploading to experimental

- - - - -
93621631 by Andreas Tille at 2026-04-27T16:07:31+02:00
Drop libboost-system-dev from Build-Depends Closes: #1134916

- - - - -
0fbcf085 by Andreas Tille at 2026-04-27T16:12:19+02:00
No version restriction on libseqan2-dev

- - - - -
02487b0f by Andreas Tille at 2026-04-27T16:53:12+02:00
Do not try to use component system from Boost which was removed in version 1.90 Closes: #1134916

- - - - -


10 changed files:

- debian/changelog
- debian/control
- + debian/patches/0005-Upgrade-to-SeqAn-2.5.0.patch
- + debian/patches/0006-boost1.90.patch
- debian/patches/do_not_set_rpath.patch
- debian/patches/remove_march_native.patch
- debian/patches/series
- debian/patches/use_FindSeQan.patch
- debian/patches/use_dynamic_linking.patch
- + debian/salsa-ci.yml


Changes:

=====================================
debian/changelog
=====================================
@@ -1,3 +1,23 @@
+hilive (2.0a-6) UNRELEASED; urgency=medium
+
+  * Drop libboost-system-dev from Build-Depends
+    Closes: #1134916
+  * No version restriction on libseqan2-dev
+  * Do not try to use component system from Boost which was removed
+    in version 1.90
+    Closes: #1134916
+
+ -- Andreas Tille <tille at debian.org>  Mon, 27 Apr 2026 16:04:32 +0200
+
+hilive (2.0a-5) experimental; urgency=medium
+
+  * Team upload.
+  * d/control: Experimental rebuild using the 3rd release candidate of
+    SeqAn 2.5.0
+  * Added patch for the explicit seqan2 namespace.
+
+ -- Enrico Seiler <enrico.seiler.debian at outlook.com>  Tue, 26 Nov 2024 17:58:24 +0100
+
 hilive (2.0a-4) unstable; urgency=medium
 
   * Team upload


=====================================
debian/control
=====================================
@@ -5,7 +5,6 @@ Section: science
 Priority: optional
 Build-Depends: debhelper-compat (= 13),
                cmake,
-               libboost-system-dev,
                libboost-filesystem-dev,
                libboost-iostreams-dev,
                libboost-program-options-dev,


=====================================
debian/patches/0005-Upgrade-to-SeqAn-2.5.0.patch
=====================================
@@ -0,0 +1,595 @@
+From: Enrico Seiler <enrico.seiler.debian at outlook.com>
+Date: Tue, 26 Nov 2024 17:45:08 +0100
+Subject: Upgrade to SeqAn 2.5.0.
+
+---
+ CMakeLists.txt     |  2 +-
+ lib/alnout.cpp     | 36 ++++++++++++++++++------------------
+ lib/alnout.h       | 34 +++++++++++++++++-----------------
+ lib/alnread.cpp    | 32 ++++++++++++++++----------------
+ lib/alnread.h      |  4 ++--
+ lib/kindex.cpp     | 22 +++++++++++-----------
+ lib/kindex.h       | 10 +++++-----
+ lib/tools.cpp      | 12 ++++++------
+ lib/tools.h        |  2 +-
+ lib/tools_static.h |  2 +-
+ 10 files changed, 78 insertions(+), 78 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index aea27d4..7e06a9a 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -10,7 +10,7 @@ project( HiLive VERSION 2.0 LANGUAGES CXX )
+ ###################
+ 
+ # Set CXX Standard
+-set( CMAKE_CXX_STANDARD 14 )
++set( CMAKE_CXX_STANDARD 17 )
+ set( CMAKE_CXX_SANDARD_REQUIRED ON )
+ set( CMAKE_CXX_EXTENSIONS OFF )
+ 
+diff --git a/lib/alnout.cpp b/lib/alnout.cpp
+index f582e1e..169bce1 100755
+--- a/lib/alnout.cpp
++++ b/lib/alnout.cpp
+@@ -47,7 +47,7 @@ void AlnOut::init() {
+ 	bfos.set_context(idx->getSeqNames(), idx->getSeqLengths());
+ 
+ 	// Init the header (the same object can be used for all output streams)
+-	seqan::BamHeader header = getBamHeader();
++	seqan2::BamHeader header = getBamHeader();
+ 
+ 	// Init output stream for each barcode (plus undetermined if keep_all_barcodes is set)
+ 	for ( unsigned barcode=0; barcode < (barcodes.size() + 1); barcode ++) {
+@@ -292,7 +292,7 @@ void AlnOut::__write_tile_to_bam__ ( Task t ) {
+ 			mateAlignments.push_back(e->get_alignment());
+ 		}
+ 
+-		std::vector<std::vector<seqan::BamAlignmentRecord>> mateRecords(mateAlignments.size(), std::vector<seqan::BamAlignmentRecord>(0));
++		std::vector<std::vector<seqan2::BamAlignmentRecord>> mateRecords(mateAlignments.size(), std::vector<seqan2::BamAlignmentRecord>(0));
+ 
+ 		// if the filter file is available and the filter flag is 0 then skip
+ 		if (filters.size() != 0 && filters.next() == false)
+@@ -333,7 +333,7 @@ void AlnOut::__write_tile_to_bam__ ( Task t ) {
+ 			mateAlignments[mateAlignmentIndex]->cycle -= 1;
+ 
+ 			// Init record with information about the read
+-			seqan::BamAlignmentRecord mate_record;
++			seqan2::BamAlignmentRecord mate_record;
+ 			mate_record.qName = readname.str();
+ 			mate_record.flag = 0;
+ 
+@@ -413,7 +413,7 @@ void AlnOut::__write_tile_to_bam__ ( Task t ) {
+ 				}
+ 
+ 				// get CIGAR-String
+-				seqan::String<seqan::CigarElement<> > cigar = (*it)->returnSeqanCigarString();
++				seqan2::String<seqan2::CigarElement<> > cigar = (*it)->returnSeqanCigarString();
+ 
+ 				// Get NM:i value
+ 				unsigned nm = (*it)->get_nm();
+@@ -425,7 +425,7 @@ void AlnOut::__write_tile_to_bam__ ( Task t ) {
+ 				unsigned deletionSum = 0;
+ 				unsigned supposed_cigar_length = mateCycles[mateAlignmentIndex];
+ 
+-				for (seqan::Iterator<seqan::String<seqan::CigarElement<> > >::Type elem = seqan::begin(cigar); elem != end(cigar); ++elem) {
++				for (seqan2::Iterator<seqan2::String<seqan2::CigarElement<> > >::Type elem = seqan2::begin(cigar); elem != end(cigar); ++elem) {
+ 					if ((elem->operation == 'M') || (elem->operation == 'I') || (elem->operation == 'S') || (elem->operation == '=') || (elem->operation == 'X'))
+ 						cigarElemSum += elem->count;
+ 
+@@ -464,7 +464,7 @@ void AlnOut::__write_tile_to_bam__ ( Task t ) {
+ 						goto nextmate;
+ 					}
+ 
+-					seqan::BamAlignmentRecord record = mate_record;
++					seqan2::BamAlignmentRecord record = mate_record;
+ 
+ 					record.rID = CountType(p->gid / 2);
+ 
+@@ -485,40 +485,40 @@ void AlnOut::__write_tile_to_bam__ ( Task t ) {
+ 
+ 					record.cigar = cigar;
+ 					if ( idx->isReverse(p->gid) )
+-						seqan::reverse(record.cigar);
++						seqan2::reverse(record.cigar);
+ 
+ 					if ( printedMateAlignments > 0 ) { // if current seed is secondary alignment
+ 						record.flag = addSAMFlag(record.flag, SAMFlag::SEC_ALIGNMENT);
+-						seqan::clear(record.seq);
+-						seqan::clear(record.qual);
++						seqan2::clear(record.seq);
++						seqan2::clear(record.qual);
+ 					}
+ 
+ 					if ( idx->isReverse(p->gid) ) { // if read matched reverse complementary
+-						seqan::reverseComplement(record.seq);
+-						seqan::reverse(record.qual);
++						seqan2::reverseComplement(record.seq);
++						seqan2::reverse(record.qual);
+ 						record.flag = addSAMFlag(record.flag, SAMFlag::SEQ_RC);
+ 					}
+ 
+ 					// Dictionary for additional SAM tags
+-					seqan::BamTagsDict dict;
++					seqan2::BamTagsDict dict;
+ 
+ 					// Alignment Score
+-					seqan::appendTagValue(dict, "AS", curr_seed_score);
++					seqan2::appendTagValue(dict, "AS", curr_seed_score);
+ 
+ 					// Barcode sequence
+ 					if (barcode!="")
+-						seqan::appendTagValue(dict, "BC", barcode);
++						seqan2::appendTagValue(dict, "BC", barcode);
+ 
+ 					// Number of mismatches
+-					seqan::appendTagValue(dict, "NM", nm);
++					seqan2::appendTagValue(dict, "NM", nm);
+ 
+ 					// MD:Z string
+ 					std::string mdz = (*it)->getMDZString();
+ 					if ( idx->isReverse(p->gid))
+ 						mdz = reverse_mdz(mdz);
+-					seqan::appendTagValue(dict, "MD", mdz);
++					seqan2::appendTagValue(dict, "MD", mdz);
+ 
+-					record.tags = seqan::host(dict);
++					record.tags = seqan2::host(dict);
+ 
+ 					// fill records list
+ 					mateRecords[mateAlignmentIndex].push_back(record);
+@@ -561,7 +561,7 @@ void AlnOut::__write_tile_to_bam__ ( Task t ) {
+ 	return;
+ }
+ 
+-void AlnOut::setMateSAMFlags( std::vector<std::vector<seqan::BamAlignmentRecord>> & mateRecords ) {
++void AlnOut::setMateSAMFlags( std::vector<std::vector<seqan2::BamAlignmentRecord>> & mateRecords ) {
+ 	for ( CountType i=0; i<mateRecords.size(); i++ ) {
+ 
+ 		// Stop if not paired
+diff --git a/lib/alnout.h b/lib/alnout.h
+index 4723925..eaad85c 100644
+--- a/lib/alnout.h
++++ b/lib/alnout.h
+@@ -20,7 +20,7 @@ struct Atomic_bfo {
+ private:
+ 
+ 	/** The BamFileOut stream.*/
+-	seqan::BamFileOut bfo;
++	seqan2::BamFileOut bfo;
+ 
+ 	/** The atomic flag to perform a spinlock while writing.*/
+ 	std::atomic_flag flag = ATOMIC_FLAG_INIT;
+@@ -55,7 +55,7 @@ public:
+ 	 * Set the context of the BamFileOut stream.
+ 	 * @param context The new context.
+ 	 */
+-	void setContext ( seqan::BamIOContext<seqan::StringSet<seqan::CharString> > & context ) {
++	void setContext ( seqan2::BamIOContext<seqan2::StringSet<seqan2::CharString> > & context ) {
+ 		bfo.context = context;
+ 	}
+ 
+@@ -63,22 +63,22 @@ public:
+ 	 * Write the header to the output file.
+ 	 * @param header The header for the output file.
+ 	 */
+-	void writeHeader ( seqan::BamHeader & header ) {
+-		seqan::writeHeader( bfo, header );
++	void writeHeader ( seqan2::BamHeader & header ) {
++		seqan2::writeHeader( bfo, header );
+ 	}
+ 
+ 	/**
+ 	 * Write records to the output file in a "thread-safe" manner.
+ 	 * @param records Reference to a vector containing a set of records.
+ 	 */
+-	void writeRecords ( std::vector<seqan::BamAlignmentRecord> & records ) {
++	void writeRecords ( std::vector<seqan2::BamAlignmentRecord> & records ) {
+ 
+ 		if ( records.size() == 0 )
+ 			return;
+ 
+ 		lock();
+ 
+-		seqan::writeRecords(bfo, records);
++		seqan2::writeRecords(bfo, records);
+ 
+ 		unlock();
+ 
+@@ -88,7 +88,7 @@ public:
+ 	 * Write records to the output file in a "thread-safe" manner.
+ 	 * @param records Reference to a vector containing an other vector of records.
+ 	 */
+-	void writeRecords ( std::vector<std::vector<seqan::BamAlignmentRecord>> & records ) {
++	void writeRecords ( std::vector<std::vector<seqan2::BamAlignmentRecord>> & records ) {
+ 
+ 		if ( records.size() == 0 )
+ 			return;
+@@ -96,7 +96,7 @@ public:
+ 		lock();
+ 
+ 		for ( auto & subvector : records)
+-			seqan::writeRecords(bfo, subvector);
++			seqan2::writeRecords(bfo, subvector);
+ 
+ 		unlock();
+ 
+@@ -115,9 +115,9 @@ class BamFileOutDeque {
+ 	std::deque<Atomic_bfo> bfos;
+ 
+ 	/** All fields needed for the context of the BamFileOut streams. */
+-	seqan::BamIOContext<seqan::StringSet<seqan::CharString> > context;
+-	seqan::StringSet<seqan::CharString> refNames;
+-	seqan::NameStoreCache<seqan::StringSet<seqan::CharString> > refNamesCache;
++	seqan2::BamIOContext<seqan2::StringSet<seqan2::CharString> > context;
++	seqan2::StringSet<seqan2::CharString> refNames;
++	seqan2::NameStoreCache<seqan2::StringSet<seqan2::CharString> > refNamesCache;
+ 
+ public:
+ 
+@@ -127,12 +127,12 @@ public:
+ 	 * @param seq_length Lengths of all sequences in the database
+ 	 */
+ 	void set_context(std::vector<std::string> & seq_names, std::vector<uint32_t> & seq_lengths) {
+-		seqan::NameStoreCache<seqan::StringSet<seqan::CharString> > rnc(refNames);
++		seqan2::NameStoreCache<seqan2::StringSet<seqan2::CharString> > rnc(refNames);
+ 		refNamesCache = rnc;
+-		seqan::BamIOContext<seqan::StringSet<seqan::CharString> > cxt(refNames, refNamesCache);
++		seqan2::BamIOContext<seqan2::StringSet<seqan2::CharString> > cxt(refNames, refNamesCache);
+ 		context = cxt;
+-		seqan::contigNames(context) = seq_names;
+-		seqan::contigLengths(context) = seq_lengths;
++		seqan2::contigNames(context) = seq_names;
++		seqan2::contigLengths(context) = seq_lengths;
+ 	}
+ 
+ 	/**
+@@ -246,7 +246,7 @@ private:
+ 	bool add_task( Task t, ItemStatus status );
+ 
+ 	// TODO: documentation
+-	void findPairs( std::vector<std::vector<seqan::BamAlignmentRecord>> & mateRecords );
++	void findPairs( std::vector<std::vector<seqan2::BamAlignmentRecord>> & mateRecords );
+ 
+ 	/**
+ 	 * Set the SAM fields according to the information about the other mates.
+@@ -254,7 +254,7 @@ private:
+ 	 * For the last mate, refer to the first mate (as it is done for paired end data)
+ 	 * @param reference to a vecor of vectors for SAM records of each mate.
+ 	 */
+-	void setMateSAMFlags( std::vector<std::vector<seqan::BamAlignmentRecord>> & records );
++	void setMateSAMFlags( std::vector<std::vector<seqan2::BamAlignmentRecord>> & records );
+ 
+ 	/**
+ 	 * Create a temporary align file that is sorted by score.
+diff --git a/lib/alnread.cpp b/lib/alnread.cpp
+index 6c3fbae..920e0a9 100755
+--- a/lib/alnread.cpp
++++ b/lib/alnread.cpp
+@@ -1,13 +1,13 @@
+ #include "alnread.h"
+ 
+ 
+-seqan::String<seqan::CigarElement<> > Seed::returnSeqanCigarString() const {
++seqan2::String<seqan2::CigarElement<> > Seed::returnSeqanCigarString() const {
+ 
+ 	bool extended_cigar = globalAlignmentSettings.get_extended_cigar();
+ 
+-	typedef seqan::String<seqan::CigarElement<> > TSeqanCigarString;
++	typedef seqan2::String<seqan2::CigarElement<> > TSeqanCigarString;
+ 	TSeqanCigarString seqanCigarString;
+-	seqan::CigarElement<> cigarElem;
++	seqan2::CigarElement<> cigarElem;
+ 
+ 	for (CigarVector::const_iterator it = cigar_data.begin(); it != cigar_data.end(); ++it) {
+ 
+@@ -15,7 +15,7 @@ seqan::String<seqan::CigarElement<> > Seed::returnSeqanCigarString() const {
+ 		if (it == cigar_data.begin() && (*it).operation==NO_MATCH) {
+ 			cigarElem.operation='S';
+ 			cigarElem.count=(*it).length;
+-			seqan::appendValue(seqanCigarString, cigarElem);
++			seqan2::appendValue(seqanCigarString, cigarElem);
+ 			continue;
+ 		}
+ 
+@@ -23,7 +23,7 @@ seqan::String<seqan::CigarElement<> > Seed::returnSeqanCigarString() const {
+ 		if ((*it).operation==NO_MATCH) {
+ 			cigarElem.operation= extended_cigar ? 'X' : 'M';
+ 			cigarElem.count=(*it).length;
+-			seqan::appendValue(seqanCigarString, cigarElem);
++			seqan2::appendValue(seqanCigarString, cigarElem);
+ 			continue;
+ 		}
+ 
+@@ -31,7 +31,7 @@ seqan::String<seqan::CigarElement<> > Seed::returnSeqanCigarString() const {
+ 		else if((*it).operation==DELETION) {
+ 			cigarElem.operation='D';
+ 			cigarElem.count=(*it).length;
+-			seqan::appendValue(seqanCigarString, cigarElem);
++			seqan2::appendValue(seqanCigarString, cigarElem);
+ 			continue;
+ 		}
+ 
+@@ -39,7 +39,7 @@ seqan::String<seqan::CigarElement<> > Seed::returnSeqanCigarString() const {
+ 		else if((*it).operation==INSERTION) {
+ 			cigarElem.operation='I';
+ 			cigarElem.count=(*it).length;
+-			seqan::appendValue(seqanCigarString, cigarElem);
++			seqan2::appendValue(seqanCigarString, cigarElem);
+ 			continue;
+ 		}
+ 
+@@ -47,7 +47,7 @@ seqan::String<seqan::CigarElement<> > Seed::returnSeqanCigarString() const {
+ 		else {
+ 			cigarElem.operation= extended_cigar ? '=' : 'M';
+ 			cigarElem.count=(*it).length;
+-			seqan::appendValue(seqanCigarString, cigarElem);
++			seqan2::appendValue(seqanCigarString, cigarElem);
+ 			continue;
+ 
+ 		}
+@@ -395,8 +395,8 @@ std::vector<GenomePosType> Seed::getPositions( CountType firstPosition, CountTyp
+ 	std::vector<GenomePosType> position_list;
+ 
+ 	// Get occurences
+-	auto positions = seqan::getOccurrences(it);
+-	CountType sub_positions = seqan::length(positions);
++	auto positions = seqan2::getOccurrences(it);
++	CountType sub_positions = seqan2::length(positions);
+ 	position_list.reserve( std::min ( seed_positions, sub_positions ) );
+ 
+ 	// Put positions into the return list
+@@ -656,7 +656,7 @@ void ReadAlignment::extendSeed(char base, USeed origin, SeedVec & newSeeds){
+ 	{
+ 		// Handle matching nucleotide first (this should be the default case)
+ 		FMTopDownIterator it(idx->idx, origin->vDesc);
+-		if ( seqan::goDown(it, seqan::DnaString(base)) ) {
++		if ( seqan2::goDown(it, seqan2::DnaString(base)) ) {
+ 			getMatchSeeds( tbr, tbr, it, origin, newSeeds );
+ 			handled_range += (it.vDesc.range.i2 - it.vDesc.range.i1);
+ 		}
+@@ -683,7 +683,7 @@ void ReadAlignment::extendSeed(char base, USeed origin, SeedVec & newSeeds){
+ 
+ 		FMTopDownIterator it(idx->idx, origin->vDesc);
+ 
+-		if ( seqan::goDown(it, seqan::DnaString(index_base)) ) {
++		if ( seqan2::goDown(it, seqan2::DnaString(index_base)) ) {
+ 
+ 			// Handle no_match
+ 			getMatchSeeds( tbr, index_base, it, origin, newSeeds );
+@@ -851,7 +851,7 @@ void ReadAlignment::recursive_goDown(CountType base_repr, USeed origin, SeedVec
+ 		FMTopDownIterator it(idx->idx, origin->vDesc);
+ 
+ 		// Only consider paths existing in the index
+-		if ( goDown(it, seqan::DnaString(revtwobit_repr( base_repr )))) {
++		if ( goDown(it, seqan2::DnaString(revtwobit_repr( base_repr )))) {
+ 
+ 			// copy data from origin seed
+ 			USeed s (new Seed);
+@@ -894,7 +894,7 @@ void ReadAlignment::recursive_goDown(CountType base_repr, USeed origin, SeedVec
+ 		FMTopDownIterator it(idx->idx, origin->vDesc);
+ 
+ 		// Only consider paths existing in the index
+-		if ( goDown(it, seqan::DnaString(revtwobit_repr(b)))) {
++		if ( goDown(it, seqan2::DnaString(revtwobit_repr(b)))) {
+ 
+ 			// copy data from origin seed
+ 			USeed s (new Seed);
+@@ -926,7 +926,7 @@ void ReadAlignment::createSeeds(SeedVec & newSeeds) {
+ 	std::string anchor_seq = getSequenceString().substr( sequenceLen - globalAlignmentSettings.get_anchor_length(), globalAlignmentSettings.get_anchor_length());
+ 
+ 	FMTopDownIterator it(idx->idx);
+-	if ( seqan::goDown(it, seqan::Dna5String(anchor_seq)) ) {
++	if ( seqan2::goDown(it, seqan2::Dna5String(anchor_seq)) ) {
+ 		USeed seed ( new Seed() );
+ 		seed->max_as = max_as;
+ 		if ( cycle != globalAlignmentSettings.get_anchor_length() )
+@@ -1189,7 +1189,7 @@ std::vector<uint8_t> ReadAlignment::getMAPQs() const {
+ 	return mapqs;
+ }
+ 
+-void ReadAlignment::addReadInfoToRecord(seqan::BamAlignmentRecord & record) const {
++void ReadAlignment::addReadInfoToRecord(seqan2::BamAlignmentRecord & record) const {
+ 	record.seq = getSequenceString();
+ 	record.qual = getQualityString();
+ }
+diff --git a/lib/alnread.h b/lib/alnread.h
+index f800b80..9ed4305 100644
+--- a/lib/alnread.h
++++ b/lib/alnread.h
+@@ -39,7 +39,7 @@ struct Seed {
+ 	 * @return CIGAR string in SeqAn format
+ 	 * TODO: give extended CIGAR information as a parameter instead of inside the function.
+ 	 */
+-	seqan::String<seqan::CigarElement<> > returnSeqanCigarString() const;
++	seqan2::String<seqan2::CigarElement<> > returnSeqanCigarString() const;
+ 
+ 	/**
+ 	 * Get the alignment score of a seed (AS:i).
+@@ -407,7 +407,7 @@ public:
+ 	 */
+ 	std::vector<uint8_t> getMAPQs() const;
+ 
+-	void addReadInfoToRecord(seqan::BamAlignmentRecord & record) const;
++	void addReadInfoToRecord(seqan2::BamAlignmentRecord & record) const;
+ 
+ }; // END class ReadAlignment 
+ 
+diff --git a/lib/kindex.cpp b/lib/kindex.cpp
+index 22ca65c..6be1b89 100644
+--- a/lib/kindex.cpp
++++ b/lib/kindex.cpp
+@@ -23,20 +23,20 @@ int KixBuild::create_index( const std::string &fname, const std::string &iname,
+ 	}
+ 
+ 	// modify sequences for index building (reverse and add reverse complement)
+-	seqan::StringSet<seqan::DnaString> all_seqs;
++	seqan2::StringSet<seqan2::DnaString> all_seqs;
+ 
+ 	for(uint16_t i = 0; i < length(seqs); i++) {
+-		seqan::ModifiedString<seqan::DnaString, seqan::ModReverse> rev(seqs[i]);
+-		seqan::appendValue(all_seqs, rev);
+-		seqan::complement(seqs[i]);
+-		seqan::appendValue(all_seqs, seqs[i]);
++		seqan2::ModifiedString<seqan2::DnaString, seqan2::ModReverse> rev(seqs[i]);
++		seqan2::appendValue(all_seqs, rev);
++		seqan2::complement(seqs[i]);
++		seqan2::appendValue(all_seqs, seqs[i]);
+ 	}
+ 
+ 	// Define the index
+ 	FMIndex idx(all_seqs);
+ 
+ 	// Force the index to be created
+-	if( ! seqan::indexCreate(idx) )
++	if( ! seqan2::indexCreate(idx) )
+ 		return 4;
+ 
+ 	// Save the index to file
+@@ -61,7 +61,7 @@ int KixBuild::add_fasta(const std::string &fname, bool convert_spaces, bool trim
+   std::string line;	// current line of fasta file
+   std::string seq_name;	// name of the current sequence
+   bool startNewSequence = false;	// true if last line was a header / new sequence begins
+-  seqan::DnaString newSeq = "";	// current DNA sequence
++  seqan2::DnaString newSeq = "";	// current DNA sequence
+ 
+   while(getline(infile, line)) {
+ 
+@@ -79,7 +79,7 @@ int KixBuild::add_fasta(const std::string &fname, bool convert_spaces, bool trim
+ 
+ 		  // add last sequence to sequence vector (if exist)
+ 		  if ( newSeq != "" ) {
+-			  seqan::appendValue(seqs, newSeq);
++			  seqan2::appendValue(seqs, newSeq);
+ 		  }
+ 
+ 		  // trim the header (remove leading and trailing whitespaces)
+@@ -125,7 +125,7 @@ int KixBuild::add_fasta(const std::string &fname, bool convert_spaces, bool trim
+ 
+   // append the last sequence to the StringSet
+   if ( newSeq != "" ) {
+-	  seqan::appendValue(seqs, newSeq);
++	  seqan2::appendValue(seqs, newSeq);
+   }
+ 
+   return seq_lengths.size();
+@@ -134,7 +134,7 @@ int KixBuild::add_fasta(const std::string &fname, bool convert_spaces, bool trim
+ 
+ int KixBuild::save_fmindex( FMIndex & idx, const std::string &iname ) {
+ 	const char * filename = iname.c_str();
+-	return seqan::save(idx, filename);
++	return seqan2::save(idx, filename);
+ }
+ 
+ int KixBuild::save_metadata( const std::string &iname ) {
+@@ -227,7 +227,7 @@ int KixRun::load_fmindex( std::string index_name ) {
+ 
+ 	const char * filename = index_name.c_str();
+ 
+-	if ( seqan::open(idx, filename) != 1 ) // function returns 1 on success
++	if ( seqan2::open(idx, filename) != 1 ) // function returns 1 on success
+ 		return 1;
+ 	return 0;
+ 
+diff --git a/lib/kindex.h b/lib/kindex.h
+index 5742035..c8f8283 100644
+--- a/lib/kindex.h
++++ b/lib/kindex.h
+@@ -12,22 +12,22 @@
+ /**
+  * FM-Index Config.
+  */
+-typedef seqan::FastFMIndexConfig<void, uint64_t,2 ,1> FMIConfig;
++typedef seqan2::FastFMIndexConfig<void, uint64_t,2 ,1> FMIConfig;
+ 
+ /**
+  * FM-Index data type.
+  */
+-typedef seqan::Index<seqan::StringSet<seqan::DnaString>, seqan::FMIndex<void, FMIConfig> > FMIndex;
++typedef seqan2::Index<seqan2::StringSet<seqan2::DnaString>, seqan2::FMIndex<void, FMIConfig> > FMIndex;
+ 
+ /**
+  * Iterator to go through the FM index structure.
+  */
+-typedef seqan::Iterator<FMIndex, seqan::TopDown<> >::Type FMTopDownIterator;
++typedef seqan2::Iterator<FMIndex, seqan2::TopDown<> >::Type FMTopDownIterator;
+ 
+ /**
+  * Data type to find a store a node in the FM index.
+  */
+-typedef seqan::Iter<FMIndex,seqan::VSTree<seqan::TopDown<seqan::Preorder>>>::TVertexDesc FMVertexDescriptor;
++typedef seqan2::Iter<FMIndex,seqan2::VSTree<seqan2::TopDown<seqan2::Preorder>>>::TVertexDesc FMVertexDescriptor;
+ 
+ inline bool operator==(const FMVertexDescriptor l, FMVertexDescriptor r) {
+ 	return l.range == r.range;
+@@ -76,7 +76,7 @@ class KixBuild {
+ 	std::vector<uint32_t> seq_lengths;
+ 
+ 	/** Sequences in the index. */
+-	seqan::StringSet<seqan::DnaString> seqs;
++	seqan2::StringSet<seqan2::DnaString> seqs;
+ 
+  private:
+ 
+diff --git a/lib/tools.cpp b/lib/tools.cpp
+index f5120f3..bb9595d 100644
+--- a/lib/tools.cpp
++++ b/lib/tools.cpp
+@@ -4,25 +4,25 @@
+ ////////// SAM/BAM output //////////
+ ////////////////////////////////////
+ 
+-seqan::BamHeader getBamHeader() {
++seqan2::BamHeader getBamHeader() {
+ 	std::stringstream ss;
+ 	ss.str(std::string());
+ 	ss << HiLive_VERSION_MAJOR << "." << HiLive_VERSION_MINOR;
+ 
+-	seqan::BamHeader header;
++	seqan2::BamHeader header;
+ 	resize(header, 2);
+ 
+ 	// @HD header.
+-	seqan::resize(header[0].tags, 2);
+-	header[0].type = seqan::BAM_HEADER_FIRST;
++	seqan2::resize(header[0].tags, 2);
++	header[0].type = seqan2::BAM_HEADER_FIRST;
+ 	header[0].tags[0].i1 = "VN";
+ 	header[0].tags[0].i2 = "1.5";
+ 	header[0].tags[1].i1 = "GO";
+ 	header[0].tags[1].i2 = "query";
+ 
+ 	// @PG header.
+-	seqan::resize(header[1].tags, 3);
+-	header[1].type = seqan::BAM_HEADER_PROGRAM;
++	seqan2::resize(header[1].tags, 3);
++	header[1].type = seqan2::BAM_HEADER_PROGRAM;
+ 	header[1].tags[0].i1 = "ID";
+ 	header[1].tags[0].i2 = "hilive";
+ 	header[1].tags[1].i1 = "PN";
+diff --git a/lib/tools.h b/lib/tools.h
+index 6f4167f..b9114c2 100644
+--- a/lib/tools.h
++++ b/lib/tools.h
+@@ -134,7 +134,7 @@ inline uint16_t getMateCycle( uint16_t mate_number, uint16_t seq_cycle ) {
+  * @return The BAM header.
+  * @author Tobias Loka
+  */
+-seqan::BamHeader getBamHeader();
++seqan2::BamHeader getBamHeader();
+ 
+ /**
+  * Name of a temporary SAM/BAM file (for the time it is written).
+diff --git a/lib/tools_static.h b/lib/tools_static.h
+index 99d084a..d353c88 100644
+--- a/lib/tools_static.h
++++ b/lib/tools_static.h
+@@ -36,7 +36,7 @@ inline bool gp_compare (GenomePosType i,GenomePosType j) {
+  * @param r Second record.
+  * @return true, if l has a lower positions than r.
+  */
+-inline bool compare_records_by_pos(const seqan::BamAlignmentRecord & l, const seqan::BamAlignmentRecord & r) {
++inline bool compare_records_by_pos(const seqan2::BamAlignmentRecord & l, const seqan2::BamAlignmentRecord & r) {
+ 	if ( l.rID == r.rID )
+ 		return l.beginPos < r.beginPos;
+ 	return l.rID < r.rID;


=====================================
debian/patches/0006-boost1.90.patch
=====================================
@@ -0,0 +1,16 @@
+Author: Andreas Tille <tille at debian.org>
+Last-Update: 2027-04-27
+Bug-Debian: https://bugs.debian.org/1134916
+Description: Boost 1.90 has no component system any more
+
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -78,7 +78,7 @@ endif()
+ set(Boost_USE_STATIC_LIBS OFF) 
+ set(Boost_USE_MULTITHREADED ON)  
+ set(Boost_USE_STATIC_RUNTIME OFF) 
+-find_package( Boost COMPONENTS system filesystem program_options iostreams REQUIRED )
++find_package( Boost COMPONENTS filesystem program_options iostreams REQUIRED )
+ include_directories( ${Boost_INCLUDE_DIR} )
+ 
+ # ZLIB


=====================================
debian/patches/do_not_set_rpath.patch
=====================================
@@ -1,10 +1,18 @@
-Author: Andreas Tille <tille at debian.org>
+From: Andreas Tille <tille at debian.org>
+Date: Fri, 29 Jul 2016 14:17:48 +0200
+Subject: Do not set rpath
+
 Last-Update: Thu, 28 Jul 2016 15:13:14 +0200
-Description: Do not set rpath
- Unfortunately this does not work and chrpath needs to be used.
- .
- Any hint to do this properly is welcome.
 
+Unfortunately this does not work and chrpath needs to be used.
+
+Any hint to do this properly is welcome.
+---
+ CMakeLists.txt | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index af79c36..96e4782 100644
 --- a/CMakeLists.txt
 +++ b/CMakeLists.txt
 @@ -120,6 +120,7 @@ foreach (x ${LIB_NAMES})


=====================================
debian/patches/remove_march_native.patch
=====================================
@@ -1,11 +1,19 @@
-Description: -march=native must not be used for distribution packages
- The resulting binaries may be dependent on features of the build machine.
-Author: Juhani Numminen <juhaninumminen0 at gmail.com>
+From: Juhani Numminen <juhaninumminen0 at gmail.com>
+Date: Thu, 16 Jan 2020 11:56:35 +0200
+Subject: -march=native must not be used for distribution packages
+
 Last-Update: 2020-01-16
 
+The resulting binaries may be dependent on features of the build machine.
+---
+ CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index e342f04..aea27d4 100644
 --- a/CMakeLists.txt
 +++ b/CMakeLists.txt
-@@ -53,7 +53,7 @@
+@@ -53,7 +53,7 @@ endif()
  
  # SeqAn specific flags
  if ( NOT CONDA )


=====================================
debian/patches/series
=====================================
@@ -2,3 +2,5 @@ do_not_set_rpath.patch
 use_FindSeQan.patch
 use_dynamic_linking.patch
 remove_march_native.patch
+0005-Upgrade-to-SeqAn-2.5.0.patch
+0006-boost1.90.patch


=====================================
debian/patches/use_FindSeQan.patch
=====================================
@@ -1,9 +1,16 @@
-Description: remove forced cflags and set proper cmake module path 
-Author: Gert Wollny <gw.fossdev at gmail.com>
+From: Gert Wollny <gw.fossdev at gmail.com>
+Date: Tue, 6 Dec 2016 07:46:25 +0000
+Subject: remove forced cflags and set proper cmake module path
 
+---
+ CMakeLists.txt | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 96e4782..70d17dc 100644
 --- a/CMakeLists.txt
 +++ b/CMakeLists.txt
-@@ -94,8 +94,8 @@ set(CompressionLibs "${ZLIB_LIBRARIES};l
+@@ -94,8 +94,8 @@ set(CompressionLibs "${ZLIB_LIBRARIES};lz4")
  
  # SEQAN
  if ( SEQAN_PATH )


=====================================
debian/patches/use_dynamic_linking.patch
=====================================
@@ -1,7 +1,15 @@
-Author: Andreas Tille <tille at debian.org>
+From: Andreas Tille <tille at debian.org>
+Date: Mon, 7 Oct 2019 13:35:34 +0200
+Subject: Do not link statically;
+ -pthread option (otherwise its -lpthread which does not work)
+
 Last-Update: Mon, 07 Oct 2019 11:02:50 +0200
-Description: Do not link statically; -pthread option (otherwise its -lpthread which does not work)
+---
+ CMakeLists.txt | 7 ++++---
+ 1 file changed, 4 insertions(+), 3 deletions(-)
 
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 70d17dc..e342f04 100644
 --- a/CMakeLists.txt
 +++ b/CMakeLists.txt
 @@ -53,11 +53,12 @@ endif()


=====================================
debian/salsa-ci.yml
=====================================
@@ -0,0 +1,6 @@
+---
+include:
+  - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/recipes/debian.yml
+
+reprotest:
+  allow_failure: true



View it on GitLab: https://salsa.debian.org/med-team/hilive/-/compare/a5660256847b402c5afaee69200f1fd4a77c3edd...02487b0ff72e60884ae3c61750ceb7ffb874e82a

-- 
View it on GitLab: https://salsa.debian.org/med-team/hilive/-/compare/a5660256847b402c5afaee69200f1fd4a77c3edd...02487b0ff72e60884ae3c61750ceb7ffb874e82a
You're receiving this email because of your account on salsa.debian.org. Manage all notifications: https://salsa.debian.org/-/profile/notifications | Help: https://salsa.debian.org/help


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/debian-med-commit/attachments/20260427/af365a24/attachment-0001.htm>


More information about the debian-med-commit mailing list