diff options
author | Sebastian Schuberth <sschuberth@gmail.com> | 2016-02-04 11:36:44 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2016-02-05 16:48:16 (GMT) |
commit | 497cad7c883dc401b4d78109c3a057fb38745d9e (patch) | |
tree | 8e8a1523e78ed5b586a6c3d3d1dec4e606dd8666 /Tests/RunCMake/CommandLine | |
parent | 886acd80f09c807fccbfcde713c53a7686386968 (diff) | |
download | CMake-497cad7c883dc401b4d78109c3a057fb38745d9e.zip CMake-497cad7c883dc401b4d78109c3a057fb38745d9e.tar.gz CMake-497cad7c883dc401b4d78109c3a057fb38745d9e.tar.bz2 |
cmake: Teach --build to reject multiple --target options
Previously we did not clearly document that `--target` is only supported
to be specified once. Even worse, specifying it multiple times would
silently ignore any previously specified targets and only build the last
target.
Update the documentation to specify this. Update the implementation to
reject multiple `--target` options to prevent user errors.
Diffstat (limited to 'Tests/RunCMake/CommandLine')
4 files changed, 8 insertions, 0 deletions
diff --git a/Tests/RunCMake/CommandLine/BuildDir--build-multiple-targets-result.txt b/Tests/RunCMake/CommandLine/BuildDir--build-multiple-targets-result.txt new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/Tests/RunCMake/CommandLine/BuildDir--build-multiple-targets-result.txt @@ -0,0 +1 @@ +1 diff --git a/Tests/RunCMake/CommandLine/BuildDir--build-multiple-targets-stderr.txt b/Tests/RunCMake/CommandLine/BuildDir--build-multiple-targets-stderr.txt new file mode 100644 index 0000000..f2cbaa6 --- /dev/null +++ b/Tests/RunCMake/CommandLine/BuildDir--build-multiple-targets-stderr.txt @@ -0,0 +1,3 @@ +^'--target' may not be specified more than once\. ++ +Usage: cmake --build <dir> \[options\] \[-- \[native-options\]\] diff --git a/Tests/RunCMake/CommandLine/BuildDir/CMakeLists.txt b/Tests/RunCMake/CommandLine/BuildDir/CMakeLists.txt index 20df108..d2a2831 100644 --- a/Tests/RunCMake/CommandLine/BuildDir/CMakeLists.txt +++ b/Tests/RunCMake/CommandLine/BuildDir/CMakeLists.txt @@ -3,3 +3,5 @@ add_custom_command( COMMAND ${CMAKE_COMMAND} -E echo CustomCommand > output.txt ) add_custom_target(CustomTarget ALL DEPENDS output.txt) +add_custom_target(CustomTarget2 ALL DEPENDS output.txt) +add_custom_target(CustomTarget3 ALL DEPENDS output.txt) diff --git a/Tests/RunCMake/CommandLine/RunCMakeTest.cmake b/Tests/RunCMake/CommandLine/RunCMakeTest.cmake index e3b73ff..a07bbbe 100644 --- a/Tests/RunCMake/CommandLine/RunCMakeTest.cmake +++ b/Tests/RunCMake/CommandLine/RunCMakeTest.cmake @@ -51,6 +51,8 @@ function(run_BuildDir) run_cmake(BuildDir) run_cmake_command(BuildDir--build ${CMAKE_COMMAND} -E chdir .. ${CMAKE_COMMAND} --build BuildDir-build --target CustomTarget) + run_cmake_command(BuildDir--build-multiple-targets ${CMAKE_COMMAND} -E chdir .. + ${CMAKE_COMMAND} --build BuildDir-build --target CustomTarget2 --target CustomTarget3) endfunction() run_BuildDir() |