Commit Graph

30291 Commits

Author SHA1 Message Date
Brad King 141dbf2c19 export: Increase maximum policy version in exported files to 3.19
The files generatd by `install(EXPORT)` and `export()` commands
are known to work with policies as of CMake 3.19, so enable them
in sufficiently new CMake versions.
2021-02-10 09:26:04 -05:00
Brad King 58ea0d1255 Add deprecation warnings for policies CMP0081 and below
The OLD behaviors of all policies are deprecated, but only by
documentation.  Add an explicit deprecation diagnostic for policies
introduced in CMake 3.13 and below to encourage projects to port
away from setting policies to OLD.
2021-02-10 09:25:32 -05:00
Brad King 693f4c70ff Begin post-3.20 development 2021-02-10 08:29:46 -05:00
Brad King f388ce5321 Begin 3.20 release versioning 2021-02-10 08:27:12 -05:00
Brad King ff55f33c68 Merge topic 'ctest-dashboard-with-modified-files'
33fa015b4a CTest: Restore running dashboard client Test step with modified files

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5791
2021-02-10 07:45:30 -05:00
Kitware Robot 090dbb0386 CMake Nightly Date Stamp 2021-02-10 00:01:16 -05:00
Brad King 33fa015b4a CTest: Restore running dashboard client Test step with modified files
Since commit 6a6f1d1edd (CTest: exit nonzero after
message(SEND_ERROR|FATAL_ERROR), 2020-04-03, v3.19.0-rc1~260^2), `ctest`
no longer runs tests if there are errors before the full set of tests is
defined.  Such errors were previously treated more like warnings.

The change exposed some cases where we were issuing an error message but
proceeding to run tests anyway.  The above commit downgraded one such
case (missing `DartConfiguration.tcl`) to a warning explicitly in order
to restore its former warning-like semantics.

Downgrade the Update step's diagnostic about modified or conflicting
files to a warning for the same reason.

Fixes: #21783
2021-02-09 11:05:08 -05:00
Brad King cab99f7dba Merge topic 'xcode12-ios_install_combined'
0110aa018d IOS_INSTALL_COMBINED: Support Xcode 12 (command line only)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5785
2021-02-09 08:23:30 -05:00
Brad King 263fd22fd8 Merge topic 'xcode12-ios_install_combined' into release-3.19
0110aa018d IOS_INSTALL_COMBINED: Support Xcode 12 (command line only)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5785
2021-02-09 08:23:29 -05:00
Brad King 40f4147224 Merge topic 'object-lib-multiarch'
4d46b1401f add_library(): Allow imported object libraries with multi-arch
1a915e8953 Tests: TargetObjects does not need any languages enabled

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5771
2021-02-09 08:22:06 -05:00
Brad King 18fa819e26 Merge topic '21479-branding-name-cpack-nsis'
0aabeb0c30 CPack/NSIS: Add option for setting branding text

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5784
2021-02-09 08:20:17 -05:00
Kitware Robot f7dd651ca7 CMake Nightly Date Stamp 2021-02-09 00:01:14 -05:00
Brad King 7b10c6e299 Merge topic 'parser-gcc-warning'
aac80ec1ee LexerParser: Suppress gcc -Wfree-nonheap-object warnings in generated code

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Christoph Grüninger <foss@grueninger.de>
Merge-request: !5775
2021-02-08 11:58:28 -05:00
Brad King f61321bedf Merge topic 'lexer-posix-source'
a8b41e2c68 LexerParser: Do not override existing _POSIX_C_SOURCE definition

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5776
2021-02-08 11:44:16 -05:00
Brad King 58167b3eb0 Merge topic 'lexer-posix-source' into release-3.19
a8b41e2c68 LexerParser: Do not override existing _POSIX_C_SOURCE definition
82cfeeb484 Merge branch 'backport-3.18-ci-wix-download' into release-3.18

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5776
2021-02-08 11:44:15 -05:00
Craig Scott 0110aa018d IOS_INSTALL_COMBINED: Support Xcode 12 (command line only)
Xcode 12 doesn't allow nested builds within the same build directory.
That means we can no longer do an install by building the install target
when IOS_INSTALL_COMBINED is true. We can, however, still do an install
by running the cmake_install.cmake script or executing cmake --install,
since there is no outer build and therefore the associated SDK can be
built as a sub-build.

