CMake/Tests/RunCMake/CommandLine
Tobias Hunger b13d3e0d0b cmake-server: Bare-bones server implementation
Adds a bare-bones cmake-server implementation and makes it possible
to start that with "cmake -E server".

Communication happens via stdin/stdout for now.

Protocol is based on Json objects surrounded by magic strings
("[== CMake Server ==[" and "]== CMake Server ==]"), which simplifies
Json parsing significantly.

This patch also defines an interface used to implement different
versions of the protocol spoken by the server, but does not include
any protocol implementaiton.
2016-09-19 08:57:57 -04:00
..
BuildDir cmake: Teach --build to reject multiple --target options 2016-02-05 11:48:16 -05:00
cache-bad-entry Print line number of cache parse errors (#11109) 2016-01-19 10:19:42 -05:00
cache-bad-generator cmake: Fix --build crash on bad CMAKE_GENERATOR in cache 2014-06-03 11:52:19 -04:00
cache-empty-entry Print line number of cache parse errors (#11109) 2016-01-19 10:19:42 -05:00
cache-no-generator cmake: Fix --build crash on bad CMAKE_GENERATOR in cache 2014-06-03 11:52:19 -04:00
cmake_depends Revise C++ coding style using clang-format 2016-05-16 16:05:19 -04:00
copy_input cmake: Teach -E copy_directory to support multiple input directories 2015-12-07 10:51:27 -05:00
Build-ninja-v-stdout.txt Tests: Extend RunCMake.CommandLine to cover 'cmake --build' for 'ninja -v' 2015-02-26 10:21:09 -05:00
Build.cmake Tests: Extend RunCMake.CommandLine to cover 'cmake --build' for 'ninja -v' 2015-02-26 10:21:09 -05:00
BuildDir--build-multiple-targets-result.txt cmake: Teach --build to reject multiple --target options 2016-02-05 11:48:16 -05:00
BuildDir--build-multiple-targets-stderr.txt cmake: Teach --build to reject multiple --target options 2016-02-05 11:48:16 -05:00
BuildDir.cmake cmake: Fix --build <relative-dir> for VS generators (#15609) 2015-06-11 16:04:21 -04:00
C-no-arg-result.txt Tests: Move more command line tests into RunCMake.CommandLine 2015-04-10 14:56:41 -04:00
C-no-arg-stderr.txt Tests: Move more command line tests into RunCMake.CommandLine 2015-04-10 14:56:41 -04:00
C-no-file-result.txt Tests: Move more command line tests into RunCMake.CommandLine 2015-04-10 14:56:41 -04:00
C-no-file-stderr.txt Tests: Move more command line tests into RunCMake.CommandLine 2015-04-10 14:56:41 -04:00
CMakeLists.txt Tests: test -D parsing on the command line 2014-10-20 12:17:03 -04:00
D-no-arg-result.txt Tests: Move more command line tests into RunCMake.CommandLine 2015-04-10 14:56:41 -04:00
D-no-arg-stderr.txt Tests: Move more command line tests into RunCMake.CommandLine 2015-04-10 14:56:41 -04:00
D_nested_cache-stderr.txt cmCacheManager: parse -D flags more strictly 2014-10-20 12:17:19 -04:00
D_nested_cache.cmake Tests: test -D parsing on the command line 2014-10-20 12:17:03 -04:00
D_typed_nested_cache-stderr.txt Tests: test -D parsing on the command line 2014-10-20 12:17:03 -04:00
D_typed_nested_cache.cmake Tests: test -D parsing on the command line 2014-10-20 12:17:03 -04:00
DeprecateVS71-WARN-OFF.cmake Deprecate Visual Studio 7 .NET 2003 generator 2016-04-28 10:09:20 -04:00
DeprecateVS71-WARN-ON-stderr.txt Deprecate Visual Studio 7 .NET 2003 generator 2016-04-28 10:09:20 -04:00
DeprecateVS71-WARN-ON.cmake Deprecate Visual Studio 7 .NET 2003 generator 2016-04-28 10:09:20 -04:00
E-no-arg-result.txt Tests: Move more command line tests into RunCMake.CommandLine 2015-04-10 14:56:41 -04:00
E-no-arg-stderr.txt cmake: Improve '-E' help message formatting 2015-12-04 10:12:02 -05:00
E___run_iwyu-bad-iwyu-result.txt cmake: Add internal -E mode to run include-what-you-use with the compiler 2015-05-19 13:16:29 -04:00
E___run_iwyu-bad-iwyu-stderr.txt cmake: Add internal -E mode to run include-what-you-use with the compiler 2015-05-19 13:16:29 -04:00
E___run_iwyu-no----result.txt cmake: Add internal -E mode to run include-what-you-use with the compiler 2015-05-19 13:16:29 -04:00
E___run_iwyu-no----stderr.txt cmake: Add internal -E mode to run include-what-you-use with the compiler 2015-05-19 13:16:29 -04:00
E___run_iwyu-no-cc-result.txt cmake: Add internal -E mode to run include-what-you-use with the compiler 2015-05-19 13:16:29 -04:00
E___run_iwyu-no-cc-stderr.txt cmake: Add internal -E mode to run include-what-you-use with the compiler 2015-05-19 13:16:29 -04:00
E___run_iwyu-no-iwyu-result.txt cmake: Add internal -E mode to run include-what-you-use with the compiler 2015-05-19 13:16:29 -04:00
E___run_iwyu-no-iwyu-stderr.txt Add options to run clang-tidy with the compiler 2016-04-13 09:56:10 -04:00
E_capabilities-arg-result.txt cmake: Add `cmake -E capabilities` mode 2016-08-16 13:45:05 -04:00
E_capabilities-arg-stderr.txt cmake: Add `cmake -E capabilities` mode 2016-08-16 13:45:05 -04:00
E_capabilities-stdout.txt cmake: Add `cmake -E capabilities` mode 2016-08-16 13:45:05 -04:00
E_copy-one-source-directory-target-is-directory-result.txt cmake: Teach -E copy[_if_different] to support multiple files (#15703) 2015-12-04 10:26:34 -05:00
E_copy-one-source-directory-target-is-directory-stderr.txt cmake: Teach -E copy[_if_different] to support multiple files (#15703) 2015-12-04 10:26:34 -05:00
E_copy-one-source-file-result.txt cmake: Teach -E copy[_if_different] to support multiple files (#15703) 2015-12-04 10:26:34 -05:00
E_copy-one-source-file-stderr.txt cmake: Teach -E copy[_if_different] to support multiple files (#15703) 2015-12-04 10:26:34 -05:00
E_copy-three-source-files-target-is-directory-result.txt cmake: Teach -E copy[_if_different] to support multiple files (#15703) 2015-12-04 10:26:34 -05:00
E_copy-three-source-files-target-is-directory-stderr.txt cmake: Teach -E copy[_if_different] to support multiple files (#15703) 2015-12-04 10:26:34 -05:00
E_copy-three-source-files-target-is-file-result.txt cmake: Teach -E copy[_if_different] to support multiple files (#15703) 2015-12-04 10:26:34 -05:00
E_copy-three-source-files-target-is-file-stderr.txt cmake: Teach -E copy[_if_different] to support multiple files (#15703) 2015-12-04 10:26:34 -05:00
E_copy-two-good-and-one-bad-source-files-target-is-directory-result.txt cmake: Teach -E copy[_if_different] to support multiple files (#15703) 2015-12-04 10:26:34 -05:00
E_copy-two-good-and-one-bad-source-files-target-is-directory-stderr.txt cmake: Teach -E copy[_if_different] to support multiple files (#15703) 2015-12-04 10:26:34 -05:00
E_copy_directory-three-source-files-target-is-directory-result.txt cmake: Teach -E copy_directory to support multiple input directories 2015-12-07 10:51:27 -05:00
E_copy_directory-three-source-files-target-is-directory-stderr.txt cmake: Teach -E copy_directory to support multiple input directories 2015-12-07 10:51:27 -05:00
E_copy_directory-three-source-files-target-is-file-result.txt cmake: Teach -E copy_directory to support multiple input directories 2015-12-07 10:51:27 -05:00
E_copy_directory-three-source-files-target-is-file-stderr.txt cmake: Teach -E copy_directory to support multiple input directories 2015-12-07 10:51:27 -05:00
E_copy_directory-three-source-files-target-is-not-exist-result.txt cmake: Teach -E copy_directory to support multiple input directories 2015-12-07 10:51:27 -05:00
E_copy_directory-three-source-files-target-is-not-exist-stderr.txt cmake: Teach -E copy_directory to support multiple input directories 2015-12-07 10:51:27 -05:00
E_copy_if_different-one-source-directory-target-is-directory-result.txt cmake: Teach -E copy[_if_different] to support multiple files (#15703) 2015-12-04 10:26:34 -05:00
E_copy_if_different-one-source-directory-target-is-directory-stderr.txt cmake: Teach -E copy[_if_different] to support multiple files (#15703) 2015-12-04 10:26:34 -05:00
E_copy_if_different-three-source-files-target-is-directory-result.txt cmake: Teach -E copy[_if_different] to support multiple files (#15703) 2015-12-04 10:26:34 -05:00
E_copy_if_different-three-source-files-target-is-directory-stderr.txt cmake: Teach -E copy[_if_different] to support multiple files (#15703) 2015-12-04 10:26:34 -05:00
E_copy_if_different-three-source-files-target-is-file-result.txt cmake: Teach -E copy[_if_different] to support multiple files (#15703) 2015-12-04 10:26:34 -05:00
E_copy_if_different-three-source-files-target-is-file-stderr.txt cmake: Teach -E copy[_if_different] to support multiple files (#15703) 2015-12-04 10:26:34 -05:00
E_create_symlink-broken-create-check.cmake cmake: Improve '-E create_symlink' edge case handling (#14713) 2014-01-20 14:02:21 -05:00
E_create_symlink-broken-replace-check.cmake cmake: Improve '-E create_symlink' edge case handling (#14713) 2014-01-20 14:02:21 -05:00
E_create_symlink-missing-dir-result.txt cmake: Improve '-E create_symlink' edge case handling (#14713) 2014-01-20 14:02:21 -05:00
E_create_symlink-missing-dir-stderr.txt cmake: Improve '-E create_symlink' edge case handling (#14713) 2014-01-20 14:02:21 -05:00
E_create_symlink-no-arg-result.txt Tests: Move more command line tests into RunCMake.CommandLine 2015-04-10 14:56:41 -04:00
E_create_symlink-no-arg-stderr.txt cmake: Improve '-E' help message formatting 2015-12-04 10:12:02 -05:00
E_create_symlink-no-replace-dir-result.txt cmake: Improve '-E create_symlink' edge case handling (#14713) 2014-01-20 14:02:21 -05:00
E_create_symlink-no-replace-dir-stderr.txt cmake: Improve '-E create_symlink' edge case handling (#14713) 2014-01-20 14:02:21 -05:00
E_env-bad-arg1-result.txt cmake: Add '-E env' command-line tool 2014-06-23 16:47:49 -04:00
E_env-bad-arg1-stderr.txt cmake: Add '-E env' command-line tool 2014-06-23 16:47:49 -04:00
E_env-no-command0-result.txt cmake: Add '-E env' command-line tool 2014-06-23 16:47:49 -04:00
E_env-no-command0-stderr.txt cmake: Add '-E env' command-line tool 2014-06-23 16:47:49 -04:00
E_env-no-command1-result.txt cmake: Add '-E env' command-line tool 2014-06-23 16:47:49 -04:00
E_env-no-command1-stderr.txt cmake: Add '-E env' command-line tool 2014-06-23 16:47:49 -04:00
E_env-set-stdout.txt cmake: Add '-E env' command-line tool 2014-06-23 16:47:49 -04:00
E_env-set.cmake cmake: Add '-E env' command-line tool 2014-06-23 16:47:49 -04:00
E_env-unset-stdout.txt cmake: Add '-E env' command-line tool 2014-06-23 16:47:49 -04:00
E_env-unset.cmake cmake: Add '-E env' command-line tool 2014-06-23 16:47:49 -04:00
E_make_directory-directory-with-parent-result.txt cmake: Teach -E make_directory to support multiple input directories 2015-12-10 09:07:38 -05:00
E_make_directory-directory-with-parent-stderr.txt cmake: Teach -E make_directory to support multiple input directories 2015-12-10 09:07:38 -05:00
E_make_directory-three-directories-and-file-result.txt cmake: Teach -E make_directory to support multiple input directories 2015-12-10 09:07:38 -05:00
E_make_directory-three-directories-and-file-stderr.txt cmake: Teach -E make_directory to support multiple input directories 2015-12-10 09:07:38 -05:00
E_make_directory-three-directories-result.txt cmake: Teach -E make_directory to support multiple input directories 2015-12-10 09:07:38 -05:00
E_make_directory-three-directories-stderr.txt cmake: Teach -E make_directory to support multiple input directories 2015-12-10 09:07:38 -05:00
E_rename-no-arg-result.txt Tests: Move more command line tests into RunCMake.CommandLine 2015-04-10 14:56:41 -04:00
E_rename-no-arg-stderr.txt cmake: Improve '-E' help message formatting 2015-12-04 10:12:02 -05:00
E_server-arg-result.txt cmake-server: Bare-bones server implementation 2016-09-19 08:57:57 -04:00
E_server-arg-stderr.txt cmake-server: Bare-bones server implementation 2016-09-19 08:57:57 -04:00
E_sleep-bad-arg1-result.txt cmake: Add '-E sleep' command 2014-01-21 13:50:49 -05:00
E_sleep-bad-arg1-stderr.txt cmake: Add '-E sleep' command 2014-01-21 13:50:49 -05:00
E_sleep-bad-arg2-result.txt cmake: Add '-E sleep' command 2014-01-21 13:50:49 -05:00
E_sleep-bad-arg2-stderr.txt cmake: Add '-E sleep' command 2014-01-21 13:50:49 -05:00
E_sleep-no-args-result.txt cmake: Add '-E sleep' command 2014-01-21 13:50:49 -05:00
E_sleep-no-args-stderr.cmake cmake: Add '-E sleep' command 2014-01-21 13:50:49 -05:00
E_time-no-arg-result.txt cmake: Fix `-E time` argument passing to child 2016-01-20 08:55:23 -05:00
E_time-no-arg-stderr.txt cmake: Fix `-E time` argument passing to child 2016-01-20 08:55:23 -05:00
E_time-stdout.txt cmake: Fix `-E time` argument passing to child 2016-01-20 08:55:23 -05:00
E_touch_nocreate-no-arg-result.txt Tests: Move more command line tests into RunCMake.CommandLine 2015-04-10 14:56:41 -04:00
E_touch_nocreate-no-arg-stderr.txt cmake: Improve '-E' help message formatting 2015-12-04 10:12:02 -05:00
G_bad-arg-result.txt Tests: Move more command line tests into RunCMake.CommandLine 2015-04-10 14:56:41 -04:00
G_bad-arg-stderr.txt cmake: Provide guidance when an invalid -G option is given 2015-04-10 15:14:34 -04:00
G_no-arg-result.txt Tests: Move more command line tests into RunCMake.CommandLine 2015-04-10 14:56:41 -04:00
G_no-arg-stderr.txt cmake: Provide guidance when an invalid -G option is given 2015-04-10 15:14:34 -04:00
NoArgs-stdout.txt Tests: Move more command line tests into RunCMake.CommandLine 2015-04-10 14:56:41 -04:00
P_directory-result.txt cmake: Do not open directories as scripts (#14966) 2014-06-09 16:21:11 -04:00
P_directory-stderr.txt cmake: Do not open directories as scripts (#14966) 2014-06-09 16:21:11 -04:00
P_no-arg-result.txt Tests: Move more command line tests into RunCMake.CommandLine 2015-04-10 14:56:41 -04:00
P_no-arg-stderr.txt Tests: Move more command line tests into RunCMake.CommandLine 2015-04-10 14:56:41 -04:00
P_no-file-result.txt Tests: Move more command line tests into RunCMake.CommandLine 2015-04-10 14:56:41 -04:00
P_no-file-stderr.txt Tests: Move more command line tests into RunCMake.CommandLine 2015-04-10 14:56:41 -04:00
P_working-dir.cmake Document and test CMAKE_[CURRENT_](BINARY|SOURCE)_DIR in script mode 2015-10-06 09:34:28 -04:00
RunCMakeTest.cmake cmake-server: Bare-bones server implementation 2016-09-19 08:57:57 -04:00
U-no-arg-result.txt Tests: Move more command line tests into RunCMake.CommandLine 2015-04-10 14:56:41 -04:00
U-no-arg-stderr.txt Tests: Move more command line tests into RunCMake.CommandLine 2015-04-10 14:56:41 -04:00
W_bad-arg1-result.txt Refactor the -W options parser to be generic. 2015-12-01 09:40:43 -05:00
W_bad-arg1-stderr.txt Refactor the -W options parser to be generic. 2015-12-01 09:40:43 -05:00
W_bad-arg2-result.txt Refactor the -W options parser to be generic. 2015-12-01 09:40:43 -05:00
W_bad-arg2-stderr.txt Refactor the -W options parser to be generic. 2015-12-01 09:40:43 -05:00
W_bad-arg3-result.txt Add -Werror and -Wno-error command-line options 2016-01-12 14:02:51 -05:00
W_bad-arg3-stderr.txt Add -Werror and -Wno-error command-line options 2016-01-12 14:02:51 -05:00
Wdeprecated-stderr.txt Add -W options to control deprecated warning messages. 2015-12-01 10:21:57 -05:00
Wdeprecated.cmake Add -W options to control deprecated warning messages. 2015-12-01 10:21:57 -05:00
Wdev-stderr.txt Tests: Revise message in RunCMake.CommandLine -Wdev case 2015-11-30 15:00:08 -05:00
Wdev.cmake Tests: Revise message in RunCMake.CommandLine -Wdev case 2015-11-30 15:00:08 -05:00
Werror_deprecated-result.txt Add -Werror and -Wno-error command-line options 2016-01-12 14:02:51 -05:00
Werror_deprecated-stderr.txt Add -Werror and -Wno-error command-line options 2016-01-12 14:02:51 -05:00
Werror_deprecated.cmake Add -Werror and -Wno-error command-line options 2016-01-12 14:02:51 -05:00
Werror_dev-result.txt Add -Werror and -Wno-error command-line options 2016-01-12 14:02:51 -05:00
Werror_dev-stderr.txt Add -Werror and -Wno-error command-line options 2016-01-12 14:02:51 -05:00
Werror_dev.cmake Add -Werror and -Wno-error command-line options 2016-01-12 14:02:51 -05:00
Wno-deprecated.cmake Add -W options to control deprecated warning messages. 2015-12-01 10:21:57 -05:00
Wno-dev.cmake Tests: Revise message in RunCMake.CommandLine -Wdev case 2015-11-30 15:00:08 -05:00
Wno-error_deprecated-stderr.txt Add -Werror and -Wno-error command-line options 2016-01-12 14:02:51 -05:00
Wno-error_deprecated.cmake Add -Werror and -Wno-error command-line options 2016-01-12 14:02:51 -05:00
Wno-error_dev-stderr.txt Add -Werror and -Wno-error command-line options 2016-01-12 14:02:51 -05:00
Wno-error_dev.cmake Add -Werror and -Wno-error command-line options 2016-01-12 14:02:51 -05:00
build-bad-dir-result.txt cmake: Fix --build <relative-dir> for VS generators (#15609) 2015-06-11 16:04:21 -04:00
build-bad-dir-stderr.txt cmake: Fix --build <relative-dir> for VS generators (#15609) 2015-06-11 16:04:21 -04:00
build-bad-generator-result.txt cmake: Fix --build crash on bad CMAKE_GENERATOR in cache 2014-06-03 11:52:19 -04:00
build-bad-generator-stderr.txt cmake: Fix --build crash on bad CMAKE_GENERATOR in cache 2014-06-03 11:52:19 -04:00
build-no-cache-result.txt cmake: Fix --build crash on bad CMAKE_GENERATOR in cache 2014-06-03 11:52:19 -04:00
build-no-cache-stderr.txt cmake: Fix --build crash on bad CMAKE_GENERATOR in cache 2014-06-03 11:52:19 -04:00
build-no-dir-result.txt Tests: Extend RunCMake.CommandLine to cover --build with no arg 2015-06-11 15:58:52 -04:00
build-no-dir-stderr.txt Tests: Extend RunCMake.CommandLine to cover --build with no arg 2015-06-11 15:58:52 -04:00
build-no-generator-result.txt cmake: Fix --build crash on bad CMAKE_GENERATOR in cache 2014-06-03 11:52:19 -04:00
build-no-generator-stderr.txt cmake: Fix --build crash on bad CMAKE_GENERATOR in cache 2014-06-03 11:52:19 -04:00
cache-bad-entry-result.txt Print line number of cache parse errors (#11109) 2016-01-19 10:19:42 -05:00
cache-bad-entry-stderr.txt Print line number of cache parse errors (#11109) 2016-01-19 10:19:42 -05:00
cache-empty-entry-result.txt Print line number of cache parse errors (#11109) 2016-01-19 10:19:42 -05:00
cache-empty-entry-stderr.txt Print line number of cache parse errors (#11109) 2016-01-19 10:19:42 -05:00
cache-no-file-result.txt Tests: Move more command line tests into RunCMake.CommandLine 2015-04-10 14:56:41 -04:00
cache-no-file-stderr.txt Tests: Move more command line tests into RunCMake.CommandLine 2015-04-10 14:56:41 -04:00
cmake_depends-check.cmake Makefile: Tolerate a BOM while scanning source dependencies (#15493) 2015-04-03 13:04:57 -04:00
cmake_depends-stdout.txt Makefile: Tolerate a BOM while scanning source dependencies (#15493) 2015-04-03 13:04:57 -04:00
debug-output-stdout.txt Tests: Move more command line tests into RunCMake.CommandLine 2015-04-10 14:56:41 -04:00
debug-output.cmake Tests: Move more command line tests into RunCMake.CommandLine 2015-04-10 14:56:41 -04:00
debug-trycompile.cmake Tests: Move more command line tests into RunCMake.CommandLine 2015-04-10 14:56:41 -04:00
lists-no-file-result.txt Tests: Move more command line tests into RunCMake.CommandLine 2015-04-10 14:56:41 -04:00
lists-no-file-stderr.txt Tests: Move more command line tests into RunCMake.CommandLine 2015-04-10 14:56:41 -04:00
trace-expand-stderr.txt cmake: add --trace-expand option 2015-07-23 15:33:10 -04:00
trace-expand.cmake cmake: add --trace-expand option 2015-07-23 15:33:10 -04:00
trace-only-this-file.cmake cmake: Add an option to control what files needs to be traced 2016-06-17 11:46:23 -04:00
trace-source-stderr.txt cmake: Add an option to control what files needs to be traced 2016-06-17 11:46:23 -04:00
trace-source.cmake cmake: Add an option to control what files needs to be traced 2016-06-17 11:46:23 -04:00
trace-stderr.txt Tests: Move more command line tests into RunCMake.CommandLine 2015-04-10 14:56:41 -04:00
trace.cmake Tests: Move more command line tests into RunCMake.CommandLine 2015-04-10 14:56:41 -04:00