diff --git a/package/arpack/96/clang/install.sh b/package/arpack/96/clang/install.sh new file mode 100644 index 0000000000000000000000000000000000000000..81ead4d31f882bfdfee7bef6b3ad3ae4a20c1cd6 --- /dev/null +++ b/package/arpack/96/clang/install.sh @@ -0,0 +1,17 @@ +#!/bin/bash +set -x +set -e +. ${DOWNLOAD_TOOL} -u https://www.caam.rice.edu/software/ARPACK/SRC/arpack96.tar.gz +. ${DOWNLOAD_TOOL} -u https://www.caam.rice.edu/software/ARPACK/SRC/patch.tar.gz +cd ${JARVIS_TMP} +tar zxvf ${JARVIS_DOWNLOAD}/arpack96.tar.gz +tar zxvf ${JARVIS_DOWNLOAD}/patch.tar.gz +cd ARPACK +sed -i "28c\home = '${JARVIS_TMP}'/ARPACK" ARmake.inc +sed -i '35c\PLAT = INTEL' ARmake.inc +sed -i '104c\FC = flang' ARmake.inc +sed -i '105c\#FFLAGS = -0 -cg89' ARmake.inc +sed -i '115c\MAKE = /usr/bin/make' ARmake.inc +sed -i '120c\SHELL = /usr/bin/sh' ARmake.inc +sed -i '24c\* EXTERNAL ETIME' UTIL/second.f +make lib diff --git a/package/eigen3/3.4.0/install.sh b/package/eigen3/3.4.0/install.sh new file mode 100644 index 0000000000000000000000000000000000000000..c6b3cce6d69f9467384f783ed103eeba4dfe0a6d --- /dev/null +++ b/package/eigen3/3.4.0/install.sh @@ -0,0 +1,12 @@ +#!/bin/bash +set -x +set -e +. ${DOWNLOAD_TOOL} -u http://gitlab.com/libeigen/eigen/-/archive/3.4.0/eigen-3.4.0.tar.gz +cd ${JARVIS_TMP} +tar xvf ${JARVIS_DOWNLOAD}/eigen-3.4.0.tar.gz +cd eigen-3.4.0 +mkdir build +cd build +cmake .. -DCMAKE_INSTALL_PREFIX=$1 +make -j +make install diff --git a/package/libxc/4.3.4/install.sh b/package/libxc/4.3.4/install.sh new file mode 100644 index 0000000000000000000000000000000000000000..84078c24575e18a2a3fbe777d6b6d7795838163d --- /dev/null +++ b/package/libxc/4.3.4/install.sh @@ -0,0 +1,11 @@ +#!/bin/bash +set -x +set -e +. ${DOWNLOAD_TOOL} -u http://forge.abinit.org/fallbacks/libxc-4.3.4.tar.gz +cd ${JARVIS_TMP} +tar -xvf ${JARVIS_DOWNLOAD}/libxc-4.3.4.tar.gz +cd libxc-4.3.4 +./configure --prefix=$1 +make -j +make install + diff --git a/package/libxc/5.1.4/install.sh b/package/libxc/5.1.4/install.sh new file mode 100644 index 0000000000000000000000000000000000000000..bc3fb331bf3c9e79603988954cda62d05e5165cf --- /dev/null +++ b/package/libxc/5.1.4/install.sh @@ -0,0 +1,14 @@ +#!/bin/bash +set -x +set -e +cd ${JARVIS_TMP} +. ${DOWNLOAD_TOOL} -u http://www.tddft.org/programs/libxc/down.php?file=5.1.4/libxc-5.1.4.tar.gz -f libxc-5.1.4.tar.gz +tar -xvf ${JARVIS_DOWNLOAD}/libxc-5.1.4.tar.gz +cd libxc-5.1.4 +sed -i 21305s/lt_lt_prog_compiler_wl/lt_prog_compiler_wl/g configure +sed -i 21547s/lt_lt_prog_compiler_wl_FC/lt_prog_compiler_wl_FC/g configure +./configure --prefix=$1 CFLAGS='-fPIC' FCFLAGS='-fPIC' --enable-shared=yes --enable-static=yes +sed -i "705c lt_prog_compiler_wl_FC=\'-Wl,\'" config.status +make -j +make install + diff --git a/package/openblas/0.3.18/install.sh b/package/openblas/0.3.18/install.sh index edc231ae5ab6c2f2ebc2b8d54ffd4e15b378e95f..1f5d0c490ad74b1a645b90628ca19d4f3e90ed23 100644 --- a/package/openblas/0.3.18/install.sh +++ b/package/openblas/0.3.18/install.sh @@ -1,9 +1,9 @@ #!/bin/bash set -x set -e -. ${DOWNLOAD_TOOL} -u https://github.com/xianyi/OpenBLAS/releases/download/v0.3.18/OpenBLAS-0.3.18.tar.gz +. ${DOWNLOAD_TOOL} -u https://github.com/xianyi/OpenBLAS/archive/refs/tags/v0.3.18.tar.gz -f OpenBLAS-0.3.18.tar.gz cd ${JARVIS_TMP} tar -xzvf ${JARVIS_DOWNLOAD}/OpenBLAS-0.3.18.tar.gz cd OpenBLAS-0.3.18 -make -j +make -j make PREFIX=$1 install diff --git a/package/openblas/0.3.6/install.sh b/package/openblas/0.3.6/install.sh new file mode 100644 index 0000000000000000000000000000000000000000..951038d8569fe032c59b33ef429339f5329b2b11 --- /dev/null +++ b/package/openblas/0.3.6/install.sh @@ -0,0 +1,9 @@ +#!/bin/bash +set -x +set -e +. ${DOWNLOAD_TOOL} -u https://github.com/xianyi/OpenBLAS/archive/refs/tags/v0.3.6.tar.gz -f OpenBLAS-0.3.6.tar.gz +cd ${JARVIS_TMP} +tar -xzvf ${JARVIS_DOWNLOAD}/OpenBLAS-0.3.6.tar.gz +cd OpenBLAS-0.3.6 +make -j +make PREFIX=$1 install diff --git a/package/precice/2.3.0/install.sh b/package/precice/2.3.0/install.sh new file mode 100644 index 0000000000000000000000000000000000000000..e0fe05eba3f7d10543ec599583032943aa190644 --- /dev/null +++ b/package/precice/2.3.0/install.sh @@ -0,0 +1,12 @@ +#!/bin/bash +set -x +set -e +. ${DOWNLOAD_TOOL} -u https://github.com/precice/precice/archive/v2.3.0.tar.gz -f precice-2.3.0.tar.gz +cd ${JARVIS_TMP} +tar xvf ${JARVIS_DOWNLOAD}/precice-2.3.0.tar.gz +cd precice-2.3.0 +mkdir build +cd build +cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$1 -DPRECICE_PETScMapping=OFF -DPRECICE_PythonActions=OFF +make -j +make install diff --git a/package/scalapack/2.1.0/install.sh b/package/scalapack/2.1.0/install.sh index bee6239d78c45a09cdd1b86e776176cba423cfdf..4bd2e3a0bec7f56ee04a737f23946dc45c7f6ee9 100644 --- a/package/scalapack/2.1.0/install.sh +++ b/package/scalapack/2.1.0/install.sh @@ -6,6 +6,6 @@ cd ${JARVIS_TMP} tar -xvf ${JARVIS_DOWNLOAD}/scalapack-2.1.0.tgz cd scalapack-2.1.0 cp SLmake.inc.example SLmake.inc -make -j +make mkdir $1/lib cp *.a $1/lib diff --git a/package/spooles/2.2/clang/install.sh b/package/spooles/2.2/clang/install.sh new file mode 100644 index 0000000000000000000000000000000000000000..ce4e5c4ec9aee6d97b9d2d6c8196285372d69b78 --- /dev/null +++ b/package/spooles/2.2/clang/install.sh @@ -0,0 +1,12 @@ +#!/bin/bash +set -x +set -e +. ${DOWNLOAD_TOOL} -u http://www.netlib.org/linalg/spooles/spooles.2.2.tgz +cd ${JARVIS_TMP} +mkdir SPOOLES.2.2 +tar zxvf ${JARVIS_DOWNLOAD}/spooles.2.2.tgz -C SPOOLES.2.2 +cd SPOOLES.2.2 +sed -i '14c\ CC = clang' Make.inc +sed -i '15c\#CC = /usr/lang-4.0/bin/cc' Make.inc +sed -i '9c\ draw.c \' Tree/src/makeGlobalLib +make lib diff --git a/package/yaml-cpp/0.6.2/install.sh b/package/yaml-cpp/0.6.2/install.sh new file mode 100644 index 0000000000000000000000000000000000000000..8f1c182ffd569c77ff33ebb60b847486ba96cedf --- /dev/null +++ b/package/yaml-cpp/0.6.2/install.sh @@ -0,0 +1,13 @@ +#!/bin/bash +set -x +set -e +. ${DOWNLOAD_TOOL} -u https://github.com/jbeder/yaml-cpp/archive/yaml-cpp-0.6.2.zip +cd ${JARVIS_TMP} +unzip ${JARVIS_DOWNLOAD}/yaml-cpp-0.6.2.zip +cd yaml-cpp-yaml-cpp-0.6.2 +mkdir build +cd build +cmake -DCMAKE_INSTALL_PREFIX=$1 -DBUILD_SHARED_LIBS=ON .. +make -j +make install + diff --git a/templates/calculix/2.19.0/data.calculix.arm.cpu.config b/templates/calculix/2.19.0/data.calculix.arm.cpu.config new file mode 100644 index 0000000000000000000000000000000000000000..ba40f2edc00735512a4a0773ece20d11373f0ce7 --- /dev/null +++ b/templates/calculix/2.19.0/data.calculix.arm.cpu.config @@ -0,0 +1,65 @@ +[SERVER] +11.11.11.11 + +[DOWNLOAD] +calculix/2.19.0 https://github.com/precice/calculix-adapter/archive/refs/heads/master.tar.gz calculix-adapter-master.tar.gz +ccx/2.19 http://www.dhondt.de/ccx_2.19.src.tar.bz2 + +[DEPENDENCY] +module purge +./jarvis -install bisheng/2.1.0 com +module use ./software/modulefiles +module load bisheng2/2.1.0 +export CC=clang CXX=clang++ FC=flang +./jarvis -install hmpi/1.1.1 clang +module load hmpi1/1.1.1 +./jarvis -install spooles/2.2/clang clang +./jarvis -install arpack/96/clang clang +./jarvis -install yaml-cpp/0.6.2 clang +./jarvis -install eigen3/3.4.0 clang +./jarvis -install precice/2.3.0 clang +cd ${JARVIS_TMP} +tar xvf ${JARVIS_DOWNLOAD}/ccx_2.19.src.tar.bz2 +tar xvf ${JARVIS_DOWNLOAD}/calculix-adapter-master.tar.gz + +[ENV] +module use ./software/modulefiles +module purge +module load bisheng2/2.1.0 +module load hmpi1/1.1.1 +export CC=clang CXX=clang++ FC=flang +module load yaml-cpp/0.6.2 +module load precice/2.3.0 +export Eigen3_ROOT=${JARVIS_ROOT}/software/libs/bisheng2/eigen3/3.4.0 +export PKG_CONFIG_PATH=${JARVIS_ROOT}/software/libs/bisheng2/precice/2.3.0/lib64/pkgconfig:$PKG_CONFIG_PATH +export CPATH=${JARVIS_ROOT}/software/libs/bisheng2/precice/2.3.0/include:$CPATH + +[APP] +app_name = calculix +build_dir = ${JARVIS_ROOT} +binary_dir = ./software/apps/bisheng2/calculix/2.19.0 +case_dir = + +[BUILD] +cd ${JARVIS_TMP}/calculix-adapter-master +sed -i "6c\CCX = ${JARVIS_TMP}/CalculiX/ccx_2.19/src" Makefile +sed -i "10c\SPOOLES_INCLUDE = -I/${JARVIS_TMP}/SPOOLES.2.2" Makefile +sed -i "12c\SPOOLES_LIBS = ${JARVIS_TMP}/SPOOLES.2.2/spooles.a" Makefile +sed -i "15c\ARPACK_INCLUDE = -I/${JARVIS_TMP}/ARPACK" Makefile +sed -i "17c\ARPACK_LIBS = ${JARVIS_TMP}/ARPACK/libarpack_INTEL.a" Makefile +sed -i "20c\YAML_INCLUDE = -I/${JARVIS_TMP}/yaml-cpp-yaml-cpp-0.6.2/include" Makefile +sed -i "22c\YAML_LIBS = -L/${JARVIS_TMP}/yaml-cpp-yaml-cpp-0.6.2/build -lyaml-cpp" Makefile +sed -i '55c\CFLAGS = -Wall -O3 -fopenmp $(INCLUDES) -DARCH="Linux" -DSPOOLES -DARPACK -DMATRIXSTORAGE' Makefile +sed -i '60c\CC = clang' Makefile +sed -i '62c\CC = clang' Makefile +sed -i '67c\FC = flang' Makefile + + +make clean +make -j + +[RUN] +run = +binary = +node = 1 + diff --git a/templates/octopus/10.3/data.octopus.arm.kpgcc.cpu.config b/templates/octopus/10.3/data.octopus.arm.kpgcc.cpu.config new file mode 100644 index 0000000000000000000000000000000000000000..0c0ee946647d09a9e8ff5ebf43b0f788c9d36b84 --- /dev/null +++ b/templates/octopus/10.3/data.octopus.arm.kpgcc.cpu.config @@ -0,0 +1,67 @@ +[SERVER] +11.11.11.11 + +[DOWNLOAD] +octopus/10.3 https://octopus-code.org/down.php?file=10.3/octopus-10.3.tar.gz octopus-10.3.tar.gz + +[DEPENDENCY] +module purge +./jarvis -install kgcc/9.3.1 com +module use ./software/modulefiles +module load kgcc9/9.3.1 +export CC=`which gcc` +export CXX=`which g++` +export FC=`which gfortran` +./jarvis -install hmpi/1.1.1 gcc +module load hmpi1/1.1.1 +./jarvis -install gsl/2.6 gcc +./jarvis -install fftw/3.3.8 gcc +./jarvis -install blas/3.10.0 gcc +./jarvis -install lapack/3.8.0 gcc +./jarvis -install libxc/4.3.4 gcc + +[ENV] +module use ./software/modulefiles +module purge +module load kgcc9/9.3.1 +module load hmpi1/1.1.1 +export CC=`which mpicc` +export CXX=`which mpicxx` +export FC=`which mpifort` +module load blas/3.10.0 +module load lapack/3.8.0 +module load gsl/2.6 +module load libxc/4.3.4 + + + +[APP] +app_name = octopus +build_dir = ${JARVIS_ROOT} +binary_dir = ./software/apps/kgcc9/octopus/10.3 +case_dir = + +[BUILD] +cd ${JARVIS_TMP} +rm -rf octopus-10.3 +tar -xvf ${JARVIS_DOWNLOAD}/octopus-10.3.tar.gz +cd octopus-10.3 +./configure --prefix=${JARVIS_ROOT}/software/apps/kgcc9/octopus/10.3 CFLAGS='-O3 -march=armv8.2-a -mtune=tsv110' FCFLAGS='-O3 -march=armv8.2-a -mtune=tsv110 ' LIBS="-Wl,-rpath=${JARVIS_ROOT}/software/compiler/kgcc/9.3.1/lib64/libhpc -L${JARVIS_ROOT}/software/compiler/kgcc/9.3.1/lib64/libhpc -lmathlib -lm " --with-gsl-prefix=${JARVIS_LIBS}/kgcc9/gsl/2.6 --with-libxc-prefix=${JARVIS_LIBS}/kgcc9/libxc/4.3.4 --with-fftw-prefix=${JARVIS_LIBS}/kgcc9/fftw/3.3.8 --with-blas=${JARVIS_LIBS}/kgcc9/lapack/3.8.0/lib/librefblas.a --with-lapack=${JARVIS_LIBS}/kgcc9/lapack/3.8.0/lib/liblapack.a --enable-mpi +sed -i '185c\ conf%share = &' src/basic/global.F90 +sed -i '185a\SHARE_DIR' src/basic/global.F90 +sed -i '191c\ conf%cc = &' src/basic/global.F90 +sed -i '191a\CC' src/basic/global.F90 +sed -i '196c\ conf%cxx = &' src/basic/global.F90 +sed -i '196a\CXX' src/basic/global.F90 +sed -i '200c\ conf%fc = &' src/basic/global.F90 +sed -i '200a\FC' src/basic/global.F90 +make -j +make install + + + +[RUN] +run = +binary = +node = 1 + diff --git a/templates/siesta/4.0.2/data.siesta.arm.kpgcc.cpu.config b/templates/siesta/4.0.2/data.siesta.arm.kpgcc.cpu.config new file mode 100644 index 0000000000000000000000000000000000000000..c2ccb56f7712eaa655180e19f02580da865d9361 --- /dev/null +++ b/templates/siesta/4.0.2/data.siesta.arm.kpgcc.cpu.config @@ -0,0 +1,73 @@ +[SERVER] +11.11.11.11 + +[DOWNLOAD] +siesta/4.0.2 https://launchpadlibrarian.net/379220821/siesta-4.0.2.tar.gz + +[DEPENDENCY] +module purge +./jarvis -install kgcc/9.3.1 com +module use ./software/modulefiles +module load kgcc9/9.3.1 +export CC=`which gcc` +export CXX=`which g++` +export FC=`which gfortran` +./jarvis -install hmpi/1.1.1 gcc +module load hmpi1/1.1.1 +./jarvis -install openblas/0.3.18 gcc +./jarvis -install scalapack/2.1.0 gcc + +[ENV] +module use ./software/modulefiles +module purge +module load kgcc9/9.3.1 +module load hmpi1/1.1.1 +export CC=`which gcc` +export CXX=`which g++` +export FC=`which gfortran` +module load openblas/0.3.18 +module load scalapack/2.1.0 + + +[APP] +app_name = siesta +build_dir = ${JARVIS_ROOT} +binary_dir = ./software/apps/kgcc9/siesta/4.0.2 +case_dir = + +[BUILD] +cd ${JARVIS_TMP} +rm -rf siesta-4.0.2 +tar xvf ${JARVIS_DOWNLOAD}/siesta-4.0.2.tar.gz +cd siesta-4.0.2 +mkdir kpgcc_hmpi_compiler +cd kpgcc_hmpi_compiler +bash ../Src/obj_setup.sh +../Src/configure CC=mpicc CFLAGS='-O3 -march=armv8.2-a -mtune=tsv110' FC=mpifort FCFLAGS='-O3 -march=armv8.2-a -mtune=tsv110' --enable-mpi --build=arm-linux --prefix=${JARVIS_ROOT}/software/apps/kgcc9/siesta/4.0.2/kpgcc_hmpi_compiler + +sed -i "34c\OPENBLAS_LIBS=${JARVIS_ROOT}/software/libs/kgcc9/openblas/0.3.18/lib/libopenblas.a" arch.make + +sed -i '35c\#BLAS_LIBS=-lblas' arch.make +sed -i '36c\#LAPACK_LIBS=-llapack' arch.make + +sed -i "38c\SCALAPACK_LIBS=${JARVIS_ROOT}/software/libs/kgcc9/scalapack/2.1.0/lib/libscalapack.a" arch.make + +sed -i "39c\MATH_LIBS= -Wl,-rpath=${JARVIS_ROOT}/software/compiler/kgcc/9.3.1/lib64/libhpc/lib -L${JARVIS_ROOT}/software/compiler/kgcc/9.3.1/lib64/libhpc/lib -lmathlib -lm" arch.make + +sed -i '45c\LIBS=$(SCALAPACK_LIBS) $(BLACS_LIBS) $(OPENBLAS_LIBS) $(NETCDF_LIBS) $(MATH_LIBS)' arch.make + +cd ../Src/FoX/config +mv config.guess config.guess.bak +mv config.sub config.sub.bak +wget http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess +wget http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub +chmod +x config.guess +chmod +x config.sub +cd ../../../kpgcc_hmpi_compiler +make + +[RUN] +run = +binary = +node = 1 +