find_package(pybind11 2.2 REQUIRED) pybind11_add_module(pyf3d F3DPythonBindings.cxx) target_compile_features(pyf3d PRIVATE cxx_std_14) target_link_libraries(pyf3d PRIVATE libf3d) set_target_properties(pyf3d PROPERTIES LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib" CXX_VISIBILITY_PRESET hidden OUTPUT_NAME "f3d" ) if(WIN32) # On Windows, the python module needs to be in the same folder than f3d.dll # Usage of PATH to find the DLL is not possible, see https://stackoverflow.com/a/64303856/2609654 set_target_properties(pyf3d PROPERTIES LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin" ) endif() if (APPLE OR UNIX) set_target_properties(pyf3d PROPERTIES INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}") endif () # testing if(BUILD_TESTING) add_subdirectory(testing) endif()