| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
Move dictionary entries used by the json object generation code into a
separate header. These are distinct from the server-only entries used
in the protocol implementation.
|
|
|
|
|
|
|
|
|
| |
This change returns information for INTERFACE_SOURCES. We add
a flag to the filegroup to indicate if the target represents
interface sources.
Protocol version is updated to 1.3 since this is a change to what was
released in cmake version 3.12.
|
|\
| |
| |
| | |
revert-server-target-backtraces
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The backtrace information is very repetitive and hugely increases the
size of the codemodel object. We need to remove it until an alternative
representation can be developed. Revert commit v3.10.0-rc1~393^2
(server: Report backtraces in codemodel response, 2017-06-20), except
for the protocol version number (because it indicates other new things).
Unfortunately this is incompatible with clients that expect the
"crossReferences" field in targets. However, the regression in memory
usage is quite serious, especially on large projects, and therefore
breaks even older clients that do not use backtraces. Since the
"crossReferences" field was only provided by one release (3.10.0), it is
simplest to revert it outright for 3.10.1.
Fixes: #17502
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
afd9a339 server: return whether or not a target is generator provided
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1475
|
| | |
| | |
| | |
| | |
| | |
| | | |
Some generators auto-generate targets. For example VS generators create
the ALL_BUILD target. Add the ability to mark targets as generator
provided and return that info through cmake-server codemodel.
|
|/ /
| |
| |
| |
| | |
Prior to this change we were looking at targets. But tests are
associated with directories. This change fixes how we gather all tests.
|
| | |
|
| | |
|
|/
|
|
|
| |
Protocol version is updated to 1.2 since this is a change
to what was released in cmake version 3.10.
|
|
|
|
|
|
|
|
|
|
| |
Report the source locations (e.g. in `CMakeLists.txt`) for all targets
and target-related statements. This allows IDEs to locate the
statements and automatically edit them when the user adds or removes
files or changes target properties via GUI.
Increment the protocol minor version number to tell clients that the new
information is available.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Change our message wrapper from
[== CMake Server ==[ ... ]== CMake Server ==]
to
[== "CMake Server" ==[ ... ]== "CMake Server" ==]
to guarantee that no JSON content can ever contain the ending string
(because it would be encoded as `]== \"CMake Server\" ==]`).
|
|
|
|
| |
Watch CMakeLists.txt files (and similar) from the Server
|
|
|
|
| |
* Add a command to report watched files and directories to clients.
|
|
|
|
|
| |
With this it would be possible to implement something like
cmake-gui using server-mode.
|
|
|
|
| |
Add a command to retrieve files that are input to cmake itself.
|
|
|
|
|
| |
Add "codemodel" command to report information relevant to feed a code
model.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
|
| |
Add a command to trigger cmake to configure a project.
Keep this separate from the compute step (added in the next commit)
to faciliate applications like cmake-gui.
|
|
|
|
|
| |
"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.
|
|
|
|
| |
Enable the server to send signals.
|
|
This removes some duplication and makes it easier to reuse the
vocabulary.
|