Merge branch 'lammps' into 'master'
Lammps See merge request Pmodules/buildblocks!119
This commit is contained in:
1
MPI/lammps/2020/variants
Normal file
1
MPI/lammps/2020/variants
Normal file
@@ -0,0 +1 @@
|
||||
lammps/2020.3_merlin6 unstable gcc/8.4.0 openmpi/4.0.4_slurm b:cmake/3.15.5
|
||||
5
MPI/lammps/README.txt
Normal file
5
MPI/lammps/README.txt
Normal file
@@ -0,0 +1,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
|
||||
}
|
||||
|
||||
@@ -1,2 +1,3 @@
|
||||
2018.11 patch_15Nov2018.tar.gz
|
||||
2019.8 stable_7Aug2019.tar.gz
|
||||
2020.3 lammps-3Mar20.tar.gz
|
||||
|
||||
Reference in New Issue
Block a user