source: trunk/dports/math/slepc/Portfile @ 110932

Last change on this file since 110932 was 110932, checked in by mmoll@…, 6 years ago

math/slepc: require openmpi variant of arpack

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 2.9 KB
Line 
1# $Id: Portfile 110932 2013-09-10 13:01:17Z mmoll@macports.org $
2
3PortSystem      1.0
4PortGroup       conflicts_build 1.0
5PortGroup       active_variants 1.1
6
7name            slepc
8version         3.3-p4
9license         LGPL
10categories      math science
11maintainers     mmoll
12license         LGPL
13description     Scalable Library for Eigenvalue Problem Computations
14long_description    SLEPc is a software library for the solution of large \
15    scale sparse eigenvalue problems on parallel computers. It is an \
16    extension of PETSc and can be used for either standard or generalized \
17    eigenproblems, with real or complex arithmetic. It can also be used for \
18    computing a partial SVD of a large, sparse, rectangular matrix.
19notes           "Add the following lines to your .bash_profile if you plan to\
20                use the PETSC/SLEPC makefile rules in $prefix/lib/petsc/conf:\n\
21                \texport PETSC_DIR=${prefix}/lib/petsc\n\
22                \texport SLEPC_DIR=${prefix}/lib/petsc"
23
24platforms       darwin
25homepage        http://www.grycap.upv.es/slepc
26master_sites    http://www.grycap.upv.es/slepc/download/distrib
27distname        ${name}-${version}
28universal_variant   no
29
30checksums           md5     d034e8b894bda374ec330a750428ac3f \
31                    sha1    49620a9aa6bb502bd773dadee11aa7f98a784ba6 \
32                    rmd160  0426a86aab0e765618ade3ac8c17548661cbe1f7
33
34depends_lib-append  port:petsc
35
36configure.args        --prefix=${prefix}/lib/petsc
37build.env-append      PETSC_DIR=${prefix}/lib/petsc PETSC_ARCH=arch-installed-petsc SLEPC_DIR=${worksrcpath}
38destroot.env-append   PETSC_DIR=${prefix}/lib/petsc PETSC_ARCH=arch-installed-petsc SLEPC_DIR=${worksrcpath}
39destroot.cmd-append   SLEPC_DESTDIR=${destroot}${prefix}/lib/petsc
40
41conflicts_build     slepc
42
43variant arpack description {compile with ARPACK support} {
44    require_active_variants arpack openmpi
45    pre-fetch {
46        if {![file exists ${prefix}/lib/libparpack.a]} {
47            return -code error "Please install the openmpi or mpich2 variant of arpack first."
48        }
49    }
50    # This is a rather fragile way to figure out where the fortran library can be
51    # found that is needed to link against libparpack.a:
52    set fortrandirs {g95 gcc42 gcc43 gcc44 gcc45 gcc46 gcc47 gcc48}
53    set fortrandir ""
54    foreach dir ${fortrandirs} {
55        if {[file exists ${prefix}/lib/${dir}]} {
56            set fortrandir ${prefix}/lib/${dir}
57        }
58    }
59    if {${fortrandir} == ""} {
60        ui_error "Install a fortran compiler by installing one of these ports:"
61        ui_error "gcc42, gcc43, gcc44, gcc45, gcc46, gcc47, gcc48, or g95."
62        return -code error "No fortran compiler installed"
63    }
64    depends_lib-append      port:arpack
65    configure.args-append   --with-arpack-dir=${fortrandir} \
66                --with-arpack-flags=-lparpack,-larpack,-lgfortran
67}
68
69livecheck.type  regex
70livecheck.url   http://www.grycap.upv.es/slepc/download/download.htm
71livecheck.regex slepc-(\[0-9.\]+(-p\[0-9\]+))\\.tar.gz
Note: See TracBrowser for help on using the repository browser.