| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Otherwise GCC 10.1 issues a `-Wstringop-overflow=` diagnostic when
we use the width for indexing.
|
|
|
|
|
|
|
|
|
|
| |
Change the default color for strings from BLUE (which is nearly
illegible on any terminals using the standard color palette which has
been around since at least CGA, almost 40 years ago) to CYAN. Add
ability to customize the colors via an environment variable (inspired by
LS_COLORS and using similar syntax).
Fixes: #20596
|
|
|
|
|
| |
Rename the internal name for the color applied to multiple-choice
options to avoid use of the overloaded term 'option'.
|
|
|
|
|
| |
The addition makes a temporary string and then drops it after adding it
to `this->Messages`. Instead, just incrementally append.
|
|\
| |
| |
| |
| |
| |
| |
| |
| | |
60bfaa8fe6 ccmake: Use incremental rendering for the logs
e9b36731e9 cmCursesLongMessageForm: Factor out helper to draw message to form
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !4573
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This should avoid an exponential slowdown in the display time for
projects with lots of output.
This is still slower than cmake due to the ncurses drawing, but it should
now be O(L) in total and not O(L^2) wrt to output length.
Fixes: #20535
|
| | |
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
a7f2ff16a4 cmState::GetCacheEntryProperty: return cmProp
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4522
|
| | | |
|
|/ / |
|
|/ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The previous code:
if (curFieldLen < width) {
...
strncpy(bar + curFieldLen + 2, help, width - curFieldLen - 2);
was not correctly guarded against cache entries whose size were exactly
1 or 2 characters short of the window size.
"if (curFieldLen - 2 < width)" would have prevented a copy of
negative/max_int characters and a subsequent crash.
The whole method was modernized with std::string instead of char*
|
|
|
|
|
|
|
|
|
| |
Repro steps: configure (without errors), the logs are displayed then the
cache is displayed again, resize the window up -> the logs are
redisplayed after resize instead of the cache
The 'CurrentForm' pointer were left pointed to the last log message
form, this resets it to the main form when configure or generate is done
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Use cmSystemTools to report some messages.
These should now be caught and displayed properly,
both in ccmake and cmake-gui
Avoid log display flickering during processing
- Don't clear the screen each time the long message form is rendered.
It always renders the whole screen again so clearing it only causes
flickering.
- Add scroll down capabilities to the long message form so that it can
draw itself directly in the correct state. This removes the need to
programatically scroll down just after that also caused flickering.
Fixes #19882
Fixes #13288
|
| |
|
|
|
|
| |
Reduce space usage and add the key to display the output
|
|
|
|
|
| |
The colors are based on the entry type (or value for booleans),
paths and filepaths sharing the same color.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
The status bar is now only used to display the progress.
The status log are not shown anymore since for the most cases they went
by too quickly to be read. As for cases when a process is long enough
to display and read a log, it would probably be a previous unrelated
message.
|
|\
| |
| |
| |
| |
| |
| | |
9276beae5e ccmake: Fully clear the 1st help line when processing
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3937
|
| | |
|
|/
|
|
|
| |
Create an undocumented `CMake_JOB_POOL_LINK_BIN` option that builders
can set to avoid linking too many of our binaries at once.
|
|
|
|
|
| |
Run the `clang-format.bash` script to update our C and C++ code to a new
include order `.clang-format`. Use `clang-format` version 6.0.
|
|
|
|
|
|
| |
- Add move constructor and move assignment operator for
`cmCursesCacheEntryComposite`.
- Transfer ownership of Entries objects to std::vector.
|
|
|
|
| |
- Relpace `char*` operations with `std::string`
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
This replaces the code pattern
```
std::vector<std::string> args;
cmExpandList(valueStr, args, ...)
```
with
```
std::vector<std::string> args = cmExpandedList(valueStr, ...)
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch is generated by a python script that uses regular expressions to
search for string concatenation patterns of the kind
```
std::string str = <ARG0>;
str += <ARG1>;
str += <ARG2>;
...
```
and replaces them with a single `cmStrCat` call
```
std::string str = cmStrCat(<ARG0>, <ARG1>, <ARG2>, ...);
```
If any `<ARGX>` is itself a concatenated string of the kind
```
a + b + c + ...;
```
then `<ARGX>` is split into multiple arguments for the `cmStrCat` call.
If there's a sequence of literals in the `<ARGX>`, then all literals in the
sequence are concatenated and merged into a single literal argument for
the `cmStrCat` call.
Single character strings are converted to single char arguments for
the `cmStrCat` call.
`std::to_string(...)` wrappings are removed from `cmStrCat` arguments,
because it supports numeric types as well as string types.
`arg.substr(x)` arguments to `cmStrCat` are replaced with
`cm::string_view(arg).substr(x)`
|
|\
| |
| |
| |
| |
| |
| | |
d331021255 clang-tidy: isolate declarations for readability
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3704
|
| | |
|
|\ \
| |/
|/|
| |
| |
| |
| | |
66654135c1 ccmake: Fix form.h include with CMAKE_USE_SYSTEM_FORM
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3683
|
| |
| |
| |
| |
| |
| |
| | |
Some distributions have form.h in ncurses/ next to the ncurses.h found
by FindCurses.
Fixes: #19589
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
154c5f7949 ccmake: handle cache entries with empty STRINGS property
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3678
|
| |/
| |
| |
| | |
Fixes: #19585
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This replaces invocations of
- `cmSystemTools::IsInternallyOn` with `cmIsInternallyOn`
- `cmSystemTools::IsNOTFOUND` with `cmIsNOTFOUND`
- `cmSystemTools::IsOn` with `cmIsOn`
- `cmSystemTools::IsOff` with `cmIsOff`
|
|/ |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
On non-Windows platforms libuv assumes that file descriptors 0-2 are
always used for standard pipes and never for anything else. Otherwise,
libuv may re-use one of these descriptors and then fail an assertion
when closing it. Similarly, On Windows platforms our ConsoleBuf
implementation assumes that the standard handles are always open.
If CMake is run with any standard pipes closed, open them with
`/dev/null` or `NUL` to satisfy these assumptions.
Fixes: #19219
|
|
|
|
|
|
|
|
|
| |
During refactoring in commit f6291eee25 (cmCursesMainForm: Modernize
with STL and ranged-for loops, 2019-02-10) a transformation of a loop
went wrong and editing the cmake cache with ccmake no longer works.
Make ccmake work again.
Fixes: #19008
|
|
|
|
|
| |
It was issued by sparc compiler on Solaris system
See !2947
|
|\
| |
| |
| |
| |
| |
| | |
950c099d83 cmake: Progress functions use `std::string` param
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2948
|
| | |
|
|\ \
| |/
|/|
| |
| |
| |
| | |
f6291eee25 cmCursesMainForm: Modernize with STL and ranged-for loops
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2947
|
| | |
|
|\ \
| |/
|/|
| |
| |
| |
| |
| |
| | |
01b2d6ab74 Modernize: Use ranged for-loops when possible
15bdbec017 cmAlgorithms: Make cmRange advance/retreat safe for rvalues
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Daniel Pfeifer <daniel@pfeifer-mail.de>
Merge-request: !2901
|