Skip to content

Commit d56e592

Browse files
committed
renaming module and adding initial longdouble backend support
1 parent 0a36a9d commit d56e592

21 files changed

+969
-862
lines changed

quaddtype/meson.build

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
project('quaddtype', 'c', 'cpp', default_options : ['cpp_std=c++17', 'b_pie=true'])
1+
project('numpy_quaddtype', 'c', 'cpp', default_options : ['cpp_std=c++17', 'b_pie=true'])
22

33
py_mod = import('python')
44
py = py_mod.find_installation()
55

66
c = meson.get_compiler('c')
77

8-
sleef_dep = c.find_library('sleef')
9-
sleefquad_dep = c.find_library('sleefquad')
8+
sleef_dep = c.find_library('sleef', dirs:['/usr/local/lib'])
9+
sleefquad_dep = c.find_library('sleefquad', dirs:['/usr/local/lib'])
1010

1111
incdir_numpy = run_command(py,
1212
[
@@ -19,30 +19,30 @@ incdir_numpy = run_command(py,
1919
includes = include_directories(
2020
[
2121
incdir_numpy,
22-
'quaddtype/src',
22+
'numpy_quaddtype/src',
2323
]
2424
)
2525

2626
srcs = [
27-
'quaddtype/src/casts.h',
28-
'quaddtype/src/casts.cpp',
29-
'quaddtype/src/scalar.h',
30-
'quaddtype/src/scalar.c',
31-
'quaddtype/src/dtype.h',
32-
'quaddtype/src/dtype.c',
33-
'quaddtype/src/quaddtype_main.c',
34-
'quaddtype/src/scalar_ops.h',
35-
'quaddtype/src/scalar_ops.cpp',
36-
'quaddtype/src/ops.hpp',
37-
'quaddtype/src/umath.h',
38-
'quaddtype/src/umath.cpp'
27+
'numpy_quaddtype/src/casts.h',
28+
'numpy_quaddtype/src/casts.cpp',
29+
'numpy_quaddtype/src/scalar.h',
30+
'numpy_quaddtype/src/scalar.c',
31+
'numpy_quaddtype/src/dtype.h',
32+
'numpy_quaddtype/src/dtype.c',
33+
'numpy_quaddtype/src/quaddtype_main.c',
34+
# 'numpy_quaddtype/src/scalar_ops.h',
35+
# 'numpy_quaddtype/src/scalar_ops.cpp',
36+
# 'numpy_quaddtype/src/ops.hpp',
37+
# 'numpy_quaddtype/src/umath.h',
38+
# 'numpy_quaddtype/src/umath.cpp'
3939
]
4040

4141
py.install_sources(
4242
[
43-
'quaddtype/__init__.py',
43+
'numpy_quaddtype/__init__.py',
4444
],
45-
subdir: 'quaddtype',
45+
subdir: 'numpy_quaddtype',
4646
pure: false
4747
)
4848

@@ -51,6 +51,6 @@ srcs,
5151
c_args: ['-g', '-O0', '-lsleef', '-lsleefquad'],
5252
dependencies: [sleef_dep, sleefquad_dep],
5353
install: true,
54-
subdir: 'quaddtype',
54+
subdir: 'numpy_quaddtype',
5555
include_directories: includes
5656
)

quaddtype/numpy_quaddtype/__init__.py

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
from ._quaddtype_main import (
2+
QuadPrecision,
3+
QuadPrecDType
4+
)
5+
6+
__all__ = ['QuadPrecision', 'QuadPrecDType', 'SleefQuadPrecision', 'LongDoubleQuadPrecision',
7+
'SleefQuadPrecDType', 'LongDoubleQuadPrecDType']
8+
9+
10+
def SleefQuadPrecision(value):
11+
return QuadPrecision(value, backend='sleef')
12+
13+
14+
def LongDoubleQuadPrecision(value):
15+
return QuadPrecision(value, backend='longdouble')
16+
17+
18+
def SleefQuadPrecDType():
19+
return QuadPrecDType(backend='sleef')
20+
21+
22+
def LongDoubleQuadPrecDType():
23+
return QuadPrecDType(backend='longdouble')

0 commit comments

Comments
 (0)