Commit Graph

486 Commits

Author SHA1 Message Date
Brad King
df3baee8ff Merge topic 'reference-IMPORTED_IMPLIB-more'
2944bf46d5 Help: Reference IMPORTED_IMPLIB from the IMPORTED_LOCATION documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4034
2019-11-12 09:36:55 -05:00
Marc Aldorasi
2944bf46d5 Help: Reference IMPORTED_IMPLIB from the IMPORTED_LOCATION documentation
Issue: #16698
2019-11-11 11:26:30 -05:00
Cristian Adam
665954fa8d ObjC: Document ObjC/ObjCXX standard properties / variables
Fixes: #19919
2019-11-11 16:10:19 +01:00
Craig Scott
b613eecfa0 Merge topic 'docs-UNITY_BUILD'
fcacd8ce8d Help: Improve readability and fix inaccuracies in unity build docs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4019
2019-11-10 15:55:43 -05:00
Craig Scott
fcacd8ce8d Help: Improve readability and fix inaccuracies in unity build docs 2019-11-09 19:48:34 +11:00
Brad King
f7612a6668 Merge topic 'unity-include-generated'
7ddf462304 Unity build: Include GENERATED files into unity build

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Julien Schueller <schueller@phimeca.com>
Merge-request: !4001
2019-11-07 10:26:50 -05:00
Cristian Adam
7ddf462304 Unity build: Include GENERATED files into unity build
There is no reason to skip the generated files, in case of problems
one can use the SKIP_UNITY_BUILD_INCLUSION property.

Fixes: #19925
2019-11-06 11:47:15 -05:00
Brad King
ce7408514c Merge topic 'install-name-dir-genex'
a0e2e0ca97 Help: Add documentation and release notes for INSTALL_NAME_DIR genex
deeab72aae Tests: Add tests for INSTALL_NAME_DIR
3c85f11fed INSTALL_NAME_DIR: Add support for generator expressions
2ec1156b80 Refactor: Generalize cmExportInstallFileGenerator::ReplaceInstallPrefix()

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3989
2019-11-06 09:32:22 -05:00
Brad King
20fdf9a92b Merge topic 'docs-INSTALL_REMOVE_ENVIRONMENT_PATH'
dd05ef429a Help: Fix inaccuracies in INSTALL_REMOVE_ENVIRONMENT_RPATH docs
ac8de0dbcf RPATH: Remove stray indent in generated file(RPATH_CHANGE) command

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3985
2019-11-05 11:21:25 -05:00
Kyle Edwards
a0e2e0ca97 Help: Add documentation and release notes for INSTALL_NAME_DIR genex 2019-11-04 19:02:16 -05:00
Craig Scott
dd05ef429a Help: Fix inaccuracies in INSTALL_REMOVE_ENVIRONMENT_RPATH docs
The previous docs assumed one had to set INSTALL_RPATH for
this target property to have an effect, but the actual condition is
only that the install rpath is different to the build rpath. Even if
the install rpath is empty, it is possible that CMake will rewrite
the rpath during install because the build rpath could be
non-empty.
2019-11-04 17:02:57 +11:00
Charly Mourglia
89ff3ee779 VS: Add VS_DOTNET_DOCUMENTATION_FILE property
Add a `VS_DOTNET_DOCUMENTATION_FILE` target property to tell VS
generators to add a `DocumentationFile` setting in `.csproj` files.

Fixes: #19784
2019-10-15 11:44:55 -04:00
Brad King
13c8dbd5a6 Help: Document CMAKE_UNITY_BUILD/CMAKE_EXPORT_COMPILE_COMMANDS limitation
These two options currently do not work well together.  Mention this
limitation in the documentation.

