Commit Graph

858 Commits

Author SHA1 Message Date
Ruslan Baratov
1588a577d1 Add policy CMP0069 to enforce INTERPROCEDURAL_OPTIMIZATION
Previously the `INTERPROCEDURAL_OPTIMIZATION` target property was
honored only for the Intel compiler on Linux and otherwise ignored.  In
order to add support for more compilers incrementally without changing
behavior in the future, add a new policy whose NEW behavior enforces the
`INTERPROCEDURAL_OPTIMIZATION` property.  Add flags for supported
compilers and otherwise produce an error.
2017-03-30 14:56:46 -04:00
Brad King
56c39d8836 Merge topic 'add-CheckIPOSupported-module'
6c832674 Tests for 'CheckIPOSupported' module
fdb2ba25 CheckIPOSupported: New module to check for compiler/cmake IPO support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !558
2017-03-22 08:51:59 -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
f89678f609 Autogen: Add AUTOGEN_SOURCE_GROUP release notes 2017-03-20 11:44:23 -04:00
Brad King
9e226d96ad Merge topic 'cuda-vs'
2a1f3dff Help: Add notes for topic 'cuda-vs'

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !578
2017-03-13 09:07:36 -04:00
Brad King
2a1f3dff6f Help: Add notes for topic 'cuda-vs' 2017-03-13 09:05:46 -04:00
Gregor Jasny
cf13e49544 Xcode: Control schema generation via variable
Issue: #15441
2017-03-12 21:24:46 +01:00
Ruslan Baratov
fdb2ba2521 CheckIPOSupported: New module to check for compiler/cmake IPO support 2017-03-11 19:46:25 +08:00
Brad King
29ec8d65f2 Merge topic 'pr.gcc_ar'
b9d36826 Add 'CMAKE_GCC_AR' and 'CMAKE_GCC_RANLIB' variables

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !550
2017-03-10 08:40:58 -05:00
Brad King
c4f9d10426 Merge topic 'master'
d9bdcf34 Tests: Add x32 tests to test suite
5b6d354f Help: Add notes for topic 'x32-abi'
bed9c73d Modules: Add x32-abi support to hard-coded paths
462cf254 Add support for x32-abi

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !532
2017-03-09 11:08:11 -05:00
Ruslan Baratov
b9d36826c5 Add 'CMAKE_GCC_AR' and 'CMAKE_GCC_RANLIB' variables 2017-03-09 04:28:01 +08:00
Brad King
5b6d354f70 Help: Add notes for topic 'x32-abi' 2017-03-07 15:22:55 -05:00
Brad King
632534104c Merge topic 'cpack_nsis_sign_uninstaller'
09475c29 CPack/NSIS: Sign the uninstaller

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !512
2017-03-07 08:24:09 -05:00
Ruslan Baratov
6b6191d875 Add variable 'CMAKE_INTERPROCEDURAL_OPTIMIZATION' 2017-03-02 09:37:39 -05:00
Brad King
c1fb7213ed Merge topic 'autogen_uic_paths'
3bf28f5e Autogen: New short InfoGet functions
154d8339 Autogen: Parse enabled feature configuration only
ac77fa35 Autogen: Add missing return on error
662ad240 Autogen: Rename and merge moc related methods
5adf22bb Autogen: Add AUTOUIC_SEARCH_PATHS release notes
36fa535d Autogen: Add AUTOUIC_SEARCH_PATHS documentation
6d7c02db Autogen: Add AUTOUIC_SEARCH_PATHS test
1cdf7c1b Autogen: Add AUTOUIC_SEARCH_PATHS support
110c1bf4 Autogen: Add subDirPrefix function
db431ecf Autogen: Merge FindInIncludeDirectories into FindIncludeFile
2017-03-02 09:26:13 -05:00
Sebastian Holtermann
5adf22bbd2 Autogen: Add AUTOUIC_SEARCH_PATHS release notes 2017-03-02 09:10:02 -05:00
Roman Wüger
09475c298b CPack/NSIS: Sign the uninstaller 2017-03-01 20:18:28 +01:00
Christian Schmidbauer
503f25d490 find_library: Allow custom lib suffix be used as find path
Add a new `CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX` variable to allow use
of a custom suffix on `lib` directory names.  This is a more general
option than that added by commit v3.7.0-rc1~504^2 (Teach find_library
and find_package to search lib32 paths, 2016-06-10).  It allows the find
path to be more deterministic on custom setups.

