From f075bf09bda9f7b146a600c6c6ebbbbf72c3cf13 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 27 Aug 2020 18:08:13 +0300 Subject: gnu: fastahack: Build and install shared library and headers. * gnu/packages/bioinformatics.scm (fastahack)[arguments]: Add phase to build PIE objects. Add custom phase to build dynamic library. Adjust custom 'install phase to install shared library and headers. --- gnu/packages/bioinformatics.scm | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index c188500620..092ecf147a 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -15582,10 +15582,28 @@ neural networks.") #:phases (modify-phases %standard-phases (delete 'configure) ; There is no configure phase. + (add-after 'unpack 'patch-source + (lambda _ + (substitute* "Makefile" + (("-c ") "-c -fPIC ")) + #t)) + (add-after 'build 'build-dynamic + (lambda _ + (invoke "g++" + "-shared" "-o" "libfastahack.so" + "Fasta.o" "FastaHack.o" "split.o" "disorder.o"))) (replace 'install (lambda* (#:key outputs #:allow-other-keys) - (let ((bin (string-append (assoc-ref outputs "out") "/bin"))) - (install-file "fastahack" bin)) + (let* ((out (assoc-ref outputs "out")) + (lib (string-append out "/lib")) + (bin (string-append out "/bin"))) + (mkdir-p (string-append out "/include/fastahack")) + (for-each + (lambda (file) + (install-file file (string-append out "/include/fastahack"))) + (find-files "." "\\.h$")) + (install-file "fastahack" bin) + (install-file "libfastahack.so" lib)) #t))))) (home-page "https://github.com/ekg/fastahack") (synopsis "Indexing and sequence extraction from FASTA files") -- cgit v1.2.3