summaryrefslogtreecommitdiffstats
path: root/Tests
Commit message (Collapse)AuthorAgeFilesLines
* VS: Add Visual Studio 16 2019 generatorBrad King2019-01-115-9/+11
| | | | | | | | | | | | Add this generator *without* support for specifying the target architecture in the generator name. cmake-gui will be taught to provide a field for this, and command-line builds can use -A. Also, teach this generator to select a default target architecture based on the host architecture. Fixes: #18689 Inspired-by: Egor Pugin <egor.pugin@gmail.com>
* Merge topic 'vs_ce_support'Brad King2019-01-118-44/+110
|\ | | | | | | | | | | | | | | 5e4887e673 VS: Honor WinCE deployment properties in VS 2010+ a4332cac4b Tests: Detect VS and SDK availability early Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2680
| * VS: Honor WinCE deployment properties in VS 2010+Wil Stark2019-01-108-1/+67
| | | | | | | | Previously only VS 2008 was supported.
| * Tests: Detect VS and SDK availability earlyWil Stark2019-01-101-44/+44
| |
* | Tests: Split CPack DEB and RPM tests into smaller testsKyle Edwards2019-01-105-31/+77
| | | | | | | | | | | | | | | | The DEB and RPM tests are quite large, which can result in CTest clients timing out on these tests even though they're working properly. The RPM test in particular causes a lot of timeouts on the CMake dashboard machines. This change splits these tests into smaller tests so that they don't time out.
* | Tests: Add infrastructure to split up large CPack testsKyle Edwards2019-01-102-18/+24
|/ | | | | This allows CPack generator tests to be split into smaller tests of the format "<generator>.<test>".
* Tests: Add cases for ctest --show-only=json-v1Brad King2019-01-103-0/+159
|
* Tests: Pass python interpreter into RunCMake.CTestCommandLineBrad King2019-01-081-1/+2
| | | | This will be useful for adding python-based result checks.
* Merge topic 'fix-warn-uninitialized-in-configure'Craig Scott2019-01-073-4/+69
|\ | | | | | | | | | | | | | | | | | | cbf0c0fce4 cmake: Enable --warn-uninitialized inside string(CONFIGURE) and configure_file 1d32a35c10 cmCommandArgumentParserHelper: use cmMakefile::MaybeWarnUninitialized 67ac4ed1dc cmMakefile: Move uninitialized vars logic into MaybeWarnUninitialized() 5257af3634 cmMakefile: move common logic to IsProjectFile function Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2676
| * cmake: Enable --warn-uninitialized inside string(CONFIGURE) and configure_fileArtur Ryt2018-12-293-4/+69
| | | | | | | | Fixes: #18489
* | Merge topic 'bundle_fixes'Craig Scott2019-01-066-0/+32
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 08be74bfd7 GetPrerequisites: Fix handling of executable scripts 52445300d6 GetPrerequisites: Allow prefixed tools 1bac4678ea GetPrerequisites: Add GET_PREREQUISITES_VERBOSE to set verbose 5072598f07 BundleUtilites: Don't use hardcoded name for install_name_tool 428680da92 GetPrerequisites: Don't use hardcoded name for otool Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2748
| * | GetPrerequisites: Fix handling of executable scriptsAlexander Grund2019-01-046-0/+32
| | | | | | | | | | | | Fixes: #18667
* | | Merge branch 'swig_src_file_ext' into 'master'Marc Chevrier2019-01-045-0/+82
|\ \ \ | |/ / |/| | | | | | | | | | | | | | UseSWIG: Add support for custom Swig source file extensions Closes #18727 See merge request cmake/cmake!2764
| * | SWIG: Add support for custom Swig source file extensionsThirumal Venkat2019-01-035-0/+82
| |/
* | Merge topic 'remove-include-cmakeparsearguments'Craig Scott2018-12-291-1/+1
|\ \ | |/ |/| | | | | | | | | | | 88b40744b5 CMakeParseArguments: Remove superfluous includes of CMakeParseArguments Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Ben Boeckel <ben.boeckel@kitware.com> Merge-request: !2744
| * CMakeParseArguments: Remove superfluous includes of CMakeParseArgumentsKyle Edwards2018-12-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Because cmake_parse_arguments() has been implemented as a native command, there is no need to include(CMakeParseArguments) anymore. Its inclusion has been removed from several CMake modules. Tests/CMakeOnly/CMakeLists.txt has been changed to include the *building* CMake's copy of CMakeParseArguments rather than the *built* CMake's copy. This file included the *built* copy because when this file was introduced, CMake could still be built with versions that didn't supply cmake_parse_arguments(). Now, CMake requires 3.1 or greater, where cmake_parse_arguments() existed but was still in the form of a module, so we include it from the *building* CMake.
* | Merge topic 'link-options'Craig Scott2018-12-233-2/+13
|\ \ | | | | | | | | | | | | | | | | | | f255280fd9 PIE link options: Update strategy to fix performance regression Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2739
| * | PIE link options: Update strategy to fix performance regressionMarc Chevrier2018-12-193-2/+13
| |/ | | | | | | Fixes: #18700
* | Merge topic 'install-code-script-genex'Craig Scott2018-12-239-0/+44
|\ \ | | | | | | | | | | | | | | | | | | 25cae1e85d install: Teach CODE,SCRIPT modes to evaluate generator expressions Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2688
| * | install: Teach CODE,SCRIPT modes to evaluate generator expressionsJon Chronopoulos2018-12-229-0/+44
| | | | | | | | | | | | | | | | | | | | | This also introduces CMP0087 which will keep the OLD behaviour of not evaluating generator expressions Fixes: #15785
* | | Merge topic 'runcmake-test-filter'Craig Scott2018-12-222-0/+15
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | b6eafd5781 Tests: Add RunCMake_TEST_FILTER environment variable Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Artur Ryt <artur.ryt@gmail.com> Merge-request: !2743
| * | | Tests: Add RunCMake_TEST_FILTER environment variableKyle Edwards2018-12-132-0/+15
| | |/ | |/| | | | | | | | | | | | | | | | This environment variable allows developers to locally run only a subset of RunCMake subtests in a single RunCMakeTest.cmake script. If the environment variable is not set, all of the tests in the script are run.
* | | Merge topic 'output-on-failure'Craig Scott2018-12-219-0/+67
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 19d86e26e3 ExternalProject: add LOG_OUTPUT_ON_FAILURE option Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2625
| * | | ExternalProject: add LOG_OUTPUT_ON_FAILURE optionWouter Klouwen2018-12-209-0/+67
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This option only has an effect if at least one of the other LOG_<step> options is enabled. If an error occurs for a step which has logging to file enabled, that step's output will be printed to the console. For cases where a large amount of output is recorded, just the end of that output may be printed to the console.
* | | | Merge topic 'cygwin-install-test-fix'Kyle Edwards2018-12-202-2/+2
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3f915531ad Tests: Fix Cygwin failure on RunCMake.install Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2754
| * | | | Tests: Fix Cygwin failure on RunCMake.installKyle Edwards2018-12-192-2/+2
| | |/ / | |/| |
* | | | Merge branch 'topic-findliblzma' into 'master'Marc Chevrier2018-12-204-0/+43
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | FindLibLZMA: add imported target Closes #18679 and #18680 See merge request cmake/cmake!2730
| * | | FindLibLZMA: add imported targetHiroshi Miura2018-12-134-0/+43
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | - Add imported target LibLZMA::LibLZMA - Show found message with library path - Add test for FindLibLZMA Fixes: #18680, #18679 Signed-off-by: Hiroshi Miura <miurahr@linux.com>
* | | Merge topic 'vs_deploy_content_fix'Brad King2018-12-133-0/+95
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | b5b63da088 VS: Fix Deploy content in .csproj files Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2713
| * | | VS: Fix Deploy content in .csproj filesWil Stark2018-12-073-0/+95
| | | |
* | | | Merge topic 'custom-string'Brad King2018-12-132-0/+1348
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2d68b2c593 String: Add str_if_stable() as a const alternative to str() a0841b59bd String: Add support for a ""_s string literal syntax 9d5fe8e96a String: Add 'borrow' member to construct borrowing instances 80802a002c String: Add support for concatenation by operator+ ff69763ca0 String: Add a custom string type 410a3e4b22 Add support for using C++17 string_view or a fallback Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Daniel Pfeifer <daniel@pfeifer-mail.de> Acked-by: Pavel Solodovnikov <hellyeahdominate@gmail.com> Merge-request: !2578
| * | | | String: Add str_if_stable() as a const alternative to str()Brad King2018-12-121-0/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The `str()` method must be non-const because it may need to internally mutate the representation of the string in order to have an owned `std::string` instance holding the exact string (not a superstring). This is inconvenient in contexts where we can ensure that no mutation is needed to get a `std::string const&`. Add a `str_if_stable() const` method that returns `std::string const*` so we can return `nullptr` if if mutation would be necessary to get a `std::string const&`. Add supporting `is_stable() const` and `stabilize()` methods to check and enforce stable availability of `std::string const&`. These can be used to create `String const` instances from which we can still get a `std::string const&` via `*str_if_stable()` by maintaining the stability invariant at runtime.
| * | | | String: Add support for a ""_s string literal syntaxBrad King2018-12-121-2/+47
| | | | | | | | | | | | | | | | | | | | | | | | | Create a `static_string_view` type that binds only to the static storage of string literals. Teach `cm::String` to borrow from these implicitly.
| * | | | String: Add 'borrow' member to construct borrowing instancesBrad King2018-12-121-0/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This will allow creation of `cm::String` instances that borrow from non-owned storage. It is the caller's responsibility to ensure that no copy of the instance outlives the borrowed buffer.
| * | | | String: Add support for concatenation by operator+Brad King2018-12-121-0/+101
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use expression templates to collect the entire expression and pre-allocate a string with the final length before concatenating the pieces.
| * | | | String: Add a custom string typeBrad King2018-12-122-0/+1111
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Create a `cm::String` type that holds a view of a string buffer and optionally shares ownership of the buffer. Instances can either borrow longer-lived storage (e.g. static storage of string literals) or internally own a `std::string` instance. In the latter case, share ownership with copies and substrings. Allocate a new internal string only on operations that require mutation. This will allow us to recover string sharing semantics that we used to get from C++98 std::string copy-on-write implementations. Such implementations are not allowed by C++11 so code our own in a custom string type instead.
* | | | Merge topic 'fileapi'Brad King2018-12-1377-0/+6475
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b9c6f08276 Help: Add release note for fileapi feature 4b6b2a571c fileapi: extend codemodel v2 with directory details eb8c7676a4 fileapi: extend codemodel v2 with a project model 42f0125ceb fileapi: Add test for cmakeFiles v1 6615408193 fileapi: add cmakeFiles v1 3f6ee75a66 fileapi: Add test for cache v2 7489e95b8e fileapi: add cache v2 ea0a060168 fileapi: Add test for codemodel v2 ... Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2706
| * | | | fileapi: extend codemodel v2 with directory detailsBrad King2018-12-121-0/+26
| | | | | | | | | | | | | | | | | | | | | | | | | Issue: #18398 Co-Author: Kyle Edwards <kyle.edwards@kitware.com>
| * | | | fileapi: extend codemodel v2 with a project modelBrad King2018-12-122-3/+259
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Offer clients a `project()`-centric view of the build system. This is similar to the directory-centric view but consolidates subdirectories that do not call `project()` with a new project name. Issue: #18398 Co-Author: Kyle Edwards <kyle.edwards@kitware.com>
| * | | | fileapi: Add test for cmakeFiles v1Kyle Edwards2018-12-126-1/+89
| | | | |
| * | | | fileapi: add cmakeFiles v1Brad King2018-12-129-0/+56
| | | | | | | | | | | | | | | | | | | | Issue: #18398
| * | | | fileapi: Add test for cache v2Kyle Edwards2018-12-122-2/+134
| | | | |
| * | | | fileapi: add cache v2Brad King2018-12-129-0/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Start with v2 to distinguish it from server-mode v1. Issue: #18398
| * | | | fileapi: Add test for codemodel v2Kyle Edwards2018-12-1215-14/+4927
| | | | |
| * | | | fileapi: add codemodel v2Brad King2018-12-129-0/+67
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Start with v2 to distinguish it from server-mode v1. Issue: #18398
| * | | | fileapi: Add more infrastructure to FileAPI testKyle Edwards2018-12-121-7/+65
| | | | |
| * | | | fileapi: Report cmake generator in reply index fileBrad King2018-12-121-1/+12
| | | | |
| * | | | fileapi: Add protocol v1 support for stateful per-client queriesBrad King2018-12-126-0/+406
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add support for client-owned *stateful* query files. These allow clients to request a list of versions of each object kind and get only the first-listed version that CMake recognizes. Since clients own their stateful query files they can mutate them over time. As a client installation is updated it may update the queries that it writes to build trees to get newer object versions without paying the cost of continuing to generate older versions. Issue: #18398
| * | | | fileapi: Add protocol v1 support for client-specific query filesBrad King2018-12-1217-0/+191
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add support for client-owned stateless query files. These allow clients to *own* requests for major object versions and get all those recognized by CMake. Issue: #18398
| * | | | fileapi: Add protocol v1 infrastructure with support for shared query filesBrad King2018-12-1218-0/+209
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a file-based API that clients may use to get semantic information about the buildsystem that CMake generates. Clients will write query files under a designated location in the build tree, and CMake will write reply files for clients to read. Start with support for shared stateless query files. These allow clients to share requests for major object versions and get all those recognized by CMake. Once any client has written a shared request to a build tree it will persist. Other clients will not need to overwrite the request (since it is stateless) and should not remove it either. For now we add only an undocumented object kind to use for testing the query and reply infrastructure. Object kinds providing real semantic information will be added later. Issue: #18398