Commit Graph

3338 Commits

Author SHA1 Message Date
Brad King 68e20f674a Merge topic 'cmake_role-global-property'
4568d046c4 Properties: Add CMAKE_ROLE global property

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2805
2019-01-17 11:43:09 -05:00
Brad King bd3685b6cf Merge topic 'vs-debug-utility-targets'
22b43b0009 VS: Add support for VS_DEBUGGER_* properties on custom targets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2794
2019-01-17 11:07:11 -05:00
Kyle Edwards 00c7e006a5 Help: Remove duplicate reference to IMPORTED_LINK_DEPENDENT_LIBRARIES_<CONFIG> 2019-01-17 10:21:25 -05:00
Kyle Edwards 4568d046c4 Properties: Add CMAKE_ROLE global property
This property allows scripts to determine whether they're in project
mode, script mode, find-package mode, CTest, or CPack.
2019-01-17 09:44:29 -05:00
Craig Scott 9e84e14db7 Merge topic 'qt_wrap_command_deprecations'
74dc68b406 qt_wrap_*: Add deprecation notes to command docs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Reviewed-by: Brad King <brad.king@kitware.com>
Merge-request: !2738
2019-01-16 15:20:59 -05:00
Fred Baksik 72e0c115b7 GHS: Add Compiler ID detection
-- Detect GHS compiler and version
   Detect ARCHITECTURE_ID for PPC / ARM / 86 targets
   Detect PLATFORM_ID for Integrity and Integrity178 platforms
   Using defines specified in the documents for the compilers: 201416 PPC / 201754 ARM / 201714 86
-- Fallback C/CXX compiler ID to GHS if not otherwise detected and using GHS MULTI generator
   Works around issue with some GHS compilers not setting __ghs__ compiler define
-- Tweak Compiler ID checking so major id of 002017 is not replaced with 217
-- Prefer try_compile() library targets when testing for working GHS compilers
-- Avoid CMake errors if reading past end of file for checking if file is PE executable
2019-01-16 10:42:04 -05:00
Fred Baksik 436cc5e991 GHS: try_compile() now uses GHS platform variables
-- Forward GHS platform variables to try_compile()
   CMAKE_TRY_COMPILE_PLATFORM_VARIABLES only worked for source signature try_compile()
-- Update tests to no longer add GHS platform variables to try_compile()
-- Avoid linker error in GhsMulti/GhsMultiCompilerOptions/CMakeLists.txt by building library
2019-01-16 10:42:00 -05:00
Fred Baksik 4a1ec0de3d GHS: Fix toolset selection
-- Allow -T to accept full or partial paths
-- Use "C:/ghs" if GHS_TOOLSET_ROOT is empty string
-- Put more information in error messages
2019-01-16 10:41:56 -05:00
Fred Baksik 0c9e47d7cd GHS: Integrity Application updates
-- Check the property "ghs_integrity_app" on executables to set [INTEGRITY Application]
   If the property is not set then check if an integrate file is one of the source files (.int file).
   Dynamic Downloads that do not have an integrate file can use this property along with setting
   the compiler flag "-dynamic".

-- Remove parsing for -dynamic flag; it is only used to print a comment
   The MULTI GUI will show if it is a Monolith or Dynamic Download application

-- Use project references to specify which executables are part of the Integrity Application
   Usually Implicit Dependency Analysis will ensure that executable targets
   become part of the application.  This does not work for Dynamic Download without integrate files.
   Use `add_dependencies(dd vas)` to mark that the vas target is part of dd target.

-- Update file locations in the Integrate files.
2019-01-16 10:41:49 -05:00
Fred Baksik 702121c5f3 GHS: Use the correct compiler flags for CMAKE_BUILD_TYPE
-- Do not use CMAKE_C_FLAGS_RELEASE flags when CMAKE_BUILD_TYPE is empty
   if CMAKE_BUILD_TYPE was not set the generator would use Release settings
   this does not match the documented behavior of CMAKE_BUILD_TYPE

-- CMAKE_C_FLAGS_<CONFIG> not used when -kernel is present
   Fixes issue where CMAKE_C_FLAGS_<CONFIG> is ignored when -kernel option is present as a compiler option
   When the -kernel option is added to an executable it uses a different set of language flags
   This does not occur -kernel=<type> is used or if it is added as part of a link flag
   The variables CMAKE_<LANG>_GHS_KERNEL_FLAGS_<CONFIG> are removed
   NOTE: By default this only added the flag -ldebug which links in the debugger library.

-- Separate compiler options by newlines
2019-01-16 10:41:35 -05:00
Fred Baksik 2ed2d6b46f GHS: Place build system outputs per target output directives
-- Set output and object file locations
-- Suffixes are no longer being forced but will now follow the target properties
   By default GHS tools have no suffix for executable files so
   CMAKE_EXECUTABLE_SUFFIX was changed to meet this behavior
-- Remove #if 0 blocked out code; it has been replaced.
   Forcing the -relprog option has been removed from non-kernel executable targets.
   The default value of this option (if it is even available) is determined by the
   tool-chain for the specified target and platform (Some tool-chains default to
   -locatedprogram).  The use of -relprog can have unexpected results as it cannot
   always produce a fully relocated executable.