Issue: #19826
2019-10-11 08:05:59 -04:00
Brad King
1d9155eb93 Help: Improve UNITY_BUILD documentation formatting 2019-10-11 08:03:29 -04:00
Brad King
0c5f78478e Merge topic 'xcode-debug-document-versioning'
67200c37b0 xcode: Add XCODE_SCHEME_DEBUG_DOCUMENT_VERSIONING property

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3876
2019-10-02 07:51:06 -04:00
Gregor Jasny
67200c37b0 xcode: Add XCODE_SCHEME_DEBUG_DOCUMENT_VERSIONING property 2019-10-01 23:02:35 +02: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
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
05d7ca14e9 Merge branch 'backport-3.14-fix-EXCLUDE_FROM_ALL-subdir-all' 2019-09-30 09:19:21 -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
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
Sebastian Holtermann
692d8e3492 Help: Add documentation for AUTOMOC_PATH_PREFIX 2019-09-18 11:48:23 -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
Cristian Adam
7114c141e2 Unity build: Add support for Ninja and Makefile generators 2019-08-29 16:44:09 +02:00
Brad King
fa36e2151d Merge topic 'precompile-headers'
8da78d4efe Precompile headers: Update documentation
5772930164 Precompile headers: Add unit tests
519606704e Precompile headers: Add support for Visual Studio generators
28be170fbc Precompile headers: Add support for Xcode generator
b8626261e9 Precompile headers: Add methods to generate PCH sources
375d01c680 PCH: add example/test
9b6797e71d PCH: add target_precompile_headers command
0467a2f91b PCH: add PRECOMPILE_HEADERS to special properties

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Daniel Pfeifer <daniel@pfeifer-mail.de>
Acked-by: Ivan171 <heavenandhell171@gmail.com>
Acked-by: Stanislav Ershov <digital.stream.of.mind@gmail.com>
Acked-by: Steve Mokris <smokris@softpixel.com>
Acked-by: Evgeniy Dushistov <dushistov@mail.ru>
Acked-by: Danila Malyutin <flashmozzg@gmail.com>
Acked-by: Viktor Kirilov <vik.kirilov@gmail.com>
Acked-by: Lucas Zhao <zhaopf6@163.com>
Merge-request: !3553
2019-08-29 09:38:21 -04:00
Brad King
3e93b2fa66 Merge topic 'vs-ConfigurationType-genex'
8909a450a6 VS: Add support for generator expressions to VS_CONFIGURATION_TYPE

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3746
2019-08-28 11:53:12 -04:00
Cristian Adam
8da78d4efe Precompile headers: Update documentation 2019-08-28 11:47:51 -04:00
Saleem Abdulrasool
369c48ee43 Swift: honour -swift-version in Ninja generator
Swift has supported `CMAKE_Swift_LANGUAGE_VERSION` and
`Swift_LANGUAGE_VERSION` but didn't apply that to Ninja generated
targets.  Consider the property when calculating the flags.
2019-08-26 11:38:40 -04:00
Daniel Eiband
8909a450a6 VS: Add support for generator expressions to VS_CONFIGURATION_TYPE
Generator expressions in target property VS_CONFIGURATION_TYPE might be used to
set the ConfigurationType to Utility for certain configurations to not build
the target while still linking to the target in other configurations.

Fixes: #19613
2019-08-26 15:22:43 +02:00
Robert Maynard
a233e4e7d9 CUDA: Compilers can now state they don't require a device linking step 2019-08-06 15:44:15 -04:00
Jiang Yue
bd2793b6e9 Help: Add documentation for INSTALL_REMOVE_ENVIROMENT_RPATH 2019-07-25 12:30:24 -04:00
Brad King
dcdeade5ee Merge topic 'msvc-runtime-library-doc'
282d9f3168 MSVC: Document behavior when MSVC_RUNTIME_LIBRARY is not set

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3573
2019-07-19 11:57:10 -04:00
Brad King
282d9f3168 MSVC: Document behavior when MSVC_RUNTIME_LIBRARY is not set
By default `CMAKE_MSVC_RUNTIME_LIBRARY` is not set.  Document the
default runtime library selection in that case.  We already test it.
2019-07-19 11:17:32 -04:00
Brad King
2fa920c0cd AIX: Create import library for executables with exports
On AIX, plugins meant to be loaded into executables via `dlopen` must be
linked with access to a list of symbols exported from the executable in
order to use them (when not using runtime linking).  The AIX linker
supports specifying this list as an "import file" passed on the command
line either via the `-bI:...` option or (with a leading `#! .` line) as
a normal input file like any other library file.

