Commit Graph

9054 Commits

Author SHA1 Message Date
Kyle Edwards
97700e9f5b FindGit: Add imported target 2019-01-21 10:01:56 -05:00
Brad King
02f7e997e9 Merge topic 'ExternalProject-non-cmake-source-subdir'
c09ec79981 ExternalProject: support SOURCE_SUBDIR for BUILD_IN_SOURCE

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2823
2019-01-21 07:58:10 -05:00
Brad King
15fe5c4c9d Merge topic 'FindCURL-typo'
0526ae4415 FindCURL: fix component failure when no pkg-config

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2826
2019-01-21 07:50:23 -05:00
Hiroshi Miura
0526ae4415 FindCURL: fix component failure when no pkg-config
find_package(CURL COMPONENTS foo) fails when there is
no pkg-config module because of variable name typo.

Signed-off-by: Hiroshi Miura <miurahr@linux.com>
Fixes: #18802
2019-01-21 07:49:00 -05:00
Brad King
fefae527c8 Merge topic 'submit-url'
2915a75615 CTest: Add documentation and release notes for SubmitURL
d6475daa79 Modules/CTest: Set SubmitURL
938f06fda6 ctest_submit: Add parameter SUBMIT_URL
65e725c957 CTest: Add option SubmitURL
65f1fc9d63 CTest: Add function GetSubmitURL
2bedd5fb7c ctest_submit: Remove submit method from log output

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2719
2019-01-21 07:46:20 -05:00
Ben Boeckel
c09ec79981 ExternalProject: support SOURCE_SUBDIR for BUILD_IN_SOURCE 2019-01-17 13:40:30 -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
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
595932c4f0 GHS: Update the link line processing
-- add missing executable linker libs from:
   CMAKE_C_STANDARD_LIBRARIES
-- add missed transitive link libraries
-- add skipped library linker options
-- The linker expects -l../relative/path/to/lib.a to be relative to the top-level project
   Because there can be multiple top-level projects convert the path to an absolute path to target
2019-01-16 10:41:27 -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
Fred Baksik
a42e40e78d GHS: Only print bsp and os directives if specified by user
-- standalone platforms will not build if bsp/os is specified in project file
-- integrity platforms will always print these directives because they are required
-- cleanup -os_dir setting
   allow customization of the actual setting because it is determined by tool-set customization files
   remove variable that was set but never used
-- add message when using default values
2019-01-16 10:40:59 -05:00
Regina Pfeifer
2915a75615 CTest: Add documentation and release notes for SubmitURL 2019-01-16 10:34:08 -05:00
Regina Pfeifer
d6475daa79 Modules/CTest: Set SubmitURL 2019-01-16 10:34:08 -05:00
Ethan Slattery
270965e0c7 IAR: Update compiler modules to support AVR systems
Fixes: #18557
2019-01-15 13:59:01 -05:00
Ethan Slattery
7414d422b2 IAR: Parse INFO strings from the binary format of AVR systems
Teach `CMakeDetermineCompilerId` to recognize and parse the IAR-AVR
binary format so we can recognize this compiler id.

Issue: #18557
2019-01-15 13:58:53 -05:00
Brad King
da566d4de8 Merge topic 'fetchcontent-uses-terminal'
2119c33b7e FetchContent: Give access to the terminal for download and update

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Michael Hirsch, Ph.D. <michael@scivision.co>
Merge-request: !2800
2019-01-15 13:26:02 -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
Craig Scott
2119c33b7e FetchContent: Give access to the terminal for download and update
A main scenario where this is needed is when a git operation
needs the password to a private key and asks for it on the
console. Without this change, such operations can appear to
hang indefinitely with no prompt if QUIET is in effect (which it
is by default).

Another scenario this addresses is when progress of a
download or update should be shown. Without this change,
all such progress is buffered with some generators and will
only be shown at the end, which defeats the purpose of logging
any progress to begin with.

Relates: #18238
2019-01-14 23:32:18 +11:00
Brad King
beb991110d Remove now-unused code once used on IRIX
We dropped support for IRIX as a host platform long ago.
Remove some leftover code.
2019-01-11 13:50:46 -05:00
Brad King
696c6afcaf Merge topic 'FindBoost-1.70'
266808c413 FindBoost: Add support for Boost 1.70

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2747
2019-01-11 08:00:45 -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
283c93fe9a Merge topic 'xl-early-bE'
74720a298c XL: Move '-bE' flag earlier so it can be overridden

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2771
2019-01-11 07:52:53 -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
003759ba0d Merge topic 'threads'
5a5a1d90f0 Help: FindThreads not needed with modern C++.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2776
2019-01-11 07:42:54 -05:00
jspam
fbb115d198 FindIce: Find slice2confluence and slice2matlab executables 2019-01-10 14:36:10 -05:00
Rob Boehne
74720a298c XL: Move '-bE' flag earlier so it can be overridden
By default, we generate an export list for a shared library and pass
that file on the link line.  The problem was that it could not be
overridden by a target when a specific export file is being used.
Multiple `-bE` flags on the link are overridden by subsequent `-bE`
flags, so only the last one is used.