-- Clarify use of CMAKE_BUILD_TYPE to control build configuration
2019-01-16 10:41:24 -05:00
Regina Pfeifer 2915a75615 CTest: Add documentation and release notes for SubmitURL 2019-01-16 10:34:08 -05:00
Nils Gladitz 22b43b0009 VS: Add support for VS_DEBUGGER_* properties on custom targets
Visual studio itself supports the corresponding `LocalDebugger*`
properties on utility targets; support generating them from CMake as
well.
2019-01-16 10:21:01 -05:00
Tushar Maheshwari 8bb7562f1a Help: Add documentation for file(CREATE_LINK) subcommand 2019-01-16 10:03:35 -05:00
David Aguilar a5e948a36f find_package: optionally resolve symlinks when discovering packages
Teach find_package() to resolve symlinks when constructing
relocatable prefix paths from discovered cmake config files.
The `CMAKE_FIND_PACKAGE_RESOLVE_SYMLINKS` variable enables
this behavior when set to `TRUE`.

Fixes: #18704
2019-01-16 09:59:46 -05:00
Tobias Hunger 74dc68b406 qt_wrap_*: Add deprecation notes to command docs
Co-authored-by: Craig Scott <craig.scott@crascit.com>
2019-01-16 08:08:38 +11:00
Brad King 41b0c0dc73 Merge topic 'vs2019'
57e48f16f2 VS: Add Visual Studio 16 2019 generator
bdef729646 VS: Parameterize VS 2017 generator to support future versions
68d316e0cf VS: Rename VS 2017 generator sources to be version-independent
d8ed309d05 VS: Parameterize cmVSSetupAPIHelper instances with VS version

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2789
2019-01-15 13:23:38 -05:00
Brad King 1d328d8119 Merge topic 'extendwhitelist'
59c408d053 cmTargetPropertyComputer: whitelist 'MANUALLY_ADDED_DEPENDENCIES'.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2808
2019-01-15 13:18:54 -05:00
Brad King 88b90fb1ff Merge topic 'rel-win7'
214a0bc924 Utilities/Release: Build for Windows 7 and above

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2807
2019-01-15 13:18:04 -05:00
Brad King bf1a1caefe Merge topic 'check-fortran-run'
10a1477b63 CheckFortranSourceRuns: Add module to check if Fortran code runs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2714
2019-01-15 13:15:44 -05:00
Brad King b2084a330d Merge topic 'deprecate-policy-old'
6845e2559d Add deprecation warnings for policies CMP0065 and below

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2793
2019-01-15 13:12:08 -05:00
Kyle Edwards c07fa6d98c Merge topic 'find_package-doc-clarification'
427ebecdf5 Help/find_package: clarify intended behavior with REQUIRED QUIET

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2777
2019-01-15 09:49:35 -05:00
Sebastian Lipponer 59c408d053 cmTargetPropertyComputer: whitelist 'MANUALLY_ADDED_DEPENDENCIES'. 2019-01-14 20:59:33 +01:00
Brad King 214a0bc924 Utilities/Release: Build for Windows 7 and above
Drop support for Windows XP and Windows Vista.  Upstream libuv has
done this, and since that is a dependency of ours we will soon
need to do so also.
2019-01-14 14:17:01 -05:00
Ben Boeckel 427ebecdf5 Help/find_package: clarify intended behavior with REQUIRED QUIET
See #18773
2019-01-14 10:42:10 -05:00
Kyle Edwards 4541c914b5 Merge topic 'xref3'
bfc3670546 Help: Provide cross-references from and to set_property

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2785
2019-01-14 10:16:11 -05:00
Brad King 6845e2559d Add deprecation warnings for policies CMP0065 and below
The OLD behaviors of all policies are deprecated, but only by
documentation.  Add an explicit deprecation diagnostic for some policies
to encourage projects to port away from setting policies to OLD.
2019-01-11 14:47:20 -05:00
Brad King 57e48f16f2 VS: Add Visual Studio 16 2019 generator
Add this generator *without* support for specifying the target
architecture in the generator name.  cmake-gui will be taught
to provide a field for this, and command-line builds can use -A.

Also, teach this generator to select a default target architecture
based on the host architecture.

