cmake_minimum_required(VERSION 3.16)

# ── Fetch pybind11 ──────────────────────────────────
include(FetchContent)
FetchContent_Declare(
    pybind11
    URL https://github.com/pybind/pybind11/archive/refs/tags/v2.11.1.tar.gz
    URL_HASH SHA256=d475978da0cdc2d43dd73e309f0f53263607dd08f31d5facb02c8110e4a1ebd8
)
FetchContent_MakeAvailable(pybind11)

# ── _vde native module ─────────────────────────────
pybind11_add_module(_vde
    src/bind_module.cpp
    src/bind_core.cpp
    src/bind_curves.cpp
    src/bind_mesh.cpp
    src/bind_sdf.cpp
)

target_include_directories(_vde
    PRIVATE ${CMAKE_SOURCE_DIR}/include
)

target_link_libraries(_vde PRIVATE vde)

# Python 3.8+ compatibility
target_compile_features(_vde PRIVATE cxx_std_17)