Fixes: #13282
2019-01-10 14:25:06 -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
Robert Maynard
5000fed5af FindBISON: Add policy CMP0088 to run bison in build tree 2019-01-10 13:23:14 -05:00
Craig Scott
1fe3d126a5 Merge topic 'BundleUtilities-make-dir'
200bf57742 BundleUtilities: Ensure target dir exists when creating symlinks

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: Craig Scott <craig.scott@crascit.com>
Merge-request: !2728
2019-01-09 16:41:38 -05:00
Joachim Wuttke (o)
5a5a1d90f0 Help: FindThreads not needed with modern C++. 2019-01-09 11:03:44 +01:00
Tim Blechmann
200bf57742 BundleUtilities: Ensure target dir exists when creating symlinks
Commit v3.13.0-rc1~279^2 (GetPrerequisites: Move dylibs from MacOS
to Frameworks folder in bundle, 2018-07-22) introduced a regression
that can cause symlink creation to fail during packaging. Symlinks
can be created before targets are installed, so the destination
directory of the symlink sometimes won't exist at symlink creation.

Fixes: #18726
2019-01-08 19:56:34 +11:00
Craig Scott
99a0a6d816 Merge topic 'bundle_fixes'
08be74bfd7 GetPrerequisites: Fix handling of executable scripts
52445300d6 GetPrerequisites: Allow prefixed tools
1bac4678ea GetPrerequisites: Add GET_PREREQUISITES_VERBOSE to set verbose
5072598f07 BundleUtilites: Don't use hardcoded name for install_name_tool
428680da92 GetPrerequisites: Don't use hardcoded name for otool

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2748
2019-01-06 15:05:32 -05:00
Alexander Grund
08be74bfd7 GetPrerequisites: Fix handling of executable scripts
Fixes: #18667
2019-01-05 09:09:39 +11:00
Marc Chevrier
e7a88ce482 Merge branch 'swig_src_file_ext' into 'master'
UseSWIG: Add support for custom Swig source file extensions

Closes #18727

See merge request cmake/cmake!2764
2019-01-04 05:16:41 -05:00
Thirumal Venkat
9816748847 SWIG: Add support for custom Swig source file extensions 2019-01-03 09:36:15 +05:30
Craig Scott
a7dcf130e9 Merge topic 'gtest-discovery-work-dir'
3bbf77fa01 Specify WORKING_DIRECTORY to execute_process() in GoogleTestAddTests

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2761
2018-12-31 17:07:13 -05:00
Alexander Grund
52445300d6 GetPrerequisites: Allow prefixed tools
e.g. for cross-compilation with e.g. x86_64-pc-linux-gnu-ldd
2018-12-31 11:56:40 +11:00
Alexander Grund
1bac4678ea GetPrerequisites: Add GET_PREREQUISITES_VERBOSE to set verbose 2018-12-31 11:56:40 +11:00
Alexander Grund
5072598f07 BundleUtilites: Don't use hardcoded name for install_name_tool 2018-12-31 11:56:40 +11:00
Alexander Grund
428680da92 GetPrerequisites: Don't use hardcoded name for otool 2018-12-30 15:08:49 +01:00
Craig Scott
c79b98af37 Merge topic 'remove-include-cmakeparsearguments'
88b40744b5 CMakeParseArguments: Remove superfluous includes of CMakeParseArguments

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !2744
2018-12-29 16:45:57 -05:00
Nehal J Wani
3bbf77fa01 Specify WORKING_DIRECTORY to execute_process() in GoogleTestAddTests 2018-12-28 17:44:51 +05:30
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
91bcb88c3c Merge topic 'output-on-failure'
19d86e26e3 ExternalProject: add LOG_OUTPUT_ON_FAILURE option

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2625
2018-12-21 16:21:47 -05:00
Wouter Klouwen
19d86e26e3 ExternalProject: add LOG_OUTPUT_ON_FAILURE option
This option only has an effect if at least one of the other LOG_<step>
options is enabled.  If an error occurs for a step which has logging to
file enabled, that step's output will be printed to the console.  For
cases where a large amount of output is recorded, just the end of that
output may be printed to the console.
2018-12-21 07:52:08 +11:00
Marc Chevrier
feafc7f3fe Help: FindLibLZMA: update formatting. 2018-12-20 15:26:51 +01:00
Marc Chevrier
0495ce4f98 Merge branch 'topic-findliblzma' into 'master'
FindLibLZMA: add imported target

Closes #18679 and #18680

See merge request cmake/cmake!2730
2018-12-20 06:17:35 -05:00
Marc Chevrier
f255280fd9 PIE link options: Update strategy to fix performance regression
Fixes: #18700
2018-12-19 19:41:27 +11:00
Mateusz Łoskot
266808c413 FindBoost: Add support for Boost 1.70
Boost master and develop branches just bumped the version.
2018-12-18 15:33:09 +01:00
Kyle Edwards
88b40744b5 CMakeParseArguments: Remove superfluous includes of CMakeParseArguments
Because cmake_parse_arguments() has been implemented as a native
command, there is no need to include(CMakeParseArguments) anymore.
Its inclusion has been removed from several CMake modules.

Tests/CMakeOnly/CMakeLists.txt has been changed to include the
*building* CMake's copy of CMakeParseArguments rather than the
*built* CMake's copy. This file included the *built* copy because
when this file was introduced, CMake could still be built with versions
that didn't supply cmake_parse_arguments(). Now, CMake requires 3.1 or
greater, where cmake_parse_arguments() existed but was still in the
form of a module, so we include it from the *building* CMake.
2018-12-13 19:51:01 -05:00