| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
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.
|
|
|
|
|
|
| |
Create a <LANG>_CLANG_TIDY target property (initialized by a
CMAKE_<LANG>_CLANG_TIDY variable) to specify a clang-tidy command line
to be run along with the compiler.
|
|\
| |
| |
| |
| |
| |
| |
| | |
ad140c6e VS: Put ALL_BUILD in the PREDEFINED_TARGETS_FOLDER
f069be05 VS: Fix default target support for targets nested inside a folder
c05ea485 VS: Improve unit test macros
78ec0461 VS: Add option to choose the `.sln` startup project (#15578)
|
| |
| |
| |
| |
| | |
It's not actually the first target in a `.sln` file that is treated as
the default startup project, but rather the first fully defined target.
|
|\ \
| |/
|/|
| |
| |
| | |
de7afd29 Help: Add notes for topic 'timeout_after_match'
993e48d0 CTest: Optionally use a secondary test timeout after matching output
|
| |
| |
| |
| |
| |
| | |
Allow a test N seconds to complete after we detect a matching line in
its output. Activate this behavior with a new TIMEOUT_AFTER_MATCH test
property.
|
|/
|
|
| |
The test will be suitable for covering other `.sln` content too.
|
|
|
|
|
|
| |
This generator has been deprecated since CMake 3.3. Remove it.
Update documentation, modules, and tests to drop content specific
to this generator.
|
|
|
|
|
|
|
| |
Calling `project()` or `enable_language()` from a toolchain file will
infinitely recurse since those commands load the toolchain file.
Diagnose and reject this case with an error message instead of crashing
when the stack eventually overflows.
|
|
|
|
|
|
| |
Add a VS_CONFIGURATION_TYPE target property to set this value
explicitly. This is useful to build a Windows Kernel Mode Driver,
for example.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
This new policy restricts the addition of the shared library link flags
to executables only when the ENABLE_EXPORTS property is set to True.
|
|
|
|
|
| |
This will allow more granular checks than the main BuildDepends test.
Start with a simple single-source C program.
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| | |
8ea7611b find_program: Optionally consider all names in each directory
fc1990c9 cmFindProgramCommand: Re-implement search using more flexible approach
fdbfc9f6 Tests: Add explicit testing for find_program
907a919b cmSystemTools: Drop unused StringEndsWith method
ed4de3c9 cmFindProgramCommand: Use Names member instead of passing it
bf32b95e cmFindLibraryCommand: Avoid repeating search for the same name
|
| |
| |
| |
| |
| |
| | |
Previously this command was tested only implicitly as part of larger
tests. Add a RunCMake.find_program test to cover find_program cases
specifically and independently.
|
|\ \
| |/
|/|
| |
| | |
18d7f8fb Tests: Move LINK_SEARCH_{START,END}_STATIC case to dedicated test
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The test case added to RunCMake.set_property by commit 675ef165 (Allow
LINK_SEARCH_{START,END}_STATIC props to have default values, 2015-08-07)
is not a test of the set_property command and so belongs in its own test
case. Create a new RunCMake.LinkStatic test to cover cases related to
static linking.
While at it, simplify the LINK_SEARCH_STATIC test case to enable only C.
|
|/
|
|
|
|
|
|
| |
CPackConfig.cmake file generation from CMake test suite.
Currently it contains only a simple test without special
characters in variable value.
Test is not part of RunCMake/CPack as those tests are
expected to be run for a specified generator.
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
757a1f54 cmState: Move PolicyState from cmMakefile.
52dbe654 cmState: Record the end position of each directory.
65a5e0c6 cmLinkedTree: Add Clear API.
34835433 cmState: Add Type for policy scope.
af0de01c cmState: Remove call stack parent tracking.
6ae8b30b cmMakefile: Move policy barriers inside cmState scopes.
a5fc17b5 cmMakefile: Re-order policy entries and barriers.
0a01e6c6 cmState: Add Snapshot Type accessor.
f0005bb4 Tests: Verify generate-time policy scope behavior.
|
| |
| |
| |
| |
| | |
If some day there are no policies checked through the makefile at generate time,
this can be fixed.
|
|\ \
| | |
| | |
| | |
| | | |
c4d2f64f add_subdirectory: Fix error message on missing CMakeLists.txt (#15680)
|
| | |
| | |
| | |
| | |
| | |
| | | |
Refactoring in commit v3.3.0-rc1~76^2 (cmMakefile: Handle CMP0014 before
configuring the generator, 2015-05-14) accidentally left the file name
"/CMakeLists.txt" in the error message. Remove it and add a test case.
|
| |/
|/|
| |
| |
| |
| |
| |
| | |
if(TEST TestNameThatExists) will return true if a test with the name
TestNameThatExists has been added with add_test. The syntax is similar
to if(TARGET TargetName). Since use of "TEST" as an argument to if()
could previously be interpreted as a non-keyword argument, add policy
CMP0064 to treat it as a keyword as NEW behavior.
|
| | |
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
f0cad193 Tests: Add test for TARGET_MESSAGES global property
1d398478 Makefile: Optionally disable target completion messages in build output
d560b46f CMakeGenericSystem: Recognize Watcom WMake generator as Makefile generator
|
| | | |
|
|/ /
| |
| |
| |
| |
| |
| | |
Move failure cases from the CMake.{If,List,While,GetProperty} tests over
to the RunCMake.{if,list,while,get_property} tests to use the more
modern infrastructure. This also avoids using REGEX_ESCAPE_STRING to
try to regex-match full paths.
|
|\ \
| |/
| |
| |
| | |
7aa9e80e set_property: Fix crash when setting LINK_LIBRARIES to nothing
|
| |
| |
| |
| |
| |
| |
| |
| | |
We use a special dedicated structure to store the LINK_LIBRARIES target
property. Do not try to construct a string from a NULL value. Instead
leave the property structure empty when no value is given.
Reported-by: Ghyslain Leclerc <ghleclerc@gmail.com>
|
|\ \
| | |
| | |
| | |
| | | |
bf112531 Add rudimentary support for the Apple Swift language with Xcode
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Allow the `Swift` language to be enabled with the Xcode generator for
Xcode >= 6.1. Reject it on other generators and with older Xcode
versions. Since Apple is the only vendor implementing the language
right now, the compiler id can be just `Apple`.
|
|/ /
| |
| |
| |
| |
| |
| | |
Create target property WINDOWS_EXPORT_ALL_SYMBOLS to automatically
generate a module definition file from MS-compatible .obj files and give
it to the linker in order to export all symbols from the .dll part of a
SHARED library.
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
8bcec4d2 Help: Add notes for topic 'GNUInstallDirs-special-prefixes'
c8bd37ec GNUInstallDirs: Add special cases for certain prefixes
5f30f175 GNUInstallDirs: Add test cases
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add a RunCMake.GNUInstallDirs test with cases covering various install
prefixes. Hard-code the architecture information. Tolerate all
platform-specific LIBDIR values.
Currently the root prefix is not handled well, but verify the current
behavior in the test anyway. This can be addressed with a future
change.
Inspired-by: Alex Turbov <i.zaufi@gmail.com>
|
|\ \
| | |
| | |
| | |
| | |
| | | |
5f61ed99 Tests: Move RunCMake.CPackRPM case into RunCMake.CPack_RPM test
e726fc02 Tests: Add RunCMake tests for CPack{Deb,RPM}
|
| | |
| | |
| | |
| | |
| | |
| | | |
Move PARTIALLY_RELOCATABLE_WARNING test to the new common CPack test
script structure to have all tests in one place as well as additional
benefit of having some more checks done during test execution.
|
| |/
| |
| |
| | |
Add script structure for easier addition of new CPack related tests.
|
|/
|
|
|
|
|
|
|
|
|
|
|
| |
Create a <LANG>_COMPILER_LAUNCHER target property (initialized by a
CMAKE_<LANG>_COMPILER_LAUNCHER variable) to specify a compiler launcher
tool. This will supersede the CMAKE_<LANG>_COMPILER_ARG1 approach to
using such tools. The old approach set CMAKE_<LANG>_COMPILER to the
launcher tool while the new approach leaves this variable set to the
actual compiler.
Implement this property for Makefile and Ninja generators. It cannot be
implemented for VS or Xcode generators as the IDE build tools offer no
such hooks.
|
|
|
|
|
|
|
|
| |
Enable languages only in the individual test case. Enable the test
everywhere except Visual Studio generators (which do not implement the
properties) and just set fake flags as needed to activate relevant code
paths. Drop unneeded CMAKE_SUPPRESS_REGENERATION which seems to have
been copied from an unrelated test when this test was created.
|
|
|
|
|
|
| |
Create a <LANG>_INCLUDE_WHAT_YOU_USE target property (initialized by a
CMAKE_<LANG>_INCLUDE_WHAT_YOU_USE variable) to specify an IWYU command
line to be run along with the compiler.
|
|
|
|
|
|
|
| |
Use the KWSys Process "MergeOutput" option to give the child process
the same pipe (or file) for both stdout and stderr. This allows
natural merging of stdout and stderr together instead of merging
on arbitrary buffered read boundaries as before.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit 242c3966 (add_custom_command: Diagnose
MAIN_DEPENDENCY limitation, 2015-03-09) and the follow up commit
b372a99a (UseSWIG: Do not use MAIN_DEPENDENCY on custom commands,
2015-03-26).
I misdiagnosed the underlying issue that prompted creation of policy CMP0057.
The actual issue surfaces when a single custom command's MAIN_DEPENDENCY
is listed in more than one target; this issue will have to be addressed
independently.
|
|\
| |
| |
| |
| | |
c9e9c31c Tests: Create pseudo_emulator output dir for Xcode 2.x
|
| |
| |
| |
| |
| | |
Apply the workardound from commit v2.8.2~598 (Create CMakeLibTests
output dir for Xcode, 2009-12-09) to the pseudo_emulator tool.
|
| | |
|
|\ \
| |/
|/|
| |
| |
| |
| | |
882f48e5 Link libraries by full path even in implicit directories
318cd370 Help: Add link target for Find Modules section of cmake-developer.7
1535dcd8 Tests: Teach RunCMake to optionally merge command output to stdout
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When CMP0003 was first introduced we wanted to link all libraries by
full path. However, some projects had problems on platforms where
find_library would find /usr/lib/libfoo.so when the project really
wanted to link to /usr/lib/<arch>/libfoo.so and had been working by
accident because pre-CMP0003 behavior used -lfoo to link.
We first tried to address that in commit v2.6.0~440 (Teach find_library
to avoid returning library paths in system directories, 2008-01-23) by
returning just "foo" for libraries in implicit link directories. This
caused problems for projects expecting find_library to always return a
full path. We ended up using the solution in commit v2.6.0~366 (...
switch library paths found in implicit link directories to use -l,
2008-01-31). However, the special case for libraries in implicit link
directories has also proven problematic and confusing.
Introduce policy CMP0060 to switch to linking all libraries by full path
even if they are in implicit link directories. Explain in the policy
documentation the factors that led to the original approach and now to
this approach.
|