From 7edf4369196b6cbc1927b1b9dac4552f02a187e6 Mon Sep 17 00:00:00 2001 From: Christian Tacke <58549698+ChristianTackeGSI@users.noreply.github.com> Date: Thu, 8 Oct 2020 16:34:28 +0200 Subject: [PATCH] Improve PMIx Package Finding on Debian Debian's libpmix-dev package installs everything below /usr/lib/ARCH-TRIPLET/pmix2. For some reasoning behind this, see: https://bugs.debian.org/882033 CMake does not search there by default, so help it. Also add myself to CONTRIBUTORS. --- CONTRIBUTORS | 1 + cmake/FindPMIx.cmake | 15 +++++++++++---- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/CONTRIBUTORS b/CONTRIBUTORS index ef095471..50695c78 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -8,5 +8,6 @@ Lebedev, Andrey Mrnjavac, Teo Neskovic, Gvozden Richter, Matthias +Tacke, Christian Uhlig, Florian Wenzel, Sandro diff --git a/cmake/FindPMIx.cmake b/cmake/FindPMIx.cmake index 02dd917a..fdb48aaa 100644 --- a/cmake/FindPMIx.cmake +++ b/cmake/FindPMIx.cmake @@ -6,28 +6,35 @@ # copied verbatim in the file "LICENSE" # ################################################################################ + +# The "lib/${CMAKE_LIBRARY_ARCHITECTURE}/pmix" part in all +# the PATH_SUFFIXES is here to be able to find Debian's +# libpmix-dev package. It installs everything below +# /usr/lib/${CMAKE_LIBRARY_ARCHITECTURE}/pmix + + find_path(PMIx_INCLUDE_DIR NAMES pmix.h HINTS ${PMIX_ROOT} $ENV{PMIX_ROOT} - PATH_SUFFIXES include + PATH_SUFFIXES include lib/${CMAKE_LIBRARY_ARCHITECTURE}/pmix/include ) find_path(PMIx_LIBRARY_DIR NAMES libpmix.dylib libpmix.so HINTS ${PMIX_ROOT} $ENV{PMIX_ROOT} - PATH_SUFFIXES lib lib64 + PATH_SUFFIXES lib lib64 lib/${CMAKE_LIBRARY_ARCHITECTURE}/pmix/lib ) find_library(PMIx_LIBRARY_SHARED NAMES libpmix.dylib libpmix.so HINTS ${PMIX_ROOT} $ENV{PMIX_ROOT} - PATH_SUFFIXES lib lib64 + PATH_SUFFIXES lib lib64 lib/${CMAKE_LIBRARY_ARCHITECTURE}/pmix/lib ) find_file(PMIx_VERSION_FILE NAMES pmix_version.h HINTS ${PMIX_ROOT} $ENV{PMIX_ROOT} - PATH_SUFFIXES include + PATH_SUFFIXES include lib/${CMAKE_LIBRARY_ARCHITECTURE}/pmix/include ) file(READ "${PMIx_VERSION_FILE}" __version_raw)