summaryrefslogtreecommitdiffstats
path: root/Tests/RunCMake/CrosscompilingEmulator
Commit message (Collapse)AuthorAgeFilesLines
* Add genex support to TEST_LAUNCHER and CROSSCOMPILING_EMULATORBrad King2024-01-2910-24/+76
| | | | | | | | Evaluate generator expressions in these properties, as they apply to `add_test`, `add_custom_command`, and `add_custom_target`. The `CMAKE_CROSSCOMPILING_EMULATOR` variable's `try_run` behavior occurs at configure time and so cannot support generator expressions.
* Tests: Improve RunCMake.CrosscompilingEmulator coverageBrad King2024-01-276-5/+172
| | | | Verify that ctest actually runs the test command lines as expected.
* Tests: Improve RunCMake.CrosscompilingEmulator error formattingBrad King2024-01-275-24/+45
|
* Tests: Shorten RunCMake.CrosscompilingEmulator executable namesBrad King2024-01-2715-44/+58
| | | | Also switch to pure C.
* Tests: Teach pseudo_emulator helper to pass by defaultBrad King2024-01-271-0/+2
|
* add_test: Honor CROSSCOMPILING_EMULATOR only when cross-compilingRalf Habacker2023-12-195-0/+108
| | | | | | Add policy CMP0158 to provide compatibility for existing projects. Fixes: #23672
* add_test: Optionally use a launcher for tests running in-project targetsRalf Habacker2023-12-132-0/+10
| | | | | | | Add a `CMAKE_TEST_LAUNCHER` variable and corresponding `TEST_LAUNCHER` target property. Issue: #23672
* CrossCompiling: Load CMAKE_CROSSCOMPILING_EMULATOR from environmentMatt McCormick2023-06-133-0/+16
| | | | | | | | | | | Read `CMAKE_CROSSCOMPILING_EMULATOR` from an environment variable of the same name if not specified with `-D` or an initial cache value. Along with existing environment variable settings such as `CMAKE_TOOLCHAIN_FILE`, cross compilation configuration can be more completely set via environment variables. Suggested-by: Henry Schreiner <henryschreineriii@gmail.com>
* Tests/RunCMake: Update cmake_minimum_required versionsBrad King2023-02-111-1/+1
| | | | | | | | For policy-specific tests, use the version before the policy was introduced. Otherwise, use 3.5 where possible. Also, remove `cmake_minimum_required()` and `project()` calls from individual cases where they are handled by `CMakeLists.txt`.
* add_test: Revert "Allow special characters in test name"Brad King2020-07-271-5/+5
| | | | | | | | | | | | Revert commit f84af8e270 (add_test: Allow special characters in test name, 2020-05-16, v3.18.0-rc1~142^2). Unfortunately the fix breaks projects that were working around the limitation with manual escaping. The fix can be re-introduced with a policy in a future version. Also add a 3.18.1 release note explaining the change. Fixes: #21017, #20965 Issue: #19391
* add_test: Allow special characters in test nameDeniz Bahadir2020-05-171-5/+5
| | | | Fixes: #19391
* Fix allocation in CROSSCOMPILING_EMULATOR evaluationMarek Antoniak2019-07-231-0/+3
| | | | | | | | | | | | In commit fec441ec17 (Teach CROSSCOMPILING_EMULATOR to support arguments, 2019-05-30, v3.15.0-rc1~6^2) the new member `cmCustomCommandGenerator::EmulatorsWithArguments` was not initialized to the proper size. Fix this and add a test case covering the crash that could occur with multiple commands where an emulator appears only in a later command. Fixes: #19500 Co-Author: Brad King <brad.king@kitware.com>
* Teach CROSSCOMPILING_EMULATOR to support argumentsMarek Antoniak2019-06-035-2/+34
| | | | Fixes: #19321
* CROSSCOMPILING_EMULATOR: Fix test generation for empty valueKyle Edwards2019-01-211-0/+6
| | | | | | | | If CROSSCOMPILING_EMULATOR was set to an empty string, and a test was generated with the executable as the command, CMake would segfault upon trying to generate the test file. Fix this. Fixes: #18819
* Tests: Check that CROSSCOMPILING_EMULATOR is not used on imported targetsBrad King2016-10-284-6/+40
|
* Revise C++ coding style using clang-formatKitware Robot2016-05-162-2/+2
| | | | | | | | | | | | | Run the `Utilities/Scripts/clang-format.bash` script to update all our C++ code to a new style defined by `.clang-format`. Use `clang-format` version 3.8. * If you reached this commit for a line in `git blame`, re-run the blame operation starting at the parent of this commit to see older history for the content. * See the parent commit for instructions to rebase a change across this style transition commit.
* CustomCommandGenerator: Add support for CROSSCOMPILING_EMULATORJean-Christophe Fillion-Robin2016-05-096-0/+93
| | | | | | Teach the `add_custom_command` and `add_custom_target' commands to substitute argv0 with the crosscompiling emulator if it is a target with the `CROSSCOMPILING_EMULATOR` property set.
* Tests: Improve source file name in RunCMake.CrosscompilingEmulatorJean-Christophe Fillion-Robin2016-05-035-7/+9
| | | | | The test executable returns with an error, so indicate this in the source name.
* Tests: Cover genex behavior in CROSSCOMPILING_EMULATOR test caseJean-Christophe Fillion-Robin2016-05-033-4/+35
| | | | | | | | A `$<TARGET_FILE:tgt>` generator expression does not cause insertion of the emulator. Add a test covering this. While at it, extend the test case to cover executables in a subdirectory. Also make the test matching expressions more robust to support multiple add_test calls without mixing them while matching.
* TestGenerator: Add CROSSCOMPILING_EMULATOR support.Matt McCormick2015-04-084-0/+22
| | | | | | Prefix test commands with the CROSSCOMPILING_EMULATOR property for target executables. This allows test suites to be run on the host when crosscompiling.
* try_run: Use CMAKE_CROSSCOMPILING_EMULATOR.Matt McCormick2015-04-084-1/+21
| | | | | | | If the CMAKE_CROSSCOMPILING_EMULATOR variable is defined, and CMAKE_CROSSCOMPILING is TRUE, then use CMAKE_CROSSCOMPILING_EMULATOR to run the try_run executables. This prevents the need to populate TryRunResults.cmake when cross compiling.
* Properties: Add CROSSCOMPILING_EMULATOR target property.Matt McCormick2015-04-074-0/+41
Add CROSSCOMPILING_EMULATOR target property for executables. This is used by subsequent patches to run exectuables created for the target system when crosscompiling. The property is initialized by the CMAKE_CROSSCOMPILING_EMULATOR variable when defined.