Commit Graph

165 Commits

Author SHA1 Message Date
Ruslan Baratov 470437f6f9 Support CMAKE_INTERPROCEDURAL_OPTIMIZATION_<CONFIG> 2017-04-18 03:10:34 +08:00
Brad King 7b51c1c789 Merge topic 'emulatorTargetPropertyDocs'
186dd877 Help: Cross compile variable used as initial value for target property

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !683
2017-04-10 10:01:31 -04:00
Craig Scott 186dd8771e Help: Cross compile variable used as initial value for target property
Variable CMAKE_CROSSCOMPILING_EMULATOR is used to initialize
CROSSCOMPILING_EMULATOR.

Issue: #16785
2017-04-10 09:52:58 -04:00
Brad King 989484d51f Merge topic 'module-def-and-WINDOWS_EXPORT_ALL_SYMBOLS'
075f6454 Support WINDOWS_EXPORT_ALL_SYMBOLS with `.def` files
21c4ec4f cmGlobalVisualStudioGenerator: Simplify __create_def command generation
24361a45 bindexplib: Add support for parsing and integrating `.def` files
845c4824 bindexplib: Add method for parsing and integrating `.def` files
4f90e793 bindexplib: Revise coding style of CMake-specific methods

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !581
2017-03-22 08:49:09 -04:00
Brad King 075f645409 Support WINDOWS_EXPORT_ALL_SYMBOLS with .def files
The `WINDOWS_EXPORT_ALL_SYMBOLS` target property exports all symbols
found in object files explicitly given to the linker.  However, the
linker may also find additional symbols in dependencies and copy them
into the linked binary (e.g. from `msvcrt.lib`).  Provide a way to
export an explicit list of such symbols by adding a `.def` file as a
source file.

Fixes: #16473
2017-03-21 10:02:34 -04:00
Sebastian Holtermann 850eb734f5 Autogen: Add AUTOGEN_SOURCE_GROUP documentation 2017-03-16 11:52:55 +01:00
Brad King 9662b9efb7 Merge topic 'doc-map-config-prop-example'
957bdb9e Help: Add example to MAP_IMPORTED_CONFIG_<CONFIG> docs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !545
2017-03-06 13:50:34 -05:00
Ruslan Baratov 957bdb9e6e Help: Add example to MAP_IMPORTED_CONFIG_<CONFIG> docs 2017-03-06 13:14:34 -05:00
Ruslan Baratov 6b6191d875 Add variable 'CMAKE_INTERPROCEDURAL_OPTIMIZATION' 2017-03-02 09:37:39 -05:00
Sebastian Holtermann 36fa535d92 Autogen: Add AUTOUIC_SEARCH_PATHS documentation 2017-03-02 09:10:02 -05:00
Sebastian Holtermann 96f6f392e3 Autogen: Add AUTOMOC_DEPEND_FILTERS documentation 2017-02-23 14:14:29 +01:00
Sebastian Holtermann d60f1ddc39 Autogen: Documentation update
Closes #15254
2017-02-21 10:38:51 -05:00
Clinton Stimpson 1ba91291e3 Add policy CMP0068 separate install_name and RPATH settings on macOS
BUILD_WITH_INSTALL_RPATH, SKIP_BUILD_RPATH, CMAKE_SKIP_RPATH and
CMAKE_SKIP_INSTALL_RPATH no longer any effect on the install name
of a target on macOS.

