find_package(pybind11 REQUIRED) find_package(Eigen3 REQUIRED NO_MODULE) # ======= # Library # ======= # Create the pybind11 library pybind11_add_module(pybind11_bindings MODULE bindings.cpp) target_link_libraries(pybind11_bindings PRIVATE MyMath::mymath Eigen3::Eigen) # The name of the shared library must match the module name set_target_properties(pybind11_bindings PROPERTIES LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/mymath OUTPUT_NAME "bindings") # ======= # Install # ======= # Install the pybind11 library install( TARGETS pybind11_bindings COMPONENT bindings LIBRARY DESTINATION ${MYMATH_INSTALL_PREFIX} ARCHIVE DESTINATION ${MYMATH_INSTALL_PREFIX} RUNTIME DESTINATION ${MYMATH_INSTALL_PREFIX})