summaryrefslogtreecommitdiffstats
path: root/Tests/RunCMake/CommandLine
diff options
context:
space:
mode:
authorSebastian Schuberth <sschuberth@gmail.com>2016-02-04 11:36:44 (GMT)
committerBrad King <brad.king@kitware.com>2016-02-05 16:48:16 (GMT)
commit497cad7c883dc401b4d78109c3a057fb38745d9e (patch)
tree8e8a1523e78ed5b586a6c3d3d1dec4e606dd8666 /Tests/RunCMake/CommandLine
parent886acd80f09c807fccbfcde713c53a7686386968 (diff)
downloadCMake-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')
-rw-r--r--Tests/RunCMake/CommandLine/BuildDir--build-multiple-targets-result.txt1
-rw-r--r--Tests/RunCMake/CommandLine/BuildDir--build-multiple-targets-stderr.txt3
-rw-r--r--Tests/RunCMake/CommandLine/BuildDir/CMakeLists.txt2
-rw-r--r--Tests/RunCMake/CommandLine/RunCMakeTest.cmake2
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()