45264 Commits

Author SHA1 Message Date
Vedran Vujinovic
4dc8c153ec Tests: Teach VSWinStorePhone to verify the content of generated xap
XAP format was used as app package format on Windows Phone 7 and 8.
It was replaced by APPX format since Windows Phone 8.1.
2019-09-25 20:57:47 +02:00
Brad King
b42cb1ff80 Merge branch 'release-3.15' 2019-09-25 12:40:49 -04:00
Brad King
76ae4c5839 Merge topic 'vs-16.4-custom-commands'
0578239d3a VS: Tell VS 16.4 not to verify SYMBOLIC custom command outputs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3860
2019-09-25 12:39:14 -04:00
Brad King
c54448e185 PCH: Propagate INTERFACE_PRECOMPILE_HEADERS in install(EXPORT)
This was accidentally left out of commit 0467a2f91b (PCH: add
PRECOMPILE_HEADERS to special properties, 2015-03-12).  Also add a test
case for `install(EXPORT)` and `export()` propagation of precompiled
headers.

Fixes: #19741
2019-09-25 12:06:28 -04:00
Sebastian Holtermann
d867e05892 Autogen: Use JSON instead of CMake script for info files
We used to store information for the _autogen target in a CMake script
file AutogenInfo.cmake, which was imported by a temporary cmake instance in
the _autogen target.  This introduced the overhead of creating a temporary
cmake instance and inherited the limitations of the CMake language which
only supports lists.

This patch introduces JSON files to pass information to AUTORCC and
autogen_ targets.  JSON files are more flexible for passing data, e.g. they
support nested lists.

The patch has the side effects that

- AutogenInfo.cmake is renamed to AutogenInfo.json
- AutogenOldSettings.txt is renamed to AutogenUsed.txt
- RCC<qrcBaseName><checksum>Info.cmake is renamed to
  AutoRcc_<qrcBaseName>_<checksum>_Info.json
- RCC<qrcBaseName><checksum>.lock is renamed to
  AutoRcc_<qrcBaseName>_<checksum>_Lock.lock
- RCC<qrcBaseName><checksum>Settings.txt is renamed to
  AutoRcc_<qrcBaseName>_<checksum>_Used.txt
2019-09-25 10:07:09 -04:00
Sebastian Holtermann
881e3cfbf9 Autogen: Variable renames and cleanups 2019-09-25 10:31:06 +02:00
Sebastian Holtermann
fc36f4410b Autogen: Inline GetKnownQtVersions function 2019-09-25 10:31:06 +02:00
Sebastian Holtermann
1f0d23546d Autogen: Return unsigned int from GetParallelCPUCount() 2019-09-25 10:31:06 +02:00
Regina Pfeifer
6a05bd3fa6 cm/algorithm: Provide function cm::clamp 2019-09-25 10:30:58 +02:00
Kitware Robot
a6b3791814 CMake Nightly Date Stamp 2019-09-25 00:01:07 -04:00
Brad King
0cfbd85e7b Tests: Teach RunCMake to support a custom working directory 2019-09-24 14:10:34 -04:00
Daniel Eiband
7847fef510 VS: Fix access violation when calling Visual Studio macro
Fixes: #19730
2019-09-24 17:44:28 +02:00
Brad King
5a35a9c70d Merge branch 'vs-16.4-custom-commands' into release-3.15
Merge-request: !3860
2019-09-24 10:46:13 -04:00
Brad King
0578239d3a VS: Tell VS 16.4 not to verify SYMBOLIC custom command outputs
VS 16.4 introduces an additional check on `CustomBuild` rules that warns
if the outputs of the command are not created.  However, CMake supports
marking outputs with the `SYMBOLIC` property to indicate that they will
not actually be generated.  That property is used by Makefile and Ninja
generators but has not been needed by the VS generators before.  Teach
the VS generator to disable `VerifyInputsAndOutputsExist` in custom
build rules that have a symbolic output.

Fixes: #19737
2019-09-24 10:41:20 -04:00
Brad King
dcc117b944 Merge topic 'pch-relative-includes'
acb9511044 Precompile headers: Treat headers as relative to current source directory

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3840
2019-09-24 10:34:38 -04:00
Brad King
908fc3605b Merge topic 'add-genex-evaluate-utility'
7dcf9cb83c cmGeneratorExpression: Add cmGeneratorExpression::Evaluate utility
c7c59dae82 cmCustomCommandGenerator: Replace generator expression member
c12222db86 cmGeneratorExpression: Remove Evaluate overload by parameter re-ordering
1811411fec cmGeneratorExpression: Move quiet flag to cmCompiledGeneratorExpression
edb0bbd18b cmGeneratorTarget: Remove unused virtual signature of TargetPropertyEntry

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3852
2019-09-24 10:33:41 -04:00
Brad King
13c7a16cde Merge topic 'miscellaneous-refactorings'
f4afcd5c6b VS: Remove call to ConvertToWindowsExtendedPath with result discarded
61fdf326d8 cmState: Avoid lowering command name twice
0965bd9c06 Generators: Remove function declarations which do not have a definition

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3847
2019-09-24 10:32:43 -04:00
Brad King
a6093ed18d Merge topic 'update-cached-is-generated-property'
8456f60dbc cmSourceFile: Remove non-const GetProperties accessor

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3848
2019-09-24 10:31:27 -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
Brad King
c4afe766f7 Merge topic 'free-free-set-them-free'
920f0dd83a cmInstallCommand: Port away from cmCommand
1dd31297ca cmTargetLinkLibrariesCommand: Port away from cmCommand
d5c63f073f cmSourceGroupCommand: Port away from cmCommand
42e413bcbb cmSetTargetPropertiesCommand: Port away from cmCommand
77aa75b8dc cmProjectCommand: Port away from cmCommand
9c521088df cmLoadCacheCommand: Port away from cmCommand
fcfec154ac cmLinkDirectoriesCommand: Port away from cmCommand
d038beec21 cmIncludeDirectoryCommand: Port away from cmCommand
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3829
2019-09-24 10:27:17 -04:00
Vedran Vujinovic
481070a78a Tests: Teach VSWinStorePhone to verify the content of generated appx/msix
Add a test to verify the content of generated UWP app package - appx/msix.
MSIX format was introduced Visual Studio 2017 version 15.9.0 and
Windows SDK version 17763.
2019-09-24 10:12:43 -04:00
Kitware Robot
a3492c094a CMake Nightly Date Stamp 2019-09-24 00:01:06 -04:00
Daniel Eiband
fd3a394614 add_custom_command: Format files in error message in a single line 2019-09-23 23:39:07 +02:00
Daniel Eiband
a1cc6b4447 add_custom_target: Add output checks for custom target byproducts
Use the output checks for byproducts of add_custom_command also for byproducts
of add_custom_target.
2019-09-23 22:18:36 +02:00
Daniel Eiband
cbb861ade8 add_custom_command: Add tests for custom command output checks 2019-09-23 22:15:31 +02:00
Daniel Eiband
7dcf9cb83c cmGeneratorExpression: Add cmGeneratorExpression::Evaluate utility
cmGeneratorExpression::Evaluate is a shortcut when only the evaluated string is
needed or an instance of cmCompiledGeneratorExpression cannot be cached.