See discussion in #10287 and #15994.
2017-03-01 09:49:42 -05:00
Brad King
0aec4d3864 Merge topic 'cmake-xcode-schemes'
7238a052 Xcode: Add documentation for schema generator
ffb8817b Xcode: Write shared schemes based on the default files generated by Xcode
2017-02-28 09:39:12 -05:00
Gregor Jasny
7238a052b9 Xcode: Add documentation for schema generator 2017-02-28 09:22:11 -05:00
Sebastian Holtermann
96f6f392e3 Autogen: Add AUTOMOC_DEPEND_FILTERS documentation 2017-02-23 14:14:29 +01:00
Brad King
dfebdd6218 Merge topic 'autogen_json'
29d96633 Autogen: Don't use .moc include in Q_PLUGIN_METADATA test
d60f1ddc Autogen: Documentation update
cdb72127 Autogen: Add release notes for Q_PLUGIN_METADATA support
8b13a52c Autogen: Tests: Set different compression levels in rcc test
9d1db7d7 Autogen: Overhaul and simplify AutogenInfo.cmake file generation
0ab817fa Autogen: Optimize GetCompileDefinitionsAndDirectories function
754d4318 Autogen: Sort AutogenInfo.cmake.in
cd74daf0 Autogen: Tests: Add Q_PLUGIN_METADATA test
39c4819e Autogen: Tests: Add moc include tests
50805693 Autogen: Tests: Clean comments
c23206b6 Autogen: Log simplifications
347572cf Autogen: Only touch an unchanged moc_compilation.cpp
03df033b Autogen: Rebuild moc when Q_PLUGIN_METADATA json file changes
3ec230de Autogen: Use GetRealPath in central places only
41fb64e7 Autogen: Search moc includes in include directories
175c8900 Autogen: Sort includes before composing include options
...
2017-02-22 10:15:48 -05:00
Sebastian Holtermann
cdb72127dc Autogen: Add release notes for Q_PLUGIN_METADATA support 2017-02-21 10:38:51 -05:00
Brad King
66094d1224 Merge topic 'productbuild_component_plist'
d32f9deb CPack: Add option to specify --component-plist for productbuild
2017-02-20 10:43:05 -05:00
Brad King
5d17b68c67 Merge topic 'productbuild_resources'
734581f4 CPack: Add support for CPACK_PRODUCTBULID_RESOURCES_DIR
2017-02-20 10:43:02 -05:00
Tim Hutt
734581f49f CPack: Add support for CPACK_PRODUCTBULID_RESOURCES_DIR
This allows you to copy custom files (e.g. a background image) into the
macOS installer.

Fixes: #16604
2017-02-17 11:47:00 -05:00
Tim Hutt
d32f9debc8 CPack: Add option to specify --component-plist for productbuild
When using the productbuild generator this lets you specify the value of
the `--component-plist` parameter when it runs pkgbuild for a component.

Fixes: #16638
2017-02-17 11:40:45 -05:00
Brad King
f3e8a89a9b Merge topic 'install_name_policy'
1ba91291 Add policy CMP0068 separate install_name and RPATH settings on macOS
f7b9bf41 Apple: Add BUILD_WITH_INSTALL_NAME_DIR target property
4bff2d14 Apple: Refactor support for using INSTALL_NAME_DIR.
624fb9d7 Help: Format BUILD_WITH_INSTALL_RPATH documentation
2017-02-17 08:46:14 -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
ee3295e917 Merge topic 'vs-nasm'
5ba2c9e5 VS: Add support for ASM_NASM language
2017-02-10 13:36:18 -05:00
Brad King
0a30938848 Merge topic 'ExtractGTestMacro'
9837ed96 GoogleTest: Add module to contain gtest_add_tests independently
2017-02-10 13:36:14 -05:00
Brad King
d4da4755cd Help: Add notes for topic 'update-curl' 2017-02-10 13:10:07 -05:00
Evgeny Fimochkin
5ba2c9e5e0 VS: Add support for ASM_NASM language
Fixes: #16469
2017-02-07 13:20:52 -05:00
Bradley Lowekamp
9837ed9699 GoogleTest: Add module to contain gtest_add_tests independently
Extract the `gtest_add_tests` macro from `FindGTest` into a separate
module. GTest or GoogleTest can be used by a project in a several
different ways, including installed libraries in the system, from an
ExternalProject, or adding the GTest source directory as a sub directory
of the project. As not all of these uses are supported by the FindGTest
module the useful `gtest_add_tests` macro is separated to easily enable
reuse.

