FindFLTK

Finds the Fast Light Toolkit (FLTK), a cross-platform toolkit for GUI development.

FLTK uses CMake-based build system and provides a package configuration file for projects to find it. As of its 1.4.0 version it also provides Imported Targets that encapsulate usage requirements. For example, fltk::fltk, which can be linked to project targets where FLTK is needed. This module takes that into account and first attempts to find FLTK in config mode. If the configuration file is not available, it falls back to module mode and searches standard locations. See also to the official FLTK documentation for more information, how to use FLTK with CMake.

在 3.11 版被加入: Debug and Release library variants are found separately and use per-configuration variables.

結果變數

This module defines the following variables:

FLTK_FOUND

Boolean indicating whether FLTK is found.

FLTK_LIBRARIES

Libraries needed to link against to use FLTK.

FLTK_WRAP_UI

Boolean indicating whether the fluid executable is found. This variable is available only if FLTK is found in module mode and can be used, for example, to conditionally invoke the fltk_wrap_ui() command if it is needed and available.

快取變數

The following cache variables are also available to set or use:

FLTK_FLUID_EXECUTABLE

The path to the fluid binary tool.

FLTK_INCLUDE_DIR

The include directory containing header files needed to use FLTK.

FLTK_BASE_LIBRARY_RELEASE

在 3.11 版被加入.

The path to the release (optimized) FLTK base library.

FLTK_BASE_LIBRARY_DEBUG

在 3.11 版被加入.

The path to the debug FLTK base library.

FLTK_GL_LIBRARY_RELEASE

在 3.11 版被加入.

The path to the release (optimized) FLTK GL library.

FLTK_GL_LIBRARY_DEBUG

在 3.11 版被加入.

The path to the debug FLTK GL library.

FLTK_FORMS_LIBRARY_RELEASE

在 3.11 版被加入.

The path to the release (optimized) FLTK Forms library.

FLTK_FORMS_LIBRARY_DEBUG

在 3.11 版被加入.

The path to the debug FLTK Forms library.

FLTK_IMAGES_LIBRARY_RELEASE

在 3.11 版被加入.

The path to the release (optimized) FLTK Images protobuf library.

FLTK_IMAGES_LIBRARY_DEBUG

在 3.11 版被加入.

The path to the debug FLTK Images library.

輸入變數

By default, this module searches for all FLTK libraries and its fluid executable. The following variables can be set before calling find_package(FLTK) to indicate which elements are optional for a successful configuration:

FLTK_SKIP_FLUID

Set to boolean true to mark the fluid executable as optional.

FLTK_SKIP_FORMS

Set to boolean true to mark the FLTK Forms library as optional; it will therefore not be included in the FLTK_LIBRARIES result variable.

FLTK_SKIP_IMAGES

Set to boolean true to mark the FLTK Image library as optional; it will therefore not be included in the FLTK_LIBRARIES result variable.

FLTK_SKIP_OPENGL

Set to boolean true to mark the FLTK OpenGL library as optional; it will therefore not be included in the FLTK_LIBRARIES result variable.

範例

Finding FLTK and conditionally creating a fltk::fltk imported interface target, if it is not provided by the upstream FLTK package. Imported target can then be linked to a project target:

find_package(FLTK)

if(FLTK_FOUND AND NOT TARGET fltk::fltk)
  add_library(fltk::fltk INTERFACE IMPORTED)
  set_target_properties(
    fltk::fltk
    PROPERTIES
      INTERFACE_INCLUDE_DIRECTORIES "${FLTK_INCLUDE_DIR}"
      INTERFACE_LINK_LIBRARIES "${FLTK_LIBRARIES}"
  )
endif()

target_link_libraries(project_target PRIVATE fltk::fltk)