Fixes: #16589
2017-02-14 14:28:07 -07:00
Clinton Stimpson f7b9bf41c5 Apple: Add BUILD_WITH_INSTALL_NAME_DIR target property
This new property controls whether to apply INSTALL_NAME_DIR to the
build tree.  It also overrides BUILD_WITH_INSTALL_RPATH.
2017-02-14 14:28:07 -07:00
Brad King 624fb9d717 Help: Format BUILD_WITH_INSTALL_RPATH documentation 2017-02-14 08:52:02 -05:00
Gregor Jasny 071f8e78dd Apple: Add support for static frameworks
Closes: #16432
2017-01-31 08:59:15 -05:00
Jamie Snape 0618ddf6b1 Add properties to run the cpplint style checker with the compiler
Create a `<LANG>_CPPLINT` target property (initialized by a
`CMAKE_<LANG>_CPPLINT` variable) to specify a `cpplint` style checker
command line to be run along with the compiler.
2017-01-23 14:47:13 -05:00
Gregor Jasny d9f836e956 Add a getter for manually added target dependencies
Closes: #16165
2017-01-16 22:38:24 +01:00
Michael Stürmer 6fda6005b3 VS: renamed target property VS_USER_PROPS_CXX to VS_USER_PROPS 2017-01-13 09:27:21 +01:00
Sebastian Holtermann 6eabac26f5 AUTOGEN: Documentation update: cmake-qt, AUTOMOC, AUTOUIC, AUTORCC 2017-01-11 09:25:48 -05:00
Michael Stürmer 55da7e501e VS: add support for .NET references with hint paths 2016-12-13 13:51:50 -05:00
Brad King 7b47ce5a3a Merge topic 'document_cuda_standard_property'
45054119 Help: Document CUDA_STANDARD and related properties
2016-12-12 14:21:30 -05:00
Brad King 55ff3c78b3 Merge topic 'xcode-message-extension'
9ac0c393 Help: Add notes for topic 'xcode-message-extension'
0ae46321 Xcode: Add target property to override explicitFileType
7ecac703 Xcode: Add target property to override productType
2016-12-12 14:21:23 -05:00
Robert Maynard 4505411982 Help: Document CUDA_STANDARD and related properties 2016-12-09 14:13:06 -05:00
Sebastian Holtermann e324d70409 QtAutogen: AUTOMOC documentation update 2016-12-07 08:24:06 -05:00
Sebastian Holtermann b5409d04f1 QtAutogen: Rename autogen target to *_autogen from *_automoc 2016-12-07 08:24:02 -05:00
Sebastian Holtermann 6f53b1ab64 QtAutogen: Generate moc compilation in _automoc.dir/moc_compilation.cpp 2016-12-07 08:23:59 -05:00
Brad King 41f1125931 Merge topic 'features-c++17'
97c1e569 Help: Add release note for C++ 17 support
85c8e652 Features: Activate C++ 17 support for AppleClang 6.1+
8084f7a6 Features: Activate C++ 17 support for Clang 3.5+
24e29d41 Features: Activate C++ 17 support for GNU 5.1+
ae1a6815 Features: Add infrastructure for C++ 17 language standard
684e4d20 Features: Make feature recording conditions more consistent
2016-12-05 10:56:32 -05:00
Gregor Jasny 0ae4632119 Xcode: Add target property to override explicitFileType 2016-12-04 00:13:51 +01:00
Gregor Jasny 7ecac703ce Xcode: Add target property to override productType 2016-12-04 00:13:08 +01:00
Brad King ae1a6815b6 Features: Add infrastructure for C++ 17 language standard
Issue: #16468
2016-12-02 11:22:46 -05:00
Michael Stürmer 163e801809 VS: Add target property VS_DEBUGGER_WORKING_DIRECTORY 2016-11-30 11:45:11 -05:00
Brad King 29b37dd975 Merge topic 'msbuild-customization'
e3909918 VS: Add option to customize vcxproj user props file
2016-11-30 08:37:37 -05:00
Michael Stürmer e390991846 VS: Add option to customize vcxproj user props file
Add a `VS_USER_PROPS_CXX` target property to set the user props file of
the generated `.vcxproj` file to be something other than the default
`$(UserRootDir)\\Microsoft.Cpp.$(Platform).user.props`.
2016-11-29 09:31:30 -05:00
Robert Maynard 4b31609710 CUDA: Add support for the CUDA_SEPARABLE_COMPILATION target property 2016-11-14 16:40:48 -05:00
Brad King 09cda9d5e7 Allow imported INTERFACE libraries to specify a link library name
Add an `IMPORTED_LIBNAME[_<CONFIG>]` target property to specify a library
name to be placed on the link line in place of an interface library
since it has no library file of its own.  Restrict use of the property
to imported `INTERFACE` libraries.

This will be particularly useful for find modules that need to provide
imported libraries from system SDKs where the full path to the library
file is not known.  Now such find modules will be able to provide an
imported interface library and set `IMPORTED_LIBNAME` to refer to the
SDK library by name.

