New port: math/elemental: Dense and sparse linear algebra, conic optimization, lattice reduction

This commit is contained in:
Yuri Victorovich 2020-04-30 01:52:12 +00:00
parent bdce1a50b8
commit f297bc7b1d
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=533406
7 changed files with 439 additions and 0 deletions

View file

@ -238,6 +238,7 @@
SUBDIR += eigen2
SUBDIR += eigen3
SUBDIR += eispack
SUBDIR += elemental
SUBDIR += elpa
SUBDIR += emc2
SUBDIR += ensmallen

42
math/elemental/Makefile Normal file
View file

@ -0,0 +1,42 @@
# $FreeBSD$
PORTNAME= elemental
DISTVERSIONPREFIX= v
DISTVERSION= 0.87.7
CATEGORIES= math
MAINTAINER= yuri@FreeBSD.org
COMMENT= Dense and sparse linear algebra, conic optimization, lattice reduction
LICENSE= BSD2CLAUSE
LIB_DEPENDS= libgmp.so:math/gmp \
libmetis.so:math/metis \
libmpc.so:math/mpc \
libmpfr.so:math/mpfr \
libmpi_cxx.so:net/openmpi \
libopenblas.so:math/openblas \
libqd.so:math/qd
USES= cmake compiler:c++11-lang fortran
USE_GITHUB= yes
GH_PROJECT= Elemental
USE_LDCONFIG= yes
CMAKE_ON= EL_DISABLE_PARMETIS
CMAKE_ARGS= -DGFORTRAN_LIB:STRING=${LOCALBASE}/lib/gcc${GCC_DEFAULT}/libgfortran.so \
-DFREEBSD_GCC_LIB:STRING=${LOCALBASE}/lib/gcc${GCC_DEFAULT}/libgcc_s.so
DOCSDIR= ${PREFIX}/share/doc/Elemental
OPTIONS_DEFINE= DOCS
PORTDOCS= *
post-install:
@cd ${STAGEDIR}${PREFIX} && \
${MV} CMake lib/cmake && \
${RM} -r ${STAGEDIR}${PREFIX}/python && \
${RM} -r ${STAGEDIR}${PREFIX}/conf
.include <bsd.port.mk>

3
math/elemental/distinfo Normal file
View file

@ -0,0 +1,3 @@
TIMESTAMP = 1534478643
SHA256 (elemental-Elemental-v0.87.7_GH0.tar.gz) = 7becfdbc223e9c72e65ae876d842c48d2037d13f83e9f41cea285e21b840d7d9
SIZE (elemental-Elemental-v0.87.7_GH0.tar.gz) = 3011641

View file

