Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 25 Jun 2018 08:36:50 +0000 (UTC)
From:      Yuri Victorovich <yuri@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r473299 - in head/math: . slepc slepc/files
Message-ID:  <201806250836.w5P8aoOD035768@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: yuri
Date: Mon Jun 25 08:36:49 2018
New Revision: 473299
URL: https://svnweb.freebsd.org/changeset/ports/473299

Log:
  New port: math/slepc: Scalable Library for Eigenvalue Problem Computations

Added:
  head/math/slepc/
  head/math/slepc/Makefile   (contents, props changed)
  head/math/slepc/distinfo   (contents, props changed)
  head/math/slepc/files/
  head/math/slepc/files/patch-config_install.py   (contents, props changed)
  head/math/slepc/files/patch-makefile   (contents, props changed)
  head/math/slepc/pkg-descr   (contents, props changed)
  head/math/slepc/pkg-plist   (contents, props changed)
Modified:
  head/math/Makefile

Modified: head/math/Makefile
==============================================================================
--- head/math/Makefile	Mon Jun 25 06:59:17 2018	(r473298)
+++ head/math/Makefile	Mon Jun 25 08:36:49 2018	(r473299)
@@ -777,6 +777,7 @@
     SUBDIR += sfst
     SUBDIR += simd-viterbi
     SUBDIR += slatec
+    SUBDIR += slepc
     SUBDIR += slgrace
     SUBDIR += snns
     SUBDIR += solitaire

