Commit Graph

10291 Commits

Author SHA1 Message Date
Brad King
18f3e28652 Merge branch 'iar-8051-support' into release-3.16
Merge-request: !3906
2019-10-11 10:23:37 -04:00
Micael Borgefeldt
5652e11ea1 IAR: Add 8051 support
Issue: #17264
2019-10-11 10:22:52 -04:00
Micael Borgefeldt
6e51db9a40 IAR: Fix v850 assembler support file extensions
Fix the file extension added by commit 158f3795b8 (IAR: Add v850
assembler support, 2019-09-23, v3.16.0-rc1~70^2).

Issue: #17264
2019-10-11 10:22:52 -04:00
Brad King
3709389520 Merge branch 'objc-c++flags' into release-3.16
Merge-request: !3904
2019-10-11 09:24:24 -04:00
Cristian Adam
806e01d638 Objective-C: Do not treat Objective-C files as C++ files
When both C and C++ langauges are enabled, the Objective-C files
should be treated as C files and not as C++ files.
2019-10-11 14:01:48 +02:00
Brad King
847e8bc98c Intel: Fix default C++ dialect detection on Windows
For the Intel Compiler for Windows we have some subtle preprocessor
checks in compiler feature detection to detect C++11 and C++14 modes.
Use these when detecting the default C++ dialect too.
2019-10-10 13:14:42 -04:00
Brad King
5586648a77 Merge topic 'ExternalProject-minor-typos'
5d3b825cbd ExternalProject: fix some documentation typos

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3898
2019-10-10 09:24:21 -04:00
Brad King
b63dc7c8fc Merge branch 'ExternalProject-minor-typos' into release-3.16
Merge-request: !3898
2019-10-09 09:22:08 -04:00
Gregor Jasny
1a3a62251b Apple: Set Clang ASM compiler features
The same is done for the C and CXX language. This initializes
compiler flags like the sysroot path or deployment target.

Closes: #19794
Suggested-by: Kyle Fleming
2019-10-09 09:18:33 -04:00
Ben Boeckel
5d3b825cbd ExternalProject: fix some documentation typos 2019-10-09 08:27:44 -04:00
Corentin Plouet
553658393c Graphviz: added test suite, fixes, enhancements
* Added a fairly comprehensive test suite
* Separated the graph traversal logic from the Graphviz generation
  code by introducing a new class, cmLinkItemsGraphVisitor{.h,cxx}
* Made the graph traversal logic less ad-hoc by using existing
  methods in the GlobalGenerator; this fixed a few bugs
* Added support for new target types: custom targets, object
  and unknown libraries
* Improved support for ALIAS libraries by showing the alias(es)
  in the graph
* Introduced new flags to control those new libraries (consistent
  with existing flags)
* Updated the documentation
* Removed useless setting to set graph type in dot file
* Improved the node/edge shapes (nicer, more consistent)
* Added a legend to the graph
* Some refactoring and cleanup of the Graphviz generation code
* Added test and fix for issue 19746
2019-10-08 13:45:56 +11:00
Gregor Jasny
638fa41234 Apple: Set Clang ASM compiler features
The same is done for the C and CXX language. This initializes
compiler flags like the sysroot path or deployment target.

Closes: #19794
Suggested-by: Kyle Fleming
2019-10-07 20:51:01 +02:00
Brad King
f9e2c17458 Merge topic 'pch-clang-pch-regen'
bc4f8f4472 PCH: Use clang's own pch functionality instead of the GCC emulation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3881
2019-10-04 10:13:00 -04:00
Brad King
d918b4a545 Merge topic 'FindGTK2-harfbuzz'
effafca77e FindGTK2: Add harfbuzz to GTK2_INCLUDE_DIRS

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3877
2019-10-03 09:11:36 -04:00
Cristian Adam
bc4f8f4472 PCH: Use clang's own pch functionality instead of the GCC emulation
Fixes: #19786
2019-10-03 14:43:00 +02:00
Markus Mittendrein
effafca77e FindGTK2: Add harfbuzz to GTK2_INCLUDE_DIRS
Fixes: #19531
2019-10-02 11:31:44 -04:00
Marc Chevrier
3d02593986 FindJava: ensure all versions can be found
Fixes: #19765
2019-10-02 14:47:11 +02:00
Brad King
20e9151e6c Merge topic 'vs-v142-version'
5117389931 VS: Fix support for v142 toolset minor versions

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3874
2019-10-02 07:47:25 -04:00
Brad King
5117389931 VS: Fix support for v142 toolset minor versions
When using `-T v142,version=14.22` the `.props` file location is
different starting with version `14.20` than it was in `14.16` and
below.  Adapt the path based on the version.

Fixes: #19779
2019-10-01 11:39:38 -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
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
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
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
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
Marc Chevrier
60473cc660 FPHSA: add capability to specify message explaining reason of failure
Fixes: #19660
2019-09-27 16:04:54 +02: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
Kyle Edwards
5fa625d611 Merge topic 'cpack-DEB-use-CPACK_PACKAGE_DESCRIPTION_FILE'
33c7ea513d CPackDeb: Use `CPACK_PACKAGE_DESCRIPTION_FILE`
53be31e19c Refactor: Use `list` commands instead of old-way string ops
b2c67a7703 Style: Remove spaces after command call and `(`

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3541
2019-09-26 09:23:31 -04:00
Brad King
28bd7e41b8 Merge topic 'iar-v850-asm'
158f3795b8 IAR: Add v850 assembler support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3856
2019-09-24 10:30:39 -04:00
Brad King
004876b214 Merge topic 'FindThreads-lib-name'
de5f123d3a FindThreads: Do not hard-code '-l' flag on library name

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3857
2019-09-24 10:29:30 -04:00
Brad King
a934799907 Merge topic 'FindOpenSSL-static-deps'
8098bd5768 FindOpenSSL: add pthread and dl dependencies to static lib on Linux

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3820
2019-09-24 10:28:21 -04:00
Alan W. Irwin
de5f123d3a FindThreads: Do not hard-code '-l' flag on library name
When not using the `-pthread` flag we instead return a library to link
by name.  Previously we hard-coded the `-l` flag before the library
name.  When used with `target_link_libraries`, the hard-coded `-l` flag
is preserved rather than transformed into the link option preferred by
the toolchain in use.  Drop the explicit `-l` part to let CMake's
generators produce the proper way to link the threads library for the
current toolchain.

