High performance rendering of implicit surfaces presented in blobtree view. Use Vulkan(NVVK) as backend.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

48 lines
2.9 KiB

find_program(Graphviz_EXECUTABLE NAMES dot PATHS $ENV{PATH} DOC "path to Graphviz executable" REQUIRED)
mark_as_advanced(Graphviz_EXECUTABLE)
if(Graphviz_EXECUTABLE)
set(Graphviz_FOUND true)
if(WIN32)
string(REGEX REPLACE "/bin/dot.exe" "" Graphviz_PATH ${Graphviz_EXECUTABLE})
endif()
find_library(Graphviz_GVC_STATIC_LIBRARY NAMES gvc HINTS ${Graphviz_PATH}/lib)
find_library(Graphviz_CDT_STATIC_LIBRARY NAMES cdt HINTS ${Graphviz_PATH}/lib)
find_library(Graphviz_GRAPH_STATIC_LIBRARY NAMES cgraph HINTS ${Graphviz_PATH}/lib)
find_library(Graphviz_GVP_CORE_STATIC_LIBRARY NAMES gvplugin_core HINTS ${Graphviz_PATH}/lib)
find_library(Graphviz_GVP_DOT_LAYOUT_STATIC_LIBRARY NAMES gvplugin_dot_layout HINTS ${Graphviz_PATH}/lib)
find_library(Graphviz_GVP_GDI_PLUS_STATIC_LIBRARY NAMES gvplugin_gdiplus HINTS ${Graphviz_PATH}/lib)
find_library(Graphviz_GVP_NEATO_LAYOUT_STATIC_LIBRARY NAMES gvplugin_neato_layout HINTS ${Graphviz_PATH}/lib)
find_library(Graphviz_GVP_PANGO_STATIC_LIBRARY NAMES gvplugin_pango HINTS ${Graphviz_PATH}/lib)
find_library(Graphviz_XDOT_STATIC_LIBRARY NAMES xdot HINTS ${Graphviz_PATH}/lib)
find_library(Graphviz_PATHPLAN_STATIC_LIBRARY NAMES pathplan HINTS ${Graphviz_PATH}/lib)
set(Graphviz_INCLUDE_DIRECTORIES "${Graphviz_PATH}/include/graphviz")
set(Graphviz_LIBRARIES ${Graphviz_GVC_STATIC_LIBRARY} ${Graphviz_CDT_STATIC_LIBRARY} ${Graphviz_GRAPH_STATIC_LIBRARY}
${Graphviz_GVP_CORE_STATIC_LIBRARY} ${Graphviz_GVP_DOT_LAYOUT_STATIC_LIBRARY} ${Graphviz_GVP_GDI_PLUS_STATIC_LIBRARY}
${Graphviz_GVP_NEATO_LAYOUT_STATIC_LIBRARY} ${Graphviz_GVP_PANGO_STATIC_LIBRARY}
${Graphviz_XDOT_STATIC_LIBRARY} ${Graphviz_PATHPLAN_STATIC_LIBRARY})
if (EXISTS "${Graphviz_PATH}/include/graphviz/graphviz_version.h")
file(READ "${Graphviz_PATH}/include/graphviz/graphviz_version.h" _graphviz_version_content)
string(REGEX MATCH "#define +PACKAGE_VERSION +\"([0-9]+\\.[0-9]+\\.[0-9]+)\"" _dummy "${_graphviz_version_content}")
set(Graphviz_VERSION "${CMAKE_MATCH_1}")
endif ()
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(Graphviz
REQUIRED_VARS Graphviz_LIBRARIES Graphviz_INCLUDE_DIRECTORIES
VERSION_VAR Graphviz_VERSION)
if(NOT TARGET Graphviz::Graphviz)
add_library(Graphviz::Graphviz UNKNOWN IMPORTED)
set_target_properties(Graphviz::Graphviz PROPERTIES
IMPORTED_LOCATION "${Graphviz_GVC_STATIC_LIBRARY}" # randomly picked, should this be another one?
INTERFACE_LINK_LIBRARIES "${Graphviz_CDT_STATIC_LIBRARY};${Graphviz_GRAPH_STATIC_LIBRARY};${Graphviz_GVP_CORE_STATIC_LIBRARY};${Graphviz_GVP_DOT_LAYOUT_STATIC_LIBRARY};${Graphviz_GVP_GDI_PLUS_STATIC_LIBRARY};${Graphviz_GVP_NEATO_LAYOUT_STATIC_LIBRARY};${Graphviz_GVP_PANGO_STATIC_LIBRARY};${Graphviz_XDOT_STATIC_LIBRARY};${Graphviz_PATHPLAN_STATIC_LIBRARY}"
INTERFACE_INCLUDE_DIRECTORIES "${Graphviz_INCLUDE_DIRECTORIES}"
)
endif()
endif()