summaryrefslogtreecommitdiffstats
path: root/Tests/RunCMake
Commit message (Collapse)AuthorAgeFilesLines
* FindBoost: Fix and modernize config mode with FPHSADennis Klein2019-05-072-3/+3
| | | | Fixes: #19186
* Merge topic 'std-pipes-always'Brad King2019-05-031-0/+4
|\ | | | | | | | | | | | | | | c85524a94a Ensure stdin, stdout, and stderr pipes are always open Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Kyle Edwards <kyle.edwards@kitware.com> Merge-request: !3282
| * Ensure stdin, stdout, and stderr pipes are always openBrad King2019-05-021-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | On non-Windows platforms libuv assumes that file descriptors 0-2 are always used for standard pipes and never for anything else. Otherwise, libuv may re-use one of these descriptors and then fail an assertion when closing it. Similarly, On Windows platforms our ConsoleBuf implementation assumes that the standard handles are always open. If CMake is run with any standard pipes closed, open them with `/dev/null` or `NUL` to satisfy these assumptions. Fixes: #19219
* | Merge topic 'jobs-positive-value'Brad King2019-05-039-0/+24
|\ \ | | | | | | | | | | | | | | | | | | 6ad699358b cmake: --build -j <jobs> should not accept 0. Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3255
| * | cmake: --build -j <jobs> should not accept 0.Fred Baksik2019-05-019-0/+24
| | | | | | | | | | | | Fixes #19059
* | | Genex: Update $<TARGET_FILE_BASE_NAME:...>: take care of POSTFIXMarc Chevrier2019-05-023-5/+71
| |/ |/| | | | | | | This capability complement MR !3190 and !3207 and is also needed to solve issue #18771.
* | Merge topic 'message-new-types-and-logging'Craig Scott2019-04-3016-0/+146
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | 599587feb1 message(): Minor code modernization 6cc93b370e message(): Add support for log levels 377d1b7896 cmSystemTools: Remove unused message-related code, simplify logic Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Brad King <brad.king@kitware.com> Merge-request: !3268
| * | message(): Add support for log levelsAlex Turbov2019-04-2816-0/+146
| | | | | | | | | | | | | | | Relates: #18943 Co-Authored-By: Craig Scott <craig.scott@crascit.com>
* | | Merge topic 'relax_TARGET_OBJECT_generator_expr'Brad King2019-04-309-15/+69
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | ce078dda79 Relax the usage of TARGET_OBJECTS generator expression Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3178
| * | | Relax the usage of TARGET_OBJECTS generator expressionRobert Maynard2019-04-199-15/+69
| | | | | | | | | | | | | | | | | | | | The geneator expression can now be used with static, shared, and module libraries and executables.
* | | | Merge topic 'add-execute_process-command-echo'Brad King2019-04-3010-0/+88
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 044dcf9f8d execute_process: Add option to echo command lines d350fb6889 execute_process: Manage KWSys Process lifetime with unique_ptr Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3165
| * | | | execute_process: Add option to echo command linesBill Hoffman2019-04-1910-0/+88
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add COMMAND_ECHO option to the execute_process command. This will allow execute_process to show the command it will run. Also add a cmake variable CMAKE_EXECUTE_PROCESS_COMMAND_ECHO. Both the option and the variable can be set to one of the following: STDERR|STDOUT|NONE. The command will be printed to stderr or stdout or not at all. Fixes: #18933
* | | | | Merge topic 'msvc-runtime-library'Brad King2019-04-302-1/+7
|\ \ \ \ \ | |_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | 61f70e81a7 MSVC: Document and test behavior of empty MSVC_RUNTIME_LIBRARY Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3249
| * | | | MSVC: Document and test behavior of empty MSVC_RUNTIME_LIBRARYBrad King2019-04-222-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Extend tests added by commit fb3370b6a1 (MSVC: Add abstraction for runtime library selection, 2019-04-10) to cover an empty value for the property. It should result in no specific setting. Issue: #19108
* | | | | ctest: Include ChangeId in Update.xmlZack Galbreath2019-04-235-0/+50
| |_|_|/ |/| | |
* | | | Merge topic 'msvc-warning-flags'Brad King2019-04-227-0/+27
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1baf122cd4 MSVC: Do not add /W3 to CMAKE_<LANG>_FLAGS by default Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3250
| * | | | MSVC: Do not add /W3 to CMAKE_<LANG>_FLAGS by defaultBrad King2019-04-197-0/+27
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We do not add default warning flags on other compilers, and having a warning flag in the default flags makes it hard for projects to customize the warning level. They need to use string processing to remove `/W3` from `CMAKE_{C,CXX}_FLAGS`. Therefore we should drop it. However, projects may be using string processing to replace `/W3` with another flag, so we cannot simply drop it. Add a policy to drop it in a compatible way. Fixes: #18317
* | | | Merge topic 'vs-default-platform'Brad King2019-04-222-0/+2
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | db02be85a0 VS: Provide the default platform name to project code Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3246
| * | | VS: Provide the default platform name to project codeBrad King2019-04-192-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The value of `CMAKE_VS_PLATFORM_NAME` is computed by Visual Studio generators based on `CMAKE_GENERATOR_PLATFORM` or some default. Prior to the VS 2019 generator, the default was always `Win32`. However, for the `Visual Studio 16 2019` generator, the default is based on the host platform. Store the default in a new `CMAKE_VS_PLATFORM_NAME_DEFAULT` variable for use by project code. This is particularly useful in toolchain files because they are allowed to set `CMAKE_GENERATOR_PLATFORM` and so `CMAKE_VS_PLATFORM_NAME` is not yet known. Of course the toolchain file author knows whether it will set `CMAKE_GENERATOR_PLATFORM`, and if not then `CMAKE_VS_PLATFORM_NAME_DEFAULT` provides the platform name that will be used. Fixes: #19177
* | | | Merge topic 'msvc-runtime-library'Brad King2019-04-1715-0/+108
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fb3370b6a1 MSVC: Add abstraction for runtime library selection f621e7fa5d VS: Fix Fortran runtime library flag map special case for '-' options Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Ben Boeckel <ben.boeckel@kitware.com> Acked-by: Leonid Pospelov <pospelovlm@yandex.ru> Merge-request: !3211
| * | | | MSVC: Add abstraction for runtime library selectionBrad King2019-04-1715-0/+108
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Replace our hard-coded defaults for `/MD` and `/MDd` with a first-class abstraction to select the runtime library from an enumeration of logical names. We've long hesitated to do this because the idea of "runtime library selection" touches on related concepts on several platforms. Avoid that scope creep by simply defining an abstraction that applies only when targeting the MSVC ABI on Windows. Removing the old default flags requires a policy because existing projects may rely on string processing to edit them and choose a runtime library under the old behavior. Add policy CMP0091 to provide compatibility. Fixes: #19108
* | | | | Merge topic 'vs-project-import'Brad King2019-04-163-0/+40
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | d145d72e70 VS: add target property VS_PROJECT_IMPORT_<propspath> Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3143
| * | | | | VS: add target property VS_PROJECT_IMPORT_<propspath>Leonid Pospelov2019-04-153-0/+40
| | | | | | | | | | | | | | | | | | | | | | | | Fixes: #18998
* | | | | | Merge topic 'genex-output_name'Brad King2019-04-1633-176/+176
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 60ec292258 Genex: Rename $<TARGET_*_OUTPUT_NAME:...> in $<TARGET_*_FILE_BASE_NAME:...> Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3228
| * | | | | | Genex: Rename $<TARGET_*_OUTPUT_NAME:...> in $<TARGET_*_FILE_BASE_NAME:...>Marc Chevrier2019-04-1533-176/+176
| | | | | | |
* | | | | | | Merge topic 'string-repeat'Brad King2019-04-168-0/+61
|\ \ \ \ \ \ \ | |/ / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 536cca60ea string: introduce `REPEAT` sub-command Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3239
| * | | | | | string: introduce `REPEAT` sub-commandAlex Turbov2019-04-158-0/+61
| | | | | | |
* | | | | | | Merge topic 'genex-target-prefix-suffix'Brad King2019-04-1225-6/+270
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b70bac647d Genex: add $<TARGET_FILE_PREFIX:...> and $<TARGET_FILE_SUFFIX:...> f65763fe9b Refactor: Add new methods to retrieve prefix and suffix Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3207
| * | | | | | | Genex: add $<TARGET_FILE_PREFIX:...> and $<TARGET_FILE_SUFFIX:...>Marc Chevrier2019-04-1025-6/+270
| | |_|/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | These capabilities complement MR !3190 and is also needed to solve issue #18771.
* | | | | | | Merge topic 'iface-headers'Brad King2019-04-124-0/+29
|\ \ \ \ \ \ \ | |_|/ / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a40f9083dd INTERFACE Target: allow (PUBLIC/PRIVATE)_HEADER properties Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3181
| * | | | | | INTERFACE Target: allow (PUBLIC/PRIVATE)_HEADER propertiesAvraham Shukron2019-04-114-0/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also support installing headers on an INTERFACE library. Signed-off-by: Avraham Shukron <avraham.shukron@gmail.com> Fixes: #15234
* | | | | | | Merge topic 'test-explicit-dirs'Brad King2019-04-113-13/+29
|\ \ \ \ \ \ \ | |_|/ / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 39e7fd8c68 Tests: Avoid enabling languages in RunCMake.CommandLine -S and -B cases baed22c4b0 Tests: Fix RunCMake.CommandLine test to use generator with -S and -B 44d6370db3 Tests: Add RunCMake helper to run cmake with options 538721939f Tests: Teach RunCMake to optionally exclude the source dir argument Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3209
| * | | | | | Tests: Avoid enabling languages in RunCMake.CommandLine -S and -B casesBrad King2019-04-101-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The test project does not compile any sources and so does not need to enable any languages.
| * | | | | | Tests: Fix RunCMake.CommandLine test to use generator with -S and -BBrad King2019-04-101-11/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The `-S` and `-B` command-line option tests do generate build systems and so should use the generator being tested.
| * | | | | | Tests: Add RunCMake helper to run cmake with optionsBrad King2019-04-101-0/+5
| | | | | | |
| * | | | | | Tests: Teach RunCMake to optionally exclude the source dir argumentBrad King2019-04-101-1/+7
| | |_|_|/ / | |/| | | |
* | | | | | Merge topic 'meta-feature_only_infer_granular_support'Brad King2019-04-107-0/+64
|\ \ \ \ \ \ | |/ / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 613ac56e50 Add a test to verify meta-feature parity with granular features b0f46c48f6 CompileFeatures: Now able to presume full language level support 646fb1a646 CompileFeatures: memoize C++ compilers with full language level support 0d641fcfad Tests: Remove outdated portion of CompileFeatures genex test Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3176
| * | | | | Add a test to verify meta-feature parity with granular featuresRobert Maynard2019-04-097-0/+64
| | |_|_|/ | |/| | |
* | | | | Merge topic 'argument-parser'Brad King2019-04-092-3/+2
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b783e62533 cmExecuteProcessCommand: Port to cmArgumentParser 9bddb03f31 cmParseArgumentsCommand: Port to cmArgumentParser 45edf1ad66 Retire cmCommandArgumentsHelper f5acecaa6f cmExportCommand: Port to cmArgumentParser e6b6bb0618 cmInstallCommand: Port to cmArgumentParser 4336a29edd cmFileCommand: Port to cmArgumentParser 4359fe133b Introduce cmArgumentParser Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Leonid Pospelov <pospelovlm@yandex.ru> Merge-request: !3137
| * | | | | cmExportCommand: Port to cmArgumentParserRegina Pfeifer2019-04-042-3/+2
| | | | | |
* | | | | | Merge topic 'implicit-includes-relative'Brad King2019-04-0925-20/+65
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 442f4c4902 Merge branch 'backport-implicit-includes-relative' ef41d49812 Fix implicit include directory extraction for adaptive relative paths 6bc6fc2a7f Tests: Teach RunCMake.ParseImplicitIncludeInfo to match output by regex 82948805ec Tests: Clarify hand-written cases in RunCMake.ParseImplicitIncludeInfo Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3204
| * \ \ \ \ \ Merge branch 'backport-implicit-includes-relative'Brad King2019-04-0825-20/+65
| |\ \ \ \ \ \ | | |_|_|/ / / | |/| | | | / | | | |_|_|/ | | |/| | |
| | * | | | Fix implicit include directory extraction for adaptive relative pathsBrad King2019-04-085-0/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In some cases GCC reports *relative* implicit include directories. They are computed adaptively with respect to the current working directory such that the effective implicit include directory is an unchanging absolute path. Teach our implicit include directory extraction to recognize such paths and normalize them. Fixes: #19133
| | * | | | Tests: Teach RunCMake.ParseImplicitIncludeInfo to match output by regexBrad King2019-04-0816-17/+17
| | | | | |
| | * | | | Tests: Clarify hand-written cases in RunCMake.ParseImplicitIncludeInfoBrad King2019-04-085-2/+2
| | | | | |
| | * | | | Merge branch 'implicit-includes' into release-3.14Brad King2019-03-2916-70/+78
| | |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | Merge-request: !3157
* | | | | | | Genex: Add $<FILTER:list,INCLUDE|EXCLUDE,regex>Sebastian Lipponer2019-04-0810-0/+45
|/ / / / / /
* | | | | | Genex: Add capability to retrieve base name for various target artifactsMarc Chevrier2019-04-0825-1/+306
| |_|/ / / |/| | | | | | | | | | | | | | This new capability is required to solve efficiently issue #18771
* | | | | Merge topic 'remove_duplicates'Brad King2019-04-0411-0/+50
|\ \ \ \ \ | |_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | abbb8a7b1d Genex: Add $<REMOVE_DUPLICATES:list> 11338389e5 Help: Fix description in cmake-generator-expressions(7) manual Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3154
| * | | | Genex: Add $<REMOVE_DUPLICATES:list>Sebastian Lipponer2019-04-0111-0/+50
| | | | |