From 1108a920bd09a8a81e5953ede65f3123bc35ad92 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 5 Apr 2017 17:57:23 +0200 Subject: [PATCH] gnu: sra-tools: Fix glibc naming conflict. * gnu/packages/bioinformatics.scm (sra-tools)[arguments]: Add build phase "patch-away-glibc-conflict" to fix a definition conflict with glibc 2.25. --- gnu/packages/bioinformatics.scm | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 6a04e69be3..c8219cc2cc 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -4832,7 +4832,19 @@ sequence itself can be retrieved from these databases.") (string-append "--with-ngs-sdk-prefix=" (assoc-ref inputs "ngs-sdk")) (string-append "--with-hdf5-prefix=" - (assoc-ref inputs "hdf5"))))))))) + (assoc-ref inputs "hdf5")))))) + ;; This version of sra-tools fails to build with glibc because of a + ;; naming conflict. glibc-2.25/include/bits/mathcalls.h already + ;; contains a definition of "canonicalize", so we rename it. + ;; + ;; See upstream bug report: + ;; https://github.com/ncbi/sra-tools/issues/67 + (add-after 'unpack 'patch-away-glibc-conflict + (lambda _ + (substitute* "tools/bam-loader/bam.c" + (("canonicalize\\(" line) + (string-append "sra_tools_" line))) + #t))))) (native-inputs `(("perl" ,perl))) (inputs `(("ngs-sdk" ,ngs-sdk)