diff options
Diffstat (limited to 'cmake/QtConfigDependencies.cmake.in')
-rw-r--r-- | cmake/QtConfigDependencies.cmake.in | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/cmake/QtConfigDependencies.cmake.in b/cmake/QtConfigDependencies.cmake.in new file mode 100644 index 0000000000..301d808d8c --- /dev/null +++ b/cmake/QtConfigDependencies.cmake.in @@ -0,0 +1,35 @@ +# note: _third_party_deps example: "ICU\\;1.0\\;i18n uc data;ZLIB\\;\\;" +set(_third_party_deps "@third_party_deps@") + +@third_party_extra@ + +foreach(_target_dep ${_third_party_deps}) + list(GET _target_dep 0 pkg) + list(GET _target_dep 1 version) + list(GET _target_dep 2 components) + set(find_package_args "${pkg}") + if(version) + list(APPEND find_package_args "${version}") + endif() + + if(components) + string(REPLACE " " ";" components "${components}") + find_dependency(${find_package_args} COMPONENTS ${components}) + else() + find_dependency(${find_package_args}) + endif() + + if (NOT ${pkg}_FOUND) + set(@INSTALL_CMAKE_NAMESPACE@_DEPENDENCIES_FOUND FALSE) + set(__@INSTALL_CMAKE_NAMESPACE@_message "\nPackage: ${pkg}") + if(version) + string(APPEND __@INSTALL_CMAKE_NAMESPACE@_message "\nVersion: ${version}") + endif() + if(components) + string(APPEND __@INSTALL_CMAKE_NAMESPACE@_message "\nComponents: ${components}") + endif() + set(@INSTALL_CMAKE_NAMESPACE@_DEPENDENCY_NOT_FOUND_MESSAGE + "${__@INSTALL_CMAKE_NAMESPACE@_message}") + return() + endif() +endforeach() |