math/spfft: New port: Sparse 3D FFT library

This commit is contained in:
Yuri Victorovich 2022-08-26 00:52:35 -07:00
parent 4e5d821aa7
commit 867a79859d
5 changed files with 96 additions and 0 deletions

View file

@ -1062,6 +1062,7 @@
SUBDIR += spblas
SUBDIR += spectra
SUBDIR += speedcrunch
SUBDIR += spfft
SUBDIR += spooles
SUBDIR += spooles-mpich
SUBDIR += spot

49
math/spfft/Makefile Normal file
View file

@ -0,0 +1,49 @@
PORTNAME= spfft
DISTVERSIONPREFIX= v
DISTVERSION= 1.0.6
CATEGORIES= math
MAINTAINER= yuri@FreeBSD.org
COMMENT= Sparse 3D FFT library
LICENSE= BSD3CLAUSE
LICENSE_FILE= ${WRKSRC}/LICENSE
LIB_DEPENDS= libfftw3.so:math/fftw3
USES= cmake:testing compiler:c++11-lang
USE_LDCONFIG= yes
USE_GITHUB= yes
GH_ACCOUNT= eth-cscs
GH_PROJECT= SpFFT
CMAKE_TESTING_ON= SPFFT_BUILD_TESTS
CMAKE_TESTING_TARGET= ${ALL_TARGET}
OPTIONS_DEFINE= FORTRAN OPENMP
OPTIONS_SINGLE= MPI
OPTIONS_SINGLE_MPI= NOMPI MPICH OPENMPI
OPTIONS_DEFAULT= FORTRAN MPICH OPENMP
OPTIONS_SUB= yes
FORTRAN_USES= fortran
FORTRAN_CMAKE_BOOL= SPFFT_FORTRAN
NOMPI_DESC= Build without parallel processing support
NOMPI_CMAKE_ON= -DSPFFT_MPI=OFF
MPICH_USES= mpi:mpich
MPICH_CMAKE_ON= -DSPFFT_MPI=ON
OPENMPI_USES= mpi:openmpi
OPENMPI_CMAKE_ON= -DSPFFT_MPI=ON
OPENMP_CMAKE_BOOL= SPFFT_OMP
post-test:
@cd ${BUILD_WRKSRC}/tests && \
./run_local_tests && \
./run_mpi_tests
.include <bsd.port.mk>

3
math/spfft/distinfo Normal file
View file

@ -0,0 +1,3 @@
TIMESTAMP = 1661499073
SHA256 (eth-cscs-SpFFT-v1.0.6_GH0.tar.gz) = d179ccdce65890587d0cbf72dc2e5ec0b200ffc56e723ed01a2f5063de6a8630
SIZE (eth-cscs-SpFFT-v1.0.6_GH0.tar.gz) = 372347

4
math/spfft/pkg-descr Normal file
View file

@ -0,0 +1,4 @@
SpFFT - A 3D FFT library for sparse frequency domain data written in C++ with
support for MPI, OpenMP, CUDA and ROCm.
WWW: https://github.com/eth-cscs/SpFFT

39
math/spfft/pkg-plist Normal file
View file

@ -0,0 +1,39 @@
include/spfft/config.h
include/spfft/errors.h
include/spfft/exceptions.hpp
include/spfft/grid.h
include/spfft/grid.hpp
include/spfft/grid_float.h
include/spfft/grid_float.hpp
include/spfft/multi_transform.h
include/spfft/multi_transform.hpp
include/spfft/multi_transform_float.h
include/spfft/multi_transform_float.hpp
include/spfft/spfft.f90
include/spfft/spfft.h
include/spfft/spfft.hpp
%%FORTRAN%%include/spfft/spfft.mod
include/spfft/spfft_export.h
include/spfft/transform.h
include/spfft/transform.hpp
include/spfft/transform_float.h
include/spfft/transform_float.hpp
include/spfft/types.h
lib/cmake/SpFFT/SpFFTConfig.cmake
lib/cmake/SpFFT/SpFFTConfigVersion.cmake
lib/cmake/SpFFT/SpFFTSharedConfig.cmake
lib/cmake/SpFFT/SpFFTSharedConfigVersion.cmake
lib/cmake/SpFFT/SpFFTSharedTargets-%%CMAKE_BUILD_TYPE%%.cmake
lib/cmake/SpFFT/SpFFTSharedTargets.cmake
lib/cmake/SpFFT/SpFFTTargets.cmake
lib/cmake/SpFFT/modules/FindARMPL.cmake
lib/cmake/SpFFT/modules/FindFFTW.cmake
lib/cmake/SpFFT/modules/FindFFTWF.cmake
lib/cmake/SpFFT/modules/FindHIP.cmake
lib/cmake/SpFFT/modules/FindHIP/run_hipcc.cmake
lib/cmake/SpFFT/modules/FindHIP/run_make2cmake.cmake
lib/cmake/SpFFT/modules/FindMKLSequential.cmake
lib/libspfft.so
lib/libspfft.so.1
lib/libspfft.so.1.0.6
libdata/pkgconfig/SpFFT.pc