Changeset View
Changeset View
Standalone View
Standalone View
head/science/lammps/Makefile
# $FreeBSD$ | # $FreeBSD$ | ||||
PORTNAME= lammps | PORTNAME= lammps | ||||
PORTVERSION= ${GH_TAGNAME:C/(stable|patch)_([0-9]{1,2})([A-Z][a-z][a-z])([0-9]{4})/\4.\3.\2/S/Jan/01/S/Feb/02/S/Mar/03/S/Apr/04/S/May/05/S/Jun/06/S/Jul/07/S/Aug/08/S/Sep/09/S/Oct/10/S/Nov/11/S/Dec/12/} | PORTVERSION= ${GH_TAGNAME:C/(stable|patch)_([0-9]{1,2})([A-Z][a-z][a-z])([0-9]{4})/\4.\3.\2/S/Jan/01/S/Feb/02/S/Mar/03/S/Apr/04/S/May/05/S/Jun/06/S/Jul/07/S/Aug/08/S/Sep/09/S/Oct/10/S/Nov/11/S/Dec/12/} | ||||
PORTREVISION= 1 | |||||
CATEGORIES= science | CATEGORIES= science | ||||
MAINTAINER= yuri@FreeBSD.org | MAINTAINER= yuri@FreeBSD.org | ||||
COMMENT= Classical molecular dynamics code with a focus on materials modeling | COMMENT= Classical molecular dynamics code with a focus on materials modeling | ||||
LICENSE= GPLv2 | LICENSE= GPLv2 | ||||
LICENSE_FILE= ${WRKSRC}/LICENSE | LICENSE_FILE= ${WRKSRC}/LICENSE | ||||
BROKEN_i386= undefined reference to `__atomic_load' | BROKEN_i386= undefined reference to `__atomic_load' | ||||
CONFLICTS_BUILD= ga # conflicts with include/error.h, already fixed in the head | CONFLICTS_BUILD= ga # conflicts with include/error.h, already fixed in the head | ||||
USES= blaslapack:openblas cmake:noninja eigen:3 fortran localbase:ldflags shebangfix | USES= blaslapack:openblas cmake:noninja eigen:3 fortran localbase:ldflags shebangfix | ||||
USE_GITHUB= yes | USE_GITHUB= yes | ||||
GH_TAGNAME= patch_20Nov2019 | GH_TAGNAME= patch_20Nov2019 | ||||
SHEBANG_GLOB= *.sh *.bash | SHEBANG_GLOB= *.sh *.bash | ||||
SHEBANG_FILES= lib/kokkos/bin/nvcc_wrapper | SHEBANG_FILES= lib/kokkos/bin/nvcc_wrapper | ||||
CMAKE_SOURCE_PATH= ${WRKSRC}/cmake | CMAKE_SOURCE_PATH= ${WRKSRC}/cmake | ||||
CMAKE_ARGS= -DBLA_VENDOR:STRING="OpenBLAS" | CMAKE_ARGS= -DBLA_VENDOR:STRING="OpenBLAS" ${CMAKE_ARGS_${CHOSEN_COMPILER_TYPE}} | ||||
CMAKE_ARGS_gcc= -DBUILD_OMP:BOOL=false | |||||
OPTIONS_DEFINE= JPEG PNG GZIP FFMPEG VORONOI LATTE | OPTIONS_DEFINE= JPEG PNG GZIP FFMPEG VORONOI LATTE | ||||
OPTIONS_DEFINE_clang= OPENMP | |||||
OPTIONS_GROUP= PARALLEL | OPTIONS_GROUP= PARALLEL | ||||
OPTIONS_GROUP_PARALLEL= MPI OPENMP | OPTIONS_GROUP_PARALLEL= MPI ${OPTIONS_DEFINE_${CHOSEN_COMPILER_TYPE}} | ||||
OPTIONS_DEFAULT= MPI OPENMP JPEG PNG GZIP FFMPEG VORONOI LATTE | OPTIONS_DEFAULT= MPI JPEG PNG GZIP FFMPEG VORONOI LATTE ${OPTIONS_DEFAULT_${CHOSEN_COMPILER_TYPE}} | ||||
OPTIONS_DEFAULT_clang= OPENMP | |||||
PARALLEL_DESC= Enable parallelizations: | PARALLEL_DESC= Enable parallelizations: | ||||
MPI_CMAKE_BOOL= BUILD_MPI | MPI_CMAKE_BOOL= BUILD_MPI | ||||
MPI_LIB_DEPENDS= libmpi.so:net/openmpi | MPI_LIB_DEPENDS= libmpi.so:net/openmpi | ||||
MPI_USES= compiler:c11 | |||||
OPENMP_USES= localbase | |||||
OPENMP_CMAKE_BOOL= BUILD_OMP | |||||
OPENMP_LIB_DEPENDS= libomp.so:devel/openmp | |||||
FFMPEG_BUILD_DEPENDS= ffmpeg:multimedia/ffmpeg | FFMPEG_BUILD_DEPENDS= ffmpeg:multimedia/ffmpeg | ||||
FFMPEG_RUN_DEPENDS= ffmpeg:multimedia/ffmpeg | FFMPEG_RUN_DEPENDS= ffmpeg:multimedia/ffmpeg | ||||
JPEG_CMAKE_BOOL= WITH_JPEG | JPEG_CMAKE_BOOL= WITH_JPEG | ||||
JPEG_USES= jpeg | JPEG_USES= jpeg | ||||
PNG_CMAKE_BOOL= WITH_PNG | PNG_CMAKE_BOOL= WITH_PNG | ||||
PNG_LIB_DEPENDS= libpng.so:graphics/png | PNG_LIB_DEPENDS= libpng.so:graphics/png | ||||
GZIP_CMAKE_BOOL= WITH_GZIP | GZIP_CMAKE_BOOL= WITH_GZIP | ||||
FFMPEG_CMAKE_BOOL= WITH_FFMPEG | FFMPEG_CMAKE_BOOL= WITH_FFMPEG | ||||
VORONOI_DESC= Use voro++, Voronoi tessellation package | VORONOI_DESC= Use voro++, Voronoi tessellation package | ||||
VORONOI_CMAKE_BOOL= PKG_VORONOI | VORONOI_CMAKE_BOOL= PKG_VORONOI | ||||
VORONOI_LIB_DEPENDS= libvoro++.so:science/voro++ | VORONOI_LIB_DEPENDS= libvoro++.so:science/voro++ | ||||
LATTE_DESC= Use LATTE package | LATTE_DESC= Use LATTE package | ||||
LATTE_CMAKE_BOOL= PKG_LATTE | LATTE_CMAKE_BOOL= PKG_LATTE | ||||
LATTE_LIB_DEPENDS= liblatte.so:science/latte | LATTE_LIB_DEPENDS= liblatte.so:science/latte | ||||
PORTSCOUT= ignore # due to a special version tagging scheme that this project uses portscout fails to find new versions, watching their GitHub release page instead | PORTSCOUT= ignore # due to a special version tagging scheme that this project uses portscout fails to find new versions, watching their GitHub release page instead | ||||
.include <bsd.port.options.mk> | |||||
.if ${PORT_OPTIONS:MOPENMP} | |||||
USES+= localbase | |||||
CMAKE_ARGS+= -DBUILD_OMP:BOOL=true | |||||
LIB_DEPENDS+= libomp.so:devel/openmp | |||||
.endif | |||||
post-patch: | post-patch: | ||||
@${REINPLACE_CMD} 's|SHELL = /bin/bash|SHELL = ${LOCALBASE}/bin/bash|' ${WRKSRC}/src/Makefile | @${REINPLACE_CMD} 's|SHELL = /bin/bash|SHELL = ${LOCALBASE}/bin/bash|' ${WRKSRC}/src/Makefile | ||||
post-patch-FFMPEG-off: | post-patch-FFMPEG-off: | ||||
@${REINPLACE_CMD} 's|find_program(FFMPEG_EXECUTABLE|#&|' ${WRKSRC}/cmake/CMakeLists.txt | @${REINPLACE_CMD} 's|find_program(FFMPEG_EXECUTABLE|#&|' ${WRKSRC}/cmake/CMakeLists.txt | ||||
.include <bsd.port.mk> | .include <bsd.port.mk> |