Issue: #15267
2016-11-09 09:45:14 -05:00
Jens Weggemann 149d49ea7c Teach MAP_IMPORTED_CONFIG_<CONFIG> to support configuration-less import
If this property has an empty list entry, check for `IMPORTED_LOCATION`
instead of `IMPORTED_LOCATION_<CONFIG>`.  This allows custom imported
targets to have some configurations mapped and others fall back to a
default location.

Closes: #16280
2016-10-20 11:51:10 -04:00
Brad King 60d73393a5 Help: Format MAP_IMPORTED_CONFIG_<CONFIG> documentation 2016-10-20 11:31:13 -04:00
Ruslan Baratov dc6d806660 Add a BUILD_RPATH target property specifying build-tree RPATH entries
Users may need to add custom `RPATH` entries to be able to run binaries
from their build tree without setting `LD_LIBRARY_PATH`.  Provide a way
to do this that does not affect the install-tree `RPATH`.
2016-10-03 13:42:27 -04:00
Brad King 96de37092a Merge topic 'android-platform-modules'
7b637ebd Android: Add `ANDROID` variable to indicate the target
c2f561e5 Android: Add test cases covering use of the NDK and standalone toolchains
6b84df8d Help: Document cross compiling for Android
d7d40830 Android: Select the STL type for NDK builds
b22294bc Android: Populate compiler flags for current ABI
b6a3102a Android: Add a CMAKE_BUILD_TYPE default
d1e3cec2 Android: Add Clang -target option for current ABI
504db72d Android: Add placeholders for compiler/abi-specific settings
fa632578 Android: Avoid interfering with common pre-existing toolchain files
6299693f Android: Search for NDK and standalone toolchain in more places
29b51379 Android: Detect and save a standalone toolchain without the NDK
7d9b49fb Android: Detect settings from the CMAKE_SYSROOT if it is set
4389664a Android: Detect and save a toolchain from the NDK
328191f6 Android: Set CMAKE_SYSROOT automatically
9e032304 Android: Detect and save the architecture, ABI, and processor
fde59c4d Android: Detect and save the API level
...
2016-08-24 09:45:50 -04:00
Brad King 6b84df8da9 Help: Document cross compiling for Android
CMake now supports cross compiling for Android using the NDK or a
standalone toolchain.  Document the associated variables and how how to
write toolchain files for Android.
2016-08-23 12:53:10 -04:00
Sebastian Holtermann 61a607e8d4 Help: Document AUTORCC behavior for same .qrc name case 2016-08-15 08:57:17 -04:00
Gregor Jasny c63380b195 Update documentation about bundle extensions 2016-07-21 23:16:50 -07:00
Yury Zhuravlev 9da725cb00 Windows: Honor WINDOWS_EXPORT_ALL_SYMBOLS for executables with exports
For executables with ENABLE_EXPORTS set, export all symbols when
instructed to do so by WINDOWS_EXPORT_ALL_SYMBOLS.
2016-07-11 09:41:04 -04:00
Brad King 4bbfea1751 Merge topic 'doc-cross-reference-lang-standard-and-extensions'
c6a077d6 Help: Cross reference CXX_STANDARD and CXX_EXTENSIONS (#16162)
2016-06-28 09:16:38 -04:00
Gregor Jasny c6a077d698 Help: Cross reference CXX_STANDARD and CXX_EXTENSIONS (#16162) 2016-06-28 09:14:00 -04:00
Brad King 9e073b8842 Merge topic 'doc-osx-versions'
00caa1dd Help: Describe VERSION and SOVERSION meanings for Mach-O binaries
2016-06-27 10:40:28 -04:00
Bartosz Kosiorek 00caa1dde8 Help: Describe VERSION and SOVERSION meanings for Mach-O binaries 2016-06-23 13:44:26 -04:00
Gilles Khouzam 35a6cac2d3 VS: Add VS_SDK_REFERENCES target property to reference external SDKs
Allow one to specify external SDK references such as
`Microsoft.AdMediatorWindows81, Version=1.0`.
2016-06-22 08:34:12 -04:00
Bill Hoffman 96242f8022 Add options to run ldd -u -r as a "link-what-you-use" tool
Create a LINK_WHAT_YOU_USE target property and corresponding
CMAKE_LINK_WHAT_YOU_USE variable to enable this behavior.
Extend link commands by running `ldd -u -r` to detect shared
libraries that are linked but not needed.
2016-06-17 10:56:40 -04:00