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 (34 lines) | stat: -rw-r--r-- 1,087 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
import os
import sys

from bento.commands import hooks

from scipy._build_utils import get_sgemv_fix


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

    info = {'extra_link_args': ['Accelerate']}
    sources += [make_relpath(f) for f in get_sgemv_fix(info)]


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

    def superlu_builder(extension):
        #FIXME: (Accelerate not detected now, should be:
        #if "Accelerate" in env.FRAMEWORK_CBLAS:
        if sys.platform == 'darwin':
            append_sgemv_fix(extension.sources)
        return default_builder(extension, use="superlu_src LAPACK")
    context.register_builder("_superlu", superlu_builder)

    def st_builder(extension):
        return default_builder(extension,
                               features="c bento cstlib",
                               defines=["USE_VENDOR_BLAS=2"])
    context.register_compiled_library_builder("superlu_src", st_builder)