source: trunk/dports/python/py-scipy/Portfile

Last change on this file was 152927, checked in by michaelld@…, 14 months ago

py*-scipy: update to 0.18.1.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 5.2 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 152927 2016-09-20 19:00:36Z ryandesign@macports.org $
3
4PortSystem              1.0
5PortGroup               python 1.0
6PortGroup               active_variants 1.1
7PortGroup               github 1.0
8PortGroup               compilers 1.0
9
10github.setup            scipy scipy 0.18.1 v
11name                    py-scipy
12
13checksums               rmd160 1d1f01fb55e0bb779f65cfcecdac2e99fd775285 \
14                        sha256 7216840b0db191fd2fddccb3ed4eb4d773cf7d9f31b75bc8402d72c2cff214ab
15
16platforms               darwin
17license                 BSD
18maintainers             sean michaelld openmaintainer
19description             An opensource library of scientific tools for Python
20long_description        ${description}
21
22homepage                http://www.scipy.org/
23
24python.versions         26 27 33 34 35
25
26python.add_archflags    no
27universal_variant       no
28
29compilers.setup         require_fortran -clang -dragonegg -gcc44 -gcc45 -gcc46 \
30                        -gcc47 -gcc48 -g95 clang37
31
32livecheck.regex         archive/[join ${github.tag_prefix} ""](\[^"r\]+)${extract.suffix}
33
34if {${name} ne ${subport}} {
35
36    depends_lib-append      port:py${python.version}-numpy \
37                            port:py${python.version}-nose \
38                            port:swig-python
39
40    worksrcdir              ${distname}
41
42    build.env-append        CCFLAGS="-I${prefix}/include -L${prefix}/lib"
43    destroot.env-append     CCFLAGS="-I${prefix}/include -L${prefix}/lib"
44    configure.fflags-append -fno-second-underscore
45
46    pre-configure {
47        set fc_options      "config_fc --fcompiler gnu95 --f77exec ${configure.f77} --f77flags='${configure.f77_archflags} ${configure.fflags}' --f90exec ${configure.f90} --f90flags='${configure.f90_archflags} ${configure.fflags}'"
48        set config_options  "config --cc ${configure.cc} --include-dirs ${prefix}/include --library-dirs ${prefix}/lib"
49        build.cmd-append    ${fc_options} ${config_options}
50        destroot.cmd-append ${fc_options} ${config_options}
51
52        build.env-append    CC="${configure.cc}" \
53                            CXX="${configure.cxx}" \
54                            CFLAGS="${configure.cc_archflags}" \
55                            CXXFLAGS="${configure.cxx_archflags}" \
56                            CPPFLAGS="${configure.cppflags}"
57        destroot.env-append CC="${configure.cc}" \
58                            CXX="${configure.cxx}" \
59                            CFLAGS="${configure.cc_archflags}" \
60                            CXXFLAGS="${configure.cxx_archflags}" \
61                            CPPFLAGS="${configure.cppflags}"
62    }
63
64    post-destroot {
65        # for some reason read-world is not set
66        system "chmod -R a+r ${destroot}${prefix}"
67    }
68
69    variant atlas conflicts openblas description "Use MacPorts ATLAS libraries" {
70        depends_lib-append  port:atlas
71    }
72
73    variant openblas conflicts atlas description "Use MacPorts OpenBLAS Libraries" {
74        depends_lib-append  path:lib/libopenblas.dylib:openblas
75    }
76
77    # Can be removed after 2017-01-22
78    variant gcc48 requires gfortran description {Legacy compatibility variant} {}
79
80    if {[variant_isset atlas]} {
81        # use MacPorts atlas
82        build.env-append    OPENBLAS=None \
83                            ATLAS=${prefix}/lib \
84                            LAPACK=${prefix}/lib \
85                            BLAS=${prefix}/lib
86        destroot.env-append OPENBLAS=None \
87                            ATLAS=${prefix}/lib \
88                            LAPACK=${prefix}/lib \
89                            BLAS=${prefix}/lib
90
91        pre-fetch {
92            # scipy needs fortran; so we only need to check if atlas is
93            # compiled with +nofortran
94            if {![catch {set result [active_variants atlas "" nofortran]}]} {
95                if {!$result} {
96                    return -code error \
97"You have selected the +atlas variant but atlas was built with +nofortran.\
98scipy needs a fortran enabled atlas. Please rebuild atlas without the +nofortran\
99variant."
100                }
101            }
102
103            # also check that numpy has the atlas variant active
104            if {![catch {set result [active_variants py${python.version}-numpy atlas ""]}]} {
105                if {!$result} {
106
107                    return -code error \
108"You have selected the +atlas variant but py${python.version}-numpy does not\
109have the +atlas variant active. Please ensure that numpy is activated with the\
110+atlas variant."
111                }
112            }
113        }
114
115    } elseif {[variant_isset openblas]} {
116        # use MacPorts OpenBLAS
117        build.env-append    OPENBLAS=${prefix}/lib \
118                            ATLAS=None
119        destroot.env-append OPENBLAS=${prefix}/lib \
120                            ATLAS=None
121    } else {
122        # use Accelerate BLAS
123        build.env-append    OPENBLAS=None \
124                            ATLAS=None \
125                            LAPACK=/usr/lib \
126                            BLAS=/usr/lib
127        destroot.env-append OPENBLAS=None \
128                            ATLAS=None \
129                            LAPACK=/usr/lib \
130                            BLAS=/usr/lib
131    }
132
133    livecheck.type          none
134}
Note: See TracBrowser for help on using the repository browser.