Files

72 lines
2.8 KiB
Tcl
Raw Permalink Normal View History

2023-05-10 10:13:03 +08:00
# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
PortSystem 1.0
PortGroup cmake 1.1
PortGroup compilers 1.0
PortGroup github 1.0
PortGroup linear_algebra 1.0
PortGroup mpi 1.0
2024-11-08 07:37:20 +08:00
github.setup liuyangzhuan ButterflyPACK 3.2.0 v
2023-05-10 10:13:03 +08:00
name bpack
2023-11-30 19:10:21 +07:00
revision 0
2023-05-10 10:13:03 +08:00
categories math science
license BSD
2026-04-11 19:42:02 +04:00
maintainers nomaintainer
2024-04-11 19:46:43 +08:00
description ButterflyPACK is a mathematical software \
for rapidly solving large-scale dense linear systems \
that exhibit off-diagonal rank-deficiency
2023-05-10 10:13:03 +08:00
long_description {*}${description}
homepage https://portal.nersc.gov/project/sparse/butterflypack
2024-11-08 07:37:20 +08:00
checksums rmd160 0e0e4314363137e12905f03753c87b79dbb6d9eb \
sha256 0f1570947f0a7c0e130bbec3abbb2fa275ae453dc3f428e7a3a2265fecafe1ae \
size 381791382
github.tarball_from archive
2023-05-10 10:13:03 +08:00
depends_build-append \
2024-11-08 07:37:20 +08:00
path:bin/pkg-config:pkgconfig
2023-05-10 10:13:03 +08:00
depends_lib-append port:scalapack \
port:zfp
if {${os.platform} eq "darwin" && ${os.arch} eq "powerpc"} {
mpi.setup require require_fortran \
-gcc44 -gcc45 -gcc46 -gcc47 -gcc48 -gcc49 -gcc5 -gcc6 \
-clang -fortran
} else {
mpi.setup require require_fortran \
-gcc44 -gcc45 -gcc46 -gcc47 -gcc48 -gcc49 -gcc5 -gcc6
}
# https://github.com/liuyangzhuan/ButterflyPACK/issues/14
2023-11-30 19:10:21 +07:00
patchfiles patch-examples.diff \
2023-05-10 10:13:03 +08:00
patch-includes.diff
compiler.cxx_standard 2011
compiler.openmp_version 4.0
compilers.allow_arguments_mismatch yes
pre-configure {
2023-11-30 19:10:21 +07:00
# Need to set these explicitly: https://github.com/liuyangzhuan/ButterflyPACK/issues/17
2023-05-10 10:13:03 +08:00
configure.args-append \
2023-11-30 19:10:21 +07:00
-DMPIEXEC_EXECUTABLE=${prefix}/bin/${mpi.exec} \
-DMPI_C_COMPILER=${prefix}/bin/${mpi.cc} \
-DMPI_Fortran_COMPILER=${prefix}/bin/${mpi.f90}
2023-05-10 10:13:03 +08:00
if {[variant_isset openblas]} {
configure.args-append \
-DTPL_BLAS_LIBRARIES=${prefix}/lib/libopenblas.dylib \
-DTPL_LAPACK_LIBRARIES=${prefix}/lib/libopenblas.dylib
} elseif {[variant_isset accelerate]} {
2023-11-30 19:10:21 +07:00
# See also: https://github.com/liuyangzhuan/ButterflyPACK/issues/18
2023-05-10 10:13:03 +08:00
configure.args-append \
-DTPL_BLAS_LIBRARIES=vecLibFort \
-DTPL_LAPACK_LIBRARIES=vecLibFort
}
}
configure.args-append \
-DBUILD_SHARED_LIBS=ON \
-Denable_doc=OFF \
2023-11-30 19:10:21 +07:00
-Denable_mpi=ON \
-Denable_openmp=ON \
2023-05-10 10:13:03 +08:00
-DCMAKE_INSTALL_INCLUDEDIR=include/${name}