diff --git a/BasicScientficResearch/README.md b/BasicScientficResearch/README.md new file mode 100644 index 0000000000000000000000000000000000000000..0b2d4568424f24e766e99b9e1874ed9e498e94d9 --- /dev/null +++ b/BasicScientficResearch/README.md @@ -0,0 +1,2 @@ +Basic Scientfic Research Software List: +- repositories: xxx diff --git a/Manufacturing/README.md b/ComputingLibraryTool/README.md similarity index 34% rename from Manufacturing/README.md rename to ComputingLibraryTool/README.md index 4be8b769249dd0766650199e4c422bcc321158fb..917128fd40c34a4b24a14d9231d213fb0a283205 100644 --- a/Manufacturing/README.md +++ b/ComputingLibraryTool/README.md @@ -1,3 +1,2 @@ -Manufacturing Software List: +Computing Library Tool Software List: - repositories: xxx - diff --git a/Life Sciences/README.md b/LifeSciences/README.md similarity index 100% rename from Life Sciences/README.md rename to LifeSciences/README.md diff --git a/ManufacturingSimulation/README.md b/ManufacturingSimulation/README.md new file mode 100644 index 0000000000000000000000000000000000000000..5af54dd64497e519fc329ad2f4c9c15a3f2e9542 --- /dev/null +++ b/ManufacturingSimulation/README.md @@ -0,0 +1,2 @@ +Manufacturing Simulation Software List: +- repositories: xxx diff --git a/MeteorologicalOcean/README.md b/MeteorologicalOcean/README.md new file mode 100644 index 0000000000000000000000000000000000000000..796c6b5a0dbaa66babd7d81fc69e20ec6a8e6cf1 --- /dev/null +++ b/MeteorologicalOcean/README.md @@ -0,0 +1,2 @@ +Meteorological Ocean Software List: +- repositories: wrf-4.2 diff --git a/MeteorologicalOcean/wrf-4.2/build.sh b/MeteorologicalOcean/wrf-4.2/build.sh new file mode 100644 index 0000000000000000000000000000000000000000..dc54194cdfa963664b0e135bbc7d08157a40d03d --- /dev/null +++ b/MeteorologicalOcean/wrf-4.2/build.sh @@ -0,0 +1,81 @@ +#!/bin/bash +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) + +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/zlib-1.2.11.sh $buildpath $installpath +module use $installpath/zlib-1.2.11 +module load $installpath/zlib-1.2.11/zlib_modulefiles + +bash $dep_dir/hdf5-1.12.1.sh $buildpath $installpath +module use $installpath/hdf5-1.12.1 +module load $installpath/hdf5-1.12.1/hdf5_modulefiles + +bash $dep_dir/pnetcdf-1.12.2.sh $buildpath $installpath +module use $installpath/pnetcdf-1.12.2 +module load $installpath/pnetcdf-1.12.2/pnetcdf_modulefiles + +bash $dep_dir/netcdf-c-4.8.1.sh $buildpath $installpath +module use $installpath/netcdf +module load $installpath/netcdf/netcdf_modulefiles + +bash $dep_dir/netcdf-fortran-4.5.3.sh $buildpath $installpath +module use $installpath/netcdf +module load $installpath/netcdf/netcdf_modulefiles + +bash wrf-4.2.sh $buildpath $installpath + +mkdir -p pkg/wrf-4.2-hpc && cp -r $installpath/* pkg/wrf-4.2-hpc/ +cat>"pkg/wrf-4.2-hpc/env.sh"< /dev/null +current_dir=\$(cd "\$(dirname "\${BASH_SOURCE[0]}")" &> /dev/null && pwd) +for d in \$(ls \$current_dir) +do + [[ ! \$d =~ "wrf" && ! -f "\$current_dir/\$d" ]] && cd \$current_dir/\$d && module use \$(pwd) && module load \$(pwd)/*modulefiles +done +cd \$current_dir +[[ ! -d "$installpath/hdf5-1.12.1/lib/" ]] && { +mkdir -p $installpath/hdf5-1.12.1/lib/; \ +ln -sf \$current_dir/hdf5-1.12.1/lib/libhdf5_hl.so $installpath/hdf5-1.12.1/lib/; \ +ln -sf \$current_dir/hdf5-1.12.1/lib/libhdf5.so $installpath/hdf5-1.12.1/lib/ +} +[[ ! -d "$installpath/hmpi-1.1.1" ]] && mkdir -p $installpath/hmpi-1.1.1 && cp -r \$current_dir/hmpi-1.1.1/* $installpath/hmpi-1.1.1/ +EOF +cd pkg/ && tar zcvf wrf-4.2-hpc.tar.gz wrf-4.2-hpc + +rm -rf $buildpath $installpath diff --git a/MeteorologicalOcean/wrf-4.2/configure.defaults.patch b/MeteorologicalOcean/wrf-4.2/configure.defaults.patch new file mode 100644 index 0000000000000000000000000000000000000000..c83742711075480098d729ba4d88f6f6ddcf0019 --- /dev/null +++ b/MeteorologicalOcean/wrf-4.2/configure.defaults.patch @@ -0,0 +1,96 @@ +--- ./arch/configure.defaults 2020-04-24 01:08:37.000000000 +0800 ++++ ../WRF-4.2.2/arch/configure.defaults 2021-01-16 01:21:58.000000000 +0800 +@@ -44,7 +44,7 @@ + CC_TOOLS = cc + + ########################################################### +-#ARCH Linux i486 i586 i686, gfortran compiler with gcc #serial smpar dmpar dm+sm ++#ARCH Linux i486 i586 i686 armv7l aarch64, gfortran compiler with gcc #serial smpar dmpar dm+sm + # + DESCRIPTION = GNU ($SFC/$SCC) + DMPARALLEL = # 1 +@@ -73,8 +73,9 @@ + FORMAT_FIXED = -ffixed-form + FORMAT_FREE = -ffree-form -ffree-line-length-none + FCSUFFIX = ++FCCOMPAT = + BYTESWAPIO = -fconvert=big-endian -frecord-marker=4 +-FCBASEOPTS_NO_G = -w $(FORMAT_FREE) $(BYTESWAPIO) ++FCBASEOPTS_NO_G = -w $(FORMAT_FREE) $(BYTESWAPIO) $(FCCOMPAT) + FCBASEOPTS = $(FCBASEOPTS_NO_G) $(FCDEBUG) + MODULE_SRCH_FLAG = + TRADFLAG = CONFIGURE_TRADFLAG +@@ -785,8 +786,9 @@ + FORMAT_FIXED = -ffixed-form + FORMAT_FREE = -ffree-form -ffree-line-length-none + FCSUFFIX = ++FCCOMPAT = + BYTESWAPIO = -fconvert=big-endian -frecord-marker=4 +-FCBASEOPTS_NO_G = -w $(FORMAT_FREE) $(BYTESWAPIO) ++FCBASEOPTS_NO_G = -w $(FORMAT_FREE) $(BYTESWAPIO) $(FCCOMPAT) + FCBASEOPTS = $(FCBASEOPTS_NO_G) $(FCDEBUG) + MODULE_SRCH_FLAG = + TRADFLAG = CONFIGURE_TRADFLAG +@@ -1006,8 +1008,9 @@ + FORMAT_FIXED = -ffixed-form + FORMAT_FREE = -ffree-form -ffree-line-length-none + FCSUFFIX = ++FCCOMPAT = + BYTESWAPIO = -fconvert=big-endian -frecord-marker=4 +-FCBASEOPTS_NO_G = -w $(FORMAT_FREE) $(BYTESWAPIO) ++FCBASEOPTS_NO_G = -w $(FORMAT_FREE) $(BYTESWAPIO) $(FCCOMPAT) + FCBASEOPTS = $(FCBASEOPTS_NO_G) $(FCDEBUG) + MODULE_SRCH_FLAG = + TRADFLAG = CONFIGURE_TRADFLAG +@@ -1049,8 +1052,9 @@ + FORMAT_FIXED = -ffixed-form + FORMAT_FREE = -ffree-form -ffree-line-length-none + FCSUFFIX = ++FCCOMPAT = + BYTESWAPIO = -fconvert=big-endian -frecord-marker=4 +-FCBASEOPTS_NO_G = -w $(FORMAT_FREE) $(BYTESWAPIO) ++FCBASEOPTS_NO_G = -w $(FORMAT_FREE) $(BYTESWAPIO) $(FCCOMPAT) + FCBASEOPTS = $(FCBASEOPTS_NO_G) $(FCDEBUG) + MODULE_SRCH_FLAG = + TRADFLAG = CONFIGURE_TRADFLAG +@@ -1772,8 +1776,9 @@ + FORMAT_FIXED = -ffixed-form + FORMAT_FREE = -ffree-form -ffree-line-length-none + FCSUFFIX = ++FCCOMPAT = + BYTESWAPIO = -fconvert=big-endian -frecord-marker=4 +-FCBASEOPTS_NO_G = -w $(FORMAT_FREE) $(BYTESWAPIO) ++FCBASEOPTS_NO_G = -w $(FORMAT_FREE) $(BYTESWAPIO) $(FCCOMPAT) + FCBASEOPTS = $(FCBASEOPTS_NO_G) $(FCDEBUG) + MODULE_SRCH_FLAG = + TRADFLAG = CONFIGURE_TRADFLAG +@@ -1829,7 +1834,7 @@ + CC_TOOLS = $(SCC) + + ########################################################### +-#ARCH Linux x86_64 ppc64le i486 i586 i686 #serial smpar dmpar dm+sm ++#ARCH Linux x86_64 ppc64le i486 i586 i686, ifort compiler with icc #serial smpar dmpar dm+sm + # + DESCRIPTION = INTEL ($SFC/$SCC): HSW/BDW + DMPARALLEL = # 1 +@@ -1873,7 +1878,7 @@ + CC_TOOLS = $(SCC) + + ########################################################### +-#ARCH Linux KNL x86_64 ppc64le i486 i586 i686 #serial smpar dmpar dm+sm ++#ARCH Linux KNL x86_64 ppc64le i486 i586 i686, ifort compiler with icc #serial smpar dmpar dm+sm + # + DESCRIPTION = INTEL ($SFC/$SCC): KNL MIC + DMPARALLEL = # 1 +@@ -1946,8 +1951,9 @@ + FORMAT_FIXED = -ffixed-form + FORMAT_FREE = -ffree-form -ffree-line-length-none + FCSUFFIX = ++FCCOMPAT = + BYTESWAPIO = -fconvert=big-endian -frecord-marker=4 +-FCBASEOPTS_NO_G = -w $(FORMAT_FREE) $(BYTESWAPIO) ++FCBASEOPTS_NO_G = -w $(FORMAT_FREE) $(BYTESWAPIO) $(FCCOMPAT) + FCBASEOPTS = $(FCBASEOPTS_NO_G) $(FCDEBUG) + MODULE_SRCH_FLAG = + TRADFLAG = -traditional + diff --git a/MeteorologicalOcean/wrf-4.2/dependency/bisheng-compiler-2.1.0.sh b/MeteorologicalOcean/wrf-4.2/dependency/bisheng-compiler-2.1.0.sh new file mode 100644 index 0000000000000000000000000000000000000000..e30d4b3fc6a847fb1323a249e0dc70d85abbf462 --- /dev/null +++ b/MeteorologicalOcean/wrf-4.2/dependency/bisheng-compiler-2.1.0.sh @@ -0,0 +1,42 @@ +#!/bin/bash + +if [[ $# -ne 2 ]]; then + echo "The format is as follows:" + echo "bash bisheng-compiler-2.1.0.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 libatomic + +wget -t 0 -c -P $buildpath https://mirrors.huaweicloud.com/kunpeng/archive/compiler/bisheng_compiler/bisheng-compiler-2.1.0-aarch64-linux.tar.gz +tar xf $buildpath/bisheng-compiler-2.1.0-aarch64-linux.tar.gz -C $buildpath && rm -rf $buildpath/bisheng-compiler-2.1.0-aarch64-linux.tar.gz +mkdir -p $installpath/bisheng-compiler-2.1.0 && cp -r $buildpath/bisheng-compiler-2.1.0-aarch64-linux/* $installpath/bisheng-compiler-2.1.0/ + +cat>"$installpath/bisheng-compiler-2.1.0/bisheng_modulefiles"<"$installpath/hdf5-1.12.1/hdf5_modulefiles"<"$installpath/hmpi-1.1.1/hmpi_modulefiles"<"$installpath/netcdf/netcdf_modulefiles"<"$installpath/pnetcdf-1.12.2/pnetcdf_modulefiles"<"$installpath/zlib-1.2.11/zlib_modulefiles"<