gnu: freebayes: Don't include vcflib sources.
* gnu/packages/bioinformatics.scm (freebayes)[native-inputs]: Remove vcflib-source, intervaltree-source. Move vcflib ... [inputs]: ... to here. [arguments]: Adjust 'patch-source and 'unpack-submodule-sources for changes in vendored code. * gnu/packages/patches/freebayes-devendor-deps.patch: Update patch.
This commit is contained in:
parent
1bbfe1789d
commit
99043adf46
@ -15138,6 +15138,7 @@ manipulations on VCF files.")
|
|||||||
("htslib" ,htslib)
|
("htslib" ,htslib)
|
||||||
("smithwaterman" ,smithwaterman)
|
("smithwaterman" ,smithwaterman)
|
||||||
("tabixpp" ,tabixpp)
|
("tabixpp" ,tabixpp)
|
||||||
|
("vcflib" ,vcflib)
|
||||||
("zlib" ,zlib)))
|
("zlib" ,zlib)))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("bash-tap" ,bash-tap)
|
`(("bash-tap" ,bash-tap)
|
||||||
@ -15148,11 +15149,6 @@ manipulations on VCF files.")
|
|||||||
("pkg-config" ,pkg-config)
|
("pkg-config" ,pkg-config)
|
||||||
("samtools" ,samtools)
|
("samtools" ,samtools)
|
||||||
("simde" ,simde)
|
("simde" ,simde)
|
||||||
;; We need some binaries from vcflib, but we also need to link against a
|
|
||||||
;; subset of the library. Vendor the parts we need until we have a shared library.
|
|
||||||
("vcflib" ,vcflib)
|
|
||||||
("vcflib-src" ,(package-source vcflib))
|
|
||||||
("intervaltree-src" ,(package-source intervaltree))
|
|
||||||
;; This submodule is needed to run the tests.
|
;; This submodule is needed to run the tests.
|
||||||
("test-simple-bash-src"
|
("test-simple-bash-src"
|
||||||
,(origin
|
,(origin
|
||||||
@ -15179,25 +15175,17 @@ manipulations on VCF files.")
|
|||||||
(substitute* "meson.build"
|
(substitute* "meson.build"
|
||||||
;; Some inputs aren't actually needed.
|
;; Some inputs aren't actually needed.
|
||||||
((".*bamtools/src.*") "")
|
((".*bamtools/src.*") "")
|
||||||
((".*multichoose.*") "")
|
((".*multichoose.*") ""))
|
||||||
(("'vcflib/filevercmp'") ""))
|
(substitute* '("src/BedReader.cpp"
|
||||||
|
"src/BedReader.h")
|
||||||
|
(("../intervaltree/IntervalTree.h") "IntervalTree.h"))
|
||||||
#t)))
|
#t)))
|
||||||
(add-after 'unpack 'unpack-submodule-sources
|
(add-after 'unpack 'unpack-submodule-sources
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
(let ((unpack (lambda (source target)
|
(mkdir-p "test/test-simple-bash")
|
||||||
(unless (directory-exists? target)
|
(copy-recursively (assoc-ref inputs "test-simple-bash-src")
|
||||||
(mkdir-p target))
|
"test/test-simple-bash")
|
||||||
(with-directory-excursion target
|
#t))
|
||||||
(if (file-is-directory? (assoc-ref inputs source))
|
|
||||||
(copy-recursively (assoc-ref inputs source) ".")
|
|
||||||
(invoke "tar" "xvf"
|
|
||||||
(assoc-ref inputs source)
|
|
||||||
"--strip-components=1"))))))
|
|
||||||
(and
|
|
||||||
(unpack "vcflib-src" "vcflib")
|
|
||||||
(unpack "intervaltree-src" "vcflib/intervaltree")
|
|
||||||
(unpack "test-simple-bash-src" "test/test-simple-bash"))
|
|
||||||
#t)))
|
|
||||||
;; The slow tests take longer than the specified timeout.
|
;; The slow tests take longer than the specified timeout.
|
||||||
,@(if (any (cute string=? <> (%current-system))
|
,@(if (any (cute string=? <> (%current-system))
|
||||||
'("armhf-linux" "aarch64-linux"))
|
'("armhf-linux" "aarch64-linux"))
|
||||||
|
@ -1,19 +1,19 @@
|
|||||||
This patch is original to Guix, ongoing work to upstream bits as possible.
|
This patch is original to Guix, ongoing work to upstream bits as possible.
|
||||||
|
|
||||||
From 50833daba0b1dbe2ed364b1e980b67a09a312789 Mon Sep 17 00:00:00 2001
|
From 9acc56db5e7469f5976be38b52ba4993de98ee38 Mon Sep 17 00:00:00 2001
|
||||||
From: Efraim Flashner <efraim@flashner.co.il>
|
From: Efraim Flashner <efraim@flashner.co.il>
|
||||||
Date: Sun, 17 Jan 2021 13:27:17 +0200
|
Date: Sun, 17 Jan 2021 13:27:17 +0200
|
||||||
Subject: [PATCH] devendor-dependants
|
Subject: [PATCH] devendor-dependants
|
||||||
|
|
||||||
---
|
---
|
||||||
meson.build | 60 +++++++++++++++++++++++++++++++++++++++++------------
|
meson.build | 84 +++++++++++++++++++++++++++++++++++++++++------------
|
||||||
1 file changed, 47 insertions(+), 13 deletions(-)
|
1 file changed, 66 insertions(+), 18 deletions(-)
|
||||||
|
|
||||||
diff --git a/meson.build b/meson.build
|
diff --git a/meson.build b/meson.build
|
||||||
index f6bf242..7a3805e 100644
|
index f6bf242..bded4af 100644
|
||||||
--- a/meson.build
|
--- a/meson.build
|
||||||
+++ b/meson.build
|
+++ b/meson.build
|
||||||
@@ -9,8 +9,12 @@ project('freebayes', ['cpp', 'c'],
|
@@ -9,8 +9,13 @@ project('freebayes', ['cpp', 'c'],
|
||||||
|
|
||||||
zlib_dep = dependency('zlib')
|
zlib_dep = dependency('zlib')
|
||||||
lzma_dep = dependency('liblzma')
|
lzma_dep = dependency('liblzma')
|
||||||
@ -23,10 +23,11 @@ index f6bf242..7a3805e 100644
|
|||||||
+tabixpp_dep = dependency('tabixpp', required : false)
|
+tabixpp_dep = dependency('tabixpp', required : false)
|
||||||
+fastahack_dep = dependency('fastahack', required : false)
|
+fastahack_dep = dependency('fastahack', required : false)
|
||||||
+smithwaterman_dep = dependency('smithwaterman', required : false)
|
+smithwaterman_dep = dependency('smithwaterman', required : false)
|
||||||
|
+vcflib_dep = dependency('libvcflib', required: false)
|
||||||
thread_dep = dependency('threads')
|
thread_dep = dependency('threads')
|
||||||
|
|
||||||
if htslib_dep.found()
|
if htslib_dep.found()
|
||||||
@@ -59,6 +63,41 @@ else
|
@@ -59,6 +64,56 @@ else
|
||||||
]
|
]
|
||||||
endif
|
endif
|
||||||
|
|
||||||
@ -42,11 +43,26 @@ index f6bf242..7a3805e 100644
|
|||||||
+ ]
|
+ ]
|
||||||
+endif
|
+endif
|
||||||
+
|
+
|
||||||
|
+if vcflib_dep.found()
|
||||||
|
+ vcflib_includes = ''
|
||||||
|
+ vcflib_src = []
|
||||||
|
+else
|
||||||
|
+ vcflib_includes = [
|
||||||
|
+ 'vcflib/src',
|
||||||
|
+ 'vcflib/multichoose',
|
||||||
|
+ 'vcflib/filevercmp',
|
||||||
|
+ ]
|
||||||
|
+ vcflib_src = [
|
||||||
|
+ 'vcflib/src/Variant.cpp',
|
||||||
|
+ ]
|
||||||
|
+endif
|
||||||
|
+
|
||||||
+if fastahack_dep.found()
|
+if fastahack_dep.found()
|
||||||
+ fastahack_src = []
|
+ fastahack_src = []
|
||||||
+else
|
+else
|
||||||
+ fastahack_src = [
|
+ fastahack_src = [
|
||||||
+ 'vcflib/fastahack/Fasta.cpp',
|
+ 'vcflib/fastahack/Fasta.cpp',
|
||||||
|
+ 'vcflib/src/split.cpp',
|
||||||
+ ]
|
+ ]
|
||||||
+endif
|
+endif
|
||||||
+
|
+
|
||||||
@ -68,17 +84,18 @@ index f6bf242..7a3805e 100644
|
|||||||
|
|
||||||
|
|
||||||
#
|
#
|
||||||
@@ -105,22 +144,17 @@ seqlib_src = [
|
@@ -105,23 +160,18 @@ seqlib_src = [
|
||||||
]
|
]
|
||||||
|
|
||||||
vcflib_src = [
|
vcflib_src = [
|
||||||
- 'vcflib/tabixpp/tabix.cpp',
|
- 'vcflib/tabixpp/tabix.cpp',
|
||||||
'vcflib/src/Variant.cpp',
|
- 'vcflib/src/Variant.cpp',
|
||||||
- 'vcflib/smithwaterman/SmithWatermanGotoh.cpp',
|
- 'vcflib/smithwaterman/SmithWatermanGotoh.cpp',
|
||||||
- 'vcflib/smithwaterman/disorder.cpp',
|
- 'vcflib/smithwaterman/disorder.cpp',
|
||||||
- 'vcflib/smithwaterman/Repeats.cpp',
|
- 'vcflib/smithwaterman/Repeats.cpp',
|
||||||
- 'vcflib/smithwaterman/LeftAlign.cpp',
|
- 'vcflib/smithwaterman/LeftAlign.cpp',
|
||||||
- 'vcflib/smithwaterman/IndelAllele.cpp',
|
- 'vcflib/smithwaterman/IndelAllele.cpp',
|
||||||
|
+ vcflib_src,
|
||||||
+ tabixpp_src,
|
+ tabixpp_src,
|
||||||
+ smithwaterman_src,
|
+ smithwaterman_src,
|
||||||
]
|
]
|
||||||
@ -90,37 +107,43 @@ index f6bf242..7a3805e 100644
|
|||||||
- 'vcflib/fastahack/Fasta.cpp',
|
- 'vcflib/fastahack/Fasta.cpp',
|
||||||
- 'vcflib/smithwaterman/LeftAlign.cpp',
|
- 'vcflib/smithwaterman/LeftAlign.cpp',
|
||||||
- 'vcflib/smithwaterman/IndelAllele.cpp',
|
- 'vcflib/smithwaterman/IndelAllele.cpp',
|
||||||
|
- 'vcflib/src/split.cpp',
|
||||||
+ fastahack_src,
|
+ fastahack_src,
|
||||||
+ smithwaterman_src,
|
+ smithwaterman_src,
|
||||||
'vcflib/src/split.cpp',
|
+ vcflib_src,
|
||||||
'src/LeftAlign.cpp',
|
'src/LeftAlign.cpp',
|
||||||
]
|
]
|
||||||
@@ -135,8 +169,8 @@ incdir = include_directories(
|
|
||||||
|
@@ -134,11 +184,9 @@ incdir = include_directories(
|
||||||
|
'ttmath',
|
||||||
'contrib',
|
'contrib',
|
||||||
'contrib/SeqLib',
|
'contrib/SeqLib',
|
||||||
'vcflib/src',
|
- 'vcflib/src',
|
||||||
- 'vcflib/tabixpp',
|
- 'vcflib/tabixpp',
|
||||||
- 'vcflib/smithwaterman',
|
- 'vcflib/smithwaterman',
|
||||||
|
- 'vcflib/multichoose',
|
||||||
|
- 'vcflib/filevercmp')
|
||||||
+ tabixpp_includes,
|
+ tabixpp_includes,
|
||||||
+ smithwaterman_includes,
|
+ smithwaterman_includes,
|
||||||
'vcflib/multichoose',
|
+ vcflib_includes)
|
||||||
'vcflib/filevercmp')
|
|
||||||
|
|
||||||
@@ -152,7 +186,7 @@ executable('freebayes',
|
c_args = ['-fpermissive','-w']
|
||||||
|
cpp_args = ['-fpermissive','-w','-Wc++14-compat']
|
||||||
|
@@ -152,7 +200,7 @@ executable('freebayes',
|
||||||
include_directories : incdir,
|
include_directories : incdir,
|
||||||
cpp_args : cpp_args,
|
cpp_args : cpp_args,
|
||||||
c_args : c_args,
|
c_args : c_args,
|
||||||
- dependencies: [zlib_dep, lzma_dep, htslib_dep, thread_dep],
|
- dependencies: [zlib_dep, lzma_dep, htslib_dep, thread_dep],
|
||||||
+ dependencies: [zlib_dep, lzma_dep, simde_dep, htslib_dep, tabixpp_dep, smithwaterman_dep, thread_dep],
|
+ dependencies: [zlib_dep, lzma_dep, simde_dep, htslib_dep, tabixpp_dep, smithwaterman_dep, vcflib_dep, thread_dep],
|
||||||
install: true
|
install: true
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -165,7 +199,7 @@ executable('bamleftalign',
|
@@ -165,7 +213,7 @@ executable('bamleftalign',
|
||||||
include_directories : incdir,
|
include_directories : incdir,
|
||||||
cpp_args : cpp_args,
|
cpp_args : cpp_args,
|
||||||
c_args : c_args,
|
c_args : c_args,
|
||||||
- dependencies: [zlib_dep, lzma_dep, htslib_dep, thread_dep],
|
- dependencies: [zlib_dep, lzma_dep, htslib_dep, thread_dep],
|
||||||
+ dependencies: [zlib_dep, lzma_dep, simde_dep, htslib_dep, tabixpp_dep, fastahack_dep, smithwaterman_dep, thread_dep],
|
+ dependencies: [zlib_dep, lzma_dep, simde_dep, htslib_dep, tabixpp_dep, fastahack_dep, smithwaterman_dep, vcflib_dep, thread_dep],
|
||||||
install: true
|
install: true
|
||||||
)
|
)
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user