@ -0,0 +1,20 @@
--- CMakeLists.txt.orig 2017-02-07 01:23:30 UTC
+++ CMakeLists.txt
@@ -25,6 +25,8 @@ project(Elemental C CXX)
set(EL_VERSION_MAJOR 0)
set(EL_VERSION_MINOR 87)
+set(CMAKE_POSITION_INDEPENDENT_CODE ON)
+
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules")
@@ -100,7 +102,7 @@ option(EL_HYBRID "Make use of OpenMP within MPI packin
option(EL_C_INTERFACE "Build C interface" ON)
-if(BUILD_SHARED_LIBS AND EL_C_INTERFACE)
+if(FALSE AND BUILD_SHARED_LIBS AND EL_C_INTERFACE) # disable Python
# Define PYTHON_SITE_PACKAGES if you want to install the python package
# somewhere other than the default system-wide location (e.g., within your
# home directory). Alternatively, if you do NOT define PYTHON_SITE_PACKAGES

View file

@ -0,0 +1,10 @@
--- cmake/modules/ElCheckFunctionExists.cmake.orig 2018-08-17 05:32:25 UTC
+++ cmake/modules/ElCheckFunctionExists.cmake
@@ -93,6 +93,7 @@ macro(EL_CHECK_FUNCTION_EXISTS FUNCTION
${CHECK_FUNCTION_EXISTS_ADD_LIBRARIES}
CMAKE_FLAGS -DCOMPILE_DEFINITIONS:STRING=${MACRO_CHECK_FUNCTION_DEFINITIONS} ${CHECK_FUNCTION_EXISTS_ADD_LINKER_FLAGS}
"${CHECK_FUNCTION_EXISTS_ADD_INCLUDES}"
+ LINK_LIBRARIES ${FREEBSD_GCC_LIB}
OUTPUT_VARIABLE OUTPUT)
if(${VARIABLE})
set(${VARIABLE} 1 CACHE INTERNAL "Have function ${FUNCTION}")

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

@ -0,0 +1,4 @@
Distributed-memory, arbitrary-precision, dense and sparse-direct linear algebra,
conic optimization, and lattice reduction.
WWW: https://github.com/elemental/Elemental

359
math/elemental/pkg-plist Normal file
View file

@ -0,0 +1,359 @@
include/El-lite.h
include/El-lite.hpp
include/El.h
include/El.hpp
include/El/FCMangle.h
include/El/blas_like.h
include/El/blas_like.hpp
include/El/blas_like/level1.h
include/El/blas_like/level1.hpp
include/El/blas_like/level1/AllReduce.hpp
include/El/blas_like/level1/Axpy.hpp
include/El/blas_like/level1/Axpy/util.hpp
include/El/blas_like/level1/AxpyContract.hpp
include/El/blas_like/level1/AxpyTrapezoid.hpp
include/El/blas_like/level1/Broadcast.hpp
include/El/blas_like/level1/Concatenate.hpp
include/El/blas_like/level1/Conjugate.hpp
include/El/blas_like/level1/ConjugateDiagonal.hpp
include/El/blas_like/level1/ConjugateSubmatrix.hpp
include/El/blas_like/level1/Contract.hpp
include/El/blas_like/level1/Copy.hpp
include/El/blas_like/level1/Copy/AllGather.hpp
include/El/blas_like/level1/Copy/ColAllGather.hpp
include/El/blas_like/level1/Copy/ColAllToAllDemote.hpp
include/El/blas_like/level1/Copy/ColAllToAllPromote.hpp
include/El/blas_like/level1/Copy/ColFilter.hpp
include/El/blas_like/level1/Copy/Exchange.hpp
include/El/blas_like/level1/Copy/Filter.hpp
include/El/blas_like/level1/Copy/Gather.hpp
include/El/blas_like/level1/Copy/GeneralPurpose.hpp
include/El/blas_like/level1/Copy/PartialColAllGather.hpp
include/El/blas_like/level1/Copy/PartialColFilter.hpp
include/El/blas_like/level1/Copy/PartialRowAllGather.hpp
include/El/blas_like/level1/Copy/PartialRowFilter.hpp
include/El/blas_like/level1/Copy/RowAllGather.hpp
include/El/blas_like/level1/Copy/RowAllToAllDemote.hpp
include/El/blas_like/level1/Copy/RowAllToAllPromote.hpp
include/El/blas_like/level1/Copy/RowFilter.hpp
include/El/blas_like/level1/Copy/Scatter.hpp
include/El/blas_like/level1/Copy/Translate.hpp
include/El/blas_like/level1/Copy/TranslateBetweenGrids.hpp
include/El/blas_like/level1/Copy/TransposeDist.hpp
include/El/blas_like/level1/Copy/internal_decl.hpp
include/El/blas_like/level1/Copy/internal_impl.hpp
include/El/blas_like/level1/Copy/util.hpp
include/El/blas_like/level1/DiagonalScale.hpp
include/El/blas_like/level1/DiagonalScaleTrapezoid.hpp
include/El/blas_like/level1/DiagonalSolve.hpp
include/El/blas_like/level1/Dot.hpp
include/El/blas_like/level1/EntrywiseFill.hpp
include/El/blas_like/level1/EntrywiseMap.hpp
include/El/blas_like/level1/Fill.hpp
include/El/blas_like/level1/FillDiagonal.hpp
include/El/blas_like/level1/Full.hpp
include/El/blas_like/level1/GetDiagonal.hpp
include/El/blas_like/level1/GetMappedDiagonal.hpp
include/El/blas_like/level1/GetSubmatrix.hpp
include/El/blas_like/level1/Givens.hpp
include/El/blas_like/level1/Hadamard.hpp
include/El/blas_like/level1/ImagPart.hpp
include/El/blas_like/level1/IndexDependentFill.hpp
include/El/blas_like/level1/IndexDependentMap.hpp
include/El/blas_like/level1/Kronecker.hpp
include/El/blas_like/level1/MakeDiagonalReal.hpp
include/El/blas_like/level1/MakeReal.hpp
include/El/blas_like/level1/MakeSubmatrixReal.hpp
include/El/blas_like/level1/MakeSymmetric.hpp
include/El/blas_like/level1/MakeTrapezoidal.hpp
include/El/blas_like/level1/Nrm2.hpp
include/El/blas_like/level1/QuasiDiagonalScale.hpp
include/El/blas_like/level1/QuasiDiagonalSolve.hpp
include/El/blas_like/level1/RealPart.hpp
include/El/blas_like/level1/Recv.hpp
include/El/blas_like/level1/Reshape.hpp
include/El/blas_like/level1/Rotate.hpp
include/El/blas_like/level1/Round.hpp
include/El/blas_like/level1/SafeScale.hpp
include/El/blas_like/level1/Scale.hpp
include/El/blas_like/level1/ScaleTrapezoid.hpp
include/El/blas_like/level1/Send.hpp
include/El/blas_like/level1/SendRecv.hpp
include/El/blas_like/level1/SetDiagonal.hpp
include/El/blas_like/level1/SetSubmatrix.hpp
include/El/blas_like/level1/Shift.hpp
include/El/blas_like/level1/ShiftDiagonal.hpp
include/El/blas_like/level1/Transpose.hpp
include/El/blas_like/level1/Transpose/ColAllGather.hpp
include/El/blas_like/level1/Transpose/ColFilter.hpp
include/El/blas_like/level1/Transpose/PartialColAllGather.hpp
include/El/blas_like/level1/Transpose/PartialColFilter.hpp
include/El/blas_like/level1/Transpose/PartialRowFilter.hpp
include/El/blas_like/level1/Transpose/RowFilter.hpp
include/El/blas_like/level1/TransposeAxpy.hpp
include/El/blas_like/level1/TransposeAxpyContract.hpp
include/El/blas_like/level1/TransposeContract.hpp
include/El/blas_like/level1/UpdateDiagonal.hpp
include/El/blas_like/level1/UpdateMappedDiagonal.hpp
include/El/blas_like/level1/UpdateSubmatrix.hpp
include/El/blas_like/level1/Zero.hpp
include/El/blas_like/level1/decl.hpp
include/El/blas_like/level1/impl.hpp
include/El/blas_like/level2.h
include/El/blas_like/level2.hpp
include/El/blas_like/level2/CReflect.hpp
include/El/blas_like/level3.h
include/El/blas_like/level3.hpp
include/El/blas_like/level3/CReflect.hpp
include/El/config.h
include/El/control.h
include/El/control.hpp
include/El/core.h
include/El/core.hpp
include/El/core/CReflect.hpp
include/El/core/DistGraph.h
include/El/core/DistGraph.hpp
include/El/core/DistGraph/decl.hpp
include/El/core/DistMap.hpp
include/El/core/DistMap/decl.hpp
include/El/core/DistMatrix.h
include/El/core/DistMatrix.hpp
include/El/core/DistMatrix/Abstract.hpp
include/El/core/DistMatrix/Block.hpp
include/El/core/DistMatrix/Block/CIRC_CIRC.hpp
include/El/core/DistMatrix/Block/MC_MR.hpp
include/El/core/DistMatrix/Block/MC_STAR.hpp
include/El/core/DistMatrix/Block/MD_STAR.hpp
include/El/core/DistMatrix/Block/MR_MC.hpp
include/El/core/DistMatrix/Block/MR_STAR.hpp
include/El/core/DistMatrix/Block/STAR_MC.hpp
include/El/core/DistMatrix/Block/STAR_MD.hpp
include/El/core/DistMatrix/Block/STAR_MR.hpp
include/El/core/DistMatrix/Block/STAR_STAR.hpp
include/El/core/DistMatrix/Block/STAR_VC.hpp
include/El/core/DistMatrix/Block/STAR_VR.hpp
include/El/core/DistMatrix/Block/VC_STAR.hpp
include/El/core/DistMatrix/Block/VR_STAR.hpp
include/El/core/DistMatrix/Element.hpp
include/El/core/DistMatrix/Element/CIRC_CIRC.hpp
include/El/core/DistMatrix/Element/MC_MR.hpp
include/El/core/DistMatrix/Element/MC_STAR.hpp
include/El/core/DistMatrix/Element/MD_STAR.hpp
include/El/core/DistMatrix/Element/MR_MC.hpp
include/El/core/DistMatrix/Element/MR_STAR.hpp
include/El/core/DistMatrix/Element/STAR_MC.hpp
include/El/core/DistMatrix/Element/STAR_MD.hpp
include/El/core/DistMatrix/Element/STAR_MR.hpp
include/El/core/DistMatrix/Element/STAR_STAR.hpp
include/El/core/DistMatrix/Element/STAR_VC.hpp
include/El/core/DistMatrix/Element/STAR_VR.hpp
include/El/core/DistMatrix/Element/VC_STAR.hpp
include/El/core/DistMatrix/Element/VR_STAR.hpp
include/El/core/DistMultiVec.h
include/El/core/DistMultiVec.hpp
include/El/core/DistMultiVec/decl.hpp
include/El/core/DistMultiVec/impl.hpp
include/El/core/DistPermutation.hpp
include/El/core/DistSparseMatrix.h
include/El/core/DistSparseMatrix.hpp
include/El/core/DistSparseMatrix/decl.hpp
include/El/core/DistSparseMatrix/impl.hpp
include/El/core/Element.h
include/El/core/Element.hpp
include/El/core/Element/Complex/decl.hpp
include/El/core/Element/Complex/impl.hpp
include/El/core/Element/decl.hpp
include/El/core/Element/impl.hpp
include/El/core/FlamePart.hpp
include/El/core/FlamePart/Merge.h
include/El/core/FlamePart/Merge.hpp
include/El/core/FlamePart/Partition.h
include/El/core/FlamePart/Partition.hpp
include/El/core/FlamePart/Repartition.h
include/El/core/FlamePart/Repartition.hpp
include/El/core/FlamePart/SlidePartition.h
include/El/core/FlamePart/SlidePartition.hpp
include/El/core/Graph.h
include/El/core/Graph.hpp
include/El/core/Graph/decl.hpp
include/El/core/Grid.h
include/El/core/Grid.hpp
include/El/core/Matrix.h
include/El/core/Matrix.hpp
include/El/core/Matrix/decl.hpp
include/El/core/Matrix/impl.hpp
include/El/core/Memory.hpp
include/El/core/Memory/decl.hpp
include/El/core/Memory/impl.hpp
include/El/core/Permutation.h
include/El/core/Permutation.hpp
include/El/core/Proxy.hpp
include/El/core/Serialize.hpp
include/El/core/SparseMatrix.h
include/El/core/SparseMatrix.hpp
include/El/core/SparseMatrix/decl.hpp
include/El/core/SparseMatrix/impl.hpp
include/El/core/Timer.hpp
include/El/core/View.h
include/El/core/View.hpp
include/El/core/View/decl.hpp
include/El/core/View/impl.hpp
include/El/core/environment.h
include/El/core/environment/decl.hpp
include/El/core/environment/impl.hpp
include/El/core/imports/blas.hpp
include/El/core/imports/choice.hpp
include/El/core/imports/flame.hpp
include/El/core/imports/lapack.hpp
include/El/core/imports/mkl.hpp
include/El/core/imports/mpfr.hpp
include/El/core/imports/mpi.h
include/El/core/imports/mpi.hpp
include/El/core/imports/mpi_choice.hpp
include/El/core/imports/omp.hpp
include/El/core/imports/openblas.hpp
include/El/core/imports/pmrrr.hpp
include/El/core/imports/qd.hpp
include/El/core/imports/qt5.hpp
include/El/core/imports/scalapack.hpp
include/El/core/imports/scalapack/blacs.hpp
include/El/core/imports/scalapack/pblas.hpp
include/El/core/imports/suite_sparse.hpp
include/El/core/imports/valgrind.hpp
include/El/core/indexing/decl.hpp
include/El/core/indexing/impl.hpp
include/El/core/limits.hpp
include/El/core/random/decl.hpp
include/El/core/random/impl.hpp
include/El/core/types.h
include/El/core/types.hpp
include/El/io.h
include/El/io.hpp
include/El/io/CReflect.hpp
include/El/io/ComplexDisplayWindow-premoc.hpp
include/El/io/DisplayWidget.hpp
include/El/io/DisplayWindow-premoc.hpp
include/El/io/SpyWidget.hpp
include/El/io/SpyWindow.hpp
include/El/lapack_like.h
include/El/lapack_like.hpp
include/El/lapack_like/CReflect.hpp
include/El/lapack_like/condense.h
include/El/lapack_like/condense.hpp
include/El/lapack_like/condense/CReflect.hpp
include/El/lapack_like/equilibrate.hpp
include/El/lapack_like/euclidean_min.h
include/El/lapack_like/euclidean_min.hpp
include/El/lapack_like/euclidean_min/CReflect.hpp
include/El/lapack_like/factor.h
include/El/lapack_like/factor.hpp
include/El/lapack_like/factor/CReflect.hpp
include/El/lapack_like/factor/ldl/sparse/numeric.hpp
include/El/lapack_like/factor/ldl/sparse/symbolic.hpp
include/El/lapack_like/factor/ldl/sparse/symbolic/NodeInfo.hpp
include/El/lapack_like/factor/ldl/sparse/symbolic/Separator.hpp
include/El/lapack_like/factor/qr/ProxyHouseholder.hpp
include/El/lapack_like/funcs.h
include/El/lapack_like/funcs.hpp
include/El/lapack_like/perm.hpp
include/El/lapack_like/props.h
include/El/lapack_like/props.hpp
include/El/lapack_like/props/CReflect.hpp
include/El/lapack_like/reflect.h
include/El/lapack_like/reflect.hpp
include/El/lapack_like/solve.h
include/El/lapack_like/solve.hpp
include/El/lapack_like/solve/FGMRES.hpp
include/El/lapack_like/solve/LGMRES.hpp
include/El/lapack_like/solve/Refined.hpp
include/El/lapack_like/spectral.h
include/El/lapack_like/spectral.hpp
include/El/lapack_like/spectral/CReflect.hpp
include/El/lapack_like/spectral/HermitianEig.hpp
include/El/lapack_like/spectral/Lanczos.hpp
include/El/lapack_like/spectral/ProductLanczos.hpp
include/El/lapack_like/spectral/SVD.hpp
include/El/lapack_like/spectral/Schur.hpp
include/El/lapack_like/util.h
include/El/lapack_like/util.hpp
include/El/macros/CInstantiate.h
include/El/macros/GuardAndPayload.h
include/El/macros/Instantiate.h
include/El/macros/NestedGuardAndPayload.h
include/El/matrices.h
include/El/matrices.hpp
include/El/matrices/deterministic/classical/Circulant.hpp
include/El/matrices/deterministic/lattice/NTRUAttack.hpp
include/El/number_theory.h
include/El/number_theory.hpp
include/El/number_theory/DynamicSieve.hpp
include/El/number_theory/JacobiSymbol.hpp
include/El/number_theory/LegendreSymbol.hpp
include/El/number_theory/MillerRabin.hpp
include/El/number_theory/NextProbablePrime.hpp
include/El/number_theory/PowerDecomp.hpp
include/El/number_theory/PrimalityTest.hpp
include/El/number_theory/PrimitiveRoot.hpp
include/El/number_theory/SqrtModPrime.hpp
include/El/number_theory/TrialDivision.hpp
include/El/number_theory/dlog/PollardRho.hpp
include/El/number_theory/factor/PollardPMinusOne.hpp
include/El/number_theory/factor/PollardRho.hpp
include/El/number_theory/lattice.h
include/El/number_theory/lattice.hpp
include/El/number_theory/lattice/BKZ.hpp
include/El/number_theory/lattice/CReflect.hpp
include/El/number_theory/lattice/Enrich.hpp
include/El/number_theory/lattice/Enumerate.hpp
include/El/number_theory/lattice/LLL.hpp
include/El/number_theory/lattice/LLL/Left.hpp
include/El/number_theory/lattice/NearestPlane.hpp
include/El/optimization.h
include/El/optimization.hpp
include/El/optimization/CReflect.hpp
include/El/optimization/models.h
include/El/optimization/models.hpp
include/El/optimization/prox.h
include/El/optimization/prox.hpp
include/El/optimization/solvers.h
include/El/optimization/solvers.hpp
include/El/optimization/util.h
include/El/optimization/util.hpp
include/El/optimization/util/cone.hpp
include/El/optimization/util/pos_orth.hpp
include/El/optimization/util/soc.hpp
include/ElSuiteSparse/amd.h
include/ElSuiteSparse/amd_internal.h
include/ElSuiteSparse/config.h
include/ElSuiteSparse/ldl.hpp
include/ElSuiteSparse/ldl/impl.hpp
include/pmrrr.h
include/pmrrr/counter.h
include/pmrrr/global.h
include/pmrrr/plarre.h
include/pmrrr/plarrv.h
include/pmrrr/process_task.h
include/pmrrr/queue.h
include/pmrrr/rrr.h
include/pmrrr/structs.h
include/pmrrr/tasks.h
lib/cmake/elemental/ElementalConfig.cmake
lib/cmake/elemental/ElementalConfigVersion.cmake
lib/cmake/elemental/ElementalTargets-%%CMAKE_BUILD_TYPE%%.cmake
lib/cmake/elemental/ElementalTargets.cmake
lib/libEl.so
lib/libEl.so.0
lib/libEl.so.87
lib/libElSuiteSparse.so
lib/libElSuiteSparse.so.0
lib/libElSuiteSparse.so.87
lib/libpmrrr.so
lib/libpmrrr.so.0
lib/libpmrrr.so.87
%%DATADIR%%/lapack_like/c-41.mtx
%%DATADIR%%/lapack_like/memplus.mtx
%%DATADIR%%/number_theory/SVP80_BKZ49.txt
%%DATADIR%%/number_theory/SVPChallenge100.txt
%%DATADIR%%/number_theory/SVPChallenge146.txt
%%DATADIR%%/number_theory/SVPChallenge40.txt
%%DATADIR%%/number_theory/SVPChallenge80.txt