Commit 002f6bbd authored by caubet_m's avatar caubet_m

Merge branch 'lammps' into 'master'

Lammps

See merge request Pmodules/buildblocks!119
parents d2539cb1 139305ec
lammps/2020.3_merlin6 unstable gcc/8.4.0 openmpi/4.0.4_slurm b:cmake/3.15.5
[27.08.2020]
* With CMake is necessary to have 'python3-virtualenv' installed. Needed for building documentation.
* Compilation for version 2020.3 with OMP, GCC v8, OpenMPI v4.0.4 works without the need of specifying '-D LAMMPS_OMP_COMPAT=4'
* More details here: https://lammps.sandia.gov/doc/Build_basics.html)
* Problems are seen with GCC v9, so is recommended to use GCC v8 for that. It was compiled with v8.
......@@ -4,80 +4,50 @@
TARNAME=$(grep -E "^${V_MAJOR}.${V_MINOR}" files/version-to-tarname.txt| awk '{print $2}')
# pbuild::set_download_url "https://gitlab.psi.ch/caubet_m/merlin-software/raw/master/$P/$P-${V_PKG}.tar.gz"
pbuild::set_download_url "https://github.com/lammps/lammps/archive/${TARNAME}"
# pbuild::set_download_url "https://github.com/lammps/lammps/archive/${TARNAME}"
pbuild::set_download_url "https://lammps.sandia.gov/tars/${TARNAME}"
pbuild::add_to_group 'MPI'
pbuild::install_docfiles README LICENSE
pbuild::compile_in_sourcetree
# pbuild::pre_configure() {
# pbuild::add_configure_args "-D CMAKE_BUILD_TYPE=RELEASE"
#
# pbuild::add_configure_args "-D BUILD_MPI=yes"
# pbuild::add_configure_args "-D BUILD_OMP=yes"
# pbuild::add_configure_args "-D PKG_USER-OMP=yes"
# pbuild::add_configure_args "-D PKG_BODY=yes"
# pbuild::add_configure_args "-D PKG_DIPOLE=yes"
# pbuild::add_configure_args "-D PKG_MOLECULE=yes"
# pbuild::add_configure_args "-D PKG_MPIIO=yes"
# pbuild::add_configure_args "-D PKG_REPLICA=yes"
# # pbuild::add_configure_args "-D PKG_REAX=yes"
# pbuild::add_configure_args "-D PKG_RIGID=yes"
# pbuild::add_configure_args "-D PKG_USER-REAXC=yes"
#
# }
# pbuild::configure() {
# cp -v "${BUILDBLOCK_DIR}/files/Makefile.PSI" "${BUILD_DIR}/src/MAKE/MINE"
# }
#
pbuild::configure() {
sed -i '/^CCFLAGS.*/ s/$/ -fopenmp/' ${BUILD_DIR}/src/MAKE/Makefile.mpi
sed -i '/^LINKFLAGS.*/ s/$/ -fopenmp/' ${BUILD_DIR}/src/MAKE/Makefile.mpi
cmake -D CMAKE_INSTALL_PREFIX="${PREFIX}" \
-D CMAKE_BUILD_TYPE=RELEASE \
-D BUILD_MPI=yes \
-D BUILD_OMP=yes \
-D BUILD_TOOLS=yes \
-D BUILD_DOC=yes \
-D LAMMPS_MACHINE=mpi \
-D PKG_USER-OMP=yes \
-D PKG_ASPHERE=yes \
-D PKG_BODY=yes \
-D PKG_COMPRESS=yes \
-D PKG_CORESHELL=yes \
-D PKG_DIPOLE=yes \
-D PKG_GRANULAR=yes \
-D PKG_MANYBODY=yes \
-D PKG_KSPACE=yes \
-D PKG_MC=yes \
-D PKG_MISC=yes \
-D PKG_MOLECULE=yes \
-D PKG_MPIIO=yes \
-D PKG_OPT=yes \
-D PKG_PYTHON=yes \
-D PKG_REPLICA=yes \
-D PKG_RIGID=yes \
-D PKG_SNAP=yes \
-D PKG_USER-EFF=yes \
-D PKG_USER-DRUDE=yes \
-D PKG_USER-REAXC=yes \
-D BUILD_SHARED_LIBS=on \
${BUILD_DIR}/../src/cmake
}
pbuild::compile() {
echo BEGIN COMPILE
cd src
# make clean-all
# make no-all
make yes-user-omp
make yes-asphere
make yes-body
make yes-compress
make yes-coreshell
make yes-dipole
make yes-granular
make yes-manybody
make yes-kspace
make yes-mc
make yes-misc
make yes-molecule
make yes-mpiio
make yes-opt
make yes-python
make yes-replica
make yes-rigid
make yes-snap
make yes-user-eff
make yes-user-drude
make yes-user-reaxc
make yes-user-reaxc args="-m serial"
make yes-user-reaxc args="-m mpi"
make mpi
echo ENDCOMPILE
cmake --build ${BUILD_DIR}
}
pbuild::install() {
install -m 0755 -d "${PREFIX}/bin"
# Modify this for installing individual binaries
install -m 0755 "${BUILD_DIR}/src/lmp_mpi" "${PREFIX}/bin/"
# Strip all present binaries
for file in $(ls ${PREFIX}/bin/lmp_*)
do
strip "$file"
done
make install
}
2018.11 patch_15Nov2018.tar.gz
2019.8 stable_7Aug2019.tar.gz
2020.3 lammps-3Mar20.tar.gz
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment