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

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

petsc: update to 3.0.0-p7

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 3.3 KB
Line 
1# $Id: Portfile 60102 2009-11-02 00:07:19Z mmoll@macports.org $
2
3PortSystem      1.0
4
5name            slepc
6version         3.0.0-p7
7categories      math science
8maintainers     mmoll
9description     Scalable Library for Eigenvalue Problem Computations
10long_description    SLEPc is a software library for the solution of large \
11    scale sparse eigenvalue problems on parallel computers. It is an \
12    extension of PETSc and can be used for either standard or generalized \
13    eigenproblems, with real or complex arithmetic. It can also be used for \
14    computing a partial SVD of a large, sparse, rectangular matrix.
15platforms       darwin
16homepage        http://www.grycap.upv.es/slepc
17master_sites    http://www.grycap.upv.es/slepc/download/distrib
18distname        ${name}-${version}
19universal_variant   no
20
21patchfiles      patch-config-configure.py.diff
22
23checksums           md5     9a5da74c6cc2e48116619d5add242d84 \
24                    sha1    1b90ca18c12258f1aeceace4fc7a179b6b5f5fb6 \
25                    rmd160  4287dcaa106f3bd2c7dddca7f188e8da255af9c7
26
27depends_lib-append  port:petsc
28
29extract.suffix  .tgz
30configure.env-append    PETSC_DIR=${prefix}/lib/petsc \
31                SLEPC_DIR=${worksrcpath}
32configure.cmd   ${worksrcpath}/config/configure.py
33configure.args  --prefix=${prefix}/lib/petsc
34build.env       PETSC_DIR=${prefix}/lib/petsc  \
35                SLEPC_DIR=${worksrcpath}
36destroot.env    PETSC_DIR=${prefix}/lib/petsc PETSC_ARCH=. \
37                SLEPC_DIR=${worksrcpath}
38destroot.destdir    SLEPC_INSTALL_DIR=${destroot}${prefix}/lib/petsc
39
40variant arpack description {compile with ARPACK support} {
41    pre-fetch {
42        if {![file exists ${prefix}/lib/libparpack.a]} {
43            return -code error "Please install the mpi variant of arpack first."
44        }
45    }
46    # This is a rather fragile way to figure out where the fortran library can be
47    # found that is needed to link against libparpack.a:
48    if {[file exists ${prefix}/lib/gcc43]} {
49        set fortrandir ${prefix}/lib/gcc43
50    } else {
51        if {[file exists ${prefix}/lib/gcc42]} {
52            set fortrandir ${prefix}/lib/gcc42
53        } else {
54            if {[file exists ${prefix}/lib/g95]} {
55                set fortrandir ${prefix}/lib/gcc95
56            } else {
57                return -code error "Please install a fortran compiler by installing one of the following ports: gcc42, gcc43, or g95."
58            }
59        }
60    }
61    depends_lib-append      port:arpack
62    configure.args-append   --with-arpack-dir=${fortrandir} \
63                --with-arpack-flags=-lparpack,-larpack,-lgfortran,-lmpi_f77
64}
65
66post-activate {
67    ui_msg "********************************************************"
68    ui_msg "* Add the following lines to your .bash_profile if you *"
69    ui_msg "* plan to use the PETSC/SLEPC makefile rules in        *"
70    ui_msg "* $prefix/lib/petsc/conf:                              *"
71    ui_msg "*                                                      *"
72    ui_msg "*   export PETSC_DIR=${prefix}/lib/petsc               *"
73    ui_msg "*   export SLEPC_DIR=${prefix}/lib/petsc               *"
74    ui_msg "*                                                      *"
75    ui_msg "********************************************************"
76}
77
78livecheck.type  regex
79livecheck.url   http://www.grycap.upv.es/slepc/download/download.htm
80livecheck.regex slepc-(\[0-9.\]+(-p\[0-9\]+))\\.tgz
Note: See TracBrowser for help on using the repository browser.