Commit Graph

54286 Commits

Author SHA1 Message Date
Kitware Robot ec686f4c8a CMake Nightly Date Stamp 2021-08-09 00:01:33 -04:00
Kitware Robot d1b2916bbb CMake Nightly Date Stamp 2021-08-08 00:01:10 -04:00
Kitware Robot cc94429c61 CMake Nightly Date Stamp 2021-08-07 00:01:15 -04:00
Brad King 350065bb85 Merge topic 'refactor-conditions-evaluation'
54a70b3988 Refactor: Move version compare op table out of the function
f37d6a3170 Refactor: Remove redundant checks for `0` and `1` literals
00961a4782 Refactor: Copy exactly required count of args and avoid `pop_back()`
2a72cad9be Style: Better names of local vars for `IN_LIST` handler
0dd7795706 Refactor: Extract the logic of testing for special variable to func
866b0595f6 Refactor: Introduce `cmArgumentList` container class
51d9194a96 Refactor: Reduce one more condition checking on handling math compare
46810235e3 Refactor: Avoid `if` → `else if` → … for compare operators
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6392
2021-08-06 12:12:02 -04:00
Brad King 07ecec3a80 Merge branch 'release-3.21' 2021-08-06 10:55:48 -04:00
Brad King 8e798c4ed8 Merge topic 'ninja-lwyu-ar'
87589fd96a Merge branch 'backport-ninja-lwyu-ar' into ninja-lwyu-ar
93eb4a7bd1 Ninja: Revert accidental LINK_WHAT_YOU_USE impl for static libraries

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6418
2021-08-06 10:55:48 -04:00
Brad King 86633cc203 Merge topic 'ninja-lwyu-ar' into release-3.21
93eb4a7bd1 Ninja: Revert accidental LINK_WHAT_YOU_USE impl for static libraries

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6418
2021-08-06 10:55:48 -04:00
Brad King c249cf8f60 Merge branch 'release-3.21' 2021-08-06 10:53:33 -04:00
Brad King f21ed57ecb Merge branch 'release-3.20' into release-3.21 2021-08-06 10:53:28 -04:00
Brad King 756950d1e6 Merge branch 'release-3.20' 2021-08-06 10:53:07 -04:00
Brad King 0d68cd5103 Merge branch 'release-3.21' 2021-08-06 10:48:21 -04:00
Brad King 50df0c411d Merge topic 'macos-10.4'
1af23c4de2 macOS: Restore support for Mac OS X 10.4 (Tiger)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6426
2021-08-06 10:48:21 -04:00
Brad King ea8fc62194 Merge topic 'macos-10.4' into release-3.21
1af23c4de2 macOS: Restore support for Mac OS X 10.4 (Tiger)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6426
2021-08-06 10:48:20 -04:00
Kitware Robot 1df8c88ea2 CMake Nightly Date Stamp 2021-08-06 00:01:10 -04:00
Kitware Robot 6c0f476505 CMake Nightly Date Stamp 2021-08-05 00:01:12 -04:00
Kitware Robot 85b5e6a458 CMake Nightly Date Stamp 2021-08-04 00:01:14 -04:00
Brad King 87589fd96a Merge branch 'backport-ninja-lwyu-ar' into ninja-lwyu-ar 2021-08-03 11:58:59 -04:00
Đoàn Trần Công Danh 93eb4a7bd1 Ninja: Revert accidental LINK_WHAT_YOU_USE impl for static libraries
In commit d7159f9591, (Ninja: Fix LINK_WHAT_YOU_USE link flag placement,
2021-06-24), we fixed usage of -Wl,--no-as-needed to override
-Wl,--as-needed from LDFLAGS. However, that change also passes
-Wl,--no-as-needed to `ar`, which is incorrect flag for `ar`.

Let's check the target type before passing down the flags.

