summaryrefslogtreecommitdiff
path: root/gnu/packages/bioinformatics.scm
diff options
context:
space:
mode:
authorRicardo Wurmus <rekado@elephly.net>2023-05-12 21:54:01 +0200
committerRicardo Wurmus <rekado@elephly.net>2023-05-12 21:54:01 +0200
commit0e20ed322d5f0f2b8e50d31c7ec44b45be392e52 (patch)
tree3e123a26af82259e8ee883d10829e05e5265397c /gnu/packages/bioinformatics.scm
parent8ba3bf6564fb95e7bbaf0d32ebb5af7deb5ec365 (diff)
gnu: sra-tools: Do link with libxml2.
* gnu/packages/bioinformatics.scm (sra-tools)[arguments]: Use G-expression for clarity; drop trailing #T from build phases; modify 'configure phase to dynamically link with libxml2. [inputs]: Drop package labels; add libxml2.
Diffstat (limited to 'gnu/packages/bioinformatics.scm')
-rw-r--r--gnu/packages/bioinformatics.scm156
1 files changed, 79 insertions, 77 deletions
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index d1a2816466..d1de973274 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -8013,86 +8013,88 @@ unique transcripts.")
"1cr2mijkfs5sm35ffjs6861qsd1qkgnhnbavdv65zg5d655abbjf"))))
(build-system gnu-build-system)
(arguments
- `(#:parallel-build? #f ; not supported
- #:tests? #f ; no "check" target
- #:make-flags
- ,#~(list (string-append "DEFAULT_CRT="
- #$(this-package-input "ncbi-vdb")
- "/kfg/certs.kfg")
- (string-append "DEFAULT_KFG="
- #$(this-package-input "ncbi-vdb")
- "/kfg/default.kfg")
- (string-append "VDB_LIBDIR="
- #$(this-package-input "ncbi-vdb")
- #$(if (string-prefix? "x86_64"
- (or (%current-target-system)
- (%current-system)))
- "/lib64"
- "/lib32")))
+ (list
+ #:parallel-build? #f ; not supported
+ #:tests? #f ; no "check" target
+ #:make-flags
+ #~(list (string-append "DEFAULT_CRT="
+ #$(this-package-input "ncbi-vdb")
+ "/kfg/certs.kfg")
+ (string-append "DEFAULT_KFG="
+ #$(this-package-input "ncbi-vdb")
+ "/kfg/default.kfg")
+ (string-append "VDB_LIBDIR="
+ #$(this-package-input "ncbi-vdb")
+ #$(if (string-prefix? "x86_64"
+ (or (%current-target-system)
+ (%current-system)))
+ "/lib64"
+ "/lib32")))
#:phases
- (modify-phases %standard-phases
- (add-before 'configure 'set-perl-search-path
- (lambda _
- ;; Work around "dotless @INC" build failure.
- (setenv "PERL5LIB"
- (string-append (getcwd) "/setup:"
- (getenv "PERL5LIB")))
- #t))
- (replace 'configure
- (lambda* (#:key inputs outputs #:allow-other-keys)
- ;; The build system expects a directory containing the sources and
- ;; raw build output of ncbi-vdb, including files that are not
- ;; installed. Since we are building against an installed version of
- ;; ncbi-vdb, the following modifications are needed.
- (substitute* "setup/konfigure.perl"
- ;; Make the configure script look for the "ilib" directory of
- ;; "ncbi-vdb" without first checking for the existence of a
- ;; matching library in its "lib" directory.
- (("^ my \\$f = File::Spec->catdir\\(\\$libdir, \\$lib\\);")
- "my $f = File::Spec->catdir($ilibdir, $ilib);")
- ;; Look for interface libraries in ncbi-vdb's "ilib" directory.
- (("my \\$ilibdir = File::Spec->catdir\\(\\$builddir, 'ilib'\\);")
- "my $ilibdir = File::Spec->catdir($dir, 'ilib');"))
-
- ;; Dynamic linking
- (substitute* "tools/copycat/Makefile"
- (("smagic-static") "lmagic"))
- (substitute* "tools/driver-tool/utf8proc/Makefile"
- (("CC\\?=gcc") "myCC=gcc")
- (("\\(CC\\)") "(myCC)"))
-
- ;; The 'configure' script doesn't recognize things like
- ;; '--enable-fast-install'.
- (invoke "./configure"
- (string-append "--build-prefix=" (getcwd) "/build")
- (string-append "--prefix=" (assoc-ref outputs "out"))
- (string-append "--debug")
- (string-append "--with-fuse-prefix="
- (assoc-ref inputs "fuse"))
- (string-append "--with-magic-prefix="
- (assoc-ref inputs "libmagic"))
- ;; TODO: building with libxml2 fails with linker errors
- #;
- (string-append "--with-xml2-prefix="
- (assoc-ref inputs "libxml2"))
- (string-append "--with-ncbi-vdb-sources="
- (assoc-ref inputs "ncbi-vdb"))
- (string-append "--with-ncbi-vdb-build="
- (assoc-ref inputs "ncbi-vdb"))
- (string-append "--with-ngs-sdk-prefix="
- (assoc-ref inputs "ngs-sdk"))
- (string-append "--with-hdf5-prefix="
- (assoc-ref inputs "hdf5")))
- #t)))))
+ #~(modify-phases %standard-phases
+ (add-before 'configure 'set-perl-search-path
+ (lambda _
+ ;; Work around "dotless @INC" build failure.
+ (setenv "PERL5LIB"
+ (string-append (getcwd) "/setup:"
+ (getenv "PERL5LIB")))))
+ (replace 'configure
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ ;; The build system expects a directory containing the sources and
+ ;; raw build output of ncbi-vdb, including files that are not
+ ;; installed. Since we are building against an installed version of
+ ;; ncbi-vdb, the following modifications are needed.
+ (substitute* "setup/konfigure.perl"
+ ;; Make the configure script look for the "ilib" directory of
+ ;; "ncbi-vdb" without first checking for the existence of a
+ ;; matching library in its "lib" directory.
+ (("^ my \\$f = File::Spec->catdir\\(\\$libdir, \\$lib\\);")
+ "my $f = File::Spec->catdir($ilibdir, $ilib);")
+ ;; Look for interface libraries in ncbi-vdb's "ilib" directory.
+ (("my \\$ilibdir = File::Spec->catdir\\(\\$builddir, 'ilib'\\);")
+ "my $ilibdir = File::Spec->catdir($dir, 'ilib');"))
+
+ ;; Dynamic linking
+ (substitute* "tools/copycat/Makefile"
+ (("smagic-static") "lmagic"))
+ (substitute* "tools/driver-tool/utf8proc/Makefile"
+ (("CC\\?=gcc") "myCC=gcc")
+ (("\\(CC\\)") "(myCC)"))
+
+ ;; Don't link libxml2 statically
+ (substitute* "build/ld.linux.exe.sh"
+ (("grep -q 'OS_DISTRIBUTOR = Ubuntu.*") "true\n"))
+
+ ;; The 'configure' script doesn't recognize things like
+ ;; '--enable-fast-install'.
+ (invoke "./configure"
+ (string-append "--build-prefix=" (getcwd) "/build")
+ (string-append "--prefix=" #$output)
+ (string-append "--debug")
+ (string-append "--with-fuse-prefix="
+ #$(this-package-input "fuse"))
+ (string-append "--with-magic-prefix="
+ #$(this-package-input "file"))
+ (string-append "--with-xml2-prefix="
+ #$(this-package-input "libxml2"))
+ (string-append "--with-ncbi-vdb-sources="
+ #$(this-package-input "ncbi-vdb"))
+ (string-append "--with-ncbi-vdb-build="
+ #$(this-package-input "ncbi-vdb"))
+ (string-append "--with-ngs-sdk-prefix="
+ #$(this-package-input "ngs-sdk"))
+ (string-append "--with-hdf5-prefix="
+ #$(this-package-input "hdf5"))))))))
(native-inputs (list perl))
(inputs
- `(("ngs-sdk" ,ngs-sdk)
- ("ncbi-vdb" ,ncbi-vdb)
- ("libmagic" ,file)
- ("fuse" ,fuse)
- ("hdf5" ,hdf5-1.10)
- ("zlib" ,zlib)
- ("python" ,python-wrapper)))
+ (list ngs-sdk
+ ncbi-vdb
+ file
+ fuse
+ hdf5-1.10
+ libxml2
+ zlib
+ python-wrapper))
(home-page
"https://trace.ncbi.nlm.nih.gov/Traces/sra/sra.cgi?view=software")
(synopsis "Tools and libraries for reading and writing sequencing data")