The non-build methods previously didn't work when
IOS_INSTALL_COMBINED was true because the generated install script
and the CMakeIOSInstallCombined script both made certain assumptions
that relied on being part of a build. Those assumptions are now
removed. A side-effect of this work is that cpack now also works from the
command line when IOS_INSTALL_COMBINED is true.

Relates: #21282
Fixes: #20023
2021-02-08 18:02:46 +11:00
Kitware Robot b06a480b57 CMake Nightly Date Stamp 2021-02-08 00:04:15 -05:00
Johnny Jazeix 0aabeb0c30 CPack/NSIS: Add option for setting branding text
See https://nsis.sourceforge.io/Reference/BrandingText
for more information.

Fixes: #21479
2021-02-07 16:10:57 +01:00
Kitware Robot db0a734349 CMake Nightly Date Stamp 2021-02-07 00:01:07 -05:00
Kitware Robot 51f7d7e919 CMake Nightly Date Stamp 2021-02-06 00:01:19 -05:00
Craig Scott 4d46b1401f add_library(): Allow imported object libraries with multi-arch
Fixes: #21276
2021-02-06 11:34:28 +11:00
Brad King a8b41e2c68 LexerParser: Do not override existing _POSIX_C_SOURCE definition
In commit f034b0f663 (CMake compilation: do not use compiler extensions,
2020-03-14, v3.18.0-rc1~494^2) we explicitly defined `_POSIX_C_SOURCE`
to ensure availability of POSIX APIs even when compiler extensions are
not enabled.  Update the code to avoid redefining `_POSIX_C_SOURCE` if
it is already defined.  This occurs when building our release binaries
as configured in `Utilities/Release/linux`, where we define
`_POSIX_C_SOURCE` explicitly on the compiler command line.
2021-02-05 07:43:59 -05:00
Brad King 2c2eb777f4 Merge topic 'build-test-presets'
9b5289ebd8 Help: Add release note for build and test presets
c8a5cd6871 Tests: Update RunCMake/CMakePresets --list-presets
69a5cf23a2 Tests: Update RunCMake/CommandLine BuildDir
b500935b94 Tests: Add test preset tests
74a86566f0 Tests: Add build preset tests
56751c83aa Tests: Factor out RunCMake.CMakePresets schema validation
676ecf0d37 cmake-presets: Add build and test presets
4f4f2028b8 Help: Add documentation for buildPresets and testPresets
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5681
2021-02-05 06:57:28 -05:00
Brad King aac80ec1ee LexerParser: Suppress gcc -Wfree-nonheap-object warnings in generated code 2021-02-05 06:48:44 -05:00
Kitware Robot 80a7d2b14b CMake Nightly Date Stamp 2021-02-05 00:01:17 -05:00
Brad King 67cb006732 Merge topic 'aix-xcoff-edit'
e017ba046c AIX: Enable XCOFF editing to replace RPATH on installation
56fc4a325f cmXCOFF: Add helper to parse and edit the XCOFF binary format
ddaaee907d CMakeDetermineCompilerId: Recognize XCOFF executable format
69e1d95a8a Tests: Add sample XCOFF binaries
f79d991dfd Tests: Convert CMake.ELF to RunCMake.file-RPATH ELF case
d8f3e68ca9 Ninja Multi-Config: Enable relink diagnostic message
cdcfe3eb99 Rename CMAKE_USE_MACH_PARSER to CMake_USE_MACH_PARSER
b6071c93f5 Rename CMAKE_USE_ELF_PARSER to CMake_USE_ELF_PARSER

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5769
2021-02-04 08:29:57 -05:00
Brad King 4cd23c5e0d Merge topic 'issue-17634'
5af38a11ce try_run: Allow to set working directory

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5757
2021-02-04 08:22:19 -05:00
Brad King e8ae5d1c32 Merge topic 'xcode-framework-path'
5389bb4274 Xcode: Don't hard-code SDK-provided implicit framework search paths
df08f8df30 cmComputeLinkInformation: Fix misspelt private variable name
375b307bae Apple: Fix linking to frameworks that do not exist until build time

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5760
2021-02-04 08:18:21 -05:00
Kitware Robot 388ffeb586 CMake Nightly Date Stamp 2021-02-04 00:01:14 -05:00
Brad King e017ba046c AIX: Enable XCOFF editing to replace RPATH on installation
Avoid relinking before installation.
2021-02-03 12:26:58 -05:00
Brad King 56fc4a325f cmXCOFF: Add helper to parse and edit the XCOFF binary format 2021-02-03 12:26:58 -05:00
Brad King d8f3e68ca9 Ninja Multi-Config: Enable relink diagnostic message
We already have a message for the "Ninja" generator, but it applies
to the "Ninja Multi-Config" generator too.
2021-02-03 11:35:31 -05:00
Brad King cdcfe3eb99 Rename CMAKE_USE_MACH_PARSER to CMake_USE_MACH_PARSER
We use the `CMake_` prefix for options affecting CMake itself.
2021-02-03 11:35:31 -05:00
Brad King b6071c93f5 Rename CMAKE_USE_ELF_PARSER to CMake_USE_ELF_PARSER
We use the `CMake_` prefix for options affecting CMake itself.
2021-02-03 11:35:31 -05:00
Brad King a24679e9f3 Merge topic 'pch-reuse-from-obj-msvc'
c450d66daa PCH: Remove restrictions for REUSE_FROM signature for MSVC

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5765
2021-02-03 10:47:38 -05:00
Brad King afda647ac3 Merge topic 'file-configure-endl'
05f16ca7ee file(CONFIGURE): Use text mode for default OUTPUT content

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Asit Dhal <dhal.asitk@gmail.com>
Merge-request: !5762
2021-02-03 10:45:52 -05:00
Brad King 8c10d98daf Merge topic 'cmake-compile-on-iOS'
30360cb05f iOS: Fix compilation of CMake itself

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5753
2021-02-03 10:42:42 -05:00
Brad King 6e9634cb93 Merge topic 'update-kwsys'
7d46310cf8 Merge branch 'upstream-KWSys' into update-kwsys
86ecce2072 KWSys 2021-02-02 (c672435e)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5763
2021-02-03 10:41:55 -05:00
Craig Scott 5389bb4274 Xcode: Don't hard-code SDK-provided implicit framework search paths
When a framework is linked to a target by its full path and that
framework is located in one of the implicit framework search directories,
CMake 3.18.5 and earlier discarded that path.
ce2dee9e5b (Xcode: Don't add framework as -framework argument in
linker info list, 2020-09-28) introduced a regression which resulted in
the framework path always being added to the search path even if it
matched one of the implicit search paths. This broke the ability to do
device and simulator builds from the same configured project.

