From: Kefu Chai Date: Sat, 3 Apr 2021 12:57:41 +0000 (+0800) Subject: cmake: consolidate the find logic in Findpmem.cmake X-Git-Tag: v17.1.0~2363^2~3 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=6dfc80737d1f68d9ad2c53c26032ff1bee424f68;p=ceph.git cmake: consolidate the find logic in Findpmem.cmake less repeating this way Signed-off-by: Kefu Chai --- diff --git a/cmake/modules/Findpmem.cmake b/cmake/modules/Findpmem.cmake index 603b3fbf60b..2f5366eb540 100644 --- a/cmake/modules/Findpmem.cmake +++ b/cmake/modules/Findpmem.cmake @@ -4,30 +4,21 @@ # pmem_LIBRARIES - List of libraries when using libpmem. # pmem_FOUND - True if pmem found. -find_package(PkgConfig QUIET) -if(PKG_CONFIG_FOUND) - pkg_check_modules(PKG_pmem QUIET libpmem) - pkg_check_modules(PKG_pmemobj QUIET libpmemobj) -endif() +find_package(PkgConfig QUIET REQUIRED) foreach(component pmem ${pmem_FIND_COMPONENTS}) - if(component STREQUAL pmem) - find_path(pmem_${component}_INCLUDE_DIR - NAMES libpmem.h - HINTS ${PKG_pmem_INCLUDE_DIRS}) - find_library(pmem_${component}_LIBRARY - NAMES pmem - HINTS ${PKG_pmem_LIBRARY_DIRS}) - elseif(component STREQUAL pmemobj) - find_path(pmem_${component}_INCLUDE_DIR - NAMES libpmemobj.h - HINTS ${PKG_pmemobj_INCLUDE_DIRS}) - find_library(pmem_${component}_LIBRARY - NAMES pmemobj - HINTS ${PKG_pmemobj_LIBRARY_DIRS})) - else() + set(pmem_COMPONENTS pmem pmemobj) + list(FIND pmem_COMPONENTS "${component}" found) + if(found EQUAL -1) message(FATAL_ERROR "unknown libpmem component: ${component}") endif() + pkg_check_modules(PKG_${component} QUIET lib${component}) + find_path(pmem_${component}_INCLUDE_DIR + NAMES lib${component}.h + HINTS ${PKG_${component}_INCLUDE_DIRS}) + find_library(pmem_${component}_LIBRARY + NAMES ${component} + HINTS ${PKG_${component}_LIBRARY_DIRS}) mark_as_advanced( pmem_${component}_INCLUDE_DIR pmem_${component}_LIBRARY)