File: setup.py

package info (click to toggle)
scipy 1.10.1-2
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 284,824 kB
  • sloc: cpp: 2,176,247; python: 253,822; ansic: 151,905; fortran: 93,071; javascript: 32,693; f90: 1,092; makefile: 630; cs: 534; sh: 516; pascal: 466; csh: 135; xml: 56; perl: 54
file content (47 lines) | stat: -rw-r--r-- 1,460 bytes parent folder | download
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
45
46
47
from os.path import join
from scipy._build_utils import numpy_nodepr_api


def configuration(parent_package='', top_path=None):
    from numpy.distutils.misc_util import Configuration
    from numpy.distutils.system_info import get_info
    from scipy._build_utils import (uses_blas64, blas_ilp64_pre_build_hook,
                                    combine_dict)

    config = Configuration('odr', parent_package, top_path)

    libodr_files = ['d_odr.f',
                    'd_mprec.f',
                    'dlunoc.f',
                    'd_lpk.f']

    if uses_blas64():
        blas_info = get_info('blas_ilp64_opt')
        pre_build_hook = blas_ilp64_pre_build_hook(blas_info)
    else:
        blas_info = get_info('blas_opt')
        pre_build_hook = None

    odrpack_src = [join('odrpack', x) for x in libodr_files]
    config.add_library('odrpack', sources=odrpack_src,
                       _pre_build_hook=pre_build_hook)

    sources = ['__odrpack.c']

    cfg = combine_dict(blas_info, numpy_nodepr_api,
                       libraries=['odrpack'],
                       include_dirs=['.'])
    ext = config.add_extension('__odrpack',
        sources=sources,
        depends=(['odrpack.h'] + odrpack_src),
        **cfg
    )
    ext._pre_build_hook = pre_build_hook

    config.add_data_dir('tests')
    return config


if __name__ == '__main__':
    from numpy.distutils.core import setup
    setup(**configuration(top_path='').todict())