Commit Graph

52727 Commits

Author SHA1 Message Date
Brad King
bb290fc7a4 Merge topic 'add_toolchain_cmake_option'
d5c3e4ac32 cmake: add support for --toolchain command argument
13838bbb36 CMAKE_TOOLCHAIN_FILE: Document relative path behavior

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5991
2021-04-16 11:39:28 -04:00
Brad King
16f213efa3 Merge topic 'fujitsu-fixup'
cc0d2004b2 Fujitsu: Fix C90 standard flags
ec78e86cc8 FujitsuClang: Use GNU-like command-line

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5997
2021-04-16 11:38:40 -04:00
Brad King
06fbbfb17d Merge branch 'release-3.20' 2021-04-16 11:35:48 -04:00
Brad King
d00ddb9761 Merge topic 'depfile-reader-thread-safety'
53d523f2e1 autogen: fix race in depfile parsing

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6008
2021-04-16 11:35:47 -04:00
Brad King
e9da93e066 Merge topic 'depfile-reader-thread-safety' into release-3.20
53d523f2e1 autogen: fix race in depfile parsing

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6008
2021-04-16 11:35:47 -04:00
Kitware Robot
e5a098968c CMake Nightly Date Stamp 2021-04-16 00:01:04 -04:00
Kyle Edwards
53d523f2e1 autogen: fix race in depfile parsing
cmReadGccDepfile() calls cmSystemTools::CollapseFullPath(), which
is not thread safe due to internal caching. Serialize calls to
cmReadGccDepfile() in autogen to avoid thread safety issues.

Fixes: #22014
2021-04-15 15:25:38 -04:00
Brad King
27b5dc35a6 Merge topic 'update-kwsys'
3ef5dab010 cmSystemTools: Simplify using KWSys Status
ec1b6157cb Update CMake code using KWSys to account for Status return values
eef585efaa Merge branch 'upstream-KWSys' into update-kwsys
a790167101 KWSys 2021-04-14 (7ab1c601)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !6004
2021-04-15 11:11:17 -04:00
Brad King
b65912006e Merge topic 'FindBLAS-FindLAPACK'
dcd604ee62 Find{BLAS,LAPACK}: Make library variable names more robust
98ef6632d9 Find{BLAS,LAPACK}: Generalize recognition of dependencies as link flags
a57c4eef76 Find{BLAS,LAPACK}: Convert internal CHECK_*_LIBRARIES to functions
a5a6ac7033 Find{BLAS,LAPACK}: Clarify name of internal argument for dependencies
d248401d12 Find{BLAS,LAPACK}: Simplify appending to list of libraries
e4649d1d15 Find{BLAS,LAPACK}: Add test case covering Intel MKL
116edb5c04 Find{BLAS,LAPACK}: Revert bad refactoring of internal CHECK_*_LIBRARIES
44bcec240b ci: factor out Intel Compiler common configure script

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6005
2021-04-15 11:10:19 -04:00
Brad King
81d796e3f2 Merge topic 'doc-error-unknown-arg' into release-3.20
06d26c7baf Help: Add 3.20 release note for error on unknown arguments

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6003
2021-04-15 11:07:33 -04:00
Brad King
c7edf43206 Merge branch 'release-3.20' 2021-04-15 11:07:33 -04:00
Brad King
2f30ee24d3 Merge topic 'doc-error-unknown-arg'
06d26c7baf Help: Add 3.20 release note for error on unknown arguments

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6003
2021-04-15 11:07:33 -04:00
Robert Maynard
d5c3e4ac32 cmake: add support for --toolchain command argument 2021-04-15 10:13:49 -04:00
Robert Maynard
13838bbb36 CMAKE_TOOLCHAIN_FILE: Document relative path behavior 2021-04-15 10:12:34 -04:00
Kitware Robot
498b916cdd CMake Nightly Date Stamp 2021-04-15 00:04:10 -04:00
Paul Zehner
cc0d2004b2 Fujitsu: Fix C90 standard flags
Fix typos from commit 3c867cff4a (Fujitsu: Add support for the Fujitsu
compiler in Trad mode, 2020-12-22).
2021-04-14 15:19:59 -04:00
Paul Zehner
ec78e86cc8 FujitsuClang: Use GNU-like command-line 2021-04-14 15:18:24 -04:00
Brad King
dcd604ee62 Find{BLAS,LAPACK}: Make library variable names more robust 2021-04-14 14:57:03 -04:00
Brad King
98ef6632d9 Find{BLAS,LAPACK}: Generalize recognition of dependencies as link flags 2021-04-14 14:57:03 -04:00
Brad King
a57c4eef76 Find{BLAS,LAPACK}: Convert internal CHECK_*_LIBRARIES to functions 2021-04-14 14:57:03 -04:00
Brad King
a5a6ac7033 Find{BLAS,LAPACK}: Clarify name of internal argument for dependencies 2021-04-14 14:57:03 -04:00
Brad King
d248401d12 Find{BLAS,LAPACK}: Simplify appending to list of libraries 2021-04-14 14:57:03 -04:00
Brad King
e4649d1d15 Find{BLAS,LAPACK}: Add test case covering Intel MKL 2021-04-14 14:57:03 -04:00
Brad King
116edb5c04 Find{BLAS,LAPACK}: Revert bad refactoring of internal CHECK_*_LIBRARIES
Refactoring in commit 4c74c86f40 (FindBLAS/LAPACK: Add support for the
Fujitsu SSL2 library, 2021-01-27) was done in order to support calling
`find_library` on the dependencies as well as the candidate libraries.
However, it broke a few things:

