Generate the Qt5LinguistConfig.cmake files independent of QtUiTools.
authorStephen Kelly <stephen.kelly@kdab.com>
Tue, 26 Mar 2013 19:51:12 +0000 (20:51 +0100)
committerThe Qt Project <gerrit-noreply@qt-project.org>
Wed, 27 Mar 2013 12:34:58 +0000 (13:34 +0100)
The generation relied on the uitools module for the version, so
if it was not available, we got errors like this:

 WARNING: Cannot open substitute for output '/cmake/Qt5LinguistTools/Qt5LinguistToolsConfig.cmake'
 WARNING: Cannot open substitute for output '/cmake/Qt5LinguistTools/Qt5LinguistToolsConfigVersion.cmake'
 WARNING: Cannot open substitute for output '/cmake/Qt5LinguistTools/Qt5LinguistToolsMacros.cmake'

 http://testresults.qt-project.org/ci/QtTools_stable_Integration/build_00128/linux-g++_no-widgets_Ubuntu_12.04_x64/log.txt.gz

Use MODULE_VERSION for the version instead and MODULE_BASE_OUTDIR for the
generation location.

Change-Id: I9daa6878553015e841b6e41fd1f64eb60ada7774
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
src/linguist/linguist.pro
tests/auto/cmake/CMakeLists.txt
tests/auto/cmake/cmake.pro

index 334aa1a..7e48fa9 100644 (file)
@@ -26,15 +26,15 @@ contains(CMAKE_BIN_DIR, "$${CMAKE_QT_INSTALL_PREFIX_ESCAPED}.*") {
     CMAKE_BIN_DIR_IS_ABSOLUTE = True
 }
 
+load(qt_build_paths)
+
 cmake_linguist_config_file.input = $$PWD/Qt5LinguistToolsConfig.cmake.in
 cmake_linguist_config_version_file.input = $$[QT_HOST_DATA]/mkspecs/features/data/cmake/Qt5ConfigVersion.cmake.in
 cmake_linguist_macros_file.input = $$PWD/Qt5LinguistToolsMacros.cmake
-# NOTE: We need to put the linguist tools cmake files in the lib directory. The lib directory
-# as set by the uitools module is used for that, as linguist doesn't set such a variable.
-CMAKE_PACKAGE_VERSION = $$eval(QT.uitools.VERSION)
-cmake_linguist_config_file.output = $$eval(QT.uitools.libs)/cmake/Qt5LinguistTools/Qt5LinguistToolsConfig.cmake
-cmake_linguist_config_version_file.output = $$eval(QT.uitools.libs)/cmake/Qt5LinguistTools/Qt5LinguistToolsConfigVersion.cmake
-cmake_linguist_macros_file.output = $$eval(QT.uitools.libs)/cmake/Qt5LinguistTools/Qt5LinguistToolsMacros.cmake
+CMAKE_PACKAGE_VERSION = $$MODULE_VERSION
+cmake_linguist_config_file.output = $$MODULE_BASE_OUTDIR/lib/cmake/Qt5LinguistTools/Qt5LinguistToolsConfig.cmake
+cmake_linguist_config_version_file.output = $$MODULE_BASE_OUTDIR/lib/cmake/Qt5LinguistTools/Qt5LinguistToolsConfigVersion.cmake
+cmake_linguist_macros_file.output = $$MODULE_BASE_OUTDIR/lib/cmake/Qt5LinguistTools/Qt5LinguistToolsMacros.cmake
 cmake_linguist_macros_file.CONFIG = verbatim
 QMAKE_SUBSTITUTES += cmake_linguist_config_file cmake_linguist_config_version_file cmake_linguist_macros_file
 
index e557492..4994186 100644 (file)
@@ -33,8 +33,7 @@ if(NOT CMAKE_CROSSCOMPILING)
     expect_pass(test_translation_macros)
 endif()
 
-find_package(Qt5Widgets)
-if (Qt5Widgets_FOUND)
+if (NOT NO_WIDGETS)
     test_module_includes(
       Designer QFormBuilder
       Help QHelpSearchQuery
index 86aa9c3..311af63 100644 (file)
@@ -4,6 +4,6 @@ TEMPLATE = subdirs
 
 qtHaveModule(widgets) {
     CMAKE_QT_MODULES_UNDER_TEST = designer help uitools
-
-    CONFIG += ctest_testcase
 }
+
+CONFIG += ctest_testcase