Added: head/math/slepc/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/math/slepc/Makefile	Mon Jun 25 08:36:49 2018	(r473299)
@@ -0,0 +1,44 @@
+# $FreeBSD$
+
+PORTNAME=	slepc
+DISTVERSION=	3.9.1
+CATEGORIES=	math devel
+MASTER_SITES=	http://slepc.upv.es/download/distrib/
+
+MAINTAINER=	yuri@FreeBSD.org
+COMMENT=	Scalable Library for Eigenvalue Problem Computations
+
+LICENSE=	BSD2CLAUSE
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+LIB_DEPENDS=	libblas.so:math/blas \
+		liblapack.so:math/lapack \
+		libmpich.so:net/mpich2 \
+		libpetsc.so:science/PETSc
+
+USES=		gmake fortran python shebangfix
+SHEBANG_FILES=	configure
+MAKEFILE=	makefile
+MAKE_ENV=	PETSC_DIR=${LOCALBASE} PETSC_ARCH="" SLEPC_DIR=${WRKSRC} FREEBSD_STAGEDIR=${STAGEDIR} PYTHON=${PYTHON_CMD}
+USE_XORG=	x11 # not really needed, but is inherited from the PETSc setup
+USE_LDCONFIG=	yes
+
+OS_VER=		${OPSYS:tl}${OSVERSION:C/(.*)...../\\1/}
+
+BINARY_ALIAS=	python=${PYTHON_CMD}
+
+OPTIONS_DEFINE=	EXAMPLES
+
+PORTEXAMPLES=	*
+
+do-configure:
+	@cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ./configure
+	@${REINPLACE_CMD} -e 's|^SLEPC_DESTDIR *=.*|SLEPC_DESTDIR = ${PREFIX}|' \
+		${WRKSRC}/installed-arch-${OS_VER}-c-debug/lib/slepc/conf/slepcvariables # otherwise it fills a wrong value for some reason
+
+post-install:
+	@${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libslepc.so.${PORTVERSION}
+	@${REINPLACE_CMD} -i '' -e 's|#!/usr/bin/env python|#!${PYTHON_CMD}|' \
+		${STAGEDIR}${PREFIX}/lib/slepc/conf/reconfigure-installed-arch-${OS_VER}-c-debug.py
+
+.include <bsd.port.mk>

Added: head/math/slepc/distinfo
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/math/slepc/distinfo	Mon Jun 25 08:36:49 2018	(r473299)
@@ -0,0 +1,3 @@
+TIMESTAMP = 1526160243
+SHA256 (slepc-3.9.1.tar.gz) = e174ea7c127d9161eef976b0288f0c56d443a58d6ab2dc8af1e8bd66f156ce17
+SIZE (slepc-3.9.1.tar.gz) = 4477846

Added: head/math/slepc/files/patch-config_install.py
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/math/slepc/files/patch-config_install.py	Mon Jun 25 08:36:49 2018	(r473299)
@@ -0,0 +1,19 @@
+--- config/install.py.orig	2018-06-25 08:07:05 UTC
++++ config/install.py
+@@ -295,11 +295,11 @@ for dir in dirs:
+ 
+   def installShare(self):
+     self.copies.extend(self.copytree(self.rootShareDir, self.destShareDir))
+-    if os.path.exists(os.path.join(self.destShareDir,'slepc','examples')):
+-      shutil.rmtree(os.path.join(self.destShareDir,'slepc','examples'))
+-    os.mkdir(os.path.join(self.destShareDir,'slepc','examples'))
+-    self.copyExamples(self.rootDir,os.path.join(self.destShareDir,'slepc','examples'))
+-    self.fixExamplesMakefile(os.path.join(self.destShareDir,'slepc','examples','makefile'))
++    if os.path.exists(os.path.join(self.destShareDir,'examples','slepc')):
++      shutil.rmtree(os.path.join(self.destShareDir,'examples','slepc'))
++    os.mkdir(os.path.join(self.destShareDir,'examples','slepc'))
++    self.copyExamples(self.rootDir,os.path.join(self.destShareDir,'examples','slepc'))
++    self.fixExamplesMakefile(os.path.join(self.destShareDir,'examples','slepc','makefile'))
+     return
+ 
+   def copyLib(self, src, dst):

Added: head/math/slepc/files/patch-makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/math/slepc/files/patch-makefile	Mon Jun 25 08:36:49 2018	(r473299)
@@ -0,0 +1,11 @@
+--- makefile.orig	2018-05-02 15:18:14 UTC
++++ makefile
+@@ -254,7 +254,7 @@ chk_slepc_dir:
+ # Install relevant files in the prefix directory
+ #
+ install:
+-	-@${PYTHON} ./config/install.py ${SLEPC_DIR} ${PETSC_DIR} ${SLEPC_DESTDIR} ${PETSC_ARCH} ${AR_LIB_SUFFIX} ${RANLIB};
++	-@${PYTHON} ./config/install.py ${SLEPC_DIR} ${PETSC_DIR} ${FREEBSD_STAGEDIR}${SLEPC_DESTDIR} ${PETSC_ARCH} ${AR_LIB_SUFFIX} ${RANLIB};
+ 
+ # ------------------------------------------------------------------
+ #

Added: head/math/slepc/pkg-descr
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/math/slepc/pkg-descr	Mon Jun 25 08:36:49 2018	(r473299)
@@ -0,0 +1,9 @@
+SLEPc is a software library for the solution of large scale sparse eigenvalue
+problems on parallel computers. It is an extension of PETSc and can be used for
+linear eigenvalue problems in either standard or generalized form, with real or
+complex arithmetic. It can also be used for computing a partial SVD of a large,
+sparse, rectangular matrix, and to solve nonlinear eigenvalue problems
+(polynomial or general). Additionally, SLEPc provides solvers for the
+computation of the action of a matrix function on a vector.
+
+WWW: http://slepc.upv.es/

Added: head/math/slepc/pkg-plist
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/math/slepc/pkg-plist	Mon Jun 25 08:36:49 2018	(r473299)
@@ -0,0 +1,95 @@
+include/slepc.h
+include/slepc/finclude/slepc.h
+include/slepc/finclude/slepcbv.h
+include/slepc/finclude/slepcds.h
+include/slepc/finclude/slepceps.h
+include/slepc/finclude/slepcfn.h
+include/slepc/finclude/slepclme.h
+include/slepc/finclude/slepcmfn.h
+include/slepc/finclude/slepcnep.h
+include/slepc/finclude/slepcpep.h
+include/slepc/finclude/slepcrg.h
+include/slepc/finclude/slepcst.h
+include/slepc/finclude/slepcsvd.h
+include/slepc/finclude/slepcsys.h
+include/slepc/private/bvimpl.h
+include/slepc/private/dsimpl.h
+include/slepc/private/epsimpl.h
+include/slepc/private/fnimpl.h
+include/slepc/private/lmeimpl.h
+include/slepc/private/mfnimpl.h
+include/slepc/private/nepimpl.h
+include/slepc/private/pepimpl.h
+include/slepc/private/rgimpl.h
+include/slepc/private/slepcimpl.h
+include/slepc/private/stimpl.h
+include/slepc/private/svdimpl.h
+include/slepc/private/vecimplslepc.h
+include/slepcblaslapack.h
+include/slepcblaslapack_mangle.h
+include/slepcblaslapack_stdcall.h
+include/slepcbv.h
+include/slepcbv.mod
+include/slepcbvdef.mod
+include/slepcconf.h
+include/slepcds.h
+include/slepcds.mod
+include/slepcdsdef.mod
+include/slepceps.h
+include/slepceps.mod
+include/slepcepsdef.mod
+include/slepcfn.h
+include/slepcfn.mod
+include/slepcfndef.mod
+include/slepclme.h
+include/slepclme.mod
+include/slepclmedef.mod
+include/slepcmat.h
+include/slepcmath.h
+include/slepcmfn.h
+include/slepcmfn.mod
+include/slepcmfndef.mod
+include/slepcnep.h
+include/slepcnep.mod
+include/slepcnepdef.mod
+include/slepcpep.h
+include/slepcpep.mod
+include/slepcpepdef.mod
+include/slepcrg.h
+include/slepcrg.mod
+include/slepcrgdef.mod
+include/slepcrgtypes.h
+include/slepcsc.h
+include/slepcst.h
+include/slepcst.mod
+include/slepcstdef.mod
+include/slepcsvd.h
+include/slepcsvd.mod
+include/slepcsvddef.mod
+include/slepcsys.h
+include/slepcsys.mod
+include/slepcsysdef.mod
+include/slepcvec.h
+include/slepcversion.h
+lib/libslepc.so
+lib/libslepc.so.3.9
+lib/libslepc.so.3.9.1
+lib/slepc/conf/SLEPcBuildInternal.cmake
+lib/slepc/conf/modules/slepc/3.9.1-installed-arch-%%PYTHON_PLATFORM%%-c-debug
+lib/slepc/conf/reconfigure-installed-arch-%%PYTHON_PLATFORM%%-c-debug.py
+lib/slepc/conf/slepc_common
+lib/slepc/conf/slepc_rules
+lib/slepc/conf/slepc_test
+lib/slepc/conf/slepc_variables
+lib/slepc/conf/slepcrules
+lib/slepc/conf/slepcvariables
+lib/slepc/conf/slepcvariables.bak
+lib/slepc/conf/uninstall.py
+libdata/pkgconfig/SLEPc.pc
+%%DATADIR%%/datafiles/matrices/bfw62a.petsc
+%%DATADIR%%/datafiles/matrices/bfw62b.petsc
+%%DATADIR%%/datafiles/matrices/rdb200.petsc
+%%DATADIR%%/datafiles/matrices/readme
+%%DATADIR%%/datafiles/matrices/speaker107c.petsc
+%%DATADIR%%/datafiles/matrices/speaker107k.petsc
+%%DATADIR%%/datafiles/matrices/speaker107m.petsc



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201806250836.w5P8aoOD035768>