diff options
author | Brad King <brad.king@kitware.com> | 2020-08-10 15:19:14 (GMT) |
---|---|---|
committer | Kitware Robot <kwrobot@kitware.com> | 2020-08-10 15:25:10 (GMT) |
commit | 69d26f150246bab12659ded37999bc2ff385c32c (patch) | |
tree | 822bf3f7108b986ec0a876f42966697ba92bae11 /Modules | |
parent | 804d324880924221d22cf8fd3420210c7361c8f4 (diff) | |
parent | 98844ec9db5fe4dc4e236f3852d4f3e88a4a9e76 (diff) | |
download | CMake-69d26f150246bab12659ded37999bc2ff385c32c.zip CMake-69d26f150246bab12659ded37999bc2ff385c32c.tar.gz CMake-69d26f150246bab12659ded37999bc2ff385c32c.tar.bz2 |
Merge topic 'FPHSA-name-mismatches-chained-via-include'
98844ec9db FPHSA: detect inclusion between find modules
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Logan Barnes <barneslt63@gmail.com>
Merge-request: !5107
Diffstat (limited to 'Modules')
-rw-r--r-- | Modules/FindOpenGL.cmake | 7 | ||||
-rw-r--r-- | Modules/FindPerl.cmake | 7 | ||||
-rw-r--r-- | Modules/FindQt3.cmake | 7 | ||||
-rw-r--r-- | Modules/FindQt4.cmake | 8 | ||||
-rw-r--r-- | Modules/FindTCL.cmake | 6 | ||||
-rw-r--r-- | Modules/FindTclsh.cmake | 9 | ||||
-rw-r--r-- | Modules/FindX11.cmake | 8 |
7 files changed, 52 insertions, 0 deletions
diff --git a/Modules/FindOpenGL.cmake b/Modules/FindOpenGL.cmake index e1271d4..110e7f9 100644 --- a/Modules/FindOpenGL.cmake +++ b/Modules/FindOpenGL.cmake @@ -412,8 +412,15 @@ if(OPENGL_EGL_INCLUDE_DIR) endif() include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake) +if (CMAKE_FIND_PACKAGE_NAME STREQUAL "GLU") + # FindGLU include()'s this module. It's an old pattern, but rather than + # trying to suppress this from outside the module (which is then sensitive to + # the contents, detect the case in this module and suppress it explicitly. + set(FPHSA_NAME_MISMATCHED 1) +endif () FIND_PACKAGE_HANDLE_STANDARD_ARGS(OpenGL REQUIRED_VARS ${_OpenGL_REQUIRED_VARS} HANDLE_COMPONENTS) +unset(FPHSA_NAME_MISMATCHED) unset(_OpenGL_REQUIRED_VARS) # OpenGL:: targets diff --git a/Modules/FindPerl.cmake b/Modules/FindPerl.cmake index fd120bf..c14e059 100644 --- a/Modules/FindPerl.cmake +++ b/Modules/FindPerl.cmake @@ -73,8 +73,15 @@ endif() set(PERL ${PERL_EXECUTABLE}) include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake) +if (CMAKE_FIND_PACKAGE_NAME STREQUAL "PerlLibs") + # FindPerlLibs include()'s this module. It's an old pattern, but rather than + # trying to suppress this from outside the module (which is then sensitive to + # the contents, detect the case in this module and suppress it explicitly. + set(FPHSA_NAME_MISMATCHED 1) +endif () FIND_PACKAGE_HANDLE_STANDARD_ARGS(Perl REQUIRED_VARS PERL_EXECUTABLE VERSION_VAR PERL_VERSION_STRING) +unset(FPHSA_NAME_MISMATCHED) mark_as_advanced(PERL_EXECUTABLE) diff --git a/Modules/FindQt3.cmake b/Modules/FindQt3.cmake index 563ed46..b5bc8b1 100644 --- a/Modules/FindQt3.cmake +++ b/Modules/FindQt3.cmake @@ -201,9 +201,16 @@ endif() # if the include a library are found then we have it include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake) +if (CMAKE_FIND_PACKAGE_NAME STREQUAL "Qt") + # FindQt include()'s this module. It's an old pattern, but rather than trying + # to suppress this from outside the module (which is then sensitive to the + # contents, detect the case in this module and suppress it explicitly. + set(FPHSA_NAME_MISMATCHED 1) +endif () FIND_PACKAGE_HANDLE_STANDARD_ARGS(Qt3 REQUIRED_VARS QT_QT_LIBRARY QT_INCLUDE_DIR QT_MOC_EXECUTABLE VERSION_VAR QT_VERSION_STRING) +unset(FPHSA_NAME_MISMATCHED) set(QT_FOUND ${QT3_FOUND} ) if(QT_FOUND) diff --git a/Modules/FindQt4.cmake b/Modules/FindQt4.cmake index 29b1ef8..ec0f453 100644 --- a/Modules/FindQt4.cmake +++ b/Modules/FindQt4.cmake @@ -1318,10 +1318,18 @@ if (NOT QT_VERSION_MAJOR EQUAL 4) endif() endif() else() + if (CMAKE_FIND_PACKAGE_NAME STREQUAL "Qt") + # FindQt include()'s this module. It's an old pattern, but rather than + # trying to suppress this from outside the module (which is then sensitive + # to the contents, detect the case in this module and suppress it + # explicitly. + set(FPHSA_NAME_MISMATCHED 1) + endif () FIND_PACKAGE_HANDLE_STANDARD_ARGS(Qt4 FOUND_VAR Qt4_FOUND REQUIRED_VARS ${_QT4_FOUND_REQUIRED_VARS} VERSION_VAR QTVERSION ) + unset(FPHSA_NAME_MISMATCHED) endif() ####################################### diff --git a/Modules/FindTCL.cmake b/Modules/FindTCL.cmake index 960265f..9b771dc 100644 --- a/Modules/FindTCL.cmake +++ b/Modules/FindTCL.cmake @@ -223,6 +223,12 @@ find_path(TK_INCLUDE_PATH include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake) +if (CMAKE_FIND_PACKAGE_NAME STREQUAL "TclStub") + # FindTclStub include()'s this module. It's an old pattern, but rather than + # trying to suppress this from outside the module (which is then sensitive to + # the contents, detect the case in this module and suppress it explicitly. + set(FPHSA_NAME_MISMATCHED 1) +endif () FIND_PACKAGE_HANDLE_STANDARD_ARGS(TCL DEFAULT_MSG TCL_LIBRARY TCL_INCLUDE_PATH) set(FPHSA_NAME_MISMATCHED 1) set(TCLTK_FIND_REQUIRED ${TCL_FIND_REQUIRED}) diff --git a/Modules/FindTclsh.cmake b/Modules/FindTclsh.cmake index f306d5b..594d0ec 100644 --- a/Modules/FindTclsh.cmake +++ b/Modules/FindTclsh.cmake @@ -85,8 +85,17 @@ if(TCL_TCLSH) endif() include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake) +if (CMAKE_FIND_PACKAGE_NAME STREQUAL "TCL" OR + CMAKE_FIND_PACKAGE_NAME STREQUAL "TclStub") + # FindTCL include()'s this module. It's an old pattern, but rather than + # trying to suppress this from outside the module (which is then sensitive to + # the contents, detect the case in this module and suppress it explicitly. + # Transitively, FindTclStub includes FindTCL. + set(FPHSA_NAME_MISMATCHED 1) +endif () FIND_PACKAGE_HANDLE_STANDARD_ARGS(Tclsh REQUIRED_VARS TCL_TCLSH VERSION_VAR TCLSH_VERSION_STRING) +unset(FPHSA_NAME_MISMATCHED) mark_as_advanced(TCL_TCLSH) diff --git a/Modules/FindX11.cmake b/Modules/FindX11.cmake index 958a22e..778da9b 100644 --- a/Modules/FindX11.cmake +++ b/Modules/FindX11.cmake @@ -413,9 +413,17 @@ if (UNIX) endif () include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake) + if (CMAKE_FIND_PACKAGE_NAME STREQUAL "FLTK") + # FindFLTK include()'s this module. It's an old pattern, but rather than + # trying to suppress this from outside the module (which is then sensitive + # to the contents, detect the case in this module and suppress it + # explicitly. + set(FPHSA_NAME_MISMATCHED 1) + endif () find_package_handle_standard_args(X11 REQUIRED_VARS X11_X11_INCLUDE_PATH X11_X11_LIB HANDLE_COMPONENTS) + unset(FPHSA_NAME_MISMATCHED) if(X11_FOUND) include(${CMAKE_CURRENT_LIST_DIR}/CheckFunctionExists.cmake) |