Fixes: #19686
2019-09-23 21:19:15 +02:00
Cristian Adam
acb9511044 Precompile headers: Treat headers as relative to current source directory
Teach `target_precompile_headers` to treat relative paths the
same way as `target_sources`.

Fixes: #19733
2019-09-23 11:13:13 -04:00
Brad King
17c5b32dc2 Merge topic 'smart_ptr/cmDependsC'
8d0cec747c cmDependsC: remove cmDeleteAll call

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3842
2019-09-23 10:53:12 -04:00
Brad King
15163c9234 Merge topic 'object-library-sources'
71e677392b Do not collect objects from dependencies of object libraries

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3843
2019-09-23 10:51:55 -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
Brad King
3d1fb997e5 Merge topic 'HP-UX_Port_GCC'
ba315f2035 bootstrap: Require GCC 4.9 or higher on HP-UX
5ffb2dbff6 libuv: Add partial port to HP-UX
1059f9a96d jsoncpp: Fix compilation on HP-UX 11.31 ia64 with GCC 4.9.3

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3508
2019-09-23 10:32:42 -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
Kitware Robot
aebb1af7a2 CMake Nightly Date Stamp 2019-09-23 00:01:06 -04:00
Daniel Eiband
c7c59dae82 cmCustomCommandGenerator: Replace generator expression member
Replace generator expression member variable by stack variable in the
constructor.
2019-09-22 09:51:20 +02:00
Daniel Eiband
c12222db86 cmGeneratorExpression: Remove Evaluate overload by parameter re-ordering
Simplify by re-ordering parameters of cmCompiledGeneratorExpression::Evaluate
so that frequently used parameters are before less frequently used parameters.
This allows with little extra arguments to get rid of one Evaluate overload,
which makes it easier to implement the cmGeneratorExpression::Evaluate utility.
The latter would otherwise need four overloads.
2019-09-22 09:51:19 +02:00
Daniel Eiband
1811411fec cmGeneratorExpression: Move quiet flag to cmCompiledGeneratorExpression
The quiet flag is false for all but one call to Evaluate.  Make the quiet flag
a setter of cmCompiledGeneratorExpression to be able to remove it from the
Evaluate function signature.
2019-09-22 09:49:41 +02:00
Kitware Robot
de14d38cd2 CMake Nightly Date Stamp 2019-09-22 00:01:05 -04: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
Daniel Eiband
edb0bbd18b cmGeneratorTarget: Remove unused virtual signature of TargetPropertyEntry
Remove unused virtual Evaluate signature of TargetPropertyEntry.  Also remove
the boolean parameter quiet.
2019-09-21 22:40:57 +02:00
Daniel Eiband
8456f60dbc cmSourceFile: Remove non-const GetProperties accessor
Manipulating the property map of cmSourceFile directly may invalidate the class
invariant of the cached value IsGenerated.  Provide the setter SetProperties
which also updates IsGenerated.
2019-09-21 13:31:36 +02:00
Daniel Eiband
f4afcd5c6b VS: Remove call to ConvertToWindowsExtendedPath with result discarded
Remove call to ConvertToWindowsExtendedPath.  The call has no side effect and
the return value is discarded.
2019-09-21 12:56:10 +02:00
Daniel Eiband
61fdf326d8 cmState: Avoid lowering command name twice
The given command given to GetCommand is already lower case so we can use
GetCommandByExactName directly.
2019-09-21 12:56:05 +02:00
Daniel Eiband
0965bd9c06 Generators: Remove function declarations which do not have a definition 2019-09-21 12:55:37 +02:00
Kitware Robot
47a12c6585 CMake Nightly Date Stamp 2019-09-21 00:02:32 -04:00
Regina Pfeifer
920f0dd83a cmInstallCommand: Port away from cmCommand 2019-09-21 05:20:59 +02:00
Regina Pfeifer
1dd31297ca cmTargetLinkLibrariesCommand: Port away from cmCommand 2019-09-21 05:15:26 +02:00
Regina Pfeifer
d5c63f073f cmSourceGroupCommand: Port away from cmCommand 2019-09-21 05:14:42 +02:00