Files
FCES-native/python/setup.py

32 lines
1.2 KiB
Python

import os
from setuptools import setup
from torch.utils.cpp_extension import BuildExtension, CppExtension
# Get absolute path to project directory
proj_dir = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
setup(
name="fces_native",
version="0.1.0",
description="High-performance C++ FCES optimizer (Python bindings)",
ext_modules=[
CppExtension(
name="fces_native",
sources=[
"fces_native.cpp",
os.path.join(proj_dir, "src", "config.cpp"),
os.path.join(proj_dir, "src", "controller.cpp"),
os.path.join(proj_dir, "src", "population.cpp"),
os.path.join(proj_dir, "src", "fitness.cpp"),
os.path.join(proj_dir, "src", "evolution.cpp"),
os.path.join(proj_dir, "src", "spectral.cpp"),
os.path.join(proj_dir, "src", "oscillation.cpp"),
os.path.join(proj_dir, "src", "optimizer.cpp"),
os.path.join(proj_dir, "src", "telemetry.cpp"),
],
include_dirs=[os.path.join(proj_dir, "include")],
),
],
cmdclass={"build_ext": BuildExtension},
)