summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStephen Kelly <stephen.kelly@kdab.com>2013-07-18 11:11:31 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-07-22 15:41:45 +0200
commit782ed5eebbe38e41cd0a9b9faf90817d72efda8f (patch)
tree9733230aad7c376db0e729cb4310858c1f2baf96
parent3ff441d30570fd38f62d858b8c8e86e9d1ca3d8d (diff)
Don't check for the existence of private include directories.
Some packagers don't want to install the private headers. Check the existence of private headers only if the 'Private' component is specified when finding the package. Task-number: QTBUG-32466 Change-Id: I1fdbfb25e8ce485cd051564b937f766b2733741a Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
-rw-r--r--mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in17
-rw-r--r--tests/auto/cmake/test_private_includes/CMakeLists.txt2
2 files changed, 13 insertions, 6 deletions
diff --git a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
index 38623349be..bcff3166d3 100644
--- a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
+++ b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
@@ -119,14 +119,21 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS)
!!ENDIF
- foreach(_dir ${_Qt5$${CMAKE_MODULE_NAME}_OWN_INCLUDE_DIRS}
-!!IF isEmpty(CMAKE_BUILD_IS_FRAMEWORK)
- ${Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS}
-!!ENDIF
- )
+ foreach(_dir ${_Qt5$${CMAKE_MODULE_NAME}_OWN_INCLUDE_DIRS})
_qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${_dir})
endforeach()
+!!IF isEmpty(CMAKE_BUILD_IS_FRAMEWORK)
+ # Only check existence of private includes if the Private component is
+ # specified.
+ list(FIND Qt5$${CMAKE_MODULE_NAME}_FIND_COMPONENTS Private _check_private)
+ if (NOT _check_private STREQUAL -1)
+ foreach(_dir ${Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS})
+ _qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${_dir})
+ endforeach()
+ endif()
+!!ENDIF
+
set(Qt5$${CMAKE_MODULE_NAME}_INCLUDE_DIRS ${_Qt5$${CMAKE_MODULE_NAME}_OWN_INCLUDE_DIRS})
set(Qt5$${CMAKE_MODULE_NAME}_DEFINITIONS -D$${MODULE_DEFINE})
diff --git a/tests/auto/cmake/test_private_includes/CMakeLists.txt b/tests/auto/cmake/test_private_includes/CMakeLists.txt
index f283bc21b3..9095836ed8 100644
--- a/tests/auto/cmake/test_private_includes/CMakeLists.txt
+++ b/tests/auto/cmake/test_private_includes/CMakeLists.txt
@@ -3,7 +3,7 @@ cmake_minimum_required(VERSION 2.8)
project(test_private_includes)
-find_package(Qt5Gui REQUIRED)
+find_package(Qt5Gui REQUIRED Private)
include_directories(
${Qt5Gui_INCLUDE_DIRS}