Skip to content
Snippets Groups Projects
Commit cc6ed477 authored by Ricardo Wurmus's avatar Ricardo Wurmus
Browse files

gnu: Add plink.

* gnu/packages/bioinformatics.scm (plink): New variable.
* gnu/packages/patches/plink-1.07-unclobber-i.patch: New file.
parent 5c852e08
No related branches found
No related tags found
No related merge requests found
......@@ -1793,6 +1793,59 @@ (define-public ncbi-vdb
accessed/downloaded on demand across HTTP.")
(license license:public-domain)))
(define-public plink
(package
(name "plink")
(version "1.07")
(source
(origin
(method url-fetch)
(uri (string-append
"http://pngu.mgh.harvard.edu/~purcell/plink/dist/plink-"
version "-src.zip"))
(sha256
(base32 "0as8gxm4pjyc8dxmm1sl873rrd7wn5qs0l29nqfnl31x8i467xaa"))
(patches (list (search-patch "plink-1.07-unclobber-i.patch")))))
(build-system gnu-build-system)
(arguments
'(#:tests? #f ;no "check" target
#:make-flags (list (string-append "LIB_LAPACK="
(assoc-ref %build-inputs "lapack")
"/lib/liblapack.so")
"WITH_LAPACK=1"
"FORCE_DYNAMIC=1"
;; disable phoning home
"WITH_WEBCHECK=")
#:phases
(modify-phases %standard-phases
;; no "configure" script
(delete 'configure)
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let ((bin (string-append (assoc-ref outputs "out")
"/bin/")))
(mkdir-p bin)
(copy-file "plink" (string-append bin "plink"))
#t))))))
(inputs
`(("zlib" ,zlib)
("lapack" ,lapack)))
(native-inputs
`(("unzip" ,unzip)))
(home-page "http://pngu.mgh.harvard.edu/~purcell/plink/")
(synopsis "Whole genome association analysis toolset")
(description
"PLINK is a whole genome association analysis toolset, designed to
perform a range of basic, large-scale analyses in a computationally efficient
manner. The focus of PLINK is purely on analysis of genotype/phenotype data,
so there is no support for steps prior to this (e.g. study design and
planning, generating genotype or CNV calls from raw data). Through
integration with gPLINK and Haploview, there is some support for the
subsequent visualization, annotation and storage of results.")
;; Code is released under GPLv2, except for fisher.h, which is under
;; LGPLv2.1+
(license (list license:gpl2 license:lgpl2.1+))))
(define-public sra-tools
(package
(name "sra-tools")
......
GCC rightfully complains about redefined variables, as iterator declarations
appear inside loops with a loop variable of the same name.
This patch has been sent upstream.
--- a/sets.cpp 2015-06-25 11:22:08.252821681 +0200
+++ b/sets.cpp 2015-06-25 11:22:23.239187985 +0200
@@ -768,11 +768,11 @@
//////////////////////////////////////////////
// Reset original missing status
- vector<Individual*>::iterator i = PP->sample.begin();
- while ( i != PP->sample.end() )
+ vector<Individual*>::iterator it = PP->sample.begin();
+ while ( it != PP->sample.end() )
{
- (*i)->missing = (*i)->flag;
- ++i;
+ (*it)->missing = (*it)->flag;
+ ++it;
}
////////////////////////////////////////////////
--- a/elf.cpp 2009-10-10 18:00:21.000000000 +0200
+++ b/elf.cpp 2015-06-25 11:34:06.136835756 +0200
@@ -1175,10 +1175,10 @@
<< setw(8) << gcnt << " "
<< setw(8) << (double)cnt / (double)gcnt << "\n";
- map<int,int>::iterator i = chr_cnt.begin();
- while ( i != chr_cnt.end() )
+ map<int,int>::iterator it = chr_cnt.begin();
+ while ( it != chr_cnt.end() )
{
- int c = i->first;
+ int c = it->first;
int x = chr_cnt.find( c )->second;
int y = chr_gcnt.find( c )->second;
@@ -1189,7 +1189,7 @@
<< setw(8) << y << " "
<< setw(8) << (double)x / (double)y << "\n";
- ++i;
+ ++it;
}
}
--- plink-1.07-src/idhelp.cpp 2009-10-10 18:00:22.000000000 +0200
+++ plink-1.07-src/idhelp.cpp.patched 2015-06-25 11:37:39.387204086 +0200
@@ -772,12 +772,12 @@
for (int j = 0 ; j < jointField.size(); j++ )
{
set<IDField*> & jf = jointField[j];
- set<IDField*>::iterator j = jf.begin();
+ set<IDField*>::iterator jit = jf.begin();
PP->printLOG(" { ");
- while ( j != jf.end() )
+ while ( jit != jf.end() )
{
- PP->printLOG( (*j)->name + " " );
- ++j;
+ PP->printLOG( (*jit)->name + " " );
+ ++jit;
}
PP->printLOG(" }");
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment