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

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

math/slepc: update to 3.2-p5

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