Fixes: #19747
2019-09-23 10:43:27 -04:00
Nico Mueller
158f3795b8 IAR: Add v850 assembler support
Assembler compiler configuration for 'v850' architecture

Issue: #17264
2019-09-23 13:14:14 +02:00
Alex Turbov
33c7ea513d CPackDeb: Use CPACK_PACKAGE_DESCRIPTION_FILE
Also, handle per-component description nicely.
2019-09-22 00:31:24 +02:00
Alex Turbov
53be31e19c Refactor: Use list commands instead of old-way string ops 2019-09-21 23:06:30 +02:00
David Callu
8098bd5768 FindOpenSSL: add pthread and dl dependencies to static lib on Linux 2019-09-20 22:39:20 +02:00
Brad King
9c31d83aa2 Merge topic 'autogen_path_prefix'
cc0900d9cd Help: Add release notes for AUTOMOC_PATH_PREFIX
692d8e3492 Help: Add documentation for AUTOMOC_PATH_PREFIX
1933ade9f1 Tests: At QtAutogen.MocIncludeSymlink test
706d9738a6 Tests: Merge QtAutogen.MocIncludeStrict and MocIncludeRelaxed
d018d27c10 Autogen: Add moc path prefix generation (AUTOMOC_PATH_PREFIX)
77983c8147 Autogen: Add IsHeader flag to SourceFileT class
f9e5441eb4 Autogen: Abbreviate file paths in messages
51676cf655 Autogen: Split JobEvalCacheT job into separate moc and uic jobs
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3818
2019-09-19 11:19:52 -04:00
Brad King
cca5897318 Merge topic 'CMakeFindBinUtils-install_name_tool-prefix'
13a7c858c8 Use _CMAKE_TOOLCHAIN_PREFIX for install_name_tool as well

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3830
2019-09-19 09:34:23 -04:00
Brad King
98d53ba1d6 Merge topic 'FindGnuTLS-target'
44e8b8f1f2 FindGnuTLS: add target GnuTLS::GnuTLS

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3825
2019-09-19 09:32:02 -04:00
Isuru Fernando
13a7c858c8 Use _CMAKE_TOOLCHAIN_PREFIX for install_name_tool as well 2019-09-18 12:05:39 -04:00
David Callu
44e8b8f1f2 FindGnuTLS: add target GnuTLS::GnuTLS
Also add a test case for the module.
2019-09-18 12:03:53 -04:00
Brad King
a981a9a745 Merge topic 'shared-pch'
729d997f10 Precompile Headers: Add REUSE_FROM signature

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Rickard Englund <rickard@r-englund.com>
Acked-by: Viktor Kirilov <vik.kirilov@gmail.com>
Merge-request: !3762
2019-09-18 11:34:00 -04:00
Brad King
e82e4b0341 Merge topic 'iar-v850'
bd5006e813 IAR: Add v850 support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3821
2019-09-17 11:09:56 -04:00
Brad King
42a20ef79b Merge topic 'allow-pkg-config-missing-libraries'
28cb86d796 FindPkgConfig: Allow libraries that can't be found with their full path

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Rolf Eike Beer <eike@sf-mail.de>
Merge-request: !3781
2019-09-17 11:08:43 -04:00
Cristian Adam
729d997f10 Precompile Headers: Add REUSE_FROM signature
Add the ability to share precompiled headers artifacts between
targets.

Fixes: #19659
2019-09-17 11:58:38 +02:00
Chuck Atkins
28cb86d796 FindPkgConfig: Allow libraries that can't be found with their full path
pkg-config's .pc files can sometimes provide libraries that are visible to
the linker but not present in CMake's known search paths.  In the case
where CMake can find some, but not all of the library dependencies
provided in a .pc file, this allows them to be passed through as "-lfoo"
when the full path can't be found.

This also removes the test failure cases that occured because of this
scenario and adjsuts the remaining tests to account for not-found
libraries
2019-09-16 13:02:08 -04:00
Sebastian Holtermann
d018d27c10 Autogen: Add moc path prefix generation (AUTOMOC_PATH_PREFIX)
The new `AUTOMOC_PATH_PREFIX` boolean target property enables automatic
generation of the path prefix `-p` option for `moc`.
`AUTOMOC_PATH_PREFIX` is initialized from the variable
`CMAKE_AUTOMOC_PATH_PREFIX`, which is ON by default.

When `AUTOMOC_PATH_PREFIX` is enabled, CMake tests if a `moc`ed header file is
in one of the include directories.  If so, then the `-p` option, with the
relative path of the header parent directory to the respective include
directory, is added to the `moc` command.  If the header file is not in an
include directory, the `-p` option is omitted.

Closes: #18815 "AUTOMOC: generated files include full relative path,
                breaking certain reproducible builds"
2019-09-16 18:18:48 +02:00
Nico Mueller
bd5006e813 IAR: Add v850 support
Add compiler identification for V850.

Issue: #17264
2019-09-16 11:07:04 -04:00
Alex Turbov
b2c67a7703 Style: Remove spaces after command call and ( 2019-09-08 20:29:36 +03:00