Commit Graph

36316 Commits

Author SHA1 Message Date
Brad King
a9b11235a8 Merge topic 'find_package-shorter-message'
d0b9d1cc find_package: shorten output for missing package in config mode
d9df805f cmFindPackageCommand: Split condition to improve readability

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !851
2017-05-25 15:13:03 -04:00
Brad King
690acadc17 codecvt: Re-implement do_out and do_unshift
The previous implementation assumed that only one byte would be given
in the `from` buffer by the caller at a time.  This may be true for
MSVC but is not for the GNU library on Windows.  Re-implement these
methods to handle more than one byte per call.

Also simplify the state management by keeping all state between calls
directly in the `mbstate_t` argument instead of using it to index our
own heap-allocated state.

Fixes: #16893
2017-05-25 15:03:03 -04:00
Brad King
867b17428a Merge branch 'upstream-KWSys' into update-kwsys
* upstream-KWSys:
  KWSys 2017-05-25 (160bed45)
2017-05-25 09:40:59 -04:00
KWSys Upstream
402c6c121c KWSys 2017-05-25 (160bed45)
Code extracted from:

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

at commit 160bed451833380e9f6ddc60e709ab6800bf2129 (master).

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

Brad King (1):
      51859eab CONTRIBUTING: Specify clang-format version used for code style

Florian Maushart (2):
      684bcda6 SystemInformation: Expose CPU feature flags publicly
      70b8332f SystemInformation: Add CPU_FEATURE_FPU flag
2017-05-25 09:40:58 -04:00
Kitware Robot
bc2cfd7c98 CMake Nightly Date Stamp 2017-05-25 00:01:07 -04:00
Daniel Pfeifer
60afab9e44 IWYU: add mapping for std::__decay_and_strip 2017-05-25 00:55:40 +02:00
Pavel Solodovnikov
76bdb40762 Change std::basic_string<char> to std::string 2017-05-24 23:30:57 +03:00
Brad King
30675ec49b VS: Fix indentation of .vcxproj files
Patch-by: vvs31415 on gitlab.kitware.com
2017-05-24 11:07:53 -04:00
Brad King
aa7e9a9674 cmServer: Fix compiler -Wdouble-promotion warning 2017-05-24 10:55:45 -04:00
Brad King
43d9b296f5 Merge branch 'release' 2017-05-24 10:39:11 -04:00
Brad King
9f552e2e5a Merge topic 'vs15-GNUtoMS'
abe8a623 GNUtoMS: Add search path for VS 2017 environment scripts

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !875
2017-05-24 10:37:51 -04:00
Brad King
20b892d9a2 Merge topic 'IAR-response-flag-space'
68ea936f Added space after IAR response file flag

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !880
2017-05-24 10:37:33 -04:00
Brad King
5e0858cc15 Merge topic 'update-kwsys'
6f334159 Merge branch 'upstream-KWSys' into update-kwsys
47a8ff34 KWSys 2017-05-23 (411e958f)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !882
2017-05-24 10:26:09 -04:00
Kitware Robot
56f87f179a CMake Nightly Date Stamp 2017-05-24 00:01:05 -04:00
Alex Turbov
59ffabfeec Improve Doxygen support
Except Graphviz's `dot` Doxygen may use few other utilities like
`mscgen` (Message Sequence Chart) and `dia` (Diagram Editor).

Now this module allows to manage Doxygen settings from `CMakeLists.txt`
and forget about `Doxyfile`s. Also it provides a helper function
to add a target to generate documentation: `doxygen_add_docs`.

Implement code review notes:

- Introduce `COMPONENTS` to find: `dot`, `mscgen` and `dia`;
- Deprecate variables `DOXYGEN_SKIP_DOT`, `DOXYGEN_EXECUTABLE`,
  `DOXYGEN_DOT_EXECUTABLE`, `DOXYGEN_DOT_FOUND` in favour of
  `doxygen_add_docs ` usage instead;
- Properly handle paths to found tools in Windows;
- Prevent adding a custom target if Doxygen was not really found;
- Introduce exported (executable) targets for found components.

