From ed093776afcb33d1601e9390e0458fd0f782fc99 Mon Sep 17 00:00:00 2001 From: pjotrp Date: Wed, 27 Dec 2017 10:24:27 +0000 Subject: gemma: provide generic package --- gn/packages/gemma.scm | 60 ++++++++++++++------------------------------- gn/packages/genenetwork.scm | 4 +-- 2 files changed, 21 insertions(+), 43 deletions(-) diff --git a/gn/packages/gemma.scm b/gn/packages/gemma.scm index 803d592..fb9e2c7 100644 --- a/gn/packages/gemma.scm +++ b/gn/packages/gemma.scm @@ -139,7 +139,7 @@ (license license:bsd-3)))) -(define-public gsl1 ; supporting older GSL tests +(define-public gsl1 ; supporting older GSL tests - no longer really used (package (name "gsl1") (version "1.16") @@ -163,10 +163,10 @@ numbers.") (license license:gpl3+))) -(define-public gemma-git-gn2 ; guix candidate +(define-public gemma-gn2 ; guix candidate - generic openblas version (let ((commit "c760aa09c2aa91ca6270b5f898c27e9aed376a73")) (package - (name "gemma-git-gn2") + (name "gemma-gn2") (version (string-append "0.97-" (string-take commit 7))) (source (origin (method git-fetch) @@ -182,8 +182,8 @@ numbers.") ("gsl" ,gsl) ("eigen" ,eigen) ("shunit2" ,shunit2) - ; ("lapack" ,lapack) - included in openblas-haswell - ("openblas" ,openblas-haswell) + ("lapack" ,lapack) + ("openblas" ,openblas) ("zlib" ,zlib) )) (native-inputs ; for running tests @@ -198,6 +198,7 @@ numbers.") (string-append "EIGEN_INCLUDE_PATH=" (assoc-ref %build-inputs "eigen") "/include/eigen3/") + "WITH_LAPACK=1" ) #:phases ; "/include/eigen3/" @@ -221,42 +222,19 @@ mixed model and some of its close relatives for genome-wide association studies (GWAS).") (license license:gpl3)))) -(define-public gemma-gn2 +(define-public gemma-gn2-haswell ; openblas optimized for haswell (package - (name "gemma") - (version "0.96") - (source (origin - (method url-fetch) - (uri (string-append "https://github.com/xiangzhou/GEMMA/archive/v" - version ".tar.gz")) - (sha256 - (base32 - "055ynn16gd12pf78n4vr2a9jlwsbwzajpdnf2y2yilg1krfff222")))) - (inputs `(("gsl" ,gsl) - ("lapack" ,lapack) - ("zlib" ,zlib))) - (build-system gnu-build-system) - (arguments - `(#:make-flags '("FORCE_DYNAMIC=1") - #:phases - (modify-phases %standard-phases - (delete 'configure) - (add-before 'build 'bin-mkdir - (lambda _ - (mkdir-p "bin") - )) - (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - (install-file "bin/gemma" (string-append out "/bin")))))) - #:tests? #f)) ; no tests included - (home-page "") - (synopsis "Tool for genome-wide efficient mixed model association") - (description "GEMMA is software implementing the Genome-wide -Efficient Mixed Model Association algorithm for a standard linear -mixed model and some of its close relatives for genome-wide -association studies (GWAS).") - (license license:gpl3))) + (inherit gemma-gn2) + (name "gemma-gn2-haswell") + (inputs `( + ("gfortran:lib" ,gfortran "lib") + ("gsl" ,gsl) + ("eigen" ,eigen) + ("shunit2" ,shunit2) + ("openblas" ,openblas-haswell) + ("zlib" ,zlib) + )) + )) (define-public gemma-wrapper (package @@ -270,7 +248,7 @@ association studies (GWAS).") (base32 "08apz0imsxzwhzv2iicq2g5zx1iq1vlfrhk7khsfaydshbq5g741")))) (build-system ruby-build-system) - (inputs `(("gemma-git-gn2" ,gemma-git-gn2))) + (inputs `(("gemma-gn2" ,gemma-gn2-haswell))) (arguments `(#:tests? #f #:phases diff --git a/gn/packages/genenetwork.scm b/gn/packages/genenetwork.scm index 52d2dce..479f694 100644 --- a/gn/packages/genenetwork.scm +++ b/gn/packages/genenetwork.scm @@ -192,7 +192,7 @@ location of a putative QTL.") ("r-wgcna" ,r-wgcna) ("redis" ,redis) ("mysql" ,mysql) - ("gemma-git-gn2" ,gemma-git-gn2) + ("gemma" ,gemma-gn2-haswell) ("gemma-wrapper" ,gemma-wrapper) ("genenetwork2-files-small" ,genenetwork2-files-small) ("plink-ng-gn" ,plink-ng-gn) @@ -252,7 +252,7 @@ location of a putative QTL.") (datafiles (string-append (assoc-ref inputs "genenetwork2-files-small") "/share/genenetwork2" )) (pylmmcmd (string-append (assoc-ref inputs "pylmm-gn2") "/bin/pylmm_redis")) (plink2cmd (string-append (assoc-ref inputs "plink-ng-gn") "/bin/plink2")) - (gemmacmd (string-append (assoc-ref inputs "gemma-git-gn2") "/bin/gemma")) + (gemmacmd (string-append (assoc-ref inputs "gemma") "/bin/gemma")) ) (substitute* '("etc/default_settings.py") -- cgit v1.2.3