* Intel MKL's BLAS/LAPACK are no longer found.  We specify their
  dependencies using `-l...` flags, so we should not try to use
  `find_library` for them.

* The dependencies are repeated because we accumulate them in the
  `find_library` search loop and then append them at the end too.

Revert the incorrect part of the refactoring.  Retain the flags part
needed for the Fujitsu vendor.

Fixes: #22056
2021-04-14 14:55:51 -04:00
Brad King
44bcec240b ci: factor out Intel Compiler common configure script
Share common content between the intelclassic and inteloneapi variants.
2021-04-14 13:59:39 -04:00
Brad King
3ef5dab010 cmSystemTools: Simplify using KWSys Status 2021-04-14 13:14:29 -04:00
Brad King
ec1b6157cb Update CMake code using KWSys to account for Status return values
KWSys as of 2021-04-14 changed the return type of `SystemTools`
operations from `bool` to `Status`.  Update our call sites.
This may improve error reporting accuracy in a few places.
2021-04-14 13:14:09 -04:00
Brad King
eef585efaa Merge branch 'upstream-KWSys' into update-kwsys
# By KWSys Upstream
* upstream-KWSys:
  KWSys 2021-04-14 (7ab1c601)
2021-04-14 12:13:59 -04:00
KWSys Upstream
a790167101 KWSys 2021-04-14 (7ab1c601)
Code extracted from:

    https://gitlab.kitware.com/utils/kwsys.git

at commit 7ab1c60177e76707fbdd462fdbf7304ad2532edc (master).

Upstream Shortlog
-----------------

Brad King (11):
      85e76a10 Status: Add class to hold an OS-specific status of a system operation
      eec0add2 Directory: Return Status from Load
      955e7c1e SystemTools: Return Status from RemoveFile and RemoveADirectory
      c5a99e59 SystemTools: Return Status from GetPermissions and SetPermissions
      fadfd7a0 SystemTools: Return Status from Touch
      06216f0b SystemTools: Return Status from FileTimeCompare
      ab198a22 SystemTools: Return Status from GetShortPath
      2446b205 SystemTools: Return Status from MakeDirectory
      6aec6af9 SystemTools: Return Status from ChangeDirectory
      0664553b SystemTools: Return Status from copy operations
      a95f61cf SystemTools: Return Status from symlink operations
2021-04-14 12:13:59 -04:00
Brad King
06d26c7baf Help: Add 3.20 release note for error on unknown arguments
This was left out of commit 1b6c5333a0 (cmake: Error out on unknown
arguments starting with `-`., 2020-11-30, v3.20.0-rc1~370^2).

