summaryrefslogtreecommitdiffstats
path: root/Tests/RunCMake/Configure
Commit message (Collapse)AuthorAgeFilesLines
* Tests/RunCMake: Update cmake_minimum_required versionsBrad King2020-06-181-1/+1
| | | | Use 3.3 or 2.8.12 where possible.
* Generator: Don't allow Ninja Multi-Config variables on other generatorsKyle Edwards2020-02-2710-0/+45
| | | | | | We may want to enable these variables later on with specific semantics. To avoid breaking backwards compatibility, make it an error to use them for now.
* VS: Fix access violation when calling Visual Studio macroDaniel Eiband2019-09-246-0/+27
| | | | Fixes: #19730
* Tolerate removed/replaced CMakeCache.txt with old CMakeFiles/Brad King2016-11-173-0/+27
| | | | | | | | | | | Users or scripts commonly remove or replace `CMakeCache.txt` without also removing `CMakeFiles/`. In this case the information saved in the cache from platform information initialization is missing, so we need to re-initialize it. In such a case, remove the platform information directory so that re-initialization will occur and restore needed information to the cache. Closes: #14820
* cmMakefile: Restore nested error logic use of cmExecutionStatusBrad King2016-09-065-0/+45
| | | | | | | | | | | | | | Since commit 14a8d61f (cmMakefile: Port nested error logic away from cmExecutionStatus) we fail to continue processing function and macro bodies after non-fatal errors. A non-fatal error should not stop foreach loops, macro bodies, nested bodies, or the outer script. Add a test covering these cases, and revert the change to fix them. Also revert commit 2af853de (cmMakefile: Simplify IssueMessage implementation) because the assertion it added (which was removed by the above commit and is restored by reverting it) is incorrect. We do have code paths that call cmMakefile::IssueMessage with an empty execution stack, such as in CheckForUnusedVariables's LogUnused call.
* cmTarget: Do not mistake a preceding error for a CMP0049 failureBrad King2014-07-304-0/+14
| | | | | | | | | After calls to ProcessSourceItemCMP0049, check for an empty return string to detect a failure instead of trusting GetErrorOccuredFlag. The latter could have been left from a preceding non-fatal error. Extend the RunCMake.Configure test to cover a case that exposed this problem.
* Features: Extend concept to C language.Stephen Kelly2014-05-141-1/+1
| | | | | | | | | | | Add properties and variables corresponding to CXX equivalents. Add features for c_function_prototypes (C90), c_restrict (C99), c_variadic_macros (C99) and c_static_assert (C11). This feature set can be extended later. Add a <PREFIX>_RESTRICT symbol define to WriteCompilerDetectionHeader to conditionally represent the c_restrict feature.
* Allow projects to specify extra inputs to CMakeBrad King2014-01-215-0/+27
| | | | | | | Define a new 'CMAKE_CONFIGURE_DEPENDS' directory property that projects can use to specify input files to the CMake configuration process. Extend the RunCMake.Configure test to verify that the build system re-runs CMake when this input changes.
* Add test case to verify CMake does not re-run on first buildBrad King2014-01-213-0/+23
| | | | | | Extend the RunCMake.Configure with a case to verify that the CMake configuration process does not immediately re-run the first time that the generated build system is invoked.
* Merge topic 'fix-RunCMake.Configure-FailCopyFileABI-newlines'Brad King2013-08-261-1/+2
|\ | | | | | | | | 2dce48f Fix RunCMake.Configure test expectation newline matching
| * Fix RunCMake.Configure test expectation newline matchingBrad King2013-08-161-1/+2
| | | | | | | | | | Teach FailCopyFileABI-check.cmake to convert CRLF to LF in the regular expression read literally from its own source.
* | Cygwin: Avoid legacy warnings in RunCMake.* testsBrad King2013-08-131-1/+1
|/ | | | | | Set the minimum required version of CMake high enough to avoid the warning for CMAKE_LEGACY_CYGWIN_WIN32. The warning appears on stderr and breaks the expected output matching.
* Teach compiler ABI check to tolerate try_compile COPY_FILE failureBrad King2013-07-175-0/+26
| | | | | | | | | | | | | | | | | In CMakeDetermineCompilerABI we use try_compile with the COPY_FILE option to get a copy of the compiled binary used to detect the ABI information. We already tolerate the case when compilation fails. However, when compilation appears to succeed but does not produce the expected executable the try_compile command immediately reports an error because the COPY_FILE fails. Tolerate COPY_FILE failure without stopping the overall configuration process by using the try_compile COPY_FILE_ERROR option to capture the error message. Log the full error to CMakeError.log and simply report failure to detect the ABI as if compilation had failed. Teach the RunCMake.Configure test to cover this case and verify that the messages show up as expected both in stdout and in CMakeError.log.
* cmake: On configure error suggest looking at CMake*.log filesBrad King2013-07-096-0/+17
When CMake reports failure to configure a project, especially when the toolchain does not initialize properly, the true reason may be clear from reading the CMakeFiles/CMake(Output|Error).log files. Advise users to look at these files if they exist when configuration fails. Add RunCMake.Configure test to check that the log files are mentioned when configuration fails.