46 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			CMake
		
	
	
	
			
		
		
	
	
			46 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			CMake
		
	
	
	
| find_package(PkgConfig QUIET)
 | |
| pkg_check_modules(libdl QUIET "libdl")
 | |
| 
 | |
| include(FindPackageHandleStandardArgs)
 | |
| find_path(LIBDL_INCLUDE_DIR
 | |
|     NAMES
 | |
|     dlfcn.h
 | |
|     PATH
 | |
|     include
 | |
| )
 | |
| find_library(LIBDL_LIBRARY
 | |
|     dl
 | |
|     PATH_SUFFIXES
 | |
|     lib64
 | |
|     lib
 | |
| )
 | |
| find_package_handle_standard_args(libdl
 | |
|     DEFAULT_MSGS
 | |
|     LIBDL_INCLUDE_DIR
 | |
|     LIBDL_LIBRARY
 | |
| )
 | |
| mark_as_advanced(
 | |
|     LIBDL_INCLUDE_DIR
 | |
|     LIBDL_LIBRARY
 | |
| )
 | |
| 
 | |
| if (libdl_FOUND)
 | |
|     set(LIBDL_LIBRARIES    ${LIBDL_LIBRARY})
 | |
|     set(LIBDL_INCLUDE_DIRS ${LIBDL_INCLUDE_DIR})
 | |
|     set(LIBDL_CFLAGS "-DHAS_LIBDL")
 | |
| 
 | |
|     if (LIBDL_LIBRARY AND NOT TARGET libdl::libdl)
 | |
|         if(IS_ABSOLUTE "${LIBDL_LIBRARY}")
 | |
|             add_library(libdl::libdl UNKNOWN IMPORTED)
 | |
|             set_target_properties(libdl::libdl PROPERTIES IMPORTED_LOCATION
 | |
|                 "${LIBDL_LIBRARY}")
 | |
|         else()
 | |
|             add_library(libdl::libdl INTERFACE IMPORTED)
 | |
|             set_target_properties(libdl::libdl PROPERTIES IMPORTED_LIBNAME
 | |
|                 "${LIBDL_LIBRARY}")
 | |
|         endif()
 | |
|         set_target_properties(libdl::libdl PROPERTIES INTERFACE_INCLUDE_DIRECTORIES
 | |
|             "${LIBDL_INCLUDE_DIR}")
 | |
|     endif()
 | |
| endif()
 |