Fixes: #22060
2021-04-14 11:46:05 -04:00
Brad King
ff9e922902 Merge branch 'release-3.20' 2021-04-14 11:04:30 -04:00
Brad King
7981602368 Merge topic 'openbsd-defines'
317a477283 OpenBSD: Fix system feature definitions

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6000
2021-04-14 11:04:30 -04:00
Brad King
b4a29a8d42 Merge topic 'openbsd-defines' into release-3.20
317a477283 OpenBSD: Fix system feature definitions

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6000
2021-04-14 11:04:29 -04:00
Rafael Sadowski
317a477283 OpenBSD: Fix system feature definitions
Since commit f034b0f663 (CMake compilation: do not use compiler
extensions, 2020-03-14, v3.18.0-rc1~494^2), some sources explicitly
enable needed system APIs on some platforms using definitions like
`_POSIX_C_SOURCE` and `_XOPEN_SOURCE`.  Drop the definitions for
OpenBSD, which provides the POSIX APIs by default.
2021-04-14 11:02:29 -04:00
Brad King
1f91cf3442 Merge topic 'add_custom_command-DEPFILE-genex'
0c47b91fcc Genex: add_custom_command: DEPFILE supports genex

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5998
2021-04-14 10:57:17 -04:00
Brad King
af2ce59191 Merge topic 'vs-autouic-on-ui-file-change'
a8d879cf45 Autogen: Add detection of UI file changes to the pre-build VS case
1876f2d03f Autogen: Move duplicated filename generation code into a function
087b717aef Autogen: Move duplicated executable dependency code into a function
0656bebeae Autogen: Rename the variable for UI files with UIC options

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5999
2021-04-14 10:56:31 -04:00
Brad King
b5a07b2333 Merge branch 'release-3.20' 2021-04-14 10:55:18 -04:00
Brad King
337b39d342 Merge topic 'ci-parallelism-limits'
3fd2cffb4d ci: limit builds by machine load
6317f92120 ci: pay attention to the machine load when running tests

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5989
2021-04-14 10:55:18 -04:00
Brad King
d96ae57fb6 Merge topic 'ci-parallelism-limits' into release-3.20
3fd2cffb4d ci: limit builds by machine load
6317f92120 ci: pay attention to the machine load when running tests

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5989
2021-04-14 10:55:17 -04:00
Kitware Robot
156504fe75 CMake Nightly Date Stamp 2021-04-14 00:01:04 -04:00
Kitware Robot
4bfe724e81 CMake Nightly Date Stamp 2021-04-13 00:01:05 -04:00
Marc Chevrier
0c47b91fcc Genex: add_custom_command: DEPFILE supports genex
This facility is very useful for 'Ninja Multi-Config' and required
as well for future support of DEPFILE in 'Xcode' and 'Visual Studio'
generators (#20286).
2021-04-12 13:06:49 +02:00
Kitware Robot
43ecda68eb CMake Nightly Date Stamp 2021-04-12 00:01:08 -04:00
Kitware Robot
b1c739ad8b CMake Nightly Date Stamp 2021-04-11 00:01:04 -04:00
Duncan Barber
a8d879cf45 Autogen: Add detection of UI file changes to the pre-build VS case
This is achieved by adding a rule file which carries the UI files as dependencies but performs no meaningful command. Its output path points to a timestamp file which is instead touched by the pre-build command that runs autogen. The rule file therefore triggers the build if any of the files have been changed more recently than the last autogen run.

Fixes: #17959
Fixes: #18741
2021-04-10 18:40:22 +01:00
Duncan Barber
1876f2d03f Autogen: Move duplicated filename generation code into a function 2021-04-10 18:33:24 +01:00
Duncan Barber
087b717aef Autogen: Move duplicated executable dependency code into a function 2021-04-10 18:33:23 +01:00
Duncan Barber
0656bebeae Autogen: Rename the variable for UI files with UIC options
Monitoring for UI file changes in the target sources will require keeping track of the files without options as well so this will improve clarity.
2021-04-10 18:33:22 +01:00
Kitware Robot
aa283fdba1 CMake Nightly Date Stamp 2021-04-10 00:01:04 -04:00
Kitware Robot
eb62097dec CMake Nightly Date Stamp 2021-04-09 00:01:21 -04:00