99from Cython .Build import cythonize
1010from setuptools import Extension , setup
1111
12+
1213def bool_from_environ (key : str ):
1314 value = os .environ .get (key )
1415 if not value :
@@ -17,7 +18,10 @@ def bool_from_environ(key: str):
1718 return True
1819 if value == "0" :
1920 return False
20- raise ValueError (f"Environment variable { key } has invalid value { value } . Please set it to 1, 0 or an empty string" )
21+ raise ValueError (
22+ f"Environment variable { key } has invalid value { value } . Please set it to 1, 0 or an empty string"
23+ )
24+
2125
2226here = os .path .abspath (os .path .dirname (__file__ ))
2327
@@ -29,6 +33,7 @@ def bool_from_environ(key: str):
2933use_cython_linetrace = bool_from_environ ("CYTHON_LINETRACE" )
3034use_cython_annotate = bool_from_environ ("CYTHON_ANNOTATE" )
3135
36+
3237def _configure_extensions_with_system_libs () -> List [Extension ]:
3338 include_dirs = []
3439 define_macros = []
@@ -55,7 +60,7 @@ def _configure_extensions_with_system_libs() -> List[Extension]:
5560 ],
5661 language = "c++" ,
5762 libraries = libraries ,
58- library_dirs = library_dirs
63+ library_dirs = library_dirs ,
5964 )
6065
6166 extension_test = Extension (
@@ -68,11 +73,12 @@ def _configure_extensions_with_system_libs() -> List[Extension]:
6873 ],
6974 language = "c++" ,
7075 libraries = libraries ,
71- library_dirs = library_dirs
76+ library_dirs = library_dirs ,
7277 )
7378
7479 return [extension , extension_test ]
7580
81+
7682def _configure_extensions_with_vendored_libs () -> List [Extension ]:
7783 # We build with HB_EXPERIMENTAL_API to enable experimental HarfBuzz features
7884 # like VARC table support, but we must not use any experimental APIs as it
@@ -135,12 +141,14 @@ def _configure_extensions_with_vendored_libs() -> List[Extension]:
135141
136142 return [extension , extension_test ]
137143
144+
138145def configure_extensions () -> List [Extension ]:
139146 if use_system_libraries :
140147 return _configure_extensions_with_system_libs ()
141148 else :
142149 return _configure_extensions_with_vendored_libs ()
143150
151+
144152setup (
145153 name = "uharfbuzz" ,
146154 use_scm_version = {"write_to" : "src/uharfbuzz/_version.py" },
0 commit comments