aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRicardo Wurmus <rekado@elephly.net>2022-09-30 22:43:21 +0200
committerRicardo Wurmus <rekado@elephly.net>2022-09-30 22:43:21 +0200
commit1266b9ed111bff7b860cba6921e4540bc1f61c9e (patch)
tree0b4aa782713fb41b12297ff1ae395fdf5ea47448
parent729ce5fcf8a8ea412a91fa2ff01c0ad07c355424 (diff)
downloadguix-1266b9ed111bff7b860cba6921e4540bc1f61c9e.tar
guix-1266b9ed111bff7b860cba6921e4540bc1f61c9e.tar.gz
gnu: salmon: Update to 1.9.0.
* gnu/packages/bioinformatics.scm (salmon): Update to 1.9.0. [arguments]: Remove -DTBB_LIBRARIES from configure flags; copy pufferfish itlib headers. [inputs]: Use new label-less list; move pufferfish origin from here... [native-inputs]: ...to here.
-rw-r--r--gnu/packages/bioinformatics.scm198
1 files changed, 100 insertions, 98 deletions
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index c5b47eedf5..249b956c88 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -10296,7 +10296,7 @@ The following file formats are supported:
(define-public salmon
(package
(name "salmon")
- (version "1.6.0")
+ (version "1.9.0")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -10305,104 +10305,112 @@ The following file formats are supported:
(file-name (git-file-name name version))
(sha256
(base32
- "1wb5wl0rc77svbwq6zvak5h7pf9acw3di0vz5i3gqyhg5l6qd736"))
+ "1370ry3jpj05gplzyny44mqg77a29a6gp8ijmjz135d2igf956r8"))
(modules '((guix build utils)))
(snippet
;; Delete bundled headers for eigen3.
'(delete-file-recursively "include/eigen3/"))))
(build-system cmake-build-system)
(arguments
- `(#:configure-flags
- ,#~(list (string-append "-Dlibgff_DIR="
- #$(this-package-input "libgff") "/lib")
- "-DCMAKE_CXX_FLAGS=\"-DHAVE_NUMERIC_LIMITS128=1\""
- "-Dlibgff_FOUND=TRUE"
- "-DTBB_FOUND=TRUE"
- #$(string-append "-DTBB_VERSION=" (package-version tbb-2020))
- "-DTBB_LIBRARIES=tbb -ltbbmalloc"
- "-DFETCHED_PUFFERFISH=TRUE"
- "-DUSE_SHARED_LIBS=TRUE")
+ (list
+ #:configure-flags
+ #~(list (string-append "-Dlibgff_DIR="
+ #$(this-package-input "libgff") "/lib")
+ "-DCMAKE_CXX_FLAGS=\"-DHAVE_NUMERIC_LIMITS128=1\""
+ "-Dlibgff_FOUND=TRUE"
+ "-DTBB_FOUND=TRUE"
+ #$(string-append "-DTBB_VERSION=" (package-version tbb))
+ "-DFETCHED_PUFFERFISH=TRUE"
+ "-DUSE_SHARED_LIBS=TRUE")
#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'prepare-pufferfish
- (lambda* (#:key inputs #:allow-other-keys)
- (copy-recursively (assoc-ref inputs "pufferfish")
- "external/pufferfish")
- ;; This test isn't working correctly, so compilation aborts.
- (substitute* "external/pufferfish/include/string_view.hpp"
- (("#if __has_include\\(<string_view>\\)")
- "#if 0"))
- (let ((headers "external/install/pufferfish/include/pufferfish")
- (source "external/install/src/pufferfish"))
- (mkdir-p headers)
- (mkdir-p source)
- (for-each (lambda (file)
- (install-file (string-append "external/pufferfish/include/" file)
- headers))
- (list "ProgOpts.hpp" "BooPHF.hpp" "SpinLock.hpp"
- "Kmer.hpp" "CanonicalKmer.hpp" "string_view.hpp"
- "CanonicalKmerIterator.hpp"
- "PufferfishBaseIndex.hpp"
- "PufferfishIndex.hpp"
- "PufferfishSparseIndex.hpp"
- "PufferfishLossyIndex.hpp"
- "PufferfishTypes.hpp"
- "rank9b.hpp" "rank9sel.hpp" "macros.hpp"
- "select.hpp" "Util.hpp"
- "PairedAlignmentFormatter.hpp"
- "SelectiveAlignmentUtils.hpp"
- "PuffAligner.hpp" "MemCollector.hpp"
- "MemChainer.hpp" "CommonTypes.hpp"
- "SAMWriter.hpp" "PufferfishConfig.hpp"
- "BulkChunk.hpp" "BinWriter.hpp"))
- (for-each (lambda (dir)
- (copy-recursively
- (string-append "external/pufferfish/include/" dir)
- (string-append headers "/" dir)))
- (list "libdivide"
- "ksw2pp"
- "compact_vector"
- "metro"
- "chobo"
- "sparsepp"
- "simde"
- "tsl"))
- (copy-recursively
- (string-append "external/pufferfish/src/metro/")
- (string-append source "/metro"))
- (install-file
- (string-append "external/pufferfish/src/rank9b.cpp")
- source)
-
- ;; Do not complain about not having built libtbb
- (substitute* "external/pufferfish/external/twopaco/CMakeLists.txt"
- (("add_dependencies.*") "")))))
- (add-after 'unpack 'do-not-phone-home
- (lambda _
- (substitute* "src/Salmon.cpp"
- (("getVersionMessage\\(\\)") "\"\""))))
- (add-after 'unpack 'use-system-libraries
- (lambda* (#:key inputs #:allow-other-keys)
- ;; Ensure that all headers can be found
- (setenv "CPLUS_INCLUDE_PATH"
- (string-append (or (getenv "CPLUS_INCLUDE_PATH") "")
- ":"
- (getcwd) "/external/install/pufferfish/include:"
- (assoc-ref inputs "eigen")
- "/include/eigen3"))))
- (add-after 'unpack 'fix-error-message-in-tests
- (lambda _
- (substitute* "cmake/TestSalmonQuasi.cmake"
- (("SALMON_QUASI_INDEX_COMMAND")
- "SALMON_QUASI_INDEX_CMD")))))))
+ '(modify-phases %standard-phases
+ (add-after 'unpack 'prepare-pufferfish
+ (lambda* (#:key inputs #:allow-other-keys)
+ (copy-recursively (assoc-ref inputs "pufferfish")
+ "external/pufferfish")
+ ;; This test isn't working correctly, so compilation aborts.
+ (substitute* "external/pufferfish/include/string_view.hpp"
+ (("#if __has_include\\(<string_view>\\)")
+ "#if 0"))
+ (let ((headers "external/install/pufferfish/include/pufferfish")
+ (source "external/install/src/pufferfish"))
+ (mkdir-p headers)
+ (mkdir-p source)
+ (for-each (lambda (file)
+ (install-file (string-append "external/pufferfish/include/" file)
+ headers))
+ (list "ProgOpts.hpp" "BooPHF.hpp" "SpinLock.hpp"
+ "Kmer.hpp" "CanonicalKmer.hpp" "string_view.hpp"
+ "CanonicalKmerIterator.hpp"
+ "PufferfishBaseIndex.hpp"
+ "PufferfishIndex.hpp"
+ "PufferfishSparseIndex.hpp"
+ "PufferfishLossyIndex.hpp"
+ "PufferfishTypes.hpp"
+ "rank9b.hpp" "rank9sel.hpp" "macros.hpp"
+ "select.hpp" "Util.hpp"
+ "PairedAlignmentFormatter.hpp"
+ "SelectiveAlignmentUtils.hpp"
+ "PuffAligner.hpp" "MemCollector.hpp"
+ "MemChainer.hpp" "CommonTypes.hpp"
+ "SAMWriter.hpp" "PufferfishConfig.hpp"
+ "BulkChunk.hpp" "BinWriter.hpp"))
+
+ (for-each (lambda (dir)
+ (copy-recursively
+ (string-append "external/pufferfish/include/" dir)
+ (string-append headers "/" dir)))
+ (list "libdivide"
+ "ksw2pp"
+ "compact_vector"
+ "itlib"
+ "metro"
+ "chobo"
+ "sparsepp"
+ "simde"
+ "tsl"))
+ (copy-recursively
+ (string-append "external/pufferfish/src/metro/")
+ (string-append source "/metro"))
+ (install-file
+ (string-append "external/pufferfish/src/rank9b.cpp")
+ source)
+
+ ;; Do not complain about not having built libtbb
+ (substitute* "external/pufferfish/external/twopaco/CMakeLists.txt"
+ (("add_dependencies.*") "")))))
+ (add-after 'unpack 'do-not-phone-home
+ (lambda _
+ (substitute* "src/Salmon.cpp"
+ (("getVersionMessage\\(\\)") "\"\""))))
+ (add-after 'unpack 'use-system-libraries
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Ensure that all headers can be found
+ (setenv "CPLUS_INCLUDE_PATH"
+ (string-append (or (getenv "CPLUS_INCLUDE_PATH") "")
+ ":"
+ (getcwd) "/external/install/pufferfish/include:"
+ (assoc-ref inputs "eigen")
+ "/include/eigen3"))))
+ (add-after 'unpack 'fix-error-message-in-tests
+ (lambda _
+ (substitute* "cmake/TestSalmonQuasi.cmake"
+ (("SALMON_QUASI_INDEX_COMMAND")
+ "SALMON_QUASI_INDEX_CMD")))))))
(inputs
- `(("boost" ,boost)
- ("bzip2" ,bzip2)
- ("cereal" ,cereal-1.3.0)
- ("curl" ,curl)
- ("eigen" ,eigen)
- ("jemalloc" ,jemalloc)
- ("libgff" ,libgff)
+ (list boost
+ bzip2
+ cereal-1.3.0
+ curl
+ eigen
+ jemalloc
+ libgff
+ tbb
+ libstadenio-for-salmon
+ xz
+ zlib))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)
("pufferfish" ,(origin
(method git-fetch)
(uri (git-reference
@@ -10411,13 +10419,7 @@ The following file formats are supported:
(file-name (git-file-name "pufferfish" version))
(sha256
(base32
- "0jakgpbanl6cs23x3g26iab54p7zylcf9v8vc32ps57smp8wql52"))))
- ("tbb" ,tbb-2020)
- ("libstadenio-for-salmon" ,libstadenio-for-salmon)
- ("xz" ,xz)
- ("zlib" ,zlib)))
- (native-inputs
- (list pkg-config))
+ "048a006mc2d0h78ym58mv67hl1pj480ilc5ifq0rlzfdyyfs1b8i"))))))
(home-page "https://github.com/COMBINE-lab/salmon")
(synopsis "Quantification from RNA-seq reads using lightweight alignments")
(description "Salmon is a program to produce highly-accurate,