setup.py 835 Bytes
Newer Older
1
2
import glob
import os
3
import shutil
4
5
6
7
import subprocess
from pathlib import Path

from setuptools import setup
8
from setuptools.command.build import build
9
10


11
class Build(build):
12
    def run(self):
13
        subprocess.run(["xmake", "build"])
14
        subprocess.run(["xmake", "install"])
15
16
17
18
19
20
21
22
23
        subprocess.run(["xmake", "build", "-y", "_infinicore"])
        subprocess.run(["xmake", "install", "_infinicore"])

        installation_dir = os.getenv("INFINI_ROOT", str(Path.home() / ".infini"))
        lib_dir = os.path.join(installation_dir, "lib")
        lib_path = glob.glob(os.path.join(lib_dir, "_infinicore.*"))[0]
        package_dir = os.path.join(self.build_lib, "infinicore")
        os.makedirs(package_dir, exist_ok=True)
        shutil.move(lib_path, package_dir)
24
25


26
setup(package_dir={"": "python"}, cmdclass={"build": Build})