[Cmake-commits] CMake branch, next, updated. v3.3.0-rc4-1039-g1a3ee89
Brad King
brad.king at kitware.com
Tue Jul 14 13:59:02 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 1a3ee89a91cab5884a13e2d34474b10fd62a6558 (commit)
via f0cad1939f10ccdcf1b5e8ad150b7e10471f92a3 (commit)
via 1d3984780df87c6963b0aae1c392a570c890161b (commit)
via d560b46f5232f84476d68d96d44e5e755d391090 (commit)
from dcfd16c0c135215196781245b1456f186441ebe0 (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=1a3ee89a91cab5884a13e2d34474b10fd62a6558
commit 1a3ee89a91cab5884a13e2d34474b10fd62a6558
Merge: dcfd16c f0cad19
Author: Brad King <brad.king at kitware.com>
AuthorDate: Tue Jul 14 13:59:01 2015 -0400
Commit: CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Tue Jul 14 13:59:01 2015 -0400
Merge topic 'makefile-target-messages' into next
f0cad193 Tests: Add test for TARGET_MESSAGES global property
1d398478 Makefile: Optionally disable target completion messages in build output
d560b46f CMakeGenericSystem: Recognize Watcom WMake generator as Makefile generator
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f0cad1939f10ccdcf1b5e8ad150b7e10471f92a3
commit f0cad1939f10ccdcf1b5e8ad150b7e10471f92a3
Author: Brad King <brad.king at kitware.com>
AuthorDate: Tue Jul 14 13:31:21 2015 -0400
Commit: Brad King <brad.king at kitware.com>
CommitDate: Tue Jul 14 13:58:53 2015 -0400
Tests: Add test for TARGET_MESSAGES global property
diff --git a/Tests/RunCMake/CMakeLists.txt b/Tests/RunCMake/CMakeLists.txt
index b90eff6..4ddd30e 100644
--- a/Tests/RunCMake/CMakeLists.txt
+++ b/Tests/RunCMake/CMakeLists.txt
@@ -103,6 +103,9 @@ add_RunCMake_test(CMP0055)
add_RunCMake_test(CMP0057)
add_RunCMake_test(CMP0059)
add_RunCMake_test(CMP0060)
+if(CMAKE_GENERATOR MATCHES "Make")
+ add_RunCMake_test(Make)
+endif()
if(CMAKE_GENERATOR STREQUAL "Ninja")
add_RunCMake_test(Ninja)
endif()
diff --git a/Tests/RunCMake/Make/CMakeLists.txt b/Tests/RunCMake/Make/CMakeLists.txt
new file mode 100644
index 0000000..74b3ff8
--- /dev/null
+++ b/Tests/RunCMake/Make/CMakeLists.txt
@@ -0,0 +1,3 @@
+cmake_minimum_required(VERSION 3.3)
+project(${RunCMake_TEST} NONE)
+include(${RunCMake_TEST}.cmake)
diff --git a/Tests/RunCMake/Make/RunCMakeTest.cmake b/Tests/RunCMake/Make/RunCMakeTest.cmake
new file mode 100644
index 0000000..c6bbd03
--- /dev/null
+++ b/Tests/RunCMake/Make/RunCMakeTest.cmake
@@ -0,0 +1,17 @@
+include(RunCMake)
+
+function(run_TargetMessages case)
+ set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/TargetMessages-${case}-build)
+ set(RunCMake_TEST_NO_CLEAN 1)
+ file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
+ file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
+ set(RunCMake_TEST_OPTIONS "${ARGN}")
+ run_cmake(TargetMessages-${case})
+ run_cmake_command(TargetMessages-${case}-build ${CMAKE_COMMAND} --build .)
+endfunction()
+
+run_TargetMessages(ON)
+run_TargetMessages(OFF)
+
+run_TargetMessages(VAR-ON -DCMAKE_TARGET_MESSAGES=ON)
+run_TargetMessages(VAR-OFF -DCMAKE_TARGET_MESSAGES=OFF)
diff --git a/Tests/RunCMake/Make/TargetMessages-OFF-build-stdout.txt b/Tests/RunCMake/Make/TargetMessages-OFF-build-stdout.txt
new file mode 100644
index 0000000..77a582a
--- /dev/null
+++ b/Tests/RunCMake/Make/TargetMessages-OFF-build-stdout.txt
@@ -0,0 +1,5 @@
+^(([^B]|B[^u]|Bu[^i]|Bui[^l]|Buil[^t]|Built[^ ])[^
+]*
+)*Scanning dependencies of target CustomTarget(
+([^B]|B[^u]|Bu[^i]|Bui[^l]|Buil[^t]|Built[^ ])[^
+]*)*$
diff --git a/Tests/RunCMake/Make/TargetMessages-OFF.cmake b/Tests/RunCMake/Make/TargetMessages-OFF.cmake
new file mode 100644
index 0000000..8f5d52c
--- /dev/null
+++ b/Tests/RunCMake/Make/TargetMessages-OFF.cmake
@@ -0,0 +1,2 @@
+set_property(GLOBAL PROPERTY TARGET_MESSAGES OFF)
+add_custom_target(CustomTarget ALL)
diff --git a/Tests/RunCMake/Make/TargetMessages-ON-build-stdout.txt b/Tests/RunCMake/Make/TargetMessages-ON-build-stdout.txt
new file mode 100644
index 0000000..a827624
--- /dev/null
+++ b/Tests/RunCMake/Make/TargetMessages-ON-build-stdout.txt
@@ -0,0 +1,8 @@
+^(([^B]|B[^u]|Bu[^i]|Bui[^l]|Buil[^t]|Built[^ ])[^
+]*
+)*Scanning dependencies of target CustomTarget(
+([^B]|B[^u]|Bu[^i]|Bui[^l]|Buil[^t]|Built[^ ])[^
+]*)*
+Built target CustomTarget(
+([^B]|B[^u]|Bu[^i]|Bui[^l]|Buil[^t]|Built[^ ])[^
+]*)*$
diff --git a/Tests/RunCMake/Make/TargetMessages-ON.cmake b/Tests/RunCMake/Make/TargetMessages-ON.cmake
new file mode 100644
index 0000000..e0a5f2b
--- /dev/null
+++ b/Tests/RunCMake/Make/TargetMessages-ON.cmake
@@ -0,0 +1,2 @@
+set_property(GLOBAL PROPERTY TARGET_MESSAGES ON)
+add_custom_target(CustomTarget ALL)
diff --git a/Tests/RunCMake/Make/TargetMessages-VAR-OFF-build-stdout.txt b/Tests/RunCMake/Make/TargetMessages-VAR-OFF-build-stdout.txt
new file mode 100644
index 0000000..77a582a
--- /dev/null
+++ b/Tests/RunCMake/Make/TargetMessages-VAR-OFF-build-stdout.txt
@@ -0,0 +1,5 @@
+^(([^B]|B[^u]|Bu[^i]|Bui[^l]|Buil[^t]|Built[^ ])[^
+]*
+)*Scanning dependencies of target CustomTarget(
+([^B]|B[^u]|Bu[^i]|Bui[^l]|Buil[^t]|Built[^ ])[^
+]*)*$
diff --git a/Tests/RunCMake/Make/TargetMessages-VAR-OFF.cmake b/Tests/RunCMake/Make/TargetMessages-VAR-OFF.cmake
new file mode 100644
index 0000000..f278132
--- /dev/null
+++ b/Tests/RunCMake/Make/TargetMessages-VAR-OFF.cmake
@@ -0,0 +1 @@
+add_custom_target(CustomTarget ALL)
diff --git a/Tests/RunCMake/Make/TargetMessages-VAR-ON-build-stdout.txt b/Tests/RunCMake/Make/TargetMessages-VAR-ON-build-stdout.txt
new file mode 100644
index 0000000..a827624
--- /dev/null
+++ b/Tests/RunCMake/Make/TargetMessages-VAR-ON-build-stdout.txt
@@ -0,0 +1,8 @@
+^(([^B]|B[^u]|Bu[^i]|Bui[^l]|Buil[^t]|Built[^ ])[^
+]*
+)*Scanning dependencies of target CustomTarget(
+([^B]|B[^u]|Bu[^i]|Bui[^l]|Buil[^t]|Built[^ ])[^
+]*)*
+Built target CustomTarget(
+([^B]|B[^u]|Bu[^i]|Bui[^l]|Buil[^t]|Built[^ ])[^
+]*)*$
diff --git a/Tests/RunCMake/Make/TargetMessages-VAR-ON.cmake b/Tests/RunCMake/Make/TargetMessages-VAR-ON.cmake
new file mode 100644
index 0000000..f278132
--- /dev/null
+++ b/Tests/RunCMake/Make/TargetMessages-VAR-ON.cmake
@@ -0,0 +1 @@
+add_custom_target(CustomTarget ALL)
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=1d3984780df87c6963b0aae1c392a570c890161b
commit 1d3984780df87c6963b0aae1c392a570c890161b
Author: Michael Ensslin <michael at ensslin.cc>
AuthorDate: Fri Jul 10 18:14:47 2015 +0200
Commit: Brad King <brad.king at kitware.com>
CommitDate: Tue Jul 14 13:57:58 2015 -0400
Makefile: Optionally disable target completion messages in build output
Add a TARGET_MESSAGES property to control whether Makefile targets print
the "Built target " completion messages. Default to ON to preserve
existing behavior.
diff --git a/Help/manual/cmake-properties.7.rst b/Help/manual/cmake-properties.7.rst
index b767ed6..671d893 100644
--- a/Help/manual/cmake-properties.7.rst
+++ b/Help/manual/cmake-properties.7.rst
@@ -40,6 +40,7 @@ Properties of Global Scope
/prop_gbl/RULE_LAUNCH_LINK
/prop_gbl/RULE_MESSAGES
/prop_gbl/TARGET_ARCHIVES_MAY_BE_SHARED_LIBS
+ /prop_gbl/TARGET_MESSAGES
/prop_gbl/TARGET_SUPPORTS_SHARED_LIBS
/prop_gbl/USE_FOLDERS
diff --git a/Help/prop_gbl/TARGET_MESSAGES.rst b/Help/prop_gbl/TARGET_MESSAGES.rst
new file mode 100644
index 0000000..275b074
--- /dev/null
+++ b/Help/prop_gbl/TARGET_MESSAGES.rst
@@ -0,0 +1,20 @@
+TARGET_MESSAGES
+---------------
+
+Specify whether to report the completion of each target.
+
+This property specifies whether :ref:`Makefile Generators` should
+add a progress message describing that each target has been completed.
+If the property is not set the default is ``ON``. Set the property
+to ``OFF`` to disable target completion messages.
+
+This option is intended to reduce build output when little or no
+work needs to be done to bring the build tree up to date.
+
+If a ``CMAKE_TARGET_MESSAGES`` cache entry exists its value
+initializes the value of this property.
+
+Non-Makefile generators currently ignore this property.
+
+See the counterpart property :prop_gbl:`RULE_MESSAGES` to disable
+everything except for target completion messages.
diff --git a/Help/release/dev/makefile-target-messages.rst b/Help/release/dev/makefile-target-messages.rst
new file mode 100644
index 0000000..3d2cd9b
--- /dev/null
+++ b/Help/release/dev/makefile-target-messages.rst
@@ -0,0 +1,6 @@
+makefile-target-messages
+------------------------
+
+* A :prop_gbl:`TARGET_MESSAGES` global property was added to tell the
+ :ref:`Makefile Generators` whether to generate commands to print output
+ after each target is completed.
diff --git a/Modules/CMakeGenericSystem.cmake b/Modules/CMakeGenericSystem.cmake
index 730e780..5ae757d 100644
--- a/Modules/CMakeGenericSystem.cmake
+++ b/Modules/CMakeGenericSystem.cmake
@@ -52,6 +52,9 @@ if(CMAKE_GENERATOR MATCHES "Make")
if(DEFINED CMAKE_RULE_MESSAGES)
set_property(GLOBAL PROPERTY RULE_MESSAGES ${CMAKE_RULE_MESSAGES})
endif()
+ if(DEFINED CMAKE_TARGET_MESSAGES)
+ set_property(GLOBAL PROPERTY TARGET_MESSAGES ${CMAKE_TARGET_MESSAGES})
+ endif()
if(CMAKE_GENERATOR MATCHES "Unix Makefiles")
set(CMAKE_EXPORT_COMPILE_COMMANDS OFF CACHE BOOL
"Enable/Disable output of compile commands during generation."
diff --git a/Source/cmGlobalUnixMakefileGenerator3.cxx b/Source/cmGlobalUnixMakefileGenerator3.cxx
index c5fca91..edf2705 100644
--- a/Source/cmGlobalUnixMakefileGenerator3.cxx
+++ b/Source/cmGlobalUnixMakefileGenerator3.cxx
@@ -801,8 +801,20 @@ cmGlobalUnixMakefileGenerator3
}
progress.Arg = progressArg.str();
}
- lg->AppendEcho(commands, "Built target " + name,
- cmLocalUnixMakefileGenerator3::EchoNormal, &progress);
+
+ bool targetMessages = true;
+ if (const char* tgtMsg = this->GetCMakeInstance()
+ ->GetState()
+ ->GetGlobalProperty("TARGET_MESSAGES"))
+ {
+ targetMessages = cmSystemTools::IsOn(tgtMsg);
+ }
+
+ if (targetMessages)
+ {
+ lg->AppendEcho(commands, "Built target " + name,
+ cmLocalUnixMakefileGenerator3::EchoNormal, &progress);
+ }
this->AppendGlobalTargetDepends(depends, gtarget);
lg->WriteMakeRule(ruleFileStream, "All Build rule for target.",
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d560b46f5232f84476d68d96d44e5e755d391090
commit d560b46f5232f84476d68d96d44e5e755d391090
Author: Brad King <brad.king at kitware.com>
AuthorDate: Tue Jul 14 13:55:09 2015 -0400
Commit: Brad King <brad.king at kitware.com>
CommitDate: Tue Jul 14 13:57:58 2015 -0400
CMakeGenericSystem: Recognize Watcom WMake generator as Makefile generator
diff --git a/Modules/CMakeGenericSystem.cmake b/Modules/CMakeGenericSystem.cmake
index 8a14aea..730e780 100644
--- a/Modules/CMakeGenericSystem.cmake
+++ b/Modules/CMakeGenericSystem.cmake
@@ -44,7 +44,7 @@ set (CMAKE_SKIP_INSTALL_RPATH "NO" CACHE BOOL
set(CMAKE_VERBOSE_MAKEFILE FALSE CACHE BOOL "If this value is on, makefiles will be generated without the .SILENT directive, and all commands will be echoed to the console during the make. This is useful for debugging only. With Visual Studio IDE projects all commands are done without /nologo.")
-if(CMAKE_GENERATOR MATCHES "Makefiles")
+if(CMAKE_GENERATOR MATCHES "Make")
set(CMAKE_COLOR_MAKEFILE ON CACHE BOOL
"Enable/Disable color output during build."
)
-----------------------------------------------------------------------
Summary of changes:
Help/manual/cmake-properties.7.rst | 1 +
Help/prop_gbl/TARGET_MESSAGES.rst | 20 ++++++++++++++++++++
Help/release/dev/makefile-target-messages.rst | 6 ++++++
Modules/CMakeGenericSystem.cmake | 5 ++++-
Source/cmGlobalUnixMakefileGenerator3.cxx | 16 ++++++++++++++--
Tests/RunCMake/CMakeLists.txt | 3 +++
.../{GNUInstallDirs => Make}/CMakeLists.txt | 0
Tests/RunCMake/Make/RunCMakeTest.cmake | 17 +++++++++++++++++
.../Make/TargetMessages-OFF-build-stdout.txt | 5 +++++
Tests/RunCMake/Make/TargetMessages-OFF.cmake | 2 ++
.../Make/TargetMessages-ON-build-stdout.txt | 8 ++++++++
Tests/RunCMake/Make/TargetMessages-ON.cmake | 2 ++
.../Make/TargetMessages-VAR-OFF-build-stdout.txt | 5 +++++
Tests/RunCMake/Make/TargetMessages-VAR-OFF.cmake | 1 +
.../Make/TargetMessages-VAR-ON-build-stdout.txt | 8 ++++++++
Tests/RunCMake/Make/TargetMessages-VAR-ON.cmake | 1 +
16 files changed, 97 insertions(+), 3 deletions(-)
create mode 100644 Help/prop_gbl/TARGET_MESSAGES.rst
create mode 100644 Help/release/dev/makefile-target-messages.rst
copy Tests/RunCMake/{GNUInstallDirs => Make}/CMakeLists.txt (100%)
create mode 100644 Tests/RunCMake/Make/RunCMakeTest.cmake
create mode 100644 Tests/RunCMake/Make/TargetMessages-OFF-build-stdout.txt
create mode 100644 Tests/RunCMake/Make/TargetMessages-OFF.cmake
create mode 100644 Tests/RunCMake/Make/TargetMessages-ON-build-stdout.txt
create mode 100644 Tests/RunCMake/Make/TargetMessages-ON.cmake
create mode 100644 Tests/RunCMake/Make/TargetMessages-VAR-OFF-build-stdout.txt
create mode 100644 Tests/RunCMake/Make/TargetMessages-VAR-OFF.cmake
create mode 100644 Tests/RunCMake/Make/TargetMessages-VAR-ON-build-stdout.txt
create mode 100644 Tests/RunCMake/Make/TargetMessages-VAR-ON.cmake
hooks/post-receive
--
CMake
More information about the Cmake-commits
mailing list