Commit Graph

912 Commits

Author SHA1 Message Date
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
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 c2f7ef637e Help: Organize and revise 3.8 release notes
Add section headers similar to the 3.7 release notes and move each
individual bullet into an appropriate section.  Revise a few bullets.
2017-02-06 10:35:28 -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
Rolf Eike Beer c8703e9d7b WCDH: optionally omit error code for unknown compilers or compiler versions
This allows one to generate a header that will basically always work. In case
an unknown compiler or compiler version is encountered it simply falls back to
the unsupported case.
2017-01-30 19:19:44 +01:00
Brad King 8df12fc9d4 Merge topic 'FeatureSummary_enhancement'
560574b0 FeatureSummary: Update release notes
3cfde818 FeatureSummary: Refactor to use global properties for package types
f0165eb6 FeatureSummary: Allow lists of dependencies in ADD_FEATURE_INFO
9da7bf08 FeatureSummary: Add QUIET_ON_EMPTY option to feature_summary
4cf4aceb FeatureSummary: Add unit tests
614a97a5 FeatureSummary: Do not force OPTIONAL type in SET_PACKAGE_PROPERTIES
65a0bfd8 FeatureSummary: Add deprecation warnings to deprecated commands
4da3cae9 FeatureSummary: Clean printed output
2017-01-30 08:43:23 -05:00
Bernhard M. Wiedemann 6c54f7b365 string: Teach TIMESTAMP to treat %% as %
This encoding is documented by `strptime`.
2017-01-27 09:25:37 -05:00
Brad King 325c615308 Merge topic 'genex-if'
895f7f16 Genex: Add `IF` generator expression
2017-01-27 09:04:58 -05:00
Brad King 86ec0aca05 Merge topic 'topic-reproducible-build'
243aed52 cmTimestamp: Support SOURCE_DATE_EPOCH to override current time
2017-01-27 09:04:53 -05:00
Daniele E. Domenichelli 560574b0c0 FeatureSummary: Update release notes 2017-01-27 09:24:28 +01:00
Colby Pike 895f7f16a7 Genex: Add IF generator expression
This allows a single condition to be used to choose between two
alternatives.  Without this the condition must be duplicated with
one surrounded by `NOT`.

Closes: #15585
2017-01-26 11:18:50 -05:00
Brad King 4ab35eb661 Merge topic 'pkg-config-recheck'
796dea67 FindPkgConfig: Recheck pkg-config on parameter change.
2017-01-26 10:40:42 -05:00
Bernhard M. Wiedemann 243aed525a cmTimestamp: Support SOURCE_DATE_EPOCH to override current time
See https://reproducible-builds.org/ for why this is good and
https://reproducible-builds.org/specs/source-date-epoch/ for the
definition of this variable.
2017-01-26 10:21:41 -05:00
Brad King c0ca687a1b Merge topic 'cpack-ifw-options'
e5089c56 CPackIFW: Add some options
2017-01-25 08:41:24 -05:00
Brad King 4f37987e3f Merge topic 'lang_lint'
0618ddf6 Add properties to run the cpplint style checker with the compiler
2017-01-25 08:41:18 -05:00
Matthew Hanna 796dea67a6 FindPkgConfig: Recheck pkg-config on parameter change.
Currently, once pkg_check_modules succeeds, it will never call
_pkg_check_modules_internal again.  That means that if the parameters
to pkg_check_modules are changed, cmake will be called to reconfigure,
but nothing will change.  This change is to store the full string of
arguments to pkg_check_modules and override the FOUND optimization so
that the arguments are reevaluated when modified.
2017-01-24 22:02:14 -05:00
Brad King 6122fc54a9 Merge topic '16253-xcode-effective-platform-name'
10c9c73d Xcode: Control emission of EFFECTIVE_PLATFORM_NAME
2017-01-24 14:45:24 -05:00
Brad King f6e4602fe7 Merge topic 'csproj-improvements'
4bfb1249 VS: removed usage of relative paths for C# targets in in-source builds
90cb4083 VS: improve handling of source files with special extensions in .csproj
2017-01-24 14:45:15 -05:00
Konstantin Podsvirov e5089c562c CPackIFW: Add some options
The cpack_ifw_configure_component_group command gained options:
- DEPENDS.

