| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Depends on cppdap and jsoncpp.
- Add --debugger argument to enable the Debugger.
- Add --debugger-pipe argument for DAP traffics over named pipes.
- Support breakpoints by filenames and line numbers.
- Support exception breakpoints.
- Call stack shows filenames and line numbers.
- Show Cache Variables.
- Show the state of currently defined targets,
tests and directories with their properties.
- Add cmakeVersion to DAP initialize response.
- Include unit tests.
Co-authored-by: Ben McMorran <bemcmorr@microsoft.com>
|
|
|
|
|
|
| |
Add `cm3p/` headers to use the selected copy of the library.
Co-authored-by: Glen Chung <kuchung@microsoft.com>
|
|\
| |
| |
| |
| |
| |
| |
| | |
2fc3b0f476 Tests: Drop use of legacy "Dart" module
Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !8257
|
| |
| |
| |
| | |
Use the CTest module directly.
|
|/ |
|
|
|
|
|
| |
This helps to diagnose places where IWYU asks to include headers for
internal stdlib details.
|
| |
|
| |
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| | |
d6f5e67f7b ci: add clang-tidy plugin to clang-tidy job
6c6912123e clang-tidy: Add option to load CMake's clang-tidy module
0ad3941f73 clang-tidy module: Add stub module
Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !7768
|
| |
| |
| |
| | |
Issue: #23912
|
|/ |
|
|
|
|
|
|
|
|
|
| |
Since commit 9199f7c627 (Disable arch-specific try_run in CMake itself,
2009-12-14, v2.8.2~567) we've abused an undocumented debugging feature
to override the builtin `try_run` command in CMake's own build with a
wrapper macro. However, we've also long discouraged use of this feature
by other projects. The purpose of the original change is outdated and
of limited use anyway, so just drop it.
|
| |
|
|
|
|
|
|
| |
The macro was one time used with the comment "Simply to improve readability...".
The result file doesn't have a macro anymore and just included into
the root `CMakeLists.txt`.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
We need the `ValueIterator::name()` method.
|
| |
|
| |
|
|
|
|
|
|
| |
Take advantage of policy CMP0077 NEW behavior to hard-code settings,
defined by `option()` calls in upstream libarchive, without adding
them to our cache.
|
|
|
|
|
|
| |
In particular, guarantee that policy `CMP0077` has `NEW` behavior.
This will be useful to hard-code options of third-party libraries
without polluting our own cache.
|
|
|
|
|
| |
Reduce differences from upstream libarchive `CMakeLists.txt` code.
Remove modifications inside code we disable anyway.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The %f specified extends the string(TIMESTAMP) and file(TIMESTAMP)
commands to output the timestamp with a microsecond resolution.
This convention is offered by python's datetime module.
Before, the precision was limited to seconds.
The implementation is done by extending existing cmTimestamp methods
with a `microseconds` parameter. This parameter is optional in order to
be backwards compatible. The timestamps are now received in a
cross-platform manner using libuv, since the standard C functions like
time() don't allow for sub-second precision.
This requires libuv 1.28 or higher. We already require higher than
that on Windows, so update the required version for other platforms.
Implements: #19335
|
| |
|
|
|
|
|
| |
Move all the current logic behind `if(UNIX)` conditions to make room
for other platforms to be added.
|
|
|
|
|
|
|
|
|
|
| |
Due to MCST LCC compiler identification is now changed to LCC,
there should be a way for old projects to still identify it as GNU,
as it was before.
This commits adds the policy:
CMP0129: Compiler id for MCST LCC compilers is now LCC, not GNU.
This policy controls such a behavior.
OLD behaivior is to treat LCC as GNU, NEW is to treat is as LCC.
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
02b2607a5c Help: Add release note for MCST LCC compiler support
e5d9fce03f LCC: Add dedicated support for MCST LCC compiler
2b9ef77944 CPack/DEB: deal with broken dpkg-shlibdeps on E2K architecture
0995c75301 Tests/RPM: skip tests tat rely on debugedit if it's not found
ea55ac9a51 Tests/RunCMake/CommandLine: Deal with locales that are different from English
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6608
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Divert LCC compiler as a new one, instead of treating it as GNU.
Since old times, Elbrus C/C++/Fortran Compiler (LCC) by MCST has been
passing checks for GNU compilers, so it has been identified as GNU.
Now, with intent of seriously upstreaming its support, it has been
added as a separate LCC compiler, and its version displays not a
supported GCC version, but LCC version itself (e.g. LCC 1.25.19 instead
of GNU 7.3.0).
This commit adds its support for detection, and also converts basically
every check like 'is this compiler GNU?' to 'is this compiler GNU or
LCC?'. The only places where this check is untouched, is where it
regards other platforms where LCC is unavailable (primarily non-Linux),
and where it REALLY differs from GNU compiler.
Note: this transition may break software that are already ported to
Elbrus, but hardly relies that LCC will be detected as GNU; still such
software is not known.
|
|/ |
|
|\
| |
| |
| |
| |
| |
| | |
aa4c30182b Add option to explicitly avoid using execinfo for backtraces
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6386
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
backtrace(3) from libexecinfo in musl will run into crash [1].
Provide an option to disable it explicitly even if libexecinfo is
present.
1: https://www.openwall.com/lists/musl/2021/07/17/1
|
| | |
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I noticed that I wasn't getting any compiler warnings when testing my
merge requests locally. Turns out this happens because I am compiling
using Clang rather than GCC, so no warning flags are added to the build.
d06a9bdf3ab47231cc91b78dac77bd50de390565 enabled warnings by default
for GCC > 4.2, but Clang supports them too. This has been the case
since at least Clang 3.0 (I couldn't test any older versions on
godbolt.org). For AppleClang, we can also assume that the warning flags
are supported. According to Wikipedia Clang became the default
compiler starting with Xcode 4.2, and the table on
https://trac.macports.org/wiki/XcodeVersionInfo, states that XCode
4.2 Clang was based on upstream Clang 3.0, which supports all the
warning flags.
The warning flags are currently not added when compiling with clang-cl
since this exposes some pre-existing warnings that need to be fixed first.
|
|
|
|
|
|
|
|
|
|
|
| |
In commit 7f89053953 (cmSystemTools: Return KWSys Status from CreateLink
and CreateSymlink, 2021-04-15) we just took the `-err` from libuv and
treated it as a POSIX error. This is accurate on POSIX, but on Windows
does not match the POSIX error codes.
Use `uv_fs_get_system_error` to get the actual system error code.
This requires libuv 1.38 or higher. Require that for Windows, but
fall back to the previous approach on POSIX.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Several of KWSys's checks have the same result on all Windows
platforms supported when building CMake.
|
|
|
|
|
| |
All Windows platforms offer `environ` in `stdlib.h` and do
not have `unsetenv`.
|
| |
|
|
|
|
|
|
|
|
| |
Our bundled third-party libraries perform many `try_compile` checks for
compatibility with their upstream build systems. For many of the checks
we already know the result for compilers we support for building CMake
itself, especially on Windows. Hard-code known results to avoid running
the checks.
|
|
|
|
|
|
| |
GitLab now uses a `/-/` component between the `group/project` part of
the URL and the `{issues,merge_requests,tree}` part so that it can
support `group/subgroup/project` with arbitrary depth.
|
|\
| |
| |
| |
| |
| |
| | |
f7a94cf282 XL: Install our Fortran 'cpp' helper script with execute permission
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4735
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This script was added by commit 19f267c75e (XL: Add support for Ninja
and XL Fortran, 2019-11-21, v3.17.0-rc1~368^2) but does not have a `.sh`
extension so our existing install rules neglect to give it execute
permission. Our test suite works on XL Fortran in the build tree but
the script is broken without execute permission on installation.
Fixes: #20695
|
| |\
| | |
| | |
| | |
| | |
| | |
| | | |
39e5a4da22 AIX: Install ExportImportList script with execute permission
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4545
|