[Cmake-commits] CMake branch, next, updated. v3.2.2-1864-g6011ea1
Brad King
brad.king at kitware.com
Thu Apr 16 15:18:28 EDT 2015
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".
The branch, next has been updated
via 6011ea115ef6b87d51179fd606cd98fac1503e92 (commit)
via e8fdd5f12a379ce91adcb88acdb4354bc271c911 (commit)
via 15f1a6b49958cc7757f951839b02a00e8c820154 (commit)
via 3f7c7c65968b6d04babd261dab952ee40e0c9ca9 (commit)
via 26b5cc5e79320dd73e93e117fffd0d4554e89dbc (commit)
via 4556640855515b287dd8a5a0f7fb1a85218267a8 (commit)
from 207ec8f5e4c025961831c33d2c11bd020e274240 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=6011ea115ef6b87d51179fd606cd98fac1503e92
commit 6011ea115ef6b87d51179fd606cd98fac1503e92
Merge: 207ec8f e8fdd5f
Author: Brad King <brad.king at kitware.com>
AuthorDate: Thu Apr 16 15:18:26 2015 -0400
Commit: CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Thu Apr 16 15:18:26 2015 -0400
Merge topic 'ninja-autogen' into next
e8fdd5f1 QtAutogen: Workaround rcc CRCRLF newlines on Windows (#15459)
15f1a6b4 Tests/QtAutogen: Avoid touching files in the source tree
3f7c7c65 Tests/QtAutogen: Help Qt5Autogen test find Qt5 on Windows
26b5cc5e Tests/QtAutogen: Enable per-config source tests when possible
45566408 Tests/QtAutogen: Require CMake 3.1 to set policies everywhere
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e8fdd5f12a379ce91adcb88acdb4354bc271c911
commit e8fdd5f12a379ce91adcb88acdb4354bc271c911
Author: Brad King <brad.king at kitware.com>
AuthorDate: Thu Apr 16 12:51:05 2015 -0400
Commit: Brad King <brad.king at kitware.com>
CommitDate: Thu Apr 16 15:10:40 2015 -0400
QtAutogen: Workaround rcc CRCRLF newlines on Windows (#15459)
The 'rcc --list' operation may print newlines of the form CRCRLF,
so strip any trailing CR characters found on each line.
Update the Tests/QtAutogen test to use a resource named in a
subdirectory. This causes 'rcc --list' to display a blank line
and tests that it is correctly filtered out.
diff --git a/Source/cmQtAutoGenerators.cxx b/Source/cmQtAutoGenerators.cxx
index 4cb49c8..a5238f5 100644
--- a/Source/cmQtAutoGenerators.cxx
+++ b/Source/cmQtAutoGenerators.cxx
@@ -201,6 +201,13 @@ std::string cmQtAutoGenerators::ListQt5RccInputs(cmSourceFile* sf,
std::string oline;
while(std::getline(ostr, oline))
{
+ // Strip CR characters rcc may have printed (possibly more than one!).
+ std::string::size_type cr = oline.find('\r');
+ if (cr != oline.npos)
+ {
+ oline = oline.substr(0, cr);
+ }
+
if (oline.empty())
{
// The output of rcc --list contains many empty lines.
diff --git a/Tests/QtAutogen/CMakeLists.txt b/Tests/QtAutogen/CMakeLists.txt
index 67e0f7e..f76d11e 100644
--- a/Tests/QtAutogen/CMakeLists.txt
+++ b/Tests/QtAutogen/CMakeLists.txt
@@ -147,7 +147,7 @@ set(timeformat "%Y%j%H%M%S")
file(TIMESTAMP "${qrc_file1}" file1_before "${timeformat}")
execute_process(COMMAND "${CMAKE_COMMAND}" -E sleep 1) # Ensure that the timestamp will change.
-execute_process(COMMAND "${CMAKE_COMMAND}" -E touch "${CMAKE_CURRENT_BINARY_DIR}/autorcc_depends/res1_input.txt")
+execute_process(COMMAND "${CMAKE_COMMAND}" -E touch "${CMAKE_CURRENT_BINARY_DIR}/autorcc_depends/res1/input.txt")
execute_process(COMMAND "${CMAKE_COMMAND}" --build .
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/autorcc_depends"
diff --git a/Tests/QtAutogen/autorcc_depends/CMakeLists.txt b/Tests/QtAutogen/autorcc_depends/CMakeLists.txt
index 9faf803..fbe71ad 100644
--- a/Tests/QtAutogen/autorcc_depends/CMakeLists.txt
+++ b/Tests/QtAutogen/autorcc_depends/CMakeLists.txt
@@ -16,7 +16,7 @@ else()
endif()
configure_file(res1.qrc.in res1.qrc @ONLY)
-configure_file(res1_input.txt.in res1_input.txt @ONLY)
+configure_file(res1/input.txt.in res1/input.txt @ONLY)
add_executable(test_res1
test_res1.cpp
diff --git a/Tests/QtAutogen/autorcc_depends/res1.qrc.in b/Tests/QtAutogen/autorcc_depends/res1.qrc.in
index cfea618..2a5417b 100644
--- a/Tests/QtAutogen/autorcc_depends/res1.qrc.in
+++ b/Tests/QtAutogen/autorcc_depends/res1.qrc.in
@@ -1,5 +1,5 @@
<RCC>
<qresource prefix="/">
- <file>res1_input.txt</file>
+ <file>res1/input.txt</file>
</qresource>
</RCC>
diff --git a/Tests/QtAutogen/autorcc_depends/res1_input.txt.in b/Tests/QtAutogen/autorcc_depends/res1/input.txt.in
similarity index 100%
rename from Tests/QtAutogen/autorcc_depends/res1_input.txt.in
rename to Tests/QtAutogen/autorcc_depends/res1/input.txt.in
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=15f1a6b49958cc7757f951839b02a00e8c820154
commit 15f1a6b49958cc7757f951839b02a00e8c820154
Author: Brad King <brad.king at kitware.com>
AuthorDate: Thu Apr 16 13:56:23 2015 -0400
Commit: Brad King <brad.king at kitware.com>
CommitDate: Thu Apr 16 15:06:32 2015 -0400
Tests/QtAutogen: Avoid touching files in the source tree
diff --git a/Tests/QtAutogen/CMakeLists.txt b/Tests/QtAutogen/CMakeLists.txt
index 81a70f4..67e0f7e 100644
--- a/Tests/QtAutogen/CMakeLists.txt
+++ b/Tests/QtAutogen/CMakeLists.txt
@@ -147,7 +147,7 @@ set(timeformat "%Y%j%H%M%S")
file(TIMESTAMP "${qrc_file1}" file1_before "${timeformat}")
execute_process(COMMAND "${CMAKE_COMMAND}" -E sleep 1) # Ensure that the timestamp will change.
-execute_process(COMMAND "${CMAKE_COMMAND}" -E touch "${CMAKE_CURRENT_SOURCE_DIR}/autorcc_depends/res1_input.txt")
+execute_process(COMMAND "${CMAKE_COMMAND}" -E touch "${CMAKE_CURRENT_BINARY_DIR}/autorcc_depends/res1_input.txt")
execute_process(COMMAND "${CMAKE_COMMAND}" --build .
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/autorcc_depends"
diff --git a/Tests/QtAutogen/autorcc_depends/CMakeLists.txt b/Tests/QtAutogen/autorcc_depends/CMakeLists.txt
index 0ba86cf..9faf803 100644
--- a/Tests/QtAutogen/autorcc_depends/CMakeLists.txt
+++ b/Tests/QtAutogen/autorcc_depends/CMakeLists.txt
@@ -15,9 +15,12 @@ else()
set(QT_CORE_TARGET Qt5::Core)
endif()
+configure_file(res1.qrc.in res1.qrc @ONLY)
+configure_file(res1_input.txt.in res1_input.txt @ONLY)
+
add_executable(test_res1
test_res1.cpp
- res1.qrc
+ ${CMAKE_CURRENT_BINARY_DIR}/res1.qrc
)
target_link_libraries(test_res1 ${QT_CORE_TARGET})
add_custom_command(TARGET test_res1 POST_BUILD COMMAND
diff --git a/Tests/QtAutogen/autorcc_depends/res1.qrc b/Tests/QtAutogen/autorcc_depends/res1.qrc.in
similarity index 100%
rename from Tests/QtAutogen/autorcc_depends/res1.qrc
rename to Tests/QtAutogen/autorcc_depends/res1.qrc.in
diff --git a/Tests/QtAutogen/autorcc_depends/res1_input.txt b/Tests/QtAutogen/autorcc_depends/res1_input.txt.in
similarity index 100%
rename from Tests/QtAutogen/autorcc_depends/res1_input.txt
rename to Tests/QtAutogen/autorcc_depends/res1_input.txt.in
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=3f7c7c65968b6d04babd261dab952ee40e0c9ca9
commit 3f7c7c65968b6d04babd261dab952ee40e0c9ca9
Author: Brad King <brad.king at kitware.com>
AuthorDate: Thu Apr 16 13:54:54 2015 -0400
Commit: Brad King <brad.king at kitware.com>
CommitDate: Thu Apr 16 15:06:31 2015 -0400
Tests/QtAutogen: Help Qt5Autogen test find Qt5 on Windows
Set CMAKE_PREFIX_PATH to tell find_package(Qt5) where to look.
diff --git a/Tests/QtAutogen/CMakeLists.txt b/Tests/QtAutogen/CMakeLists.txt
index 7b46619..81a70f4 100644
--- a/Tests/QtAutogen/CMakeLists.txt
+++ b/Tests/QtAutogen/CMakeLists.txt
@@ -2,6 +2,13 @@ cmake_minimum_required(VERSION 3.1)
project(QtAutogen)
+# Tell find_package(Qt5) where to find Qt.
+if(QT_QMAKE_EXECUTABLE)
+ get_filename_component(Qt_BIN_DIR "${QT_QMAKE_EXECUTABLE}" PATH)
+ get_filename_component(Qt_PREFIX_DIR "${Qt_BIN_DIR}" PATH)
+ set(CMAKE_PREFIX_PATH ${Qt_PREFIX_DIR})
+endif()
+
if (QT_TEST_VERSION STREQUAL 4)
find_package(Qt4 REQUIRED)
@@ -124,6 +131,7 @@ try_compile(RCC_DEPENDS
"${CMAKE_CURRENT_SOURCE_DIR}/autorcc_depends"
autorcc_depends
CMAKE_FLAGS "-DQT_QMAKE_EXECUTABLE:FILEPATH=${QT_QMAKE_EXECUTABLE}" "-DQT_TEST_VERSION=${QT_TEST_VERSION}"
+ "-DCMAKE_PREFIX_PATH=${Qt_PREFIX_DIR}"
OUTPUT_VARIABLE output
)
if (NOT RCC_DEPENDS)
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=26b5cc5e79320dd73e93e117fffd0d4554e89dbc
commit 26b5cc5e79320dd73e93e117fffd0d4554e89dbc
Author: Brad King <brad.king at kitware.com>
AuthorDate: Thu Apr 16 13:30:32 2015 -0400
Commit: Brad King <brad.king at kitware.com>
CommitDate: Thu Apr 16 15:00:26 2015 -0400
Tests/QtAutogen: Enable per-config source tests when possible
Pass CMAKE_BUILD_TYPE into the test on generators that use it so that
the per-config part of the test can activate as needed. Do not make the
per-config part conditional on the Debug configuration because the
generator expressions evaluate to empty in other configurations.
Skip the per-config source case with the Ninja generator because it does
not currently work. cmQtAutoGenerators::InitializeAutogenTarget needs
to know the list of source files on a target, but generator expressions
in the list cannot be evaluated until after CreateGeneratorTargets has
been called. That cannot happen until after Autogen targets have been
generated. It is a chicken-and-egg problem.
diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt
index 41032f8..1655f12 100644
--- a/Tests/CMakeLists.txt
+++ b/Tests/CMakeLists.txt
@@ -1173,10 +1173,13 @@ ${CMake_BINARY_DIR}/bin/cmake -DDIR=dev -P ${CMake_SOURCE_DIR}/Utilities/Release
set(run_autogen_test QtAutogen)
set(run_autouic_test QtAutoUicInterface)
endif()
+ if(NOT CMAKE_CONFIGURATION_TYPES)
+ set(QtAutogen_BUILD_OPTIONS -DCMAKE_BUILD_TYPE=$<CONFIGURATION>)
+ endif()
find_package(Qt5Widgets QUIET NO_MODULE)
if(Qt5Widgets_FOUND)
- add_test(Qt5Autogen ${CMAKE_CTEST_COMMAND}
+ add_test(NAME Qt5Autogen COMMAND ${CMAKE_CTEST_COMMAND}
--build-and-test
"${CMake_SOURCE_DIR}/Tests/QtAutogen"
"${CMake_BINARY_DIR}/Tests/Qt5Autogen"
@@ -1186,6 +1189,7 @@ ${CMake_BINARY_DIR}/bin/cmake -DDIR=dev -P ${CMake_SOURCE_DIR}/Utilities/Release
--force-new-ctest-process
--build-options ${build_options}
-DQT_QMAKE_EXECUTABLE:FILEPATH=${QT_QMAKE_EXECUTABLE} -DQT_TEST_VERSION=5
+ ${QtAutogen_BUILD_OPTIONS}
--test-command ${run_autogen_test}
)
list(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/Qt5Autogen")
@@ -1205,7 +1209,7 @@ ${CMake_BINARY_DIR}/bin/cmake -DDIR=dev -P ${CMake_SOURCE_DIR}/Utilities/Release
list(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/Qt5AutoUicInterface")
endif()
if(QT4_WORKS AND QT_QTGUI_FOUND)
- add_test(Qt4Autogen ${CMAKE_CTEST_COMMAND}
+ add_test(NAME Qt4Autogen COMMAND ${CMAKE_CTEST_COMMAND}
--build-and-test
"${CMake_SOURCE_DIR}/Tests/QtAutogen"
"${CMake_BINARY_DIR}/Tests/Qt4Autogen"
@@ -1215,6 +1219,7 @@ ${CMake_BINARY_DIR}/bin/cmake -DDIR=dev -P ${CMake_SOURCE_DIR}/Utilities/Release
--force-new-ctest-process
--build-options ${build_options}
-DQT_QMAKE_EXECUTABLE:FILEPATH=${QT_QMAKE_EXECUTABLE} -DQT_TEST_VERSION=4
+ ${QtAutogen_BUILD_OPTIONS}
--test-command ${run_autogen_test}
)
list(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/Qt4Autogen")
diff --git a/Tests/QtAutogen/CMakeLists.txt b/Tests/QtAutogen/CMakeLists.txt
index 87ade2c..7b46619 100644
--- a/Tests/QtAutogen/CMakeLists.txt
+++ b/Tests/QtAutogen/CMakeLists.txt
@@ -67,10 +67,9 @@ add_custom_command(
DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/myotherinterface.h.in"
)
-message("CMAKE_BUILD_TYPE = ${CMAKE_BUILD_TYPE}")
-if (CMAKE_BUILD_TYPE MATCHES "[Dd][Ee][Bb][Uu][Gg]" AND NOT CMAKE_CONFIGURATION_TYPES)
+if (NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_GENERATOR STREQUAL Ninja)
set(debug_srcs "$<$<CONFIG:Debug>:debug_class.cpp>" $<$<CONFIG:Debug>:debug_resource.qrc>)
- add_definitions(-DTEST_DEBUG_CLASS)
+ set_property(DIRECTORY APPEND PROPERTY COMPILE_DEFINITIONS $<$<CONFIG:Debug>:TEST_DEBUG_CLASS>)
endif()
# The -no-protection option disables the generation of include guards. Verify
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=4556640855515b287dd8a5a0f7fb1a85218267a8
commit 4556640855515b287dd8a5a0f7fb1a85218267a8
Author: Brad King <brad.king at kitware.com>
AuthorDate: Thu Apr 16 13:57:17 2015 -0400
Commit: Brad King <brad.king at kitware.com>
CommitDate: Thu Apr 16 14:18:00 2015 -0400
Tests/QtAutogen: Require CMake 3.1 to set policies everywhere
We want CMP0020 set in the autorcc_depends test. Also the test should
now only run when we can support per-config source files.
diff --git a/Tests/QtAutogen/CMakeLists.txt b/Tests/QtAutogen/CMakeLists.txt
index 0dc98e3..87ade2c 100644
--- a/Tests/QtAutogen/CMakeLists.txt
+++ b/Tests/QtAutogen/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required(VERSION 2.8.11)
+cmake_minimum_required(VERSION 3.1)
project(QtAutogen)
diff --git a/Tests/QtAutogen/autorcc_depends/CMakeLists.txt b/Tests/QtAutogen/autorcc_depends/CMakeLists.txt
index afd95bc..0ba86cf 100644
--- a/Tests/QtAutogen/autorcc_depends/CMakeLists.txt
+++ b/Tests/QtAutogen/autorcc_depends/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required(VERSION 2.8)
+cmake_minimum_required(VERSION 3.1)
project(autorcc_depends)
set(CMAKE_AUTORCC ON)
-----------------------------------------------------------------------
Summary of changes:
Source/cmQtAutoGenerators.cxx | 7 +++++++
Tests/CMakeLists.txt | 9 +++++++--
Tests/QtAutogen/CMakeLists.txt | 17 ++++++++++++-----
Tests/QtAutogen/autorcc_depends/CMakeLists.txt | 7 +++++--
.../autorcc_depends/{res1.qrc => res1.qrc.in} | 2 +-
.../{res1_input.txt => res1/input.txt.in} | 0
6 files changed, 32 insertions(+), 10 deletions(-)
rename Tests/QtAutogen/autorcc_depends/{res1.qrc => res1.qrc.in} (61%)
rename Tests/QtAutogen/autorcc_depends/{res1_input.txt => res1/input.txt.in} (100%)
hooks/post-receive
--
CMake
More information about the Cmake-commits
mailing list