From e7f636fcf1fb5d2aa800408a960fe7f4c4066636 Mon Sep 17 00:00:00 2001 From: Louis Le Nezet Date: Fri, 1 Nov 2024 00:57:33 +0100 Subject: [PATCH] Add Eagle2 --- recipes/eagle2/build.sh | 20 +++++++++++++++++++ recipes/eagle2/meta.yaml | 43 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 63 insertions(+) create mode 100644 recipes/eagle2/build.sh create mode 100644 recipes/eagle2/meta.yaml diff --git a/recipes/eagle2/build.sh b/recipes/eagle2/build.sh new file mode 100644 index 0000000000000..cb2187de81f73 --- /dev/null +++ b/recipes/eagle2/build.sh @@ -0,0 +1,20 @@ +#!/bin/bash + +export COMMIT_VERS="${PKG_VERSION}" +export COMMIT_DATE="$(date -Idate -u)" + +make \ + -j 4 \ + DYN_LIBS="-lz -lpthread -lbz2 -lblas" \ + CXX="$CXX -std=c++17" \ + CXXFLAG="$CXXFLAGS ${PREFIX} -D__COMMIT_ID__='\"${COMMIT_VERS}\"' -D__COMMIT_DATE__='\"${COMMIT_DATE}\"' \ + LDFLAG="$LDFLAGS" \ + HTSLIB_INC="$PREFIX" \ + HTSLIB_LIB="-lhts" \ + BOOST_INC="/usr/include"\ + BOOST_LIB_IO="-lboost_iostreams" \ + BOOST_LIB_PO="-lboost_program_options" \ + BOOST_LIB_SE="-lboost_serialization" \ + ; +install "bin/eagle" "eagle/bin" +popd diff --git a/recipes/eagle2/meta.yaml b/recipes/eagle2/meta.yaml new file mode 100644 index 0000000000000..1414afc24cf1f --- /dev/null +++ b/recipes/eagle2/meta.yaml @@ -0,0 +1,43 @@ +{% set version = "2.4.1" %} + +package: + name: Eagle2 + version: {{ version }} + +build: + number: 1 + +source: + url: https://github.com/poruloh/Eagle/archive/refs/tags/v{{ version }}.tar.gz + sha256: 85804bfe972186ccb66e602856d6e04044302e5c0dbf9309849b0cde981e3432 + +requirements: + build: + - make + - {{ compiler('c') }} + - {{ compiler('cxx') }} + host: + - htslib >=1.9 + - bzip2 + - zlib + - boost-cpp >=1.58 + - blas >= 0.2.19 + run: + - boost-cpp + +test: + commands: + - eagle --help + +about: + home: https://github.com/poruloh/Eagle + license: GPLv3 + summary: The Eagle software estimates haplotype phase either within a genotyped cohort or using a phased reference panel. + description: + Eagle2 is now the default phasing method used by the Sanger and Michigan imputation servers and uses a new + very fast HMM-based algorithm that improves speed and accuracy over existing methods via two key ideas; + a new data structure based on the positional Burrows-Wheeler transform and a rapid search algorithm that + explores only the most relevant paths through the HMM. Compared to the Eagle1 algorithm, Eagle2 has similar + speed but much greater accuracy at sample sizes <50,000; as such, we have made the Eagle2 algorithm the default option. + (The Eagle1 algorithm can be accessed via the --v1 flag.) Eagle v2.3+ supports phasing sequence data with or without + a reference and also supports phasing chrX. \ No newline at end of file