#.rst: # FindLibDl # -------- # # Find the native realtime includes and library. # # IMPORTED Targets # ^^^^^^^^^^^^^^^^ # # This module defines :prop_tgt:`IMPORTED` target ``LIBDL::LIBDL``, if # LIBDL has been found. # # Result Variables # ^^^^^^^^^^^^^^^^ # # This module defines the following variables: # # :: # # LIBDL_INCLUDE_DIRS - where to find dlfcn.h, etc. # LIBDL_LIBRARIES - List of libraries when using libdl. # LIBDL_FOUND - True if dynamic linking library found. # # Hints # ^^^^^ # # A user may set ``LIBDL_ROOT`` to a library installation root to tell this # module where to look. find_path(LIBDL_INCLUDE_DIRS NAMES dlfcn.h PATHS ${LIBDL_ROOT}/include/ ) find_library(LIBDL_LIBRARIES dl) include(FindPackageHandleStandardArgs) find_package_handle_standard_args(LibDl DEFAULT_MSG LIBDL_LIBRARIES LIBDL_INCLUDE_DIRS) mark_as_advanced(LIBDL_INCLUDE_DIRS LIBDL_LIBRARIES) if(LIBDL_FOUND) if(NOT TARGET LIBDL::LIBDL) add_library(LIBDL::LIBDL UNKNOWN IMPORTED) set_target_properties(LIBDL::LIBDL PROPERTIES IMPORTED_LOCATION "${LIBDL_LIBRARIES}" INTERFACE_INCLUDE_DIRECTORIES "${LIBDL_INCLUDE_DIRS}") endif() endif()