-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathbuild.py
52 lines (48 loc) · 1.65 KB
/
build.py
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
48
49
50
51
52
from __future__ import annotations
from typing import Any
import Cython.Build
from setuptools.extension import Extension
def build(setup_kwargs: dict[str, Any]) -> None:
cython_modules = Cython.Build.cythonize(
[
Extension(
"deqr.quirc",
sources=[
"deqr/quirc.pyx",
"deps/quirc/lib/decode.c",
"deps/quirc/lib/identify.c",
"deps/quirc/lib/quirc.c",
"deps/quirc/lib/version_db.c",
],
include_dirs=["deps/quirc/lib"],
extra_compile_args=["-fdiagnostics-color=always", "-g0"],
),
Extension(
"deqr.qrdec",
sources=[
"deqr/qrdec.pyx",
"deps/qrdec/src/bch15_5.c",
"deps/qrdec/src/isaac.c",
"deps/qrdec/src/qrdec.c",
"deps/qrdec/src/rs.c",
"deps/qrdec/src/util.c",
],
include_dirs=["deps/qrdec/src"],
extra_compile_args=["-fdiagnostics-color=always", "-g0"],
),
Extension(
"deqr.binarize",
sources=["deqr/binarize.pyx", "deps/qrdec/src/binarize.c"],
include_dirs=["deps/qrdec/src"],
extra_compile_args=["-fdiagnostics-color=always", "-g0"],
),
],
language_level=3,
compiler_directives={"embedsignature": True},
)
setup_kwargs.update(
{
"ext_modules": cython_modules,
"zip_safe": False,
}
)