From nobody Tue Dec 13 03:47:41 2022 X-Original-To: dev-commits-ports-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4NWPb15g08z4jg07; Tue, 13 Dec 2022 03:47:41 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4NWPb155GVz3y22; Tue, 13 Dec 2022 03:47:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1670903261; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=RHy7wa4tvIeD0zthvAOOF7bcILkz8veD0P3FrXBIm5c=; b=ZJlCvvsi4Mz3MJadAEbDjYnzDN2F4OqaMyG7NcCWa7xfrqKIdAHHcbUcmOcOgx0TvQbDxw UH0z7WxAS1r2v4rW6/Akvg+Pe/xp1AcYESvbNJnSRalfJLMK/MR+N4GDhxDuJItX7v5pow eCvPjdoTf5ZZvUcUunXhykeNrC1TpTISiQocy7QHvJYItZlmiUZQtKqYjy9R2+Nm1hxz16 715erO6ay4qpUCTxbeJGQVDo/YjKSRVfidtd3rhYJRFBCPuW6TskoLS3+TuPlosUCADz0i zP5VZga+Fs8M9+uy129QvFV6ibQQz+fBLGra+TBUMtgbZgrN0SeLBCXn88rhhg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1670903261; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=RHy7wa4tvIeD0zthvAOOF7bcILkz8veD0P3FrXBIm5c=; b=s29ExPCpvgVxUq0s73jWn7k05Dhh2AbDZu8yx/XcqOlHfItzWRdsUKLYyWvHwd4dBJWm+i KjNNJf68iRJ29KwA+fmA6vnTkF7pLEzsLU+wJ65hWLNxNguWTc2EINxxYrLIAwrF8ikHlF mF1DXlpnx5XdJMOal3MxzCj4MNgDoFZnl/FbouRzM/WnJqePebZuIijEjNVqNV4A+VcYCD /ziZRGrR4Ba6HQOV28m3spDcyN1lGaXgu5FN29uCFg6RLT1NIR0nBmDuudpG5i1OxtD5th JfFxTq3AdxMtYEMic/myrQF8sJIn4IUCmWsH0hclg7LCS2h6dVv3cmrQeypxyQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1670903261; a=rsa-sha256; cv=none; b=ZMBlbZyz4so+Fe4nDBi2Fv+ZUaQLuyMewYN5Fn5bGGuKLGSYGEdR2UtPykzsJYpL3JIUdd QSBElt82XZoaDszJ+B/ig+dFgbw7SbOFWcf036HghN4HC0vMQAdCCZt29dQJkdGtg1NdaV VIMlrk9LF7xZH9+CyxL9uSQXakwvrqppMQlWib6LD+SguOHzADaBcZdrObcQcNEBYCLR5x zS2Zzm86wWKpoYWclFgbgBCmGDjQAkzQCrCNL2ntb659bTbm6by5/QJKPFg4wHboI2ZIX4 tLlsNHouQLxbfpopE3VQYHcQDBHF6ZEaFYuBBVE+sa9QeYWUyfocTECsxPi35Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4NWPb145DKz10Zk; Tue, 13 Dec 2022 03:47:41 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 2BD3lful004821; Tue, 13 Dec 2022 03:47:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 2BD3lfFa004820; Tue, 13 Dec 2022 03:47:41 GMT (envelope-from git) Date: Tue, 13 Dec 2022 03:47:41 GMT Message-Id: <202212130347.2BD3lfFa004820@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Yuri Victorovich Subject: git: ac7e0fd8fa86 - main - science/elk: Update 8.5.10 -> 8.6.7 List-Id: Commit messages for all branches of the ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-ports-all@freebsd.org X-BeenThere: dev-commits-ports-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: yuri X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ac7e0fd8fa86143b4c735c47e9d9142f1b71e093 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by yuri: URL: https://cgit.FreeBSD.org/ports/commit/?id=ac7e0fd8fa86143b4c735c47e9d9142f1b71e093 commit ac7e0fd8fa86143b4c735c47e9d9142f1b71e093 Author: Yuri Victorovich AuthorDate: 2022-12-12 15:44:12 +0000 Commit: Yuri Victorovich CommitDate: 2022-12-13 03:47:34 +0000 science/elk: Update 8.5.10 -> 8.6.7 Also add MPI options. --- science/elk/Makefile | 29 +++++--- science/elk/distinfo | 6 +- science/elk/files/make.inc.in | 133 +++++++++++++++++++++++++++++++---- science/elk/files/patch-src_Makefile | 11 +++ 4 files changed, 156 insertions(+), 23 deletions(-) diff --git a/science/elk/Makefile b/science/elk/Makefile index ef559b466844..3696349faf84 100644 --- a/science/elk/Makefile +++ b/science/elk/Makefile @@ -1,5 +1,5 @@ PORTNAME= elk -DISTVERSION= 8.5.10 +DISTVERSION= 8.6.7 CATEGORIES= science MASTER_SITES= SF/${PORTNAME}/ PKGNAMESUFFIX= -chemistry @@ -12,9 +12,14 @@ WWW= http://elk.sourceforge.net/ LICENSE= GPLv3 LICENSE_FILE= ${WRKSRC}/COPYING -LIB_DEPENDS= libblis.so:math/blis \ +LIB_DEPENDS= libblas.so:math/blas \ + libblis.so:math/blis \ + libfftw3.so:math/fftw3 \ + libfftw3f.so:math/fftw3-float \ + liblapack.so:math/lapack \ libopenblas.so:math/openblas \ - libwannier.so:science/wannier90 + libwannier.so:science/wannier90 \ + libxc.so:science/libxc USES= fortran gmake tar:tgz @@ -22,14 +27,22 @@ BINARY_ALIAS= make=${GMAKE} LDFLAGS+= ${LOCALBASE}/lib/gcc${GCC_DEFAULT}/libgcc_s.so -OPTIONS_GROUP= PARALLEL -OPTIONS_GROUP_PARALLEL= OPENMP MPI -OPTIONS_DEFINE= DOCS EXAMPLES -OPTIONS_DEFAULT= ${OPTIONS_GROUP_PARALLEL} +OPTIONS_DEFINE= DOCS EXAMPLES NATIVE OPENMP +OPTIONS_RADIO= MPI +OPTIONS_RADIO_MPI= MPICH OPENMPI +OPTIONS_DEFAULT= OPENMP MPICH PARALLEL_DESC= Enable parallelizations: +NATIVE_MAKE_ARGS= FFLAGS="${FFLAGS} -march=native -mtune=native" +NATIVE_VARS= FFLAGS="-march=native -mtune=native" + OPENMP_VARS= OPENMP_FLAGS=-fopenmp -MPI_RUN_DEPENDS= mpirun:net/mpich + +MPICH_USES= mpi:mpich +MPICH_MAKE_ARGS= F90=${MPIF90} + +OPENMPI_USES= mpi:openmpi +OPENMPI_MAKE_ARGS= F90=${MPIF90} PORTDOCS= * PORTEXAMPLES= * diff --git a/science/elk/distinfo b/science/elk/distinfo index 5514be0a28c4..0d3f3d1db8b0 100644 --- a/science/elk/distinfo +++ b/science/elk/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1664142665 -SHA256 (elk-chemistry/elk-8.5.10.tgz) = 41d6ff3715c26c7aff50df57d259c03df58abd4a04ad02c8ab76b962643b0c7b -SIZE (elk-chemistry/elk-8.5.10.tgz) = 4134441 +TIMESTAMP = 1670840855 +SHA256 (elk-chemistry/elk-8.6.7.tgz) = d685be1a8e401875646c80204addcdd6b93952ab8d1e821d512be903b38479a4 +SIZE (elk-chemistry/elk-8.6.7.tgz) = 3764657 diff --git a/science/elk/files/make.inc.in b/science/elk/files/make.inc.in index 7cc517f7179a..d5b45646acce 100644 --- a/science/elk/files/make.inc.in +++ b/science/elk/files/make.inc.in @@ -1,16 +1,125 @@ MAKE = %%GMAKE%% -F90 = %%FC%% -F90_OPTS = -O3 -ffast-math -funroll-loops %%OPENMP_FLAGS%% %%FCFLAGS%% -F77 = %%FC%% -F77_OPTS = -O3 -ffast-math -funroll-loops %%OPENMP_FLAGS%% AR = ar -LIB_SYS = -lopenblas -lblis -LIB_LPK = lapack.a blas.a -LIB_FFT = fftlib.a -LIB_W90 = -lwannier -SRC_OMP = + + +# Elk requires BLAS/LAPACK and fast Fourier transform (FFT) libraries. + +# We recommend using optimised, mutithreaded BLAS/LAPACK libaries such as those +# provided by the Intel Math Kernel Library (MKL), OpenBLAS or BLIS. + +# Elk can use either the Fastest Fourier Transform in the West (FFTW) or the +# MKL FFT. Both single and double precision versions of the FFT are needed. + + + +#------------------------------------------------------------------------------# +# Libraries # +#------------------------------------------------------------------------------# + +#------------------------------------------------------------------------------- SRC_MKL = mkl_stub.f90 -SRC_MPI = mpi_stub.f90 -SRC_libxc = libxcifc_stub.f90 -SRC_FFT = zfftifc.f90 +# To enable MKL multithreaded parallelism, uncomment the following line and link +# with the MKL library. +#SRC_MKL = +#------------------------------------------------------------------------------- + +#------------------------------------------------------------------------------- +SRC_OBLAS = oblas_stub.f90 +# To enable OpenBLAS multithreaded parallelism, uncomment the following line and +# link with the OpenBLAS library. +#SRC_OBLAS = +#------------------------------------------------------------------------------- + +#------------------------------------------------------------------------------- +SRC_BLIS = blis_stub.f90 +# To enable BLIS multithreaded parallelism, uncomment the following line and +# link with the BLIS library. +#SRC_BLIS = +#------------------------------------------------------------------------------- + +#------------------------------------------------------------------------------- +# If your compiler does *not* support the Message Passing Interface (MPI) then +# uncomment the line below. +#SRC_MPI = mpi_stub.f90 +#------------------------------------------------------------------------------- + +#------------------------------------------------------------------------------- +# Elk supports two FFT libraries: +# Fastest Fourier Transform in the West (FFTW) +# Intel Math Kernel Library (MKL) Fast Fourier Transform +# +# FFTW is enabled by default with: +SRC_FFT = zfftifc_fftw.f90 cfftifc_fftw.f90 +# +# To enable MKL FFT instead, copy mkl_dfti.f90 to the elk/src directory and +# uncomment the line below. +#SRC_FFT = mkl_dfti.f90 zfftifc_mkl.f90 cfftifc_mkl.f90 +#------------------------------------------------------------------------------- + +#------------------------------------------------------------------------------- +SRC_LIBXC = libxcifc_stub.f90 +# To enable Libxc first download and compile version 5.x of the library. Next +# copy the files libxcf90.a and libxc.a to the elk/src directory and uncomment +# the following lines. +LIB_LIBXC = -lxcf90 -lxc +SRC_LIBXC = libxcf90.f90 libxcifc.f90 +#------------------------------------------------------------------------------- + +#------------------------------------------------------------------------------- +SRC_W90S = w90_stub.f90 +# To enable the Wannier90 library copy libwannier.a to the elk/src directory and +# uncomment the following lines. +#SRC_W90S = +#LIB_W90 = libwannier.a +#------------------------------------------------------------------------------- + + + +#------------------------------------------------------------------------------# +# Compilers # +#------------------------------------------------------------------------------# + +#------------------------------------------------------------------------------- +# Intel MPI Fortran version 18 and later. +#F90 = %%FC%% +#F90_OPTS = -O3 %%OPENMP_FLAGS%% %%FCFLAGS%% +#F90_LIB = -liomp5 -lpthread -lm -ldl +#SRC_MKL = +#AR = xiar +#------------------------------------------------------------------------------- + +#------------------------------------------------------------------------------- +# GNU Fortran compiler with MKL. +F90 = +F90_OPTS = $(FFLAGS) -Ofast -fomit-frame-pointer -fopenmp -ffpe-summary=none -fallow-argument-mismatch +F90_LIB = -llapack -lblas -lfftw3 -lfftw3f -pthread +SRC_MKL = +#------------------------------------------------------------------------------- + +#------------------------------------------------------------------------------- +# GNU Fortran compiler with OpenBLAS, LAPACK and FFTW +#F90 = mpif90 +#F90_OPTS = -Ofast -march=native -mtune=native -fomit-frame-pointer -fopenmp -ffpe-summary=none -fallow-argument-mismatch +#F90_LIB = -lopenblas -llapack -lfftw3 +#SRC_OBLAS = +#------------------------------------------------------------------------------- + +#------------------------------------------------------------------------------- +# Intel Fortran debugging and profiling options. +#F90 = mpiifort +#F90_OPTS = -O3 -qopenmp -mkl=parallel -pg +#F90_LIB = -liomp5 -lpthread -lm -ldl +#SRC_MKL = +#AR = ar +#------------------------------------------------------------------------------- + +#------------------------------------------------------------------------------- +# GNU Fortran debugging options. +#F90 = gfortran +#F90_OPTS = -O3 -Wunused -fopenmp +#F90_LIB = -lmkl_gf_lp64 -lmkl_gnu_thread -lmkl_core -lpthread +#SRC_MKL = +#SRC_MPI = mpi_stub.f90 +#------------------------------------------------------------------------------- + diff --git a/science/elk/files/patch-src_Makefile b/science/elk/files/patch-src_Makefile new file mode 100644 index 000000000000..737384e87c1d --- /dev/null +++ b/science/elk/files/patch-src_Makefile @@ -0,0 +1,11 @@ +--- src/Makefile.orig 2022-12-12 11:05:38 UTC ++++ src/Makefile +@@ -91,7 +91,7 @@ SRC_main1 = \ + rfcopy.f90 rhomagv.f90 eveqn.f90 genffacgp.f90 unitary.f90 zmdet.f90 \ + rfmtftoc.f90 zminv.f90 symrf.f90 genvmat.f90 writeeval.f90 mixerifc.f90 \ + splinew.f90 nfftifc.f90 batchdv.f90 readevalsv.f90 readoccsv.f90 z2mm.f90 \ +- z2mctm.f90 z2mmct.f90 zmctmu.f90 zmctm.f90 ++ z2mctm.f90 z2mmct.f90 zmctmu.f90 zmctm.f90 mkl_stub.f90 + + SRC_main = $(SRC_main0) $(SRC_main1) +