# FindDevIL

Finds the Developer's Image Library, DevIL:

    find_package(DevIL [<version>] [...])

Added in version 4.2: Support for the `<version>` argument in the `find_package()` call. Version can be also specified as a range.

The DevIL package internally consists of the following libraries, all distributed as part of the same release:

- The core Image Library (IL)

  This library is always required when working with DevIL, as it provides the main image loading and manipulation functionality.

- The Image Library Utilities (ILU)

  This library depends on IL and provides image filters and effects. It is only required if the application uses this extended functionality.

- The Image Library Utility Toolkit (ILUT)

  This library depends on both IL and ILU, and additionally provides an interface to OpenGL. It is only needed if the application uses DevIL together with OpenGL.

## Imported Targets

This module provides the following Imported Targets:

`DevIL::IL`

  Added in version 3.21.

  Target encapsulating the core Image Library (IL) usage requirements, available if the DevIL package is found.

`DevIL::ILU`

  Added in version 3.21.

  Target encapsulating the Image Library Utilities (ILU) usage requirements, available if the DevIL package is found. This target also links to `DevIL::IL` for convenience, as ILU depends on the core IL library.

`DevIL::ILUT`

  Added in version 3.21.

  Target encapsulating the Image Library Utility Toolkit (ILUT) usage requirements, available if the DevIL package and its ILUT library are found. This target also links to `DevIL::ILU`, and transitively to `DevIL::IL`, since ILUT depends on both.

## Result Variables

This module defines the following variables:

`DevIL_FOUND`

  Added in version 3.8.

  Boolean indicating whether the (requested version of) DevIL package was found, including the IL and ILU libraries.

`DevIL_VERSION`

  Added in version 4.2.

  The version of the DevIL found.

`DevIL_ILUT_FOUND`

  Added in version 3.21.

  Boolean indicating whether the ILUT library was found. On most systems, ILUT is found when both IL and ILU are available.

## Cache Variables

The following cache variables may also be set:

`IL_INCLUDE_DIR`

  The directory containing the `il.h`, `ilu.h` and `ilut.h` header files.

`IL_LIBRARIES`

  The full path to the core Image Library (IL).

`ILU_LIBRARIES`

  The full path to the ILU library.

`ILUT_LIBRARIES`

  The full path to the ILUT library.

## Examples

Finding the DevIL package and linking against the core Image Library (IL):

    find_package(DevIL)
    target_link_libraries(app PRIVATE DevIL::IL)

Linking against the Image Library Utilities (ILU):

    find_package(DevIL)
    target_link_libraries(app PRIVATE DevIL::ILU)

Linking against the Image Library Utility Toolkit (ILUT):

    find_package(DevIL)
    target_link_libraries(app PRIVATE DevIL::ILUT)