Fixes: #21678
2021-02-03 23:11:21 +11:00
Craig Scott df08f8df30 cmComputeLinkInformation: Fix misspelt private variable name 2021-02-03 23:10:08 +11:00
Asit Dhal 5af38a11ce try_run: Allow to set working directory
Fixes: #17634
2021-02-03 08:42:05 +01:00
Kitware Robot af695cee73 CMake Nightly Date Stamp 2021-02-03 00:03:21 -05:00
Brad King 375b307bae Apple: Fix linking to frameworks that do not exist until build time
Fixes: #21621
2021-02-03 10:08:48 +11:00
Cristian Adam c450d66daa PCH: Remove restrictions for REUSE_FROM signature for MSVC
Fixes: #20201
2021-02-02 15:03:55 -05:00
Brad King 8d379e7406 Revert "PCH: Remove restrictions for REUSE_FROM signature for MSVC"
This reverts commit 9f06097141.
It was merged accidentally.
2021-02-02 15:02:08 -05:00
Brad King 7cbaf6d87a Merge topic 'pch-reuse-from-obj-msvc'
9f06097141 PCH: Remove restrictions for REUSE_FROM signature for MSVC

Acked-by: Kitware Robot <kwrobot@kitware.com>
Rejected-by: Cristian Adam <cristian.adam@gmail.com>
Acked-by: Cristian Adam <cristian.adam@gmail.com>
Merge-request: !5728
2021-02-02 15:00:25 -05:00
Cristian Adam 9f06097141 PCH: Remove restrictions for REUSE_FROM signature for MSVC
Fixes: #20201
2021-02-02 19:11:44 +01:00
Brad King 7d46310cf8 Merge branch 'upstream-KWSys' into update-kwsys
# By KWSys Upstream
* upstream-KWSys:
  KWSys 2021-02-02 (c672435e)
2021-02-02 09:37:05 -05:00
Cristian Adam 05f16ca7ee file(CONFIGURE): Use text mode for default OUTPUT content
This affects only Windows where \n will be translated as \r\n

Fixes: #21769
2021-02-02 15:18:48 +01:00
Brad King 8387aa20f2 Merge topic 'issue-19198'
255df8622b file(GENERATE): Support new line style

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Brad King <brad.king@kitware.com>
Merge-request: !5649
2021-02-02 08:53:07 -05:00