find_package(PCL COMPONENTS visualization)

if (${PCL_VISUALIZATION_FOUND})
    message(STATUS "PCL visualization found, build pcl.visualization")

    add_cython_target(_connection CXX)
    add_library(_connection MODULE ${_connection})
    target_link_libraries(_connection ${PCL_LIBRARIES})
    python_extension_module(_connection)
    install(TARGETS _connection LIBRARY DESTINATION pcl/visualization)

    add_cython_target(_visualization CXX)
    add_library(_visualization MODULE ${_visualization})
    target_link_libraries(_visualization ${PCL_LIBRARIES})
    math(EXPR PCL_VER "${PCL_VERSION_MAJOR} * 10000 + ${PCL_VERSION_MINOR} * 100 + ${PCL_VERSION_PATCH}")
    target_compile_definitions(_visualization PRIVATE PCL_VER=${PCL_VER})
    python_extension_module(_visualization)
    add_dependencies(_visualization _connection)
    install(TARGETS _visualization LIBRARY DESTINATION pcl/visualization)
else()
    message(STATUS "PCL visualization not found, skip pcl.visualization")
endif()