Fixes: #18689
Inspired-by: Egor Pugin <egor.pugin@gmail.com>
2019-01-11 11:04:51 -05:00
Brad King 5a283b79e5 Merge topic 'vs-refactor'
b91f6f39f7 VS: Track explicitly when platform is specified in generator name
89cc3d432b VS: Move platform name members to top-level global generator
40a732800d VS: Clarify global generator constructor interface
5ca7e5057b Help: Document VS generator default platform selection

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2786
2019-01-11 10:36:03 -05:00
Brad King f15345be41 Merge topic 'FindICE-more-exe'
fbb115d198 FindIce: Find slice2confluence and slice2matlab executables

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2773
2019-01-11 07:56:11 -05:00
Brad King 9e8f2e509f Merge topic 'bison_target_policy'
5000fed5af FindBISON: Add policy CMP0088 to run bison in build tree

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2774
2019-01-11 07:52:05 -05:00
Brad King 60666e2cd3 Merge topic 'fix-doc-typo'
261ae28ccd Help: fix typo for CTEST_CUSTOM_TESTS_IGNORE

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2770
2019-01-11 07:46:16 -05:00
Brad King c84fe1e71f Merge topic 'sort1'
20b7826e14 Help: correct alphabetical sorting of lines

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2784
2019-01-11 07:45:07 -05:00
Brad King 9143627c93 Merge topic 'doc-roff-fix'
9922e70b1a Help: Prevent .so from being treated as a roff macro

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2756
2019-01-11 07:43:57 -05:00
jspam fbb115d198 FindIce: Find slice2confluence and slice2matlab executables 2019-01-10 14:36:10 -05:00
Michael Hirsch, Ph.D 10a1477b63 CheckFortranSourceRuns: Add module to check if Fortran code runs
Add a Fortran equivalent to the existing `Check{C,CXX}SourceRuns`
modules.
2019-01-10 14:09:12 -05:00
Raf Czlonka 9922e70b1a Help: Prevent .so from being treated as a roff macro
Move `.so` to the line above - otherwise it is being treated as a `roff`
macro, i.e.:

    $ mandoc -Tlint /usr/local/man/man7/cmake-properties.7 | head -n 3
    mandoc: /usr/local/man/man7/cmake-properties.7:1131:2: WARNING: .so is fragile, better use ln(1): so libraries.
    mandoc: /usr/local/man/man7/cmake-properties.7: ERROR: No such file or directory
    mandoc: /usr/local/man/man7/cmake-properties.7:1131:15: ERROR: .so request failed: .so libraries.

and causes other issues down the line.
2019-01-10 13:38:51 -05:00
Robert Maynard 5000fed5af FindBISON: Add policy CMP0088 to run bison in build tree 2019-01-10 13:23:14 -05:00
Joachim Wuttke (o) bfc3670546 Help: Provide cross-references from and to set_property 2019-01-10 16:13:18 +01:00
Brad King 5ca7e5057b Help: Document VS generator default platform selection 2019-01-10 09:38:35 -05:00
Brad King 143fbde17b Merge topic 'ctest-show-as-json'
67209a9291 Tests: Add cases for ctest --show-only=json-v1
fc41a95f08 CTest: Add --show-only[=format] option to print test info
7b81d8c21e TestGenerator: Record support file and line where test was added
00530d74d5 Tests: Pass python interpreter into RunCMake.CTestCommandLine

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Brad King <brad.king@kitware.com>
Merge-request: !2499
2019-01-10 09:37:25 -05:00
Tobias Hunger cd32886b2f Autogen: Add AUTO(MOC|RCC|UIC)_EXECUTABLE target properties
Allow to force moc/rcc/uic compiler used for AUTO(MOC|RCC|UIC).

Setting these properties is only necessary if you are going to do
strange things like build these tools as part of your own build system.

Setting these properties will also prevent cmake from testing the
binary: It is user-provided and assumed to be valid.
2019-01-10 08:03:24 -05:00
Justin Goshi fc41a95f08 CTest: Add --show-only[=format] option to print test info
format can be 'human' to print the current text format or 'json-v1' to
print the test object model in json format and is useful for IDEs who
want to gather information about the tests. Defaults to 'human' format.
2019-01-10 07:37:32 -05:00
Joachim Wuttke (o) 20b7826e14 Help: correct alphabetical sorting of lines 2019-01-10 12:58:59 +01:00
Thirumal Venkat 9816748847 SWIG: Add support for custom Swig source file extensions 2019-01-03 09:36:15 +05:30
Ben Boeckel 261ae28ccd Help: fix typo for CTEST_CUSTOM_TESTS_IGNORE
In commit v3.4.0-rc1~57^2 (Help: document CTEST_CUSTOM_* variables,
2015-09-17), the CTEST_CUSTOM_TESTS_IGNORE variable was documented with
a typo.
2019-01-02 15:42:33 -05:00
Craig Scott d480ede35b Merge topic 'link-options'
f255280fd9 PIE link options: Update strategy to fix performance regression

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2739
2018-12-23 17:23:11 -05:00
Craig Scott 170fcebf2e Merge topic 'install-code-script-genex'
25cae1e85d install: Teach CODE,SCRIPT modes to evaluate generator expressions

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2688
2018-12-23 17:19:57 -05:00
Jon Chronopoulos 25cae1e85d install: Teach CODE,SCRIPT modes to evaluate generator expressions
This also introduces CMP0087 which will keep the OLD behaviour of not
evaluating generator expressions

Fixes: #15785
2018-12-23 09:03:38 +11:00
Kyle Edwards 16262ed762 Merge topic 'compile_options'
2439d546c8 Help: Revise compile options command docs, and provide example

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2752
2018-12-21 09:22:22 -05:00