From owner-svn-ports-head@freebsd.org Thu Sep 13 00:26:43 2018 Return-Path: Delivered-To: svn-ports-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C3C5110A0AD1; Thu, 13 Sep 2018 00:26:42 +0000 (UTC) (envelope-from yuri@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 7304C78F47; Thu, 13 Sep 2018 00:26:42 +0000 (UTC) (envelope-from yuri@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 5F379612E; Thu, 13 Sep 2018 00:26:42 +0000 (UTC) (envelope-from yuri@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id w8D0Qg1R018187; Thu, 13 Sep 2018 00:26:42 GMT (envelope-from yuri@FreeBSD.org) Received: (from yuri@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id w8D0Qf0Q018184; Thu, 13 Sep 2018 00:26:41 GMT (envelope-from yuri@FreeBSD.org) Message-Id: <201809130026.w8D0Qf0Q018184@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: yuri set sender to yuri@FreeBSD.org using -f From: Yuri Victorovich Date: Thu, 13 Sep 2018 00:26:41 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r479657 - in head/science/dftbplus: . files X-SVN-Group: ports-head X-SVN-Commit-Author: yuri X-SVN-Commit-Paths: in head/science/dftbplus: . files X-SVN-Commit-Revision: 479657 X-SVN-Commit-Repository: ports MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-ports-head@freebsd.org X-Mailman-Version: 2.1.27 Precedence: list List-Id: SVN commit messages for the ports tree for head List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Sep 2018 00:26:43 -0000 Author: yuri Date: Thu Sep 13 00:26:41 2018 New Revision: 479657 URL: https://svnweb.freebsd.org/changeset/ports/479657 Log: science/dftbplus: Fix ARPACK handling; Link with clang; etc * ARPACK option is for non-MPI build only * Make it link using clang * Add openmp dependency Added: head/science/dftbplus/files/patch-make.arch (contents, props changed) Modified: head/science/dftbplus/Makefile head/science/dftbplus/files/patch-make.config Modified: head/science/dftbplus/Makefile ============================================================================== --- head/science/dftbplus/Makefile Wed Sep 12 22:57:48 2018 (r479656) +++ head/science/dftbplus/Makefile Thu Sep 13 00:26:41 2018 (r479657) @@ -2,6 +2,7 @@ PORTNAME= dftbplus DISTVERSION= 18.2 +PORTREVISION= 1 CATEGORIES= science MAINTAINER= yuri@FreeBSD.org @@ -10,7 +11,8 @@ COMMENT= Package for performing fast atomistic simulat LICENSE= GPLv3+ LIB_DEPENDS= libblas.so:math/blas \ - liblapack.so:math/lapack + liblapack.so:math/lapack \ + libomp.so:devel/openmp RUN_DEPENDS= ${PYNUMPY} USES= fortran gmake python shebangfix @@ -23,18 +25,15 @@ GH_TUPLE= dftbplus:mpifx:099ff75:mpifx/external/mpifx/ dftbplus:dftd3-lib:00504a9:dftd3/external/dftd3/origin MAKEFILE= makefile -LDFLAGS+= -llapack -lblas +FFLAGS+= -I${LOCALBASE}/include +LDFLAGS+= -llapack -lblas ${LOCALBASE}/lib/gcc${GCC_DEFAULT}/libgcc_s.so ${LOCALBASE}/lib/gcc${GCC_DEFAULT}/libgfortran.so -lm ${LOCALBASE}/lib/libomp.so -MAKE_ARGS= PYTHON=${PYTHON_CMD} INSTALLDIR=${STAGEDIR}${PREFIX} FREEBSD_PYDISTUTILS_INSTALLARGS="${PYDISTUTILS_INSTALLARGS} --root=${STAGEDIR}" +MAKE_ARGS= PYTHON=${PYTHON_CMD} FC=${FC} FXX=${FC} LN=${CC} \ + INSTALLDIR=${STAGEDIR}${PREFIX} FREEBSD_PYDISTUTILS_INSTALLARGS="${PYDISTUTILS_INSTALLARGS} --root=${STAGEDIR}" -OPTIONS_DEFINE= ARPACK DFTD3 MPI SOCKETS -OPTIONS_DEFAULT= ARPACK DFTD3 MPI SOCKETS +OPTIONS_DEFINE= DFTD3 MPI SOCKETS ARPACK +OPTIONS_DEFAULT= DFTD3 MPI SOCKETS -ARPACK_DESC= Build with ARPACK for large eigenvalue problems -ARPACK_MAKE_ENV= WITH_ARPACK=1 -ARPACK_MAKE_ENV_OFF= WITH_ARPACK=0 -LIB_LIB_DEPENDS= libarpack.so:math/arpack - DFTD3_DESC= Build with libdft3 DFTD3_MAKE_ENV= WITH_DFTD3=1 DFTD3_MAKE_ENV_OFF= WITH_DFTD3=0 @@ -43,16 +42,24 @@ MPI_MAKE_ENV= WITH_MPI=1 MPI_MAKE_ENV_OFF= WITH_MPI=0 MPI_LIB_DEPENDS= libmpich.so:net/mpich2 \ libscalapack.so:math/scalapack +MPI_LDFLAGS= ${LOCALBASE}/lib/libmpich.so SOCKETS_DESC= Build with sockets library SOCKETS_MAKE_ENV= WITH_SOCKETS=1 SOCKETS_MAKE_ENV_OFF= WITH_SOCKETS=0 SOCKETS_BINARY_ALIAS= gcc=${CC} +ARPACK_DESC= Build with ARPACK for large eigenvalue problems +ARPACK_MAKE_ENV= WITH_ARPACK=1 +ARPACK_MAKE_ENV_OFF= WITH_ARPACK=0 +ARPACK_LIB_DEPENDS= libarpack.so:math/arpack +ARPACK_PREVENTS= MPI # ARPACK is only used in a single-core application + MAKE_JOBS_UNSAFE= yes # race conditions when some options are ON -post-patch: - @cd ${WRKSRC} && ${LN} -s sys/make.x86_64-linux-gnu make.arch +post-extract: + @${RM} ${WRKSRC}/external/scalapackfx/origin/test/psyr_result.dat.orig + @cd ${WRKSRC} && ${CP} sys/make.x86_64-linux-gnu make.arch post-install: @cd ${STAGEDIR}${PREFIX}/bin && ${STRIP_CMD} dftb+ modes waveplot Added: head/science/dftbplus/files/patch-make.arch ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/science/dftbplus/files/patch-make.arch Thu Sep 13 00:26:41 2018 (r479657) @@ -0,0 +1,57 @@ +--- make.arch.orig 2018-09-12 23:49:19 UTC ++++ make.arch +@@ -13,17 +13,17 @@ FXX = mpif90 + CC = gcc + + # Compiler options +-FXXOPT = -O2 -funroll-all-loops -fopenmp +-CCOPT = -O2 -funroll-all-loops -fall-intrinsics ++FXXOPT = $(FFLAGS) -funroll-all-loops -fopenmp ++CCOPT = $(CFLAGS) -funroll-all-loops -fall-intrinsics + + # Linker + LN = $(FXX) +-LNOPT = -fopenmp ++LNOPT = $(LDFLAGS) -fopenmp + + # How to link specific libraries + + # ScaLAPACK +-SCALAPACKDIR = /usr/lib ++SCALAPACKDIR = $(PREFIX) + LIB_SCALAPACK = -L$(SCALAPACKDIR) -lscalapack + + # LAPACK/BLAS +@@ -49,12 +49,12 @@ FXX = gfortran + CC = gcc + + # Compiler options +-FXXOPT = -O2 -funroll-all-loops -fopenmp +-CCOPT = -O2 -funroll-all-loops -fall-intrinsics ++FXXOPT = $(FFLAGS) -funroll-all-loops -fopenmp ++CCOPT = $(CFLAGS) -funroll-all-loops -fall-intrinsics + + # Linker + LN = $(FXX) +-LNOPT = -fopenmp ++LNOPT = $(LDFLAGS) -fopenmp + + # How to link specific libraries + +@@ -88,12 +88,12 @@ LIBOPT = + # Override options for different DEBUG modes + ifeq ($(strip $(DEBUG)),1) + OTHERLIBS = +- FXXOPT = -fopenmp -g -Wall -std=f2008 -pedantic +- CCOPT = -g -Wall -pedantic -fall-intrinsics ++ FXXOPT = $(FFLAGS) -fopenmp -g -Wall -std=f2008 -pedantic ++ CCOPT = $(CFLAGS) -g -Wall -pedantic -fall-intrinsics + endif + + ifeq ($(strip $(DEBUG)),2) + OTHERLIBS = +- FXXOPT = -fopenmp -g -Wall -std=f2008 -pedantic -fbounds-check +- CCOPT = -g -Wall -pedantic -fall-intrinsics -fbounds-check ++ FXXOPT = $(FFLAGS) -fopenmp -g -Wall -std=f2008 -pedantic -fbounds-check ++ CCOPT = $(CFLAGS) -g -Wall -pedantic -fall-intrinsics -fbounds-check + endif Modified: head/science/dftbplus/files/patch-make.config ============================================================================== --- head/science/dftbplus/files/patch-make.config Wed Sep 12 22:57:48 2018 (r479656) +++ head/science/dftbplus/files/patch-make.config Thu Sep 13 00:26:41 2018 (r479657) @@ -24,7 +24,7 @@ ################################################################################ # General building/testing options -@@ -55,8 +55,8 @@ COMPILE_DFTD3 := 1 +@@ -55,12 +55,12 @@ COMPILE_DFTD3 := 1 # Set the compile time include and the link time library options for # dftd3-lib. Ignored if WITH_DFTD3 has been disabled or COMPILE_DFTD3 enabled. @@ -35,3 +35,8 @@ # Link time library options for linking ARPACK. Ignored if WITH_ARPACK was # disabled. +-ARPACK_LIBS := -larpack ++ARPACK_LIBS := $(PREFIX)/lib/libarpack.so + + # Whether ARPACK depends on the external LAPACK and BLAS libraries + ARPACK_NEEDS_LAPACK := 0