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

Last change on this file since 130200 was 130200, checked in by sean@…, 5 years ago

slepc: update to 3.5.3 and fix fortran stubs; closes #46176

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 2.6 KB
Line 
1# -*- 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
2# $Id: Portfile 130200 2014-12-28 20:44:08Z sean@macports.org $
3
4PortSystem          1.0
5PortGroup           bitbucket 1.0
6PortGroup           mpi 1.0
7
8bitbucket.setup     slepc slepc 3.5.3 v
9categories          math science
10maintainers         sean
11license             LGPL
12description         Scalable Library for Eigenvalue Problem Computations
13long_description    SLEPc is a software library for the solution of large \
14                    scale sparse eigenvalue problems on parallel computers. It is an \
15                    extension of PETSc and can be used for either standard or generalized \
16                    eigenproblems, with real or complex arithmetic. It can also be used for \
17                    computing a partial SVD of a large, sparse, rectangular matrix.
18
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/slepc"
23
24platforms           darwin
25universal_variant   no
26
27checksums           rmd160  2ec89b42a74b4380099868459b3f61c51f9cfc86 \
28                    sha256  ef335b57da96b51d29ce5da834bd8d1f43c956f0550e1e4bf3a10f545297ce85
29
30mpi.setup
31mpi.enforce_variant petsc
32
33depends_lib-append  port:petsc
34use_parallel_build  no
35
36depends_build-append \
37                    port:sowing
38
39pre-configure {
40    system -W ${worksrcpath} "SLEPC_DIR=${worksrcpath} ./config/generatefortranstubs.py bfort"
41}
42
43configure.args      --prefix=${prefix}/lib/slepc
44configure.env-append \
45                    PETSC_DIR=${prefix}/lib/petsc
46build.env-append    PETSC_DIR=${prefix}/lib/petsc
47destroot.env-append PETSC_DIR=${prefix}/lib/petsc
48destroot.cmd-append SLEPC_DESTDIR=${destroot}${prefix}/lib/slepc
49
50variant arpack description {compile with ARPACK support} {
51    mpi.enforce_variant arpack
52    compilers.enforce_fortran
53
54    pre-fetch {
55        if {![file exists ${prefix}/lib/libparpack.a]} {
56            return -code error "Please install a mpi variant of arpack first."
57        }
58    }
59
60    depends_lib-append      port:arpack
61    configure.args-append   --with-arpack-dir=${prefix} \
62                            --with-arpack-flags=-lparpack,-larpack
63}
64
65# fix install name
66post-destroot {
67    system "install_name_tool -id ${prefix}/lib/slepc/lib/libslepc.dylib ${destroot}${prefix}/lib/slepc/lib/libslepc.dylib"
68    reinplace -W ${destroot}${prefix}/lib/slepc/conf "s,${destroot},,g" slepc_variables slepc_rules
69}
Note: See TracBrowser for help on using the repository browser.