CoolFace
Apppublic

aravagarwal/CodeCloakPII

sourceHugging Faceupdated 3y agoView on Hugging Face
0likes
1from os.path import isdir, join2from platform import system3 4from setuptools import Extension, find_packages, setup5from setuptools.command.build import build6from wheel.bdist_wheel import bdist_wheel7 8 9class Build(build):10    def run(self):11        if isdir("queries"):12            dest = join(self.build_lib, "tree_sitter_python", "queries")13            self.copy_tree("queries", dest)14        super().run()15 16 17class BdistWheel(bdist_wheel):18    def get_tag(self):19        python, abi, platform = super().get_tag()20        if python.startswith("cp"):21            python, abi = "cp38", "abi3"22        return python, abi, platform23 24 25setup(26    packages=find_packages("bindings/python"),27    package_dir={"": "bindings/python"},28    package_data={29        "tree_sitter_python": ["*.pyi", "py.typed"],30        "tree_sitter_python.queries": ["*.scm"],31    },32    ext_package="tree_sitter_python",33    ext_modules=[34        Extension(35            name="_binding",36            sources=[37                "bindings/python/tree_sitter_python/binding.c",38                "src/parser.c",39                "src/scanner.c",40            ],41            extra_compile_args=(42                ["-std=c11"] if system() != 'Windows' else []43            ),44            define_macros=[45                ("Py_LIMITED_API", "0x03080000"),46                ("PY_SSIZE_T_CLEAN", None)47            ],48            include_dirs=["src"],49            py_limited_api=True,50        )51    ],52    cmdclass={53        "build": Build,54        "bdist_wheel": BdistWheel55    },56    zip_safe=False,57)58