The linker import file plays the same role on AIX as import libraries do
on Windows.  Teach CMake to enable its import library abstraction on AIX
for executables with the `ENABLE_EXPORTS` target property set.  Teach
our internal `ExportImportList` script to optionally generate a leading
`#! .` line at the top of the generated export/import list.  Update our
rule for linking an executable with exports to generate a public-facing
"import library" implemented as an AIX linker import file.

With this approach, our existing infrastructure for handling import
libraries on Windows will now work for AIX linker import files too:

* Plugins that link to their executable's symbols will be automatically
  linked using the import file on the command line.

* The executable's import file will be (optionally) installed and
  exported for use in linking externally-built plugins.

This will allow executables and their plugins to build even if we later
turn off runtime linking.

Issue: #19163
2019-07-16 14:15:13 -04:00
Brad King
84ddeb8fa5 Help: Clarify ENABLE_EXPORTS per-platform link behavior
Spell out the behavior on each platform in a bullet list.
2019-07-16 10:09:40 -04:00
Brad King
3327fe948e Merge topic 'vs-dpi-aware'
cd92f8f8bf VS: Add VS_DPI_AWARE target property

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3418
2019-06-27 08:56:41 -04:00
Matt Weir
cd92f8f8bf VS: Add VS_DPI_AWARE target property
Enables setting the visual studio project property for Manifests,
controlling the DPI Aware setting.
2019-06-26 09:55:49 -04:00
Brad King
06f1560a58 Merge topic 'build-install-rpath-genex'
d29ed8a114 BUILD_RPATH/INSTALL_RPATH: Add generator expression support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3481
2019-06-26 07:14:04 -04:00
Brad King
d7d282cd89 Merge topic 'doc-CMAKE_FRAMEWORK-crossref'
f57a53d43e Help: Document that CMAKE_FRAMEWORK initializes FRAMEWORK target prop

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3478
2019-06-26 06:59:33 -04:00
Brad King
2bbbc4ce1f Merge branch 'doc-CMAKE_FRAMEWORK-crossref' into release-3.15
Merge-request: !3478
2019-06-26 06:56:37 -04:00
Kyle Edwards
d29ed8a114 BUILD_RPATH/INSTALL_RPATH: Add generator expression support
Fixes: #19423
2019-06-25 10:55:03 -04:00
Craig Scott
f57a53d43e Help: Document that CMAKE_FRAMEWORK initializes FRAMEWORK target prop 2019-06-25 21:57:31 +10:00
Brad King
2225c8a1dd Merge topic 'doc-IMPORTED_LOCATION'
96c6bc2584 Help: Improve documentation of IMPORTED_LOCATION property

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Alex Turbov <i.zaufi@gmail.com>
Merge-request: !3466
2019-06-24 08:26:46 -04:00
Brad King
7dbd21fcf4 Merge branch 'doc-IMPORTED_LOCATION' into release-3.15
Merge-request: !3466
2019-06-21 12:00:44 -04:00
Alexandru Croitor
96c6bc2584 Help: Improve documentation of IMPORTED_LOCATION property
Mention the usage of a configuration specific
`IMPORTED_LOCATION_<CONFIG>` value even if the `<CONFIG>` is not the
same as the active configuration of the currently built project.

Co-Author: Brad King <brad.king@kitware.com>
2019-06-21 11:59:38 -04:00
Sebastian Holtermann
b55e5d6641 Help: Autogen: Overhaul AUTOMOC target property documentation
- Rewrites and restructures the AUTOMOC target property documentation
- Remove the reference to the deprecated CMAKE_AUTOMOC_RELAXED_MODE

Fixes: #19167
2019-06-19 10:40:42 -04:00
Sebastian Holtermann
fdab21f30b Help: Autogen: Overhaul AUTOUIC target property documentation 2019-06-19 10:40:42 -04:00
Sebastian Holtermann
d08548c624 Help: Autogen: Overhaul AUTORCC target property documentation 2019-06-19 10:40:42 -04:00
Sebastian Holtermann
e61074c672 Help: Improve ADDITIONAL_CLEAN_FILES documentation
Extend the `ADDITIONAL_CLEAN_FILES' target and directory property
documentation.

Fixes: #19341
2019-06-07 21:10:19 +10:00
Brad King
e075e64fd8 Help: Document Swift_DEPENDENCIES_FILE property defaults
Copy wording from the release notes.
2019-06-04 09:55:37 -04:00