The cpack_ifw_configure_component and
cpack_ifw_configure_component_group commands gained options:
- REQUIRES_ADMIN_RIGHTS;
- UPDATE_TEXT;
- SORTING_PRIORITY; # New name for PRIORITY
- DEPENDENCIES; # Alias for DEPENDS
- AUTO_DEPEND_ON;
- TRANSLATIONS.

For both commands PRIORITY option now is depreceted. Please
use SORTING_PRIORITY instead.
2017-01-24 17:03:37 +03: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 10c9c73d58 Xcode: Control emission of EFFECTIVE_PLATFORM_NAME
When building with multiple SDKs within one project Xcode requires
the usage of ${EFFECTIVE_PLATFORM_NAME} to put temporary and build
outout into separate directories. For example an iOS device and
simulator build use two different SDKs (iphoneos and iphonesimulator).

In the past cmake tries to detect embedded toolchains that could
possibly use simulators and emitted EFFECTIVE_PLATFORM_NAME (EPN)
at the proper locations. In #16253 Mark noticed that if he
uses macosx and iphoneos in combination the necessary EPN is not
emitted. This is because CMake by default assumes macosx SDK which
does not trigger EPN emission.

The fist naive approach - enabling EPN unconditionally revealed that
then the EPN leaks into generator expressions like $<TARGET_FILE:xxx>
which might be a regression and thus is unacceptable.

The next approach was to add an CMake property to enable EPN emission
unconditionally. This solved the reported problem.

But the EPN leakage also happened for the embedded toolchains already
without anyone noticing. So the control property was turned into a
tri-state one:

 * No definition: EPN is activated for embedded toolchains like before
 * ON: EPN is always emitted
 * OFF: EPN is never emitted

That approach gives the user the chance to disable EPN for embedded
toolchains and restores generator expression functionality for those.

Closes: #16253
2017-01-20 13:51:48 -05:00
Brad King 395f01ef72 Merge topic 'cpack-ifw-new-installer-options'
3fc4a2b7 QtIFW: Added new options to QtIFW cpack generator for modifying wizard style
2017-01-20 11:54:34 -05:00
Brad King 910ef6d0a3 Merge topic '16165-manually-added-dependencies'
d9f836e9 Add a getter for manually added target dependencies
2017-01-20 11:54:31 -05:00
Brad King 22d240184c Merge topic 'cdash_upload_retry'
05ed82b1 ctest_submit: Update documentation for CDash upload retries
0ce7643a ctest_submit: improve handling of QUIET option
5614a5cd ctest_submit: Allow RETRY_COUNT for CDASH_UPLOAD
2017-01-20 11:54:28 -05:00
Zack Galbreath 05ed82b1d2 ctest_submit: Update documentation for CDash upload retries 2017-01-20 11:37:27 -05:00
Michael Stürmer 90cb408323 VS: improve handling of source files with special extensions in .csproj
Mainly <Link> and <DependentUpon> tags are added to connect generated
and manually edited files. Special file extensions that are take care
of are:

 - .Designer.cs
 - .xaml.cs
 - .settings
 - .resx
 - .xaml
2017-01-18 15:51:22 +01:00
Brad King aa63ab6d3e Merge topic 'expand_custom_commands'
7c8ab7dd add_custom_{command,target}: Add COMMAND_EXPAND_LISTS option
2017-01-17 09:04:50 -05:00
Alexander Voitenko 3fc4a2b71a QtIFW: Added new options to QtIFW cpack generator for modifying wizard style 2017-01-17 14:12:02 +03:00
Gregor Jasny d9f836e956 Add a getter for manually added target dependencies
Closes: #16165
2017-01-16 22:38:24 +01:00