| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| |
| |
| | |
66c70cd9 cmake_parse_arguments: Add additional unit tests
41291b20 cmake_parse_arguments: Fix PARSE_ARGV multi-value argument handling
|
| |
| |
| |
| | |
Add additional unit tests for some corner cases in argument splitting.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The `PARSE_ARGV` mode was recently added to help functions properly
parse their arguments even when those arguments may be quoted and
contain literal `;` in their values. Fix the implementation to encode
`;`s in reported multi-value arguments and in `UNPARSED_ARGUMENTS` so
that `;`s in the individual values are preserved in the lists. This
allows clients to access all their argument values correctly.
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
71a50587 server-mode: Add project data for unit tests
7b1e60f2 server-mode: Report CMakeCache entries
84553a6e server-mode: Add command to retrieve build system files
ead71873 server-mode: Report information relevant for a codemodel
|
| |/
| |
| |
| |
| |
| |
| |
| |
| | |
Do some basic unit tests for "codemodel", "cmakeInputs" and "cache"
commands of the cmake server.
This just calls the commands right now and makes sure the server
thinks it can reply to the request. The data itself is currently not
validated.
|
|\ \
| | |
| | |
| | |
| | |
| | | |
9c5238df project: Fix support for explicit RC language
40c04821 Tests: Decide earlier whether to test resources
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The check added in commit v3.6.0-rc1~293^2 (Diagnose recursive
project/enable_language without crashing, 2016-03-07) broke support for
enabling `RC` explicitly along with other languages like `C`. The
reason is that we enable all listed languages at once so the internal
`enable_language(RC)` that we do while enabling `C` or `CXX` on some
platforms triggers the recursion check if `RC` is explicitly listed.
Ideally we should refactor things to only enable one language at a time,
but for now it is simplest to just exclude `RC` from the explicit list
until other languages are enabled, and then enable it.
Closes: #16330
|
| |/
| |
| |
| | |
Provide a CMake_TEST_RESOURCES variable storing the decision.
|
|/
|
|
|
|
| |
The `main.cpp` that this test generates needs a newline so that
compilers do not warn about a missing newline. Otherwise the warning
causes RunCMake infrastructure to detect unexpected output.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Per-source copyright/license notice headers that spell out copyright holder
names and years are hard to maintain and often out-of-date or plain wrong.
Precise contributor information is already maintained automatically by the
version control tool. Ultimately it is the receiver of a file who is
responsible for determining its licensing status, and per-source notices are
merely a convenience. Therefore it is simpler and more accurate for
each source to have a generic notice of the license name and references to
more detailed information on copyright holders and full license terms.
Our `Copyright.txt` file now contains a list of Contributors whose names
appeared source-level copyright notices. It also references version control
history for more precise information. Therefore we no longer need to spell
out the list of Contributors in each source file notice.
Replace CMake per-source copyright/license notice headers with a short
description of the license and links to `Copyright.txt` and online information
available from "https://cmake.org/licensing". The online URL also handles
cases of modules being copied out of our source into other projects, so we
can drop our notices about replacing links with full license text.
Run the `Utilities/Scripts/filter-notices.bash` script to perform the majority
of the replacements mechanically. Manually fix up shebang lines and trailing
newlines in a few files. Manually update the notices in a few files that the
script does not handle.
|
| |
|
|\
| |
| |
| |
| |
| |
| | |
39c7d62c CPack/RPM debuginfo packaging documentation
dd3c938a CPack/RPM debuginfo directories to sources
b78fcf0d CPack/RPM debuginfo packages must contain sources
|
| |
| |
| |
| |
| |
| | |
List of sources must be split into paths parts
so that debuginfo package cleans up after
itself.
|
| |
| |
| |
| |
| | |
Issue #15668 fix was missing relevant source
files in debuginfo package.
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
89043267 server-mode: Add command to compute the build system
0a8ad670 server-mode: Add a configure command
544f65f4 server-mode: Set global configuration of cmake via a command
82104cc7 server-mode: Query global configuration of cmake via a command
|
| | |
| | |
| | |
| | |
| | | |
"setGlobalSettings" can be used to change settings reported by
"globalSettings" command.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Add "globalSettings" command that returns:
* Return capability information
* Return currently used generator/extra generator
* Return a range of flags for debug/trace/etc.
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Fortran INCLUDE statements are not handled by the preprocessor.
Since the location of the preprocessed file is distinct from the
original source file explicitly add the source file's directory
as an include path in the actual compile step (not the preprocessing step)
so INCLUDE can find it.
Closes: #16332
|
|\ \
| | |
| | |
| | |
| | | |
1ef45a30 Revert "CPack/DEB: Make package description variable precedence match RPM"
|
| | |
| | |
| | |
| | |
| | | |
This reverts commit 332b089ad213a1aa89658fffd8f68c9064c6d3db as multiline
descriptions require special formatting.
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | | |
b35568f3 Xcode: Add option to set Swift language version
49d50ad4 Xcode: Port rudimentary Swift support to Xcode 8
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Create a new CMAKE_Swift_LANGUAGE_VERSION variable to specify the
SWIFT_VERSION attribute in a generated Xcode project. Ideally this
would be a `<LANG>_STANDARD` property but since Swift support is
very minimal we should reserve that property for more complete
treatment later.
Issue: #16326
|
|/ /
| |
| |
| |
| | |
Co-Author: Damian Rouson <damian@sourceryinstitute.org>
Issue: #16234
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
eb8cd356 Tests: Split Fortran module testing into separate FortranModules test
a41c8724 Tests: Check if Fortran compiler supports F90
1ec5097d Tests: Use more generic variables in Fortran test
d7bd2efb Tests: Remove trailing line from Fortran/External
|
| | |
| | |
| | |
| | |
| | | |
The main Fortran test is not granular enough. Split some into another
test.
|
| | | |
|
| | | |
|
| | | |
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Refactoring in commit v3.5.0-rc1~272^2~16 (cmGeneratorTarget: Add API for
property keys, 2015-10-25) changed the Xcode generator implementation of
`XCODE_ATTRIBUTE_...` properties to use the target `GetProperty` method on each
`XCODE_ATTRIBUTE_...` property listed by `GetPropertyKeys` instead of looping
over the property entries directly. This made the lookup of property names of
the form `XCODE_ATTRIBUTE_..._LOCATION` accidentally trigger the computed
property logic for the undocumented/legacy `<CONFIG>_LOCATION` property. Of
course the computed property value is not the same as the value stored in the
`XCODE_ATTRIBUTE_..._LOCATION` property. Fix the computed property logic to
avoid triggering on `XCODE_ATTRIBUTE_...` attributes.
Closes: #16319
|
|\ \
| | |
| | |
| | |
| | | |
73f47c9e CTest: Add support for test fixtures
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Add new test properties:
* FIXTURES_SETUP
* FIXTURES_CLEANUP
* FIXTURES_REQUIRED
to specify the roles and dependencies of tests providing/using
test fixtures.
|
| |/
|/|
| |
| |
| |
| |
| |
| | |
Use it to split pipe and stdin/out handling out of cmServer itself.
The server will shut down when it looses its connection to the client.
This has the nice property that a crashing client will cause the server
to terminate as the OS will close the connection on behave of the client.
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
adf1e32f Help: Add notes for topic 'ctest-capture-error'
d328dc68 CTest: Add CAPTURE_CMAKE_ERROR val to `ctest_*` commands
9ac2e189 ctest_coverage: If gcov is not found just warn, not error
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
If a `ctest_*` command has CAPTURE_CMAKE_ERROR then any errors generated
by cmake during that command will cause the value to be assigned `-1`.
This will prevent a `ctest -S` script from returning non-zero unless the
script explicitly calls `message(FATAL_ERROR)`.
|
|\ \ \
| |_|/
|/| |
| | |
| | | |
cb851a7c Tests: Fix RunCMake.CPack test infrastructure after logical conflict
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The changes in commit d9cec8ad (CPack/RPM: Generate source rpm (SRPM)
packages on demand, 2016-09-19) logically conflict with the
infrastructure updates in commit 4682b42b (Tests: Add subtest support to
RunCMake/CPack infrastructure, 2016-09-13). Integrate the two changes
so they work together.
|
|\ \ \
| |/ /
|/| |
| | |
| | |
| | |
| | |
| | | |
d0be1e15 Add directory properties to get source and binary directories
cbca6582 Add directory property to list buildsystem targets
7a4b8d0d Add a directory property to list subdirectories
089868a2 cmState: Record buildsystem target names in each directory
|
| | |
| | |
| | |
| | |
| | |
| | | |
Add SOURCE_DIR and BINARY_DIR directory properties that return the
absolute paths to the corresponding directories. These correspond
to the target properties of the same names that we already have.
|
| | |
| | |
| | |
| | |
| | | |
Add a BUILDSYSTEM_TARGETS property to allow project code to traverse
the list of its own targets in a given directory.
|
| | |
| | |
| | |
| | |
| | | |
Add a SUBDIRECTORIES directory property to allow project code to
traverse the directory structure of itself as CMake sees it.
|
|\ \ \
| | | |
| | | |
| | | |
| | | | |
d9cec8ad CPack/RPM: Generate source rpm (SRPM) packages on demand
|
| |/ /
| | |
| | |
| | | |
Closes: #15839
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | | |
1c63aa4d CPack: Add option to generate a checksum file next to each package file
4682b42b Tests: Add subtest support to RunCMake/CPack infrastructure
|
| | | |
| | | |
| | | |
| | | | |
Add variable CPACK_PACKAGE_CHECKSUM to activate it.
|
| |/ / |
|
|/ /
| |
| |
| |
| |
| |
| |
| | |
Allow for experimental cmProtocolVersions, which will only ever get
listed if the server was started with the (undocumented)
"--experimental" flag.
Mark current protocol version 1.0 as experimental.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Adds a bare-bones cmake-server implementation and makes it possible
to start that with "cmake -E server".
Communication happens via stdin/stdout for now.
Protocol is based on Json objects surrounded by magic strings
("[== CMake Server ==[" and "]== CMake Server ==]"), which simplifies
Json parsing significantly.
This patch also defines an interface used to implement different
versions of the protocol spoken by the server, but does not include
any protocol implementaiton.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
I otherwise get:
Expected stderr to match:
expect-err> CMake Error at AppendNotOutput.cmake:1 \(add_custom_command\):
expect-err> add_custom_command given APPEND option with output.*
expect-err> which is not already a custom command output.
expect-err> Call Stack \(most recent call first\):
expect-err> CMakeLists.txt:3 \(include\)
Actual stderr:
actual-err> CMake Error at AppendNotOutput.cmake:1 (add_custom_command):
actual-err> add_custom_command given APPEND option with output
actual-err> "/home/stephen/dev/src/cmake/with
actual-err> space/Tests/RunCMake/add_custom_command/AppendNotOutput-build/out" which is
actual-err> not already a custom command output.
actual-err> Call Stack (most recent call first):
actual-err> CMakeLists.txt:3 (include)
Using a specific line for paths is a style already used elsewhere for
the same reason, such as CMP0041 output.
|