find_package(GTK2)

if(GTK2_FOUND)

  add_library(gvplugin_gtk
    callbacks.c
    gvdevice_gtk.c
    gvplugin_gtk.c
    interface.c
    support.c
  )

  target_include_directories(gvplugin_gtk PRIVATE
    ../../lib
    ../../lib/cdt
    ../../lib/cgraph
    ../../lib/common
    ../../lib/gvc
    ../../lib/pathplan
  )

  target_include_directories(gvplugin_gtk SYSTEM PRIVATE
    ${GTK2_INCLUDE_DIRS}
  )

  target_link_libraries(gvplugin_gtk PRIVATE
    ${GTK2_LIBRARIES}
  )

  if(BUILD_SHARED_LIBS)
    install(
      TARGETS gvplugin_gtk
      RUNTIME DESTINATION ${BINARY_INSTALL_DIR}
      LIBRARY DESTINATION ${PLUGIN_INSTALL_DIR}
      ARCHIVE DESTINATION ${LIBRARY_INSTALL_DIR}
    )
  endif()

  set_target_properties(gvplugin_gtk PROPERTIES
    VERSION ${GRAPHVIZ_PLUGIN_VERSION}.0.0
    SOVERSION ${GRAPHVIZ_PLUGIN_VERSION}
  )

  if(MINGW)
    # work around https://gitlab.kitware.com/cmake/cmake/-/issues/21716
    set_target_properties(gvplugin_gtk PROPERTIES
      RUNTIME_OUTPUT_NAME gvplugin_gtk-${GRAPHVIZ_PLUGIN_VERSION}
    )
  endif()

endif()
