Merge branch 'master' into 267-toolchain-for-ippl-opal-with-gcc-12-3-0

This commit is contained in:
2023-11-14 16:22:50 +01:00
20 changed files with 164 additions and 26 deletions

View File

@@ -1,4 +1,5 @@
#!/usr/bin/env modbuild
set -e
pbuild::add_to_group 'EM'
@@ -7,6 +8,11 @@ pbuild::prep() {
: ${CUDA_VERSION:?No CUDA_VERSION set}
local cuda="${CUDA_VERSION%.*}"
local filename="imod_${V_PKG}_RHEL7-64_CUDA${cuda}.sh"
if [[ $V_RELEASE == *beta* ]]; then
local url="https://bio3d.colorado.edu/ftp/latestIMOD/RHEL7-64_CUDA${cuda}/$filename"
else
local url="https://bio3d.colorado.edu/imod/AMD64-RHEL5/$filename"
fi
local dst="$PMODULES_DISTFILESDIR/${filename}"
if [ -f "$dst" ]; then
echo "Found cached $dst" >&2
@@ -15,7 +21,7 @@ pbuild::prep() {
--location \
--fail \
--output "$dst" \
"https://bio3d.colorado.edu/imod/AMD64-RHEL5/$filename"
"$url"
fi
}

View File

@@ -1,2 +1,4 @@
IMOD/4.9.5 stable
IMOD/4.11.20 unstable cuda/10.1.105
IMOD/4.11.20 stable cuda/10.1.105
IMOD/4.11.24 unstable cuda/10.1.105
IMOD/4.12.50-beta unstable cuda/10.1.105

View File

@@ -1,2 +1,2 @@
PEET/1.15.1a stable gcc/9.5.0 matlab/2020b
PEET/1.16.0 unstable gcc/9.5.0 matlab/2021b
PEET/1.16.0 stable gcc/9.5.0 matlab/2021b

3
EM/dynamo/1.1.538/config Normal file
View File

@@ -0,0 +1,3 @@
# Google drive file hash, from https://wiki.dynamo.biozentrum.unibas.ch/w/index.php/Downloads
DYNAMO_ID=11_HqORqfwX21odS4zTuQKLbzHDSYgeog

View File

@@ -10,9 +10,21 @@ Installation should be done on merlin with an -adm account
2. Add google drive download link to `$V/config`.
3. Run `build <version>`
4. module load dynamo/$V
5. Compile stand-alone: `dynamo_setup_linux.sh`
6. Compile MPI: `source dynamo_setup_cluster.sh mpic++ dynamo_activate_linux_shipped_MCR.sh`
7. Compile Cuda:
5. `cd $DYNAMO_HOME/bin`. Further steps are taken from `README_dynamo_installation.txt`
6. [Compile stand-alone](https://www.dynamo-em.org/w/index.php?title=Installation)
dynamo_setup_linux.sh
7. [Compile MPI](https://www.dynamo-em.org/w/index.php?title=MPI_Cluster):
- With the shipped MCRLinux directory:
source dynamo_setup_cluster.sh mpic++ dynamo_activate_linux_shipped_MCR.sh
- With MCR from pmodules:
source dynamo_setup_cluster.sh mpic++ dynamo_activate_MCR.sh
8. Compile Cuda:
cd $DYNAMO_ROOT/cuda
make clean

View File

@@ -51,6 +51,8 @@ pbuild::prep() {
download_dynamo "$DYNAMO_ID" "$TAR_FILE"
mkdir -p "$PREFIX"
unpack "$TAR_FILE" "$PREFIX/bin"
cp -n "$BUILDBLOCK_DIR/dynamo_activate_MCR.sh" "$PREFIX/bin/"
}
pbuild::configure() {

View File

@@ -0,0 +1,18 @@
# Activates MCR from pmodules
DYNAMO_FOLDER=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
MCR_ROOT=${MATLAB_DIR:?No matlab module loaded}
# Checks availability of the MCR folder
if ! [ -d $MCR_ROOT ]; then
echo "ATTENTION: the Matlab module is not loaded."
return
fi
echo "MCR for linux has been found in location:" $MCR_ROOT
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$MCR_ROOT/runtime/glnxa64:$MCR_ROOT/bin/glnxa64:$MCR_ROOT/sys/os/glnxa64:$MCR_ROOT/sys/opengl/lib/glnxa64
echo Activating Dynamo as standalone
source $DYNAMO_FOLDER/dynamo_activate_linux.sh

View File

@@ -1 +1,2 @@
dynamo/1.1.514 unstable b:psi-python36/5.0.1 gcc/9.3.0 openmpi/4.0.4_slurm cuda/11.1.0 matlab/2019a
dynamo/1.1.538 unstable b:psi-python36/5.0.1 gcc/11.2.0 cuda/11.5.1 openmpi/4.1.4_slurm matlab/2023a

View File

@@ -12,11 +12,11 @@ ucx/1.11.2-3_slurm stable cuda/11.1.0 b:doxygen/1.9.2 b:knem/1.1.4 b
ucx/1.12.1_slurm stable cuda/11.5.1 b:doxygen/1.9.2 b:knem/1.1.4 b:GDRCopy/2.2.0
ucx/1.13.1_slurm stable b:cuda/11.5.1 b:doxygen/1.9.2 b:knem/1.1.4 b:GDRCopy/2.2.0
ucx/1.13.1-3_slurm unstable b:cuda/11.1.0 b:doxygen/1.9.2 b:knem/1.1.4 b:GDRCopy/2.2.0
ucx/1.13.1-3_slurm stable b:cuda/11.1.0 b:doxygen/1.9.2 b:knem/1.1.4 b:GDRCopy/2.2.0
ucx/1.14.0-5_slurm unstable b:cuda/11.5.1 b:doxygen/1.9.2 b:knem/1.1.4 b:GDRCopy/2.2.0
ucx/1.14.0_slurm removed b:cuda/12.1.1 b:doxygen/1.9.2 b:knem/1.1.4 b:GDRCopy/2.3.0
ucx/1.14.1_slurm unstable b:cuda/12.1.1 b:doxygen/1.9.2 b:knem/1.1.4 b:GDRCopy/2.3.0
ucx/1.14.0-5_slurm stable b:cuda/11.5.1 b:doxygen/1.9.2 b:knem/1.1.4 b:GDRCopy/2.2.0
ucx/1.14.1_slurm stable b:cuda/12.1.1 b:doxygen/1.9.2 b:knem/1.1.4 b:GDRCopy/2.3.0
ucx/1.15.0_slurm unstable b:cuda/12.1.1 b:doxygen/1.9.2 b:knem/1.1.4 b:GDRCopy/2.3.0
ucx/1.9.0_dgx deprecated cuda/11.1.0 b:doxygen/1.8.14 b:knem/1.1.4
ucx/1.10.0-1_dgx deprecated cuda/11.2.2 b:doxygen/1.8.14 b:knem/1.1.4 b:GDRCopy/2.2.0

17
Programming/Julia/build Executable file
View File

@@ -0,0 +1,17 @@
#!/usr/bin/env modbuild
pbuild::set_download_url "https://julialang-s3.julialang.org/bin/linux/x64/${V_MAJOR}.${V_MINOR}/julia-${V_PKG}-linux-x86_64.tar.gz"
pbuild::add_to_group 'Programming'
pbuild::install_docfiles 'LICENSE.md'
pbuild::compile_in_sourcetree
pbuild::compile() {
:
}
pbuild::install() {
rsync -av . "${PREFIX}"
}

View File

@@ -0,0 +1 @@
Julia/1.9.2 stable

View File

@@ -0,0 +1,12 @@
#%Module1.0
module-whatis "Julia"
module-url "https://julialang.org/"
module-license "https://github.com/JuliaLang/julia/blob/master/LICENSE.md"
module-maintainer "Marc Caubet Serrabou <marc.caubet@psi.ch>"
module-help "
Julia is a high-level, high-performance dynamic language for technical
computing.
"
module-addgroup Programming

View File

@@ -18,3 +18,6 @@ dependencies:
- tox-conda
- pytest
- bpython
- jinja2 # for relion templates
- pip:
- j2cli[yaml]

View File

@@ -1,24 +1,29 @@
#!/usr/bin/env modbuild
pbuild::set_download_url \
"https://github.com/llvm/llvm-project/releases/download/llvmorg-${V_PKG}/llvm-project-${V_PKG}.src.tar.xz"
pbuild::add_to_group 'Programming'
pbuild::set_download_url \
"https://github.com/llvm/llvm-project/releases/download/llvmorg-${V_PKG}/llvm-project-${V_PKG}.src.tar.xz"
#pbuild::install_docfiles 'AUTHORS' 'LICENSE' 'NEWS' 'README'
pbuild::configure() {
cmake \
-DCMAKE_INSTALL_PREFIX="${PREFIX}" \
-DCMAKE_BUILD_TYPE=Release \
-DLLVM_ENABLE_PROJECTS="clang;clang-tools-extra;libunwind;lldb;lld;openmp" \
-DGCC_INSTALL_PREFIX="${GCC_DIR}" \
-G "Unix Makefiles" \
"${SRC_DIR}/llvm" \
|| exit 1
# To expose the correct GCC libstd++ to build system, we need to both set
# the correct CC/CXX *and* force the build linker to use the pmodule GCC
# library.
GCC_CXXLIBDIR="${GCC_DIR}/lib64"
CC="${GCC_DIR}/bin/gcc"
CXX="${GCC_DIR}/bin/g++"
cmake \
-DCMAKE_INSTALL_PREFIX="${PREFIX}" \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_CXX_LINK_FLAGS="-Wl,-R,${GCC_CXXLIBDIR} -L${GCC_CXXLIBDIR}" \
-DLLVM_ENABLE_PROJECTS="clang;clang-tools-extra;lldb;lld;openmp" \
-DLLVM_ENABLE_RUNTIMES="libunwind" \
"${CONFIGURE_ARGS[@]}" \
-G "Unix Makefiles" \
"${SRC_DIR}/llvm" \
|| exit 1
}
pbuild::post_install() {
# :FIXME: copy libstdc++ and libgcc from used gcc to $PREFIX/lib64
:
}
# vim: ts=4 sw=4 et

View File

@@ -1 +1,2 @@
clang/12.0.0_rhel7 stable b:cmake/3.15.5 b:gcc/9.3.0 b:Python/3.8.4 b:xz/5.2.4 b:binutils/2.29
clang/15.0.6_rhel7 unstable b:cmake/3.23.2 b:gcc/12.1.0 b:Python/3.9.10 b:xz/5.2.4 b:binutils/2.37

View File

@@ -4,3 +4,4 @@ ANSYS/2021R1 stable
ANSYS/2021R2 stable
ANSYS/2022R1 stable
ANSYS/2022R2 unstable
ANSYS/2023R2 unstable

View File

@@ -32,6 +32,8 @@ prepend-path PATH $PREFIX/$version/polyflow/bin
prepend-path PATH $PREFIX/$version/RSM/bin
prepend-path PATH $PREFIX/$version/SystemCoupling/bin
prepend-path PATH $PREFIX/$version/TurboGrid/bin
# 20.09.2023 add lumerical bin
prepend-path PATH $PREFIX/$version/lumerical/$version/bin
# 07.04.2020
prepend-path PATH $PREFIX/$version/Electronics/Linux64
prepend-path PATH $PREFIX/$version/Framework/bin/Linux64
@@ -50,5 +52,8 @@ prepend-path LD_LIBRARY_PATH $PREFIX/$version/CFX/tools/qwt-6.1.2/linx64/lib
prepend-path LD_LIBRARY_PATH $PREFIX/$version/CFX/tools/qwtpolar-1.1.1/linx64/lib
prepend-path LD_LIBRARY_PATH $PREFIX/$version/CFX/tools/xerces-3.2.2/linx64/lib
# Lumerical
prepend-path LD_LIBRARY_PATH $PREFIX/$version/lumerical/$version/lib/
# RSM
prepend-path PATH $PREFIX/$version/RSM/Config/tools/linux

31
Tools/redis/build Executable file
View File

@@ -0,0 +1,31 @@
#!/usr/bin/env modbuild
pbuild::add_to_group 'Tools'
pbuild::set_download_url \
"https://github.com/redis/redis/archive/${V_PKG}.tar.gz"
pbuild::compile_in_sourcetree
pbuild::install_docfiles \
00-RELEASENOTES \
BUGS \
CODE_OF_CONDUCT.md \
CONTRIBUTING.md \
COPYING \
INSTALL \
MANIFESTO \
README.md \
SECURITY.md \
TLS.md
pbuild::configure() { :; }
pbuild::install() {
make PREFIX="${PREFIX}" install
}
# Local Variables:
# mode: sh
# sh-basic-offset: 8
# tab-width: 8
# End:

View File

@@ -0,0 +1,2 @@
redis/7.0.12 stable

16
Tools/redis/modulefile Normal file
View File

@@ -0,0 +1,16 @@
#%Pmodule
module-whatis "open source, in-memory data store"
module-url "https://redis.io"
module-license "GNUPLOT_DIR/share/doc/redis/COPYING"
module-maintainer "Achim Gsell <achim.gsell@psi.ch>"
module-help "
Redis is an open source (BSD licensed), in-memory data structure store used
as a database, cache, message broker, and streaming engine. Redis provides
data structures such as strings, hashes, lists, sets, sorted sets with range
queries, bitmaps, hyperloglogs, geospatial indexes, and streams. Redis has
built-in replication, Lua scripting, LRU eviction, transactions, and different
levels of on-disk persistence, and provides high availability via Redis
Sentinel and automatic partitioning with Redis Cluster.
"