Commit Graph

45242 Commits

Author SHA1 Message Date
Kitware Robot
ed98209ddc Revise include order using clang-format-6.0
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.
2019-10-01 12:26:36 -04:00
Marc Chevrier
185fe49f29 clang-format: Normalize headers presentation
By using clang-format directives 'IncludeBlocks' and 'IncludeCategories'
headers are regrouped by categories:
1. "cmConfigure.h" which must be first
2. header matching current implementation file
3. standard language headers
4. CMake replacement ones
5. external  headers (i.e. #include directive with '<' and '>')
6. Qt headers
7. cmsys/* headers
8. cm_* headers
9. CMake headers (i.e. starting with 'cm[A-Z]')
10. all other headers

Fixes: #19674
2019-10-01 12:25:48 -04:00
Brad King
42ef28b4f3 Remove unused uid_t/gid_t types on Windows
These were added and used by commit 5299141320 (CPackDeb: Enable the DEB
generator on Windows, 2017-06-17, v3.10.0-rc1~445^2) but have not been
used since commit df556e65f2 (cmCPackDebGenerator: Use libarchive to
create .deb file, 2017-08-24, v3.10.0-rc1~220^2).
2019-10-01 12:25:43 -04:00
Brad King
62d65286e7 Merge topic 'fix-EXCLUDE_FROM_ALL-subdir-all'
8a15e75fe3 Tests: Cover EXCLUDE_FROM_ALL OFF on sub/sub/tgt in sub/all
7420843370 Makefiles: Fix EXCLUDE_FROM_ALL OFF on sub/sub/tgt in sub/all
d713bcb642 Ninja: Factor out per-dir "all" target computation into common generator
a75586c775 Ninja: Simplify top-level "all" target generation
a49cd4d1a7 Ninja: Fix EXCLUDE_FROM_ALL OFF on sub/sub/tgt in sub/all
0733a94f64 Ninja,Makefile: Fix subdir "all" with nested EXCLUDE_FROM_ALL subdir
11fb377eb9 cmLocalUnixMakefileGenerator3: Mark GetRelativeTargetDirectory const
be7857f40d cmLocalCommonGenerator: Mark GetConfigName as const
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3869
2019-10-01 12:25:13 -04:00
Brad King
ec16afc9e8 Merge topic 'typos'
ab06de68c5 Help: fixed typos in PCH / Unity Build doc

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3870
2019-10-01 11:06:22 -04:00
Brad King
7ad49fa333 Merge topic 'FindCurses-ncursesw'
048860e172 FindCurses: toplevel ncursesw support, recover cflags

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3845
2019-10-01 11:03:18 -04:00
Kitware Robot
a06472b168 CMake Nightly Date Stamp 2019-10-01 00:01:08 -04:00
Brad King
d5efd8ed72 Merge branch 'release-3.15' 2019-09-30 16:37:39 -04:00
Corentin Plouet
ab06de68c5 Help: fixed typos in PCH / Unity Build doc
+ typos in source code
2019-10-01 05:33:50 +10:00
Brad King
6fb747a01c CMake 3.15.4 v3.15.4 2019-09-30 15:30:00 -04:00
Brad King
6fa2baef61 Merge branch 'release-3.14' 2019-09-30 15:05:41 -04:00
Brad King
6d01a8e004 CMake 3.14.7 v3.14.7 2019-09-30 14:01:30 -04:00
Brad King
acbe5ae049 Merge branch 'release-3.15' 2019-09-30 10:43:47 -04:00
Brad King
fcd7b53d95 Merge branch 'release-3.14' 2019-09-30 10:43:37 -04:00
Brad King
8a15e75fe3 Tests: Cover EXCLUDE_FROM_ALL OFF on sub/sub/tgt in sub/all
Issue: #19753
2019-09-30 10:34:23 -04:00
Brad King
7420843370 Makefiles: Fix EXCLUDE_FROM_ALL OFF on sub/sub/tgt in sub/all
Defer adding a test to a later commit after all generators have been
fixed.

Issue: #19753
Co-Author: Sebastian Holtermann <sebholt@xwmw.org>
2019-09-30 10:34:23 -04:00
Brad King
d713bcb642 Ninja: Factor out per-dir "all" target computation into common generator
This will make it re-usable for the Makefile generator.
2019-09-30 10:33:20 -04:00
Brad King
a75586c775 Ninja: Simplify top-level "all" target generation
Remove its dedicated implementation and update the per-directory "all"
target generation to work for the top-level directory too.
2019-09-30 10:30:28 -04:00
Brad King
a49cd4d1a7 Ninja: Fix EXCLUDE_FROM_ALL OFF on sub/sub/tgt in sub/all
Defer adding a test to a later commit after all generators have been
fixed.

Issue: #19753
2019-09-30 10:30:28 -04:00
Brad King
0733a94f64 Ninja,Makefile: Fix subdir "all" with nested EXCLUDE_FROM_ALL subdir
The "all" target defined for a subdirectory (e.g. `cd sub; make` or
`ninja sub/all`) should not include the "all" targets from nested
subdirectories (e.g. `sub/sub`) that are marked as `EXCLUDE_FROM_ALL`.
Fix this and add a test case.

Issue: #19753
Co-Author: Sebastian Holtermann <sebholt@xwmw.org>
2019-09-30 10:30:28 -04:00
Brad King
11fb377eb9 cmLocalUnixMakefileGenerator3: Mark GetRelativeTargetDirectory const 2019-09-30 10:30:28 -04:00
Brad King
be7857f40d cmLocalCommonGenerator: Mark GetConfigName as const 2019-09-30 10:30:28 -04:00
Brad King
4a92df8667 cmGlobalNinjaGenerator: Remove unused AddDependencyToAll overload 2019-09-30 10:30:28 -04:00
Brad King
e7637a3d1a Merge branch 'backport-3.15-fix-EXCLUDE_FROM_ALL-subdir-all' into release-3.15
Merge-request: !3863
2019-09-30 10:29:11 -04:00
Brad King
73dad4708f Merge branch 'backport-3.14-fix-EXCLUDE_FROM_ALL-subdir-all' into release-3.14
Merge-request: !3863
2019-09-30 10:28:20 -04:00
Brad King
8aa5f6ba44 Merge topic 'fix-EXCLUDE_FROM_ALL-subdir-all'
dce58afd30 Merge branch 'backport-3.15-fix-EXCLUDE_FROM_ALL-subdir-all'
013d7dd484 Help: Mention 3.14.7 EXCLUDE_FROM_ALL fix in 3.15.4 release note
61103c0bac Merge branch 'backport-3.14-fix-EXCLUDE_FROM_ALL-subdir-all'
1fe4501592 Help: Add release note for EXCLUDE_FROM_ALL fix in 3.15.4
05d7ca14e9 Merge branch 'backport-3.14-fix-EXCLUDE_FROM_ALL-subdir-all'
62d45d91e8 Help: Add release note for EXCLUDE_FROM_ALL fix in 3.14.7
b3b1c7bf3a Restore "all" target in subdirectories marked EXCLUDE_FROM_ALL
156b56480a Makefiles: Revert "Make build root targets ... recursive"
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3863
2019-09-30 10:27:15 -04:00
Brad King
9b03baee30 Merge topic 'objective-c-cxx'
dd0f304613 Objective C/C++: Add compiler standard detection
b515af782b Help: Add release note for Objective-C/C++ language support
9e66397c28 Languages: Add support for Objective-C++
80f120a85f Languages: Add support for Objective-C

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3811
2019-09-30 10:25:19 -04:00
Brad King
b24e501bc2 Merge topic 'autogen_free_functions'
6bd40ccf84 Autogen: Make cmQtAutoMocUic a free function
e0e9be3d57 Autogen: Make cmQtAutoRcc a free function
820962edc9 Autogen: Refactor json info file reading interface

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3867
2019-09-30 10:23:42 -04:00
Brad King
c2d1ea58bf Merge topic 'FPHSA-reason-failure-message'
60473cc660 FPHSA: add capability to specify message explaining reason of failure

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3866
2019-09-30 10:22:35 -04:00
Brad King
45507eeb6a Merge topic 'smart_ptr/cmCurses'
7d6e08b438 cmCursesMainForm: change Entries to object vector
0833486d62 cmCursesStringWidget: remove manual delete
bc71b253cb cmCursesCacheEntryComposite: default destructor
36875ff419 cmCursesMainForm: cleanup manual allocation
2b16071149 CursesDialog: modernize CMake usage

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3849
2019-09-30 10:21:38 -04:00
Brad King
dce58afd30 Merge branch 'backport-3.15-fix-EXCLUDE_FROM_ALL-subdir-all'
Resolve conflicts with changes since the 3.15 series:

* Convert `cmSystemTools::IsOn` => `cmIsOn`.
* Move one "EXCLUDE_FROM_ALL" target property logic fix to
  its new location in `cmMakefile::AddNewUtilityTarget`.
2019-09-30 09:34:57 -04:00
Brad King
013d7dd484 Help: Mention 3.14.7 EXCLUDE_FROM_ALL fix in 3.15.4 release note 2019-09-30 09:20:55 -04:00
Brad King
61103c0bac Merge branch 'backport-3.14-fix-EXCLUDE_FROM_ALL-subdir-all' 2019-09-30 09:20:40 -04:00
Brad King
1fe4501592 Help: Add release note for EXCLUDE_FROM_ALL fix in 3.15.4 2019-09-30 09:20:35 -04:00
Brad King
05d7ca14e9 Merge branch 'backport-3.14-fix-EXCLUDE_FROM_ALL-subdir-all' 2019-09-30 09:19:21 -04:00
Brad King
62d45d91e8 Help: Add release note for EXCLUDE_FROM_ALL fix in 3.14.7 2019-09-30 09:18:20 -04:00
Brad King
b3b1c7bf3a Restore "all" target in subdirectories marked EXCLUDE_FROM_ALL
The "all" target in each directory is supposed to have targets from that
directory even if the directory itself is marked `EXCLUDE_FROM_ALL` in
its parent.  This was broken by commit dc6888573d (Pass EXCLUDE_FROM_ALL
from directory to targets, 2019-01-15, v3.14.0-rc1~83^2) which made the
participation of a target in "all" independent of context.  Revert much
of the logic change from that commit to restore the old behavior.  Then
re-implement the behavior intended by the commit to keep its test
working.  Extend the test to cover the old behavior too.

Fixes: #19753
2019-09-30 09:18:20 -04:00
Kitware Robot
3f7829fc4f CMake Nightly Date Stamp 2019-09-30 00:01:05 -04:00
Kitware Robot
c174e603be CMake Nightly Date Stamp 2019-09-29 00:01:05 -04:00
Sebastian Holtermann
6bd40ccf84 Autogen: Make cmQtAutoMocUic a free function 2019-09-29 00:07:32 +02:00
Sebastian Holtermann
e0e9be3d57 Autogen: Make cmQtAutoRcc a free function 2019-09-29 00:07:32 +02:00
Sebastian Holtermann
820962edc9 Autogen: Refactor json info file reading interface 2019-09-29 00:07:32 +02:00
Cristian Adam
dd0f304613 Objective C/C++: Add compiler standard detection 2019-09-28 15:56:53 +02:00
Cristian Adam
b515af782b Help: Add release note for Objective-C/C++ language support 2019-09-28 15:56:53 +02:00
Steve Wilson
9e66397c28 Languages: Add support for Objective-C++
Add entries in Modules and Modules/Platform to support
Objective-C++ compiler determination and identification.
Add Modules to check Objective-C++ compiler flags, source
compilations, program checks, etc...

Use OBJCXX as the designator of the language, eg:

project(foo OBJCXX)

Add various tests for Objective-C++ language features.  Add
tests to preserve C++ handling of .M and .mm files when
Objective-C++ is not a configured language.

Co-authored-by: Cristian Adam <cristian.adam@gmail.com>
2019-09-28 15:56:53 +02:00
Steve Wilson
80f120a85f Languages: Add support for Objective-C
Add entries in Modules and Modules/Platform to support
Objective-C compiler determination and identification.
Add Modules to check Objective-C compiler flags, source
compilations, program checks, etc...

Use OBJC as the designator of the language, eg:

project(foo OBJC)

Add various tests for Objective-C language features.  Add
tests to preserve C++ handling of .m and .mm files when
OBJC is not a configured language.

Co-Authored-By: Cristian Adam <cristian.adam@gmail.com>
2019-09-28 15:56:46 +02:00
Kitware Robot
9cd47ff3c8 CMake Nightly Date Stamp 2019-09-28 00:01:06 -04:00
nick black
048860e172 FindCurses: toplevel ncursesw support, recover cflags 2019-09-27 21:29:09 -04:00
Brad King
c88cf48bbe Merge topic 'FindBinUtils-ask-compiler'
b2fd479df5 FindBinUtils: Use the compiler to get the path to compiler tools
587ccffe74 Tests: Add symbols to FortranModules static libraries

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Alex Turbov <i.zaufi@gmail.com>
Merge-request: !3854
2019-09-27 14:56:53 -04:00
Brad King
f30f1625c2 Merge topic 'decompose-custom-command-creation'
5a06efda05 cmMakefile: Remove AddUtilityCommand overload without byproducts
ea1bed34b2 cmMakefile: Extract utilities used for creation of custom commands
91abf9f3c4 cmCustomCommand: Move custom commands
f151a57705 cmMakefile: Move enumerations into new header

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3846
2019-09-27 14:54:58 -04:00