4 # Finds the libdisplay-info library
6 # This will define the following target:
8 # ${APP_NAME_LC}::LibDisplayInfo - The LibDisplayInfo library
10 if(NOT TARGET ${APP_NAME_LC}::${CMAKE_FIND_PACKAGE_NAME})
12 find_package(PkgConfig)
15 pkg_check_modules(PC_LIBDISPLAYINFO libdisplay-info QUIET)
18 find_path(LIBDISPLAYINFO_INCLUDE_DIR libdisplay-info/edid.h
19 HINTS ${PC_LIBDISPLAYINFO_INCLUDEDIR})
21 find_library(LIBDISPLAYINFO_LIBRARY NAMES display-info
22 HINTS ${PC_LIBDISPLAYINFO_LIBDIR})
24 set(LIBDISPLAYINFO_VERSION ${PC_LIBDISPLAYINFO_VERSION})
26 include(FindPackageHandleStandardArgs)
27 find_package_handle_standard_args(LibDisplayInfo
28 REQUIRED_VARS LIBDISPLAYINFO_LIBRARY LIBDISPLAYINFO_INCLUDE_DIR
29 VERSION_VAR LIBDISPLAYINFO_VERSION)
31 if(LIBDISPLAYINFO_FOUND)
32 add_library(${APP_NAME_LC}::${CMAKE_FIND_PACKAGE_NAME} UNKNOWN IMPORTED)
33 set_target_properties(${APP_NAME_LC}::${CMAKE_FIND_PACKAGE_NAME} PROPERTIES
34 IMPORTED_LOCATION "${LIBDISPLAYINFO_LIBRARY}"
35 INTERFACE_INCLUDE_DIRECTORIES "${LIBDISPLAYINFO_INCLUDE_DIR}")
37 if(LibDisplayInfo_FIND_REQUIRED)
38 message(FATAL_ERROR "Libdisplayinfo libraries were not found.")