Commit Graph

45224 Commits

Author SHA1 Message Date
Brad King
d5efd8ed72 Merge branch 'release-3.15' 2019-09-30 16:37:39 -04: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
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
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
Brad King
0672647e12 Merge topic 'free-target-commands'
9d1a1bc495 cmTarget*: Port away from cmCommand

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3799
2019-09-27 14:52:01 -04:00
Brad King
d608b2c620 Merge topic 'fileapiSourcePropertyBacktraces'
8b84c046fa fileapi: add some source property backtraces
c71ac889ba cmSourceFile: Add backtraces for a few source properties

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3861
2019-09-27 14:38:30 -04:00
Brad King
156b56480a Makefiles: Revert "Make build root targets ... recursive"
Revert the main logic change from commit 827da1119e (Makefiles: Make
build root targets "all", "clean" and "preinstall" recursive,
2019-05-17, v3.15.0-rc1~96^2~2) for the "all" and "preinstall" targets.

The commit cleaned up the Makefile generator to use the same logic for
the "all" target in the top-level directory as for subdirectories.  It
exposed a long-existing bug that caused the "all" target in a
subdirectory to include the "all" targets from sub-subdirectories even
if they are marked `EXCLUDE_FROM_ALL`.  The `Tests/SubDir` test should
fail but the problem is currently covered up by another bug introduced
by commit dc6888573d (Pass EXCLUDE_FROM_ALL from directory to targets,
2019-01-15, v3.14.0-rc1~83^2) that causes the "all" targets in
`EXCLUDE_FROM_ALL` subdirectories to be empty.

Revert the top-level "all" and "preinstall" targets to the old approach
to prepare to fix the latter bug without exposing the long-existing bug
at the top-level.  Leave the "clean" target in the new approach because
it does not honor `EXCLUDE_FROM_ALL` anyway.

Issue: #19753
2019-09-27 14:15:00 -04:00
Marc Chevrier
60473cc660 FPHSA: add capability to specify message explaining reason of failure
Fixes: #19660
2019-09-27 16:04:54 +02:00
Tushar Maheshwari
7d6e08b438 cmCursesMainForm: change Entries to object vector
- Add move constructor and move assignment operator for
`cmCursesCacheEntryComposite`.
- Transfer ownership of Entries objects to std::vector.
2019-09-27 17:18:16 +05:30
Tushar Maheshwari
0833486d62 cmCursesStringWidget: remove manual delete
- Relpace `char*` operations with `std::string`
2019-09-27 17:18:16 +05:30
Kitware Robot
8c568722d7 CMake Nightly Date Stamp 2019-09-27 00:02:11 -04:00
Isuru Fernando
b2fd479df5 FindBinUtils: Use the compiler to get the path to compiler tools
Fixes: #19728
2019-09-26 19:11:00 -05:00
Brad King
cf01d3d2bd Tests: Clarify target names in RunCMake.add_subdirectory ExcludeFromAll
Rename the `baz` target to `subinc` to clarify that its role is to be
included even though it is in an otherwise excluded subdirectory.
2019-09-26 14:58:26 -04:00
Brad King
21442d72a4 Tests: Revise RunCMake.add_subdirectory ExcludeFromAll to avoid globbing
Also simplify the clean step.
2019-09-26 14:57:40 -04:00
Regina Pfeifer
9d1a1bc495 cmTarget*: Port away from cmCommand 2019-09-26 13:27:55 -04:00
Tushar Maheshwari
bc71b253cb cmCursesCacheEntryComposite: default destructor 2019-09-26 11:10:22 -04:00
Tushar Maheshwari
36875ff419 cmCursesMainForm: cleanup manual allocation 2019-09-26 11:10:20 -04:00
Justin Goshi
8b84c046fa fileapi: add some source property backtraces
Support backtraces for COMPILE_DEFINITIONS, COMPILE_OPTIONS, and
INCLUDE_DIRECTORIES source properties.
2019-09-26 10:56:52 -04:00
Justin Goshi
c71ac889ba cmSourceFile: Add backtraces for a few source properties
Adding backtrace support for INCLUDE_DIRECTORIES, COMPILE_OPTIONS, and
COMPILE_DEFINITIONS.
2019-09-26 10:56:52 -04:00
Brad King
b4087a2353 Merge topic 'vs-ReferenceOutputAssembly-conditions'
4dc8c153ec Tests: Teach VSWinStorePhone to verify the content of generated xap
481070a78a Tests: Teach VSWinStorePhone to verify the content of generated appx/msix
acdb326610 VS: Do not reference output assemblies of targets with no output

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3778
2019-09-26 10:43:27 -04:00
Brad King
587ccffe74 Tests: Add symbols to FortranModules static libraries
When GNU `ar` creates an archive with no symbols it has only an
empty header but no string table.  On Solaris the OS-provided `ld`
fails in this case:

    ld: elf error: file libfoo.a: elf_getarsym

Update our test to actually provide symbols from its archives.
2019-09-26 10:31:44 -04:00
Daniel Eiband
5a06efda05 cmMakefile: Remove AddUtilityCommand overload without byproducts 2019-09-26 10:04:03 -04:00