diff --git a/LifeSciences/README.md b/LifeSciences/README.md index 6c9d77d3dc76df3bd39a0fba37fc25eea28ca522..12c6acc102bd2e9f19b0b7005a8ca9b5ffbcc12e 100644 --- a/LifeSciences/README.md +++ b/LifeSciences/README.md @@ -8,4 +8,5 @@ Life Sciences Software List: - repositories: redundans-v0.13c - repositories: bamtools-2.5.2 - repositories: flye-2.9 -- repositories: Manta-1.6.0 \ No newline at end of file +- repositories: Manta-1.6.0 +- repositories: hmmer-3.3.2 diff --git a/LifeSciences/hmmer-3.3.2/build.sh b/LifeSciences/hmmer-3.3.2/build.sh new file mode 100644 index 0000000000000000000000000000000000000000..b2460218c7698f7adfc892bdf062d70d7ae41ca2 --- /dev/null +++ b/LifeSciences/hmmer-3.3.2/build.sh @@ -0,0 +1,60 @@ +#!/bin/bash +export LANG="en_US.UTF-8" +if [[ $# -ne 2 ]]; then + echo "The format is as follows:" + echo "bash build.sh buildpath installpath" + echo ":param buildpath: 应用构建绝对路径" + echo ":param installpath: 应用安装绝对路径" + exit 1 +fi + +[[ ! "$1" =~ ^/.* || "$1" = "/" ]] && echo "请输入正确的构建路径" && exit 1 +[[ ! "$2" =~ ^/.* || "$2" = "/" ]] && echo "请输入正确的安装路径" && exit 1 + +create_dir() +{ + local path=$1 + [[ "$path" =~ .*/$ ]] && path=${path%/*} + if [[ ! -d "$path" && ! -f "$path" ]]; then mkdir -p $path; else path=$path`date "+%y%m%d%H%M%S"` && mkdir -p $path; fi + echo $path +} + +buildpath=$(create_dir $1) +installpath=$(create_dir $2) +[[ "$buildpath" == "$installpath" ]] && echo "构建路径与安装路径需为不同路径" && exit 1 +yum install -y m4 environment-modules systemd-devel +source /etc/profile +module purge + +set -e +dep_dir="dependency" +bash $dep_dir/bisheng-compiler-2.1.0.sh $buildpath $installpath +module use $installpath/bisheng-compiler-2.1.0 +module load $installpath/bisheng-compiler-2.1.0/bisheng_modulefiles + +bash $dep_dir/hmpi-1.1.1.sh $buildpath $installpath +module use $installpath/hmpi-1.1.1 +module load $installpath/hmpi-1.1.1/hmpi_modulefiles + +bash $dep_dir/autoconf-2.71.sh $buildpath $installpath +module use $installpath/autoconf-2.71 +module load $installpath/autoconf-2.71/autoconf_modulefiles + +bash hmmer-3.3.2.sh $buildpath $installpath + +mkdir -p pkg/hmmer-3.3.2-hpc && cp -r $installpath/* pkg/hmmer-3.3.2-hpc/ +cat>"pkg/hmmer-3.3.2-hpc/run.sh"< /dev/null +current_dir=\$(cd "\$(dirname "\${BASH_SOURCE[0]}")" &> /dev/null && pwd) +for d in \$(ls \$current_dir) +do + [[ ! -f "\$current_dir/\$d" ]] && cd \$current_dir/\$d && module use \$(pwd) && module load \$(pwd)/*modulefiles +done +cd \$current_dir/ +export PATH=\$current_dir/hmmer-3.3.2/bin:\$PATH +EOF +rm -rf $buildpath $installpath +cd pkg/ && tar zcvf hmmer-3.3.2-hpc.tar.gz hmmer-3.3.2-hpc diff --git a/LifeSciences/hmmer-3.3.2/dependency/autoconf-2.71.sh b/LifeSciences/hmmer-3.3.2/dependency/autoconf-2.71.sh new file mode 100644 index 0000000000000000000000000000000000000000..5ba4981ec5abff8dca2e43e26f0e36f217bb53de --- /dev/null +++ b/LifeSciences/hmmer-3.3.2/dependency/autoconf-2.71.sh @@ -0,0 +1,46 @@ +#!/bin/bash + +if [[ $# -ne 2 ]]; then + echo "The format is as follows:" + echo "bash autoconf-2.71.sh buildpath installpath" + echo ":param buildpath: 应用构建绝对路径" + echo ":param installpath: 应用安装绝对路径" + exit 1 +fi + +[[ ! "$1" =~ ^/.* || ! -d "$1" || "$1" = "/" ]] && echo "请输入正确的构建路径" && exit 1 +[[ ! "$2" =~ ^/.* || ! -d "$2" || "$2" = "/" ]] && echo "请输入正确的安装路径" && exit 1 + +buildpath=$1 +installpath=$2 +[[ "$buildpath" =~ .*/$ ]] && buildpath=${buildpath%/*} +[[ "$installpath" =~ .*/$ ]] && installpath=${installpath%/*} +[[ "$buildpath" == "$installpath" ]] && echo "构建路径与安装路径需为不同路径" && exit 1 +set -e +yum install -y wget tar environment-modules + +wget -t 10 -c -P $buildpath http://ftp.gnu.org/gnu/autoconf/autoconf-2.71.tar.gz +cd $buildpath +tar -zxvf autoconf-2.71.tar.gz +cd autoconf-2.71 +./configure --prefix=$installpath/autoconf-2.71 +make && make install + +mkdir -p $installpath/autoconf-2.71 && cp -r $buildpath/autoconf-2.71/* $installpath/autoconf-2.71/ + +cat>"$installpath/autoconf-2.71/autoconf_modulefiles"<"$installpath/bisheng-compiler-2.1.0/bisheng_modulefiles"<"$installpath/hmpi-1.1.1/hmpi_modulefiles"<"$installpath/hmmer-3.3.2/hmmer_modulefiles"<