[med-svn] [Git][med-team/kallisto][master] 4 commits: Adapt patches to new upstream version 0.52.0
Andreas Tille (@tille)
gitlab at salsa.debian.org
Tue Oct 20 19:22:24 BST 2026
Andreas Tille pushed to branch master at Debian Med / kallisto
Commits:
fa9435a1 by Andreas Tille at 2026-10-20T19:19:06+02:00
Adapt patches to new upstream version 0.52.0
- - - - -
b26882be by Andreas Tille at 2026-10-20T19:19:19+02:00
Build bundled bifrost with the same MAX_KMER_SIZE as kallisto
Compiling bifrost with MAX_KMER_SIZE=31 and kallisto with 32 corrupts
the heap and makes the test suite crash. Pass kallisto's k-mer size to
the bundled bifrost build and drop the patch that forced the wrong
default.
Closes: #1118526
- - - - -
7db188d1 by Andreas Tille at 2026-10-20T19:43:59+02:00
Remove unused patch to use Debian packaged bifrost
- - - - -
b3d7e473 by Andreas Tille at 2026-10-20T19:52:01+02:00
Upload to unstable
- - - - -
9 changed files:
- debian/changelog
- debian/patches/baseline.patch
- debian/patches/bifrost_typo.patch
- − debian/patches/fix_bifrost_defines.patch
- debian/patches/htslib1.3
- debian/patches/series
- debian/patches/std_gnu17.patch
- − debian/patches/use_debian_packaged_bifrost.patch
- debian/patches/use_debian_packaged_htslib.patch
Changes:
=====================================
debian/changelog
=====================================
@@ -1,10 +1,16 @@
-kallisto (0.52.0+dfsg-1) UNRELEASED; urgency=medium
+kallisto (0.52.0+dfsg-1) unstable; urgency=medium
* New upstream version
+ * Adapt patches to new upstream version
+ * Build the bundled bifrost with the same MAX_KMER_SIZE as kallisto instead
+ of compiling it with MAX_KMER_SIZE=31. The mismatched k-mer size caused
+ heap corruption and test failures.
+ Closes: #1118526
* Drop 'Rules-Requires-Root: no' from d/control (routine-update)
* Reformat the Last-Update date as ISO YYYY-MM-DD.
+ * Remove unused patch to use Debian packaged bifrost
- -- Andreas Tille <tille at debian.org> Tue, 20 Oct 2026 16:45:36 +0200
+ -- Andreas Tille <tille at debian.org> Tue, 20 Oct 2026 19:44:13 +0200
kallisto (0.51.1+dfsg-2) unstable; urgency=medium
=====================================
debian/patches/baseline.patch
=====================================
@@ -5,9 +5,9 @@ Description: Do not build with -march=native
--- a/ext/bifrost/CMakeLists.txt
+++ b/ext/bifrost/CMakeLists.txt
-@@ -8,7 +8,8 @@ find_package(Threads REQUIRED)
- SET(MAX_KMER_SIZE "31" CACHE STRING "MAX_KMER_SIZE")
- SET(MAX_GMER_SIZE "63" CACHE STRING "MAX_GMER_SIZE")
+@@ -7,7 +7,8 @@ find_package(Threads REQUIRED)
+ # To enable a larger default k-mer size, replace MAX_KMER_SIZE with a larger multiple of 32: actual maximum k-mer size will be MAX_KMER_SIZE-1.
+ SET(MAX_GMER_SIZE "${MAX_KMER_SIZE}" CACHE STRING "MAX_GMER_SIZE")
# Enable architecture optimizations
-SET(COMPILATION_ARCH "native" CACHE STRING "COMPILATION_ARCH")
+# SET(COMPILATION_ARCH "native" CACHE STRING "COMPILATION_ARCH")
=====================================
debian/patches/bifrost_typo.patch
=====================================
@@ -1,5 +1,5 @@
Author: Andreas Tille <tille at debian.org>
-Last-Update: 2025-10-18
+Last-Update: 2026-10-20
Description: Seems there is a typo
sz_link is a local variable in the constructor, not a class member which leads to
@@ -13,7 +13,7 @@ In file included from /build/kallisto-0.51.1+dfsg/ext/bifrost/src/DataManager.hp
+++ b/ext/bifrost/src/DataStorage.tcc
@@ -78,7 +78,7 @@ DataStorage<U>::DataStorage(const DataSt
- unitig_cs_link = new atomic<uint64_t>[sz_link];
+ unitig_cs_link = new std::atomic<uint64_t>[sz_link];
- for (size_t i = 0; i != sz_link; ++i) unitig_cs_link[i] = o.sz_link[i].load();
+ for (size_t i = 0; i != sz_link; ++i) unitig_cs_link[i] = o.unitig_cs_link[i].load();
=====================================
debian/patches/fix_bifrost_defines.patch deleted
=====================================
@@ -1,17 +0,0 @@
-Author: Andreas Tille <tille at debian.org>
-Last-Update: 2025-10-18
-Description: Add default values for MAX_KMER_SIZE and MAX_GMER_SIZE
- (Any hint how to inject these without patching welcome)
-
---- a/ext/bifrost/CMakeLists.txt
-+++ b/ext/bifrost/CMakeLists.txt
-@@ -5,7 +5,8 @@ project(Bifrost)
- find_package(Threads REQUIRED)
-
- # To enable a larger default k-mer size, replace MAX_KMER_SIZE with a larger multiple of 32: actual maximum k-mer size will be MAX_KMER_SIZE-1.
--SET(MAX_GMER_SIZE "${MAX_KMER_SIZE}" CACHE STRING "MAX_GMER_SIZE")
-+SET(MAX_KMER_SIZE "31" CACHE STRING "MAX_KMER_SIZE")
-+SET(MAX_GMER_SIZE "63" CACHE STRING "MAX_GMER_SIZE")
- # Enable architecture optimizations
- SET(COMPILATION_ARCH "native" CACHE STRING "COMPILATION_ARCH")
- # Enable AVX2 instructions
=====================================
debian/patches/htslib1.3
=====================================
@@ -1,7 +1,7 @@
From: Michael R. Crusoe <michael.crusoe at gmail.com>
Subject: Use kseq.h from htslib, not the bundled version
---- kallisto.orig/unit_tests/test_kmerhashtable.cpp
-+++ kallisto/unit_tests/test_kmerhashtable.cpp
+--- a/unit_tests/test_kmerhashtable.cpp
++++ b/unit_tests/test_kmerhashtable.cpp
@@ -13,7 +13,7 @@
#include "KmerHashTable.h"
@@ -11,8 +11,8 @@ Subject: Use kseq.h from htslib, not the bundled version
#ifndef KSEQ_INIT_READY
#define KSEQ_INIT_READY
---- kallisto.orig/ext/bifrost/src/FASTX_Parser.hpp
-+++ kallisto/ext/bifrost/src/FASTX_Parser.hpp
+--- a/ext/bifrost/src/FASTX_Parser.hpp
++++ b/ext/bifrost/src/FASTX_Parser.hpp
@@ -14,7 +14,7 @@
#ifndef KSEQ_INIT_READY
@@ -22,9 +22,9 @@ Subject: Use kseq.h from htslib, not the bundled version
KSEQ_INIT(gzFile, gzread);
#endif
---- kallisto.orig/ext/bifrost/src/File_Parser.hpp
-+++ kallisto/ext/bifrost/src/File_Parser.hpp
-@@ -12,7 +12,7 @@
+--- a/ext/bifrost/src/File_Parser.hpp
++++ b/ext/bifrost/src/File_Parser.hpp
+@@ -13,7 +13,7 @@
#ifndef KSEQ_INIT_READY
#define KSEQ_INIT_READY
@@ -33,8 +33,8 @@ Subject: Use kseq.h from htslib, not the bundled version
KSEQ_INIT(gzFile, gzread);
#endif
---- kallisto.orig/src/common.h
-+++ kallisto/src/common.h
+--- a/src/common.h
++++ b/src/common.h
@@ -9,7 +9,7 @@
#include <vector>
#include <iostream>
=====================================
debian/patches/series
=====================================
@@ -2,8 +2,8 @@ use_debian_packaged_htslib.patch
htslib1.3
gcc11.patch
disable-failing-bustools-test.patch
-#use_debian_packaged_bifrost.patch
-fix_bifrost_defines.patch
+#use_debian_packaged_bifrost.patch - not usable since the fork is of 1.0.6.4 while Debian has packaged 1.3.5 which is incompatible and requires heavy upstream changes
+# see commit 5c69de56085ebbcfd3fcace0325cf592d2099abe
bifrost_typo.patch
std_gnu17.patch
cmake4.patch
=====================================
debian/patches/std_gnu17.patch
=====================================
@@ -1,23 +1,20 @@
Author: Andreas Tille <tille at debian.org>
-Last-Update: 2025-10-21
+Last-Update: 2026-10-20
Description: Try hard to get bifrost build with recent gcc
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
-@@ -54,6 +54,7 @@ else()
- check_cxx_compiler_flag(-std=c++17 COMPILER_SUPPORTS_CXX17)
- if(COMPILER_SUPPORTS_CXX17)
- set(CMAKE_CXX_STANDARD 17)
-+ set(CMAKE_CXX_EXTENSIONS ON)
- else()
- set(CMAKE_CXX_STANDARD 11)
+@@ -66,12 +66,12 @@ else()
endif()
-@@ -63,7 +64,8 @@ endif()
+
+ set(CMAKE_CXX_STANDARD_REQUIRED ON)
+- set(CMAKE_CXX_EXTENSIONS OFF)
++ set(CMAKE_CXX_EXTENSIONS ON)
+ endif()
#add_compile_options(-Wall -Wno-unused-function)
- add_compile_options(-Wno-subobject-linkage) # Suppress bifrost warning
+ add_compile_options(-Wno-deprecated-declarations -Wno-subobject-linkage) # Suppress bifrost warning
-set(PROJECT_BIFROST_CMAKE_CXX_FLAGS "-Wno-subobject-linkage -Wno-return-type") # Suppress bifrost warning
-+add_compile_options(-Wno-deprecated-declarations) # More relaxation for bifrost
+set(PROJECT_BIFROST_CMAKE_CXX_FLAGS "-Wno-subobject-linkage -Wno-return-type -Wno-deprecated-declarations") # Suppress bifrost warning
if(LINK MATCHES static)
=====================================
debian/patches/use_debian_packaged_bifrost.patch deleted
=====================================
@@ -1,37 +0,0 @@
-Author: Andreas Tille <tille at debian.org>
-Last-Update: Fri, 05 Jan 2024 15:02:12 +0100
-Description: Use Debian packaged bifrost
-
---- kallisto.orig/src/CMakeLists.txt
-+++ kallisto/src/CMakeLists.txt
-@@ -17,7 +17,7 @@
- add_executable(kallisto main.cpp)
-
- find_package( Threads REQUIRED )
--ExternalProject_Get_Property(bifrost install_dir)
-+# ExternalProject_Get_Property(bifrost install_dir)
- if(!DEBIAN_BUILD)
- if (USE_BAM)
- target_link_libraries(kallisto kallisto_core pthread ${CMAKE_CURRENT_SOURCE_DIR}/../ext/htslib/libhts.a ${install_dir}/build/src/libbifrost.a)
-@@ -25,8 +25,8 @@
- target_link_libraries(kallisto kallisto_core pthread ${install_dir}/build/src/libbifrost.a)
- endif(USE_BAM)
- else()
--# FIXME: once bifrost is accepted this should be linked against the Debian packaged library
--target_link_libraries(kallisto kallisto_core pthread ${install_dir}/build/src/libbifrost.a)
-+include_directories(/usr/include/bifrost /usr/include/htslib)
-+target_link_libraries(kallisto kallisto_core pthread libbifrost)
- endif()
-
- if(LINK MATCHES static)
---- kallisto.orig/src/KmerIndex.cpp
-+++ kallisto/src/KmerIndex.cpp
-@@ -12,6 +12,8 @@
- #include <string>
- #include "ColoredCDBG.hpp"
-
-+typedef boomphf::mphf<Minimizer, MinimizerHash> boophf_t;
-+
- // --aa option helper functions
- // first three letters of nucleotide seq -> comma-free nuc_seq
- // the three stop codons will be translated to 'NNN'
=====================================
debian/patches/use_debian_packaged_htslib.patch
=====================================
@@ -1,10 +1,10 @@
Author: Andreas Tille <tille at debian.org>
-Last-Update: 2019-03-21
+Last-Update: 2026-10-20
Description: Adapt build system to Debian packaged libhts
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
-@@ -71,8 +71,17 @@ ELSE(LINK MATCHES shared)
+@@ -79,8 +79,17 @@ ELSE(LINK MATCHES shared)
message("shared build")
ENDIF(LINK MATCHES static)
@@ -14,7 +14,7 @@ Description: Adapt build system to Debian packaged libhts
+ PREFIX ${PROJECT_SOURCE_DIR}/ext/bifrost
+ SOURCE_DIR ${PROJECT_SOURCE_DIR}/ext/bifrost
+ BUILD_IN_SOURCE 1
-+ CONFIGURE_COMMAND mkdir -p build && cd build && cmake .. -DCMAKE_INSTALL_PREFIX=${PREFIX} -DCMAKE_CXX_FLAGS=${PROJECT_BIFROST_CMAKE_CXX_FLAGS}
++ CONFIGURE_COMMAND mkdir -p build && cd build && cmake .. -DMAX_KMER_SIZE=${MAX_KMER_SIZE} -DCMAKE_INSTALL_PREFIX=${PREFIX} -DCMAKE_CXX_FLAGS=${PROJECT_BIFROST_CMAKE_CXX_FLAGS}
+ BUILD_COMMAND cd build && make
+ INSTALL_COMMAND ""
+)
@@ -23,11 +23,11 @@ Description: Adapt build system to Debian packaged libhts
if (USE_BAM)
ExternalProject_Add(htslib
PREFIX ${PROJECT_SOURCE_DIR}/ext/htslib
-@@ -107,15 +116,24 @@ if (ZLIBNG)
+@@ -115,8 +124,18 @@ if (ZLIBNG)
endif(ZLIBNG)
if (USE_BAM)
--include_directories(${htslib_PREFIX}/src/htslib)
+- include_directories(${htslib_PREFIX}/src/htslib)
+ if(DEBIAN_BUILD)
+ # For Debian builds, use system htslib
+ find_package(PkgConfig REQUIRED)
@@ -40,16 +40,9 @@ Description: Adapt build system to Debian packaged libhts
+ endif()
endif(USE_BAM)
+endif()
- include_directories(${EXT_PROJECTS_DIR}/bifrost/build/src)
-
- ExternalProject_Get_Property(bifrost install_dir)
- include_directories(${install_dir}/src)
+ include_directories(${EXT_PROJECTS_DIR}/bifrost/build/src)
--
- # add_compile_options(-Wdeprecated-register)
-
- add_subdirectory(src)
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -3,9 +3,11 @@ file(GLOB headers *.h *.hpp)
@@ -66,7 +59,7 @@ Description: Adapt build system to Debian packaged libhts
set(MAX_KMER_SIZE "32")
@@ -18,13 +20,28 @@ target_include_directories(kallisto_core
- add_executable(kallisto main.cpp)
+ add_executable(kallisto main.cpp ${sources} ${headers})
+if (DEBIAN_BUILD)
+ if(USE_BAM)
View it on GitLab: https://salsa.debian.org/med-team/kallisto/-/compare/ff9a764bd70c316b5f0c46167186b63e56c611b5...b3d7e4739e3e16f4859c44803be0cf86c7f3202d
--
View it on GitLab: https://salsa.debian.org/med-team/kallisto/-/compare/ff9a764bd70c316b5f0c46167186b63e56c611b5...b3d7e4739e3e16f4859c44803be0cf86c7f3202d
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/20261020/90feefaa/attachment-0001.htm>
More information about the debian-med-commit
mailing list