summary refs log tree commit diff
diff options
context:
space:
mode:
authorChristopher Baines <mail@cbaines.net>2018-11-07 19:39:29 +0000
committerChristopher Baines <mail@cbaines.net>2018-12-05 20:29:12 +0000
commit9718265eecf8e463405954886be71c4dbd52358a (patch)
tree75d27c9274ca58d4689b4d94254b5e0c2111ee19
parent07315efc657d668527bb62780206f8abd40682fa (diff)
downloadguix-9718265eecf8e463405954886be71c4dbd52358a.tar.gz
gnu: mash: Use C++ 14.
I'm looking to upgrade capnproto, and mash fails to build with 0.7. Therefore,
tweak the compilation to allow it to build with 0.7. The package also builds
with the current version of capnproto. I got the idea of changing the c++
version from here [1].

1: https://github.com/marbl/Mash/issues/98

* gnu/packages/bioinformatics.scm (mash)[arguments]: Add new use-c++14 phase.
-rw-r--r--gnu/packages/bioinformatics.scm8
1 files changed, 8 insertions, 0 deletions
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index 7c0429a600..e17c53675c 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -4024,6 +4024,14 @@ sequences).")
                             "src/mash/CommandScreen.cpp")
                (("^#include \"kseq\\.h\"")
                 "#include \"htslib/kseq.h\""))
+             #t))
+         (add-after 'fix-includes 'use-c++14
+           (lambda _
+             ;; capnproto 0.7 requires c++14 to build
+             (substitute* "configure.ac"
+               (("c\\+\\+11") "c++14"))
+             (substitute* "Makefile.in"
+               (("c\\+\\+11") "c++14"))
              #t)))))
     (native-inputs
      `(("autoconf" ,autoconf)