Findelf.cmake 675 B

1234567891011121314151617181920212223
  1. # SPDX-License-Identifier: Apache-2.0
  2. #
  3. # Find libelf, the ELF Access Library
  4. #
  5. if(CMAKE_SYSTEM_NAME STREQUAL "FreeBSD" OR CMAKE_SYSTEM_NAME STREQUAL "MidnightBSD")
  6. find_path(elf_INCLUDE_DIR NAMES libelf.h)
  7. find_library(elf_LIBRARY NAMES elf)
  8. include(FindPackageHandleStandardArgs)
  9. find_package_handle_standard_args(elf REQUIRED_VARS elf_LIBRARY elf_INCLUDE_DIR)
  10. if(elf_FOUND AND NOT TARGET elf::elf)
  11. add_library(elf::elf UNKNOWN IMPORTED)
  12. set_target_properties(elf::elf PROPERTIES
  13. IMPORTED_LOCATION "${elf_LIBRARY}"
  14. INTERFACE_INCLUDE_DIRECTORIES "${elf_INCLUDE_DIR}"
  15. )
  16. endif()
  17. mark_as_advanced(elf_INCLUDE_DIR elf_LIBRARY)
  18. endif()