cmake: fix resovling dwarf.h

Fixes: 0e787b7 "cmake: fix resolving libdwarf"
Change-Id: Iccb491c8ad07db0f15f6b1798ee8a91edc808cf7
This commit is contained in:
Masamichi Takagi
2020-06-20 08:20:12 +09:00
parent 0e787b731e
commit 697e9386b3
2 changed files with 7 additions and 7 deletions

View File

@ -136,17 +136,16 @@ if (NOT LIBIBERTY)
message(FATAL_ERROR "error: couldn't find libiberty")
endif()
# libdwarf-devel provides /usr/lib64/libdwarf.so
find_library(LIBDWARF dwarf)
# elfutils-devel provides /usr/include/dwarf.h
find_library(LIBEBL ebl)
if ((NOT LIBDWARF) OR (NOT LIBEBL))
if (NOT LIBDWARF)
message("WARNING: libdwarf will be compiled locally")
set(LIBDWARF LIBDWARF-NOTFOUND)
set(LIBEBL LIBEBL-NOTFOUND)
enable_language(CXX)
else()
# Note that libdwarf-devel provides /usr/include/libdwarf/dwarf.h
# but elfutils-devel provides /usr/include/dwarf.h
# while mcinspect.c performs "#include <dwarf.h>"
find_path(DWARF_H dwarf.h PATH_SUFFIXES libdwarf)
endif()
if (ENABLE_QLMPI)

View File

@ -27,6 +27,7 @@ if (NOT LIBDWARF)
"${CMAKE_CURRENT_SOURCE_DIR}/lib/libdwarf/libdwarf/libdwarf/")
target_link_libraries(mcinspect dwarf z elf)
else()
target_include_directories(mcinspect PRIVATE ${DWARF_H})
target_link_libraries(mcinspect ${LIBDWARF})
endif()
target_link_libraries(mcinspect ${LIBBFD})