Issue: #14151
2017-02-07 11:24:18 -05:00
Brad King
6dec5d5fb8 Merge topic 'FindProtobuf-static-libs'
a3f71349 FindProtobuf: Add option to find static libraries on UNIX
2017-02-07 09:59:44 -05:00
Brad King
c756ad9e73 Merge topic 'FeatureSummary_description'
28e87033 FeatureSummary: Update release notes
6f62c66b FeatureSummary: Add FeatureSummary_<TYPE>_DESCRIPTION global properties
f9bc8cfe FeatureSummary: Add DEFAULT_DESCRIPTION option to feature_summary
2017-02-07 09:59:41 -05:00
Sébastien GALLOU
a3f71349de FindProtobuf: Add option to find static libraries on UNIX
Add a `Protobuf_USE_STATIC_LIBS` input variable to optionally restrict
searches to static library names.  This follows the approach of
`FindBoost`.
2017-02-06 16:12:39 -05:00
Nils Gladitz
558a69fc90 CPackWIX: Introduce new CPACK_WIX_ROOT_FOLDER_ID variable
The new variable allows specification of a custom root folder ID.
The implicit default is "ProgramFiles<64>Folder".

The "<64>" token is replaced by "" for 32-bit and "64" for 64-bit builds.

Inspired-By: Eric Backus
Fixes: #16573
2017-02-06 14:53:16 -05:00
Daniele E. Domenichelli
28e87033a3 FeatureSummary: Update release notes 2017-02-06 14:44:24 -05:00
Brad King
0f4dae0a4d Begin post-3.8 development 2017-02-06 11:28:55 -05:00
Brad King
1d25e8a7c9 Help: Drop development topic notes to prepare release
Release versions do not have the development topic section of
the CMake Release Notes index page.
2017-02-06 11:25:30 -05:00
Brad King
3f5e4f1957 Help: Consolidate 3.8 release notes
Move all development release notes into a new version-specific document:

    tail -q -n +3 Help/release/dev/* > Help/release/3.8.rst
    git rm -- Help/release/dev/*

except the sample topic:

    git checkout HEAD -- Help/release/dev/0-sample-topic.rst

Reference the new document from the release notes index document.
Add a title and intro sentence to the new document by hand.
2017-02-06 10:34:12 -05:00
Brad King
cf1bc84216 Merge topic 'productbuild_signing'
48aad9cd CPackProductBuild: Add options to sign packages
2017-02-06 10:29:44 -05:00
Roman Wüger
48aad9cda0 CPackProductBuild: Add options to sign packages 2017-02-04 08:07:48 -05:00
Rolf Eike Beer
94a8ee6fd0 GNU C: record that C99 is available since at least 3.4 2017-02-02 18:28:56 +01:00
Brad King
6f2e2c74ba Merge topic 'WCDH_allow_unsupported'
1679fecb CompileFeatures Test: make sure the target "CompileFeatures" is always defined
98e6d1e5 Tests/Module/WCDH: make it work with only C features defined
c8703e9d WCDH: optionally omit error code for unknown compilers or compiler versions
0de9c398 WCDH: add macro to write simple replacement defines
2017-02-01 09:21:44 -05:00
Brad King
f012a95836 Merge topic '16432-static-frameworks'
071f8e78 Apple: Add support for static frameworks
d525754e Xcode: Refactor RunCMake.Framework test to prepare for static frameworks
45405f00 Xcode: Ignore Xcode project warning until issue is fixed
50e1c105 Makefile: For static libraries remove only the "real" lib before creating
8643ca75 Makefile: Re-order list of files to clean
2017-01-31 09:04:16 -05:00
Gregor Jasny
071f8e78dd Apple: Add support for static frameworks
Closes: #16432
2017-01-31 08:59:15 -05:00