From 5c4f3c236596d2f460f6299fd20729b0a1631507 Mon Sep 17 00:00:00 2001 From: Florent Pruvost <florent.pruvost@inria.fr> Date: Thu, 9 Jan 2020 17:33:23 +0100 Subject: [PATCH] add a check about headers directory if variable empty even if found with pkg-config, can happen if directory of headers already in some environment variables, avoid to use PKG_CONFIG_ALLOW_SYSTEM_CFLAGS --- modules/find/FindAL4SAN.cmake | 3 +++ modules/find/FindCHAMELEON.cmake | 3 +++ modules/find/FindEZTRACE.cmake | 3 +++ modules/find/FindFABULOUS.cmake | 3 +++ modules/find/FindFFTW.cmake | 12 ++++++++++++ modules/find/FindFXT.cmake | 3 +++ modules/find/FindGTG.cmake | 3 +++ modules/find/FindHQR.cmake | 3 +++ modules/find/FindHWLOC.cmake | 3 +++ modules/find/FindPAPI.cmake | 3 +++ modules/find/FindPARSEC.cmake | 3 +++ modules/find/FindPASTIX.cmake | 3 +++ modules/find/FindPETSC.cmake | 3 +++ modules/find/FindSIMGRID.cmake | 3 +++ modules/find/FindSLEPC.cmake | 3 +++ modules/find/FindSPM.cmake | 3 +++ modules/find/FindSTARPU.cmake | 7 +++++++ 17 files changed, 64 insertions(+) diff --git a/modules/find/FindAL4SAN.cmake b/modules/find/FindAL4SAN.cmake index badefdd..817e090 100644 --- a/modules/find/FindAL4SAN.cmake +++ b/modules/find/FindAL4SAN.cmake @@ -88,6 +88,9 @@ if(PKG_CONFIG_EXECUTABLE) endif() if (AL4SAN_FOUND AND AL4SAN_LIBRARIES) + if (NOT AL4SAN_INCLUDE_DIRS) + pkg_get_variable(AL4SAN_INCLUDE_DIRS al4san includedir) + endif() set(AL4SAN_FOUND_WITH_PKGCONFIG "TRUE") find_pkgconfig_libraries_absolute_path(AL4SAN) else() diff --git a/modules/find/FindCHAMELEON.cmake b/modules/find/FindCHAMELEON.cmake index 6480f86..1c1453f 100644 --- a/modules/find/FindCHAMELEON.cmake +++ b/modules/find/FindCHAMELEON.cmake @@ -178,6 +178,9 @@ if(PKG_CONFIG_EXECUTABLE AND NOT CHAMELEON_GIVEN_BY_USER) endif() if (CHAMELEON_FOUND AND CHAMELEON_LIBRARIES) + if (NOT CHAMELEON_INCLUDE_DIRS) + pkg_get_variable(CHAMELEON_INCLUDE_DIRS chameleon includedir) + endif() set(CHAMELEON_FOUND_WITH_PKGCONFIG "TRUE") find_pkgconfig_libraries_absolute_path(CHAMELEON) else() diff --git a/modules/find/FindEZTRACE.cmake b/modules/find/FindEZTRACE.cmake index 19fb409..8f68461 100644 --- a/modules/find/FindEZTRACE.cmake +++ b/modules/find/FindEZTRACE.cmake @@ -98,6 +98,9 @@ if( PKG_CONFIG_EXECUTABLE AND NOT EZTRACE_GIVEN_BY_USER ) "\n the PKG_CONFIG_PATH environment variable.${ColourReset}") endif() if (EZTRACE_FOUND AND EZTRACE_LIBRARIES) + if (NOT EZTRACE_INCLUDE_DIRS) + pkg_get_variable(EZTRACE_INCLUDE_DIRS eztrace includedir) + endif() set(EZTRACE_FOUND_WITH_PKGCONFIG "TRUE") find_pkgconfig_libraries_absolute_path(EZTRACE) else() diff --git a/modules/find/FindFABULOUS.cmake b/modules/find/FindFABULOUS.cmake index ef219f1..cc8ce29 100644 --- a/modules/find/FindFABULOUS.cmake +++ b/modules/find/FindFABULOUS.cmake @@ -123,6 +123,9 @@ if( PKG_CONFIG_EXECUTABLE AND NOT FABULOUS_GIVEN_BY_USER ) endif() if (FABULOUS_FOUND AND FABULOUS_LIBRARIES) + if (NOT FABULOUS_INCLUDE_DIRS) + pkg_get_variable(FABULOUS_INCLUDE_DIRS fabulous_c_api includedir) + endif() set(FABULOUS_FOUND_WITH_PKGCONFIG "TRUE") find_pkgconfig_libraries_absolute_path(FABULOUS) else() diff --git a/modules/find/FindFFTW.cmake b/modules/find/FindFFTW.cmake index 7d4c8f1..d7997da 100644 --- a/modules/find/FindFFTW.cmake +++ b/modules/find/FindFFTW.cmake @@ -253,6 +253,9 @@ if (NOT FFTW_LOOK_FOR_MKL AND NOT FFTW_LOOK_FOR_ESSL) pkg_search_module(FFTW3F fftw3f) pkg_search_module(FFTW3 fftw3) if (FFTW3F_FOUND) + if (NOT FFTW3F_INCLUDE_DIRS) + pkg_get_variable(FFTW3F_INCLUDE_DIRS fftw3f includedir) + endif() if (NOT FFTW_FIND_QUIETLY) message(STATUS "Looking for FFTW3F - found using PkgConfig") endif() @@ -283,6 +286,9 @@ if (NOT FFTW_LOOK_FOR_MKL AND NOT FFTW_LOOK_FOR_ESSL) pkg_search_module(FFTW3L fftw3l) pkg_search_module(FFTW3 fftw3) if (FFTW3L_FOUND) + if (NOT FFTW3L_INCLUDE_DIRS) + pkg_get_variable(FFTW3L_INCLUDE_DIRS fftw3l includedir) + endif() if (NOT FFTW_FIND_QUIETLY) message(STATUS "Looking for FFTW3L - found using PkgConfig") endif() @@ -313,6 +319,9 @@ if (NOT FFTW_LOOK_FOR_MKL AND NOT FFTW_LOOK_FOR_ESSL) pkg_search_module(FFTW3Q fftw3q) pkg_search_module(FFTW3 fftw3) if (FFTW3Q_FOUND) + if (NOT FFTW3Q_INCLUDE_DIRS) + pkg_get_variable(FFTW3Q_INCLUDE_DIRS fftw3q includedir) + endif() if (NOT FFTW_FIND_QUIETLY) message(STATUS "Looking for FFTW3Q - found using PkgConfig") endif() @@ -349,6 +358,9 @@ if (NOT FFTW_LOOK_FOR_MKL AND NOT FFTW_LOOK_FOR_ESSL) if (NOT FFTW_FIND_QUIETLY) message(STATUS "Looking for FFTW3 - found using PkgConfig") endif() + if (NOT FFTW3_INCLUDE_DIRS) + pkg_get_variable(FFTW3_INCLUDE_DIRS fftw3 includedir) + endif() if (FFTW3_LIBRARIES) find_pkgconfig_libraries_absolute_path(FFTW3) list(APPEND FFTW_LIBRARIES "${FFTW3_LIBRARIES}") diff --git a/modules/find/FindFXT.cmake b/modules/find/FindFXT.cmake index 64c30da..46847d8 100644 --- a/modules/find/FindFXT.cmake +++ b/modules/find/FindFXT.cmake @@ -96,6 +96,9 @@ if(PKG_CONFIG_EXECUTABLE AND NOT FXT_GIVEN_BY_USER) endif() if (FXT_FOUND AND FXT_LIBRARIES) + if (NOT FXT_INCLUDE_DIRS) + pkg_get_variable(FXT_INCLUDE_DIRS fxt includedir) + endif() set(FXT_FOUND_WITH_PKGCONFIG "TRUE") find_pkgconfig_libraries_absolute_path(FXT) else() diff --git a/modules/find/FindGTG.cmake b/modules/find/FindGTG.cmake index 23a1e72..8d3a882 100644 --- a/modules/find/FindGTG.cmake +++ b/modules/find/FindGTG.cmake @@ -96,6 +96,9 @@ if(PKG_CONFIG_EXECUTABLE AND NOT GTG_GIVEN_BY_USER) endif() if (GTG_FOUND AND GTG_LIBRARIES) + if (NOT GTG_INCLUDE_DIRS) + pkg_get_variable(GTG_INCLUDE_DIRS gtg includedir) + endif() set(GTG_FOUND_WITH_PKGCONFIG "TRUE") find_pkgconfig_libraries_absolute_path(GTG) else() diff --git a/modules/find/FindHQR.cmake b/modules/find/FindHQR.cmake index f066ce5..a26dd4b 100644 --- a/modules/find/FindHQR.cmake +++ b/modules/find/FindHQR.cmake @@ -95,6 +95,9 @@ if(PKG_CONFIG_EXECUTABLE AND NOT HQR_GIVEN_BY_USER) endif() endif() if (HQR_FOUND AND HQR_LIBRARIES) + if (NOT HQR_INCLUDE_DIRS) + pkg_get_variable(HQR_INCLUDE_DIRS hqr includedir) + endif() set(HQR_FOUND_WITH_PKGCONFIG "TRUE") find_pkgconfig_libraries_absolute_path(HQR) else() diff --git a/modules/find/FindHWLOC.cmake b/modules/find/FindHWLOC.cmake index c3e8127..d3d5c35 100644 --- a/modules/find/FindHWLOC.cmake +++ b/modules/find/FindHWLOC.cmake @@ -99,6 +99,9 @@ if( PKG_CONFIG_EXECUTABLE AND NOT HWLOC_GIVEN_BY_USER ) endif() if (HWLOC_FOUND AND HWLOC_LIBRARIES) + if (NOT HWLOC_INCLUDE_DIRS) + pkg_get_variable(HWLOC_INCLUDE_DIRS hwloc includedir) + endif() set(HWLOC_FOUND_WITH_PKGCONFIG "TRUE") find_pkgconfig_libraries_absolute_path(HWLOC) else() diff --git a/modules/find/FindPAPI.cmake b/modules/find/FindPAPI.cmake index dc2f7ae..7c1a048 100644 --- a/modules/find/FindPAPI.cmake +++ b/modules/find/FindPAPI.cmake @@ -96,6 +96,9 @@ if(PKG_CONFIG_EXECUTABLE AND NOT PAPI_GIVEN_BY_USER) endif() if (PAPI_FOUND AND PAPI_LIBRARIES) + if (NOT PAPI_INCLUDE_DIRS) + pkg_get_variable(PAPI_INCLUDE_DIRS papi includedir) + endif() set(PAPI_FOUND_WITH_PKGCONFIG "TRUE") find_pkgconfig_libraries_absolute_path(PAPI) else() diff --git a/modules/find/FindPARSEC.cmake b/modules/find/FindPARSEC.cmake index fd36ed1..c7e8cae 100644 --- a/modules/find/FindPARSEC.cmake +++ b/modules/find/FindPARSEC.cmake @@ -271,6 +271,9 @@ if(PKG_CONFIG_EXECUTABLE AND NOT PARSEC_GIVEN_BY_USER) endif() if (PARSEC_FOUND AND PARSEC_LIBRARIES) + if (NOT PARSEC_INCLUDE_DIRS) + pkg_get_variable(PARSEC_INCLUDE_DIRS parsec includedir) + endif() set(PARSEC_FOUND_WITH_PKGCONFIG "TRUE") find_pkgconfig_libraries_absolute_path(PARSEC) else() diff --git a/modules/find/FindPASTIX.cmake b/modules/find/FindPASTIX.cmake index 0fdd44a..bd1eed8 100644 --- a/modules/find/FindPASTIX.cmake +++ b/modules/find/FindPASTIX.cmake @@ -410,6 +410,9 @@ if(PKG_CONFIG_EXECUTABLE AND NOT PASTIX_GIVEN_BY_USER) endif() if (PASTIX_FOUND AND PASTIX_LIBRARIES) + if (NOT PASTIX_INCLUDE_DIRS) + pkg_get_variable(PASTIX_INCLUDE_DIRS pastix includedir) + endif() set(PASTIX_FOUND_WITH_PKGCONFIG "TRUE") find_pkgconfig_libraries_absolute_path(PASTIX) else() diff --git a/modules/find/FindPETSC.cmake b/modules/find/FindPETSC.cmake index f0acd95..fdd025f 100644 --- a/modules/find/FindPETSC.cmake +++ b/modules/find/FindPETSC.cmake @@ -80,6 +80,9 @@ if( PKG_CONFIG_EXECUTABLE AND NOT PETSC_DIR ) endif() set(PETSC_DIR "${PETSC_PREFIX}") if (PETSC_FOUND AND PETSC_LIBRARIES) + if (NOT PETSC_INCLUDE_DIRS) + pkg_get_variable(PETSC_INCLUDE_DIRS PETSc includedir) + endif() set(PETSC_FOUND_WITH_PKGCONFIG "TRUE") find_pkgconfig_libraries_absolute_path(PETSC) else() diff --git a/modules/find/FindSIMGRID.cmake b/modules/find/FindSIMGRID.cmake index fd2fc04..7caa6e5 100644 --- a/modules/find/FindSIMGRID.cmake +++ b/modules/find/FindSIMGRID.cmake @@ -96,6 +96,9 @@ if(PKG_CONFIG_EXECUTABLE AND NOT SIMGRID_GIVEN_BY_USER) endif() if (SIMGRID_FOUND AND SIMGRID_LIBRARIES) + if (NOT SIMGRID_INCLUDE_DIRS) + pkg_get_variable(SIMGRID_INCLUDE_DIRS simgrid includedir) + endif() set(SIMGRID_FOUND_WITH_PKGCONFIG "TRUE") find_pkgconfig_libraries_absolute_path(SIMGRID) else() diff --git a/modules/find/FindSLEPC.cmake b/modules/find/FindSLEPC.cmake index 43a8850..1c7112b 100644 --- a/modules/find/FindSLEPC.cmake +++ b/modules/find/FindSLEPC.cmake @@ -79,6 +79,9 @@ if( PKG_CONFIG_EXECUTABLE AND NOT SLEPC_DIR ) endif() set(SLEPC_DIR "${SLEPC_PREFIX}") if (SLEPC_FOUND AND SLEPC_LIBRARIES) + if (NOT SLEPC_INCLUDE_DIRS) + pkg_get_variable(SLEPC_INCLUDE_DIRS SLEPc includedir) + endif() set(SLEPC_FOUND_WITH_PKGCONFIG "TRUE") find_pkgconfig_libraries_absolute_path(SLEPC) else() diff --git a/modules/find/FindSPM.cmake b/modules/find/FindSPM.cmake index 321835c..c80dff8 100644 --- a/modules/find/FindSPM.cmake +++ b/modules/find/FindSPM.cmake @@ -144,6 +144,9 @@ if(PKG_CONFIG_EXECUTABLE AND NOT SPM_GIVEN_BY_USER) endif() if (SPM_FOUND AND SPM_LIBRARIES) + if (NOT SPM_INCLUDE_DIRS) + pkg_get_variable(SPM_INCLUDE_DIRS spm includedir) + endif() set(SPM_FOUND_WITH_PKGCONFIG "TRUE") find_pkgconfig_libraries_absolute_path(SPM) else() diff --git a/modules/find/FindSTARPU.cmake b/modules/find/FindSTARPU.cmake index 11c7a8e..8002d8f 100644 --- a/modules/find/FindSTARPU.cmake +++ b/modules/find/FindSTARPU.cmake @@ -250,6 +250,13 @@ if(PKG_CONFIG_EXECUTABLE AND NOT STARPU_GIVEN_BY_USER) endforeach() if (NOT STARPU_FIND_QUIETLY) if (STARPU_FOUND AND STARPU_LIBRARIES) + if (NOT STARPU_INCLUDE_DIRS) + if(STARPU_LOOK_FOR_MPI) + pkg_get_variable(STARPU_INCLUDE_DIRS starpumpi-${_version} includedir) + else() + pkg_get_variable(STARPU_INCLUDE_DIRS starpu-${_version} includedir) + endif() + endif() message(STATUS "Looking for STARPU - found using PkgConfig") set(STARPU_VERSION_STRING "${STARPU_VERSION}") string(REPLACE "." ";" STARPU_VERSION_STRING_LIST ${STARPU_VERSION_STRING}) -- GitLab