Fixes: #22487
2021-08-03 11:21:26 -04:00
Brad King affd8b09e6 Merge topic 'vs10-deprecate'
22dab6eb96 Deprecate Visual Studio 10 2010 generator

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6412
2021-08-03 11:10:43 -04:00
Brad King 792c2eac10 Merge topic 'irsl-intel'
f4c194398d IRSL: Avoid duplication of Intel redist lib folder paths
2adc45c7f6 IRSL: Fix check of path to Intel redistdir

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6414
2021-08-03 11:09:42 -04:00
Brad King 70daea512d Merge topic 'string-TIMESTAMP-specifier-V'
aafa392c12 string(TIMESTAMP): Add %V specifier for ISO 8601 week number
a915f691ad Help: Format string(TIMESTAMP) format specifiers as a definition list

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6374
2021-08-03 11:08:34 -04:00
Brad King a3ddcdb911 Merge topic 'nsis_ignore_license_page'
795e406e3b CPack/NSIS: Add option to not display license page

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6422
2021-08-03 11:06:45 -04:00
Brad King 1524505e12 Merge topic 'minimal_nsis'
c0572a15d6 CPack/NSIS: Bump minimal version of NSIS to 3.03

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6425
2021-08-03 11:05:39 -04:00
Brad King ff56e78bea Merge topic 'cpack_deb_zstd'
051da997da CPack/DEB: Add zstd compression for deb packages

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Michael Hirsch <michael@scivision.dev>
Merge-request: !6394
2021-08-03 11:04:27 -04:00
Brad King 6edf3133ad Merge topic 'FindX11-more-advanced-variables'
076d0a1710 FindX11: mark more xcb variables as advanced

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6424
2021-08-03 11:03:35 -04:00
Brad King 64e8d23caf Merge topic 'gate-vtk-compat'
7391363302 VTKCompatibility: ignore for "modern" VTK

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6413
2021-08-03 11:02:23 -04:00
Brad King fbf5a368c9 Merge topic 'cpack-rpm-pre-semicolon' into release-3.21
3cdf23985f CPackRPM: avoid a spurious `;` in the `%pre` and other sections with scripts

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !6415
2021-08-03 11:01:08 -04:00
Brad King 631e017f29 Merge branch 'release-3.21' 2021-08-03 11:01:08 -04:00
Brad King a6eadb8031 Merge topic 'cpack-rpm-pre-semicolon'
3cdf23985f CPackRPM: avoid a spurious `;` in the `%pre` and other sections with scripts

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !6415
2021-08-03 11:01:08 -04:00
Brad King 54be23df7f Merge topic 'CC-DEPFILE-independent-from-CMAKE_DEPENDS_USE_COMPILER' into release-3.21
213fec4908 add_custom_command(DEPFILE) independent from CMAKE_DEPENDS_USE_COMPILER

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6421
2021-08-03 10:59:38 -04:00
Brad King 2d7015fd3e Merge branch 'release-3.21' 2021-08-03 10:59:38 -04:00
Brad King e251bf5f68 Merge topic 'CC-DEPFILE-independent-from-CMAKE_DEPENDS_USE_COMPILER'
9e7a0568f6 Merge branch 'backport-3.21-CC-DEPFILE-independent-from-CMAKE_DEPENDS_USE_COMPILER' into CC-DEPFILE-independent-from-CMAKE_DEPENDS_USE_COMPILER
213fec4908 add_custom_command(DEPFILE) independent from CMAKE_DEPENDS_USE_COMPILER

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6421
2021-08-03 10:59:38 -04:00
Brad King aa1426da4a Merge topic 'help-get_filename_path-fix-version-changed' into release-3.21
8b28fe5670 Help: get_filename_component: fix version info for cmake_path

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6423
2021-08-03 10:57:44 -04:00
Brad King b554d08c9b Merge branch 'release-3.21' 2021-08-03 10:57:44 -04:00
Brad King cf49b5fb6b Merge topic 'help-get_filename_path-fix-version-changed'
8b28fe5670 Help: get_filename_component: fix version info for cmake_path

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6423
2021-08-03 10:57:44 -04:00
Alex Turbov 54a70b3988 Refactor: Move version compare op table out of the function
It's static data and never changed.
2021-08-03 10:55:47 -04:00
Alex Turbov f37d6a3170 Refactor: Remove redundant checks for 0 and 1 literals
They are gonna be checked by `cmIsOn()` anyway.
2021-08-03 10:55:47 -04:00
Alex Turbov 00961a4782 Refactor: Copy exactly required count of args and avoid pop_back() 2021-08-03 10:55:47 -04:00
Alex Turbov 2a72cad9be Style: Better names of local vars for IN_LIST handler 2021-08-03 10:55:47 -04:00
Alex Turbov 0dd7795706 Refactor: Extract the logic of testing for special variable to func
Introduce `looksLikeSpecialVariable`. It makes `if()` blocks readable.
2021-08-03 10:55:47 -04:00
Alex Turbov 866b0595f6 Refactor: Introduce cmArgumentList container class
The `cmArgumentList` has been turned into a class (forward declared in
the header). It inherits from the `std::list` (yeah, but we don't intend
to store polymorphic classes in it). In addition to the standard methods,
now it's possible to move `HandlePredicate` (renamed to `ReduceOneArg`)
and `HandleBinaryOp` (renamed to `ReduceTwoArgs`) as its members.

Additionally, iterators managements (`IncrementArguments`) have been
refactored into two separate classes mimicking iterators. This also
allows having a uniform `for` loop and concentrates the logic of
iterators advancing in it instead of the loop's body. The arguments
processing algorithms operate with "windows" over a collection of
arguments. Hence there are two kinds of "iteration windows" -- allowing
to observe 2 or 3 elements per loop iteration. These iteration "windows"
also passed to reducers.
2021-08-03 10:55:47 -04:00
Alex Turbov 51d9194a96 Refactor: Reduce one more condition checking on handling math compare 2021-08-03 10:55:46 -04:00
Alex Turbov 46810235e3 Refactor: Avoid ifelse if → … for compare operators
When trying to match one of compare operator key inside `if()` condition,
remember the index of matched operator. Later this index used to
select the operation to perform instead of strings compare again.
2021-08-03 10:55:46 -04:00
Alex Turbov 17af3baddd Refactor: Set const to cmConditionEvaluator::IsKeyword parameters 2021-08-03 10:55:46 -04:00
Alex Turbov 2b916606c5 Refactor: No need to move iterators after match
A handler's loop of all levels gonna restart after calls to
`HandlePredcate` or `HandleBinaryOp`... And the first action in the
loop is to setup iterators. So, no need to move 'em inside the
functions. Also, no need to pass iterators by reference.

Also, reorder parameters of both functions so iterators
followed after a reference to the newArgs container.
2021-08-03 10:55:46 -04:00
Alex Turbov 97d6bbcc01 Refactor: Replace std::to_string w/ more specialized bool2string 2021-08-03 10:55:46 -04:00
Alex Turbov 9721ab416f Refactor: Reorder MATCHES handler from top below to the fail-fast 2021-08-03 10:55:46 -04:00
Alex Turbov d4d44e86f6 Refactor: Reduce variables scope in HandleLevel2 2021-08-03 10:55:46 -04:00
Alex Turbov cc6cdacc18 Refactor: Simplify boolean to string result assignments 2021-08-03 10:55:46 -04:00
Alex Turbov e3c1dbe18b Refactor: Replace if block w/ boolean expression
Signed-off-by: Alex Turbov <i.zaufi@gmail.com>
2021-08-03 10:55:45 -04:00