Co-Author: Craig Scott <craig.scott@crascit.com>
2017-05-24 10:15:45 +07:00
Tibor Szabo
d303465448 FindCygwin: Use find_program instead of find_path
Cygwin's installation directory is mainly needed to use some programs
of it, irrespectively of the target architecture. However, find_path
does not consider cygwin with architecture different than the target
architecture. This is because cygwin's installation path is retrieved
from the registry. WOW64 view is not used by find_path if generating
for 32-bit architecture and vice versa, so cygwin is not found then.
find_program tries both views, this way a 64-bit cygwin may be used
for 32 bit build and vice versa.
2017-05-23 22:51:01 +02:00
Christoph Grüninger
d0b9d1cceb find_package: shorten output for missing package in config mode
If CONFIG or MODULE is given and the package is not REQUIRED,
output a one-liner instead of the full warning.

Update Tests/RunCMake/find_package expected output to match.
2017-05-23 15:27:42 -04:00
Christoph Grüninger
d9df805f6a cmFindPackageCommand: Split condition to improve readability 2017-05-23 15:23:10 -04:00
Brad King
6f3341591d Merge branch 'upstream-KWSys' into update-kwsys
* upstream-KWSys:
  KWSys 2017-05-23 (411e958f)
2017-05-23 14:34:26 -04:00
KWSys Upstream
47a8ff3491 KWSys 2017-05-23 (411e958f)
Code extracted from:

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

at commit 411e958f46246eaf8e044b6d0af542685bca5fcf (master).

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

Brad King (1):
      c23e388b ConsoleBuf: Avoid signed/unsigned comparison
2017-05-23 14:34:23 -04:00
Brad King
ae5f98a5e3 Merge topic 'vs-reduce-UseOfMfc'
b520b18c VS: Write UseOfMfc tag only if CMAKE_MFC_FLAG is present

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !873
2017-05-23 14:17:16 -04:00
Brad King
150d9daf89 Merge topic 'darwin-bootstrap'
4edcc375 bootstrap: prefer Clang over GNU on Darwin

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !878
2017-05-23 14:12:05 -04:00
Brad King
346f1c0cf3 Merge topic 'FindImageMagick-support-v7'
4131d1b5 FindImageMagick: Update to work with v7

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !874
2017-05-23 13:30:23 -04:00
Brad King
590c92d125 Merge topic 'FindProtobuf-targets'
a5ccddf0 FindProtobuf: Rename imported targets to match upstream names

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !876
2017-05-23 13:29:59 -04:00
Andreas Weis
68ea936ff5 Added space after IAR response file flag
Without the space between the flag and the filename, IAR will fail to
parse the arguments correctly.
2017-05-23 07:25:27 +02:00
Kitware Robot
c3c77d662a CMake Nightly Date Stamp 2017-05-23 00:01:06 -04:00
Daniel Pfeifer
4edcc3750d bootstrap: prefer Clang over GNU on Darwin 2017-05-22 22:56:55 +02:00
Brad King
67a7e090f8 Merge branch 'vs15-GNUtoMS' into release 2017-05-22 14:52:57 -04:00
Alex Ghosh
abe8a623d9 GNUtoMS: Add search path for VS 2017 environment scripts
Use `cmake_host_system_information` to query the VS Installer tool for
the locations of VS versions since VS 2017 does not provide registry
entries anymore.  Add a loop to simplify addition of future versions.
2017-05-22 14:52:05 -04:00
Robert Dailey
4131d1b58e FindImageMagick: Update to work with v7 2017-05-22 12:54:31 -05:00
Matthew Woehlke
ab358d6a85 Improve find_dependency argument handling
Remove highly specialized and totally positional argument handling in
find_dependency macro, and instead just pass arguments through to
find_package. This gives users access to the full suite of arguments
that find_package knows, and is backward compatible with the old
arguments.

Also, rewrite the unit tests for this, since the old tests are
exclusively focused on testing the old argument handling and are no
longer applicable, and add some success tests (the old tests did not
even set up the CMake state in a way that CMake had any hope of ever
finding the test package).
2017-05-22 13:32:43 -04:00
Brad King
b520b18c73 VS: Write UseOfMfc tag only if CMAKE_MFC_FLAG is present
Don't bother writing `UseOfMfc` to `.vcxproj` files when the value is
just the default of `0`.  This keeps the files cleaner.

Patch-by: vvs31415 on gitlab.kitware.com
2017-05-22 13:17:47 -04:00
Brad King
a5ccddf057 FindProtobuf: Rename imported targets to match upstream names
Rename our recently added imported targets to match those provided by
the upstream's CMake-based build.  That way a project using
`find_package(Protobuf)` can get the same target names no matter how
protobuf is found.

Suggested-by: Konstantin Podsvirov <konstantin@podsvirov.pro>
2017-05-22 10:51:55 -04:00
Brad King
73038a85ea Merge branch 'release' 2017-05-22 10:41:19 -04:00
Brad King
8ca236592b Merge topic 'add-findpackage-root-prefix'
fe8f08d2 find_*: Add docs for PackageRoot search path group
57744ca9 find_*: Add tests for PackageRoot search path group
ef3d360a find_*: Add a new PackageRoot search path group

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !796
2017-05-22 10:40:04 -04:00
Brad King
c9d9a3fb39 Merge topic 'pgi-fix-windows'
4eb15824 Windows-PGI: Add platform definitions
a94ae96e Windows-PGI: Adapt default compiler flags
c2c2d366 ImplicitLinkInfo: Add support for PGI on Windows

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !794
2017-05-22 10:37:57 -04:00
Brad King
a152e97e23 Merge topic 'UseEcos-update'
47732280 UseEcos: Fix for separate <DEFINES> and <INCLUDES> placeholders

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !871
2017-05-22 10:35:59 -04:00
Brad King
a748916f5e Merge topic 'cxx-features-check-always'
f74f01fe Check C++ features even without CMAKE_CXX_STANDARD for CMake itself

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !870
2017-05-22 10:35:30 -04:00
Kitware Robot
1b7c18a2f3 CMake Nightly Date Stamp 2017-05-22 00:01:04 -04:00
Kitware Robot
527e67eef2 CMake Nightly Date Stamp 2017-05-21 00:01:10 -04:00
Christian Pfeiffer
4eb15824b3 Windows-PGI: Add platform definitions
PGI on Windows should use the Visual C++ linker and librarian and not
the ar provided for legacy reasons. The compiler parameters themselves
are the same as their Linux parameters and not compatible to MSVC
however.
2017-05-20 20:02:51 +02:00
Christian Pfeiffer
a94ae96e6e Windows-PGI: Adapt default compiler flags
PGI demands -Bdynamic (/MD equivalent) for linking together dynamic
libraries, so we should make it our default mirroring the settings of
e.g. Visual C++ and Intel C++.
2017-05-20 20:02:51 +02:00
Christian Pfeiffer
c2c2d36619 ImplicitLinkInfo: Add support for PGI on Windows
Since PGI does not write linker directives into objects, the necessary
libraries have to be parsed from commandline. PGI does however link the
Visual C++ runtime libraries, so they have to be filtered out to ensure
no collision with settings of other languages can occur.
2017-05-20 20:02:43 +02:00
Kitware Robot
c4e7c130d8 CMake Nightly Date Stamp 2017-05-20 00:01:05 -04:00
Brad King
6867b882ec Merge topic 'target-depends-per-config'
87a37e64 cmComputeTargetDepends: Avoid nested loops over configurations
5a913794 cmComputeTargetDepends: Avoid computing with empty configuration
70c65572 Tests: Fix RunCMake.CMP0022 tll case for Debug configuration

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !865
2017-05-19 14:20:11 -04:00
Brad King
555f234fa2 Merge topic 'solarisEmptyFileFix'
1bfe3720 Tests: Ensure Solaris linker never sees empty contents

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !860
2017-05-19 14:19:28 -04:00
Brad King
caba59b8fa Merge topic 'solaris_testLibSONAME'
94cd4505 Tests: Make function name not match SONAME

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !868
2017-05-19 14:18:31 -04:00
Brad King
561e5edc3c Merge topic 'FindProtobuf-targets'
37627217 Help: Add notes for topic 'FindProtobuf-targets'
e4e1d194 FindProtobuf: add tests
f29635b6 FindProtobuf: add targets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !861
2017-05-19 14:17:50 -04:00
Brad King
a2f1c8bd98 Merge topic 'liblzma-fix-inline'
fb6142ab liblzma: Fix HAVE_INLINE and HAVE___INLINE checks

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !867
2017-05-19 14:16:53 -04:00
Florian Schmaus
4773228061 UseEcos: Fix for separate <DEFINES> and <INCLUDES> placeholders
Update the module to account for commit v3.4.0-rc1~342^2 (Factor an
<INCLUDES> placeholder out of <FLAGS> in rule variables, 2015-07-13)
and v2.6.0~537 (Create COMPILE_DEFINITIONS property for targets and
source files, 2008-01-14).

Fixes: #16904
2017-05-19 10:51:09 -04:00