# -*- 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
PortGroup linear_algebra 1.0
github.setup opencollab arpack-ng 3.6.0
maintainers openmaintainer {mmoll @mamoll}
description Package for solving large-scale eigenvalue problems
long_description ARPACK is a collection of Fortran77 subroutines designed to \
solve large scale eigenvalue problems. Parallel ARPACK (PARPACK) \
is included if built with an MPI variant.
worksrcdir ${name}-ng-${version}
checksums rmd160 be1bce05e52aa0387d6cd29d265a9fcab60f2ba5 \
sha256 e8fa6ae6fb1157065e892a65d7879cdd7ddfcae1df3020a4b9b6652914bfb18a \
mpi.setup require_fortran
configure.args home=${worksrcpath} --disable-mpi
if {![variant_isset universal]} {
if {${build_arch} eq "x86_64" || ${build_arch} eq "ppc64"} {
configure.fflags-append -m64
configure.fflags-append -m32
# LDFLAGS needs to be cleared to avoid it having a "-arch" option, considered illegal by gfortran
# also, if it has ${prefix}/lib it will prevent +accelerate from working if atlas is present.
configure.args-append LDFLAGS=''
configure.args-append --with-blas="-L${prefix}/lib ${linalglib}"
if {${os.platform} eq "darwin" && ${os.major} < 9} {
ui_error "${name} ${version} requires Mac OS X 10.5 or greater"
return -code error "incompatible Mac OS X version"
if {[mpi_variant_isset]} {
configure.args-delete --disable-mpi
configure.args-append --enable-mpi
configure.args-append F77=${mpi.f77} \
# Fortran compilers can not cross-compile
if {${os.arch} eq "i386"} {
set universal_archs_supported "i386 x86_64"
set universal_archs_supported "ppc ppc64"