File: bscript

package info (click to toggle)
python-scipy 1.1.0-7
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 93,828 kB
  • sloc: python: 156,854; ansic: 82,925; fortran: 80,777; cpp: 7,505; makefile: 427; sh: 294
file content (44 lines) | stat: -rw-r--r-- 1,679 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
import sys
import os

from bento.commands import hooks
from scipy._build_utils import get_g77_abi_wrappers, get_sgemv_fix


def make_relpath(f):
    return os.path.relpath(f, os.path.abspath(os.path.dirname(__file__)))


@hooks.pre_build
def pre_build(context):
    bld = context.waf_context
    default_builder = context.default_builder

    def builder(extension):
        sources = extension.sources[:]
        info = {}
        #FIXME: (Accelerate not detected now, should be:
        #if "Accelerate" in env.FRAMEWORK_CBLAS:
        if sys.platform == 'darwin':
            info = {'extra_link_args': ['Accelerate']}

        sources += [make_relpath(f) for f in get_g77_abi_wrappers(info)]
        return default_builder(extension,
                               features="c fc cstlib pyext bento",
                               source=sources,
                               # Hack to make use of cloadable flags for static archive
                               use="cshlib")
    context.register_compiled_library_builder("arpack_scipy", builder)

    def arpack_builder(extension):
        sources = extension.sources[:]
        #FIXME: (Accelerate not detected now, should be:
        #if "Accelerate" in env.FRAMEWORK_CBLAS:
        if sys.platform == 'darwin':
            info = {'extra_link_args': ['Accelerate']}
            sources += [make_relpath(f) for f in get_sgemv_fix(info)]
        return default_builder(extension,
                               source=sources,
                               features="c fc pyext cshlib f2py bento",
                               use="arpack_scipy LAPACK CLIB")
    context.register_builder("_arpack", arpack_builder)