summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'msvc-doc-fix'Brad King2018-02-012-3/+6
|\ | | | | | | | | | | | | efe22af2 Help: Clarify MSVC and MSVC_VERSION variables Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1732
| * Help: Clarify MSVC and MSVC_VERSION variablesChristian Pfeiffer2018-02-012-3/+6
| | | | | | | | | | The current documentation doesn't clarify that compilers simulating Visual C++ will also have these variables set.
* | Merge topic 'std-string-apis'Brad King2018-02-01120-506/+470
|\ \ | | | | | | | | | | | | | | | | | | 653b8946 Reduce raw string pointers usage. Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1729
| * | Reduce raw string pointers usage.Pavel Solodovnikov2018-01-31120-507/+471
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Change some functions to take `std::string` instead of `const char*` in the following classes: `cmMakeFile`, `cmake`, `cmCoreTryCompile`, `cmSystemTools`, `cmState`, `cmLocalGenerator` and a few others. * Greatly reduce using of `const char*` overloads for `cmSystemTools::MakeDirectory` and `cmSystemTools::RelativePath`. * Remove many redundant `c_str()` conversions throughout the code.
* | | Merge topic 'UseSWIG-doc-clarify'Brad King2018-02-011-52/+64
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b844a414 UseSWIG: Clarify documentation of SWIG_OUTFILE_DIR 315b0927 UseSWIG: Improve documentation markup ce130c7a UseSWIG: Convert docs to a bracket comment Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1733
| * | | UseSWIG: Clarify documentation of SWIG_OUTFILE_DIRNoel Eck2018-01-311-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The `SWIG_OUTFILE_DIR` variable provides the option to specify an output directory location. This commit removes portion stating that this is equal to the `swig -o` option since it does not set the output filename. Fixes: #17703 Signed-off-by: Noel Eck <noel.eck@intel.com>
| * | | UseSWIG: Improve documentation markupBrad King2018-01-311-31/+42
| | | |
| * | | UseSWIG: Convert docs to a bracket commentBrad King2018-01-311-52/+53
| | |/ | |/|
* | | Merge topic 'findmpi-linker-parsing-enh'Brad King2018-02-011-92/+281
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 0def3604 FindMPI: Discard IMPI boilerplate text 9ecbec5e FindMPI: Support for IMPI's compiler check 76755367 FindMPI: Set up environment variables for wrapper e7c0298d FindMPI: Retain unused link paths 8cddc899 FindMPI: Use more CMake variables 8b79107a FindMPI: Improve link information parsing Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1694
| * | | FindMPI: Discard IMPI boilerplate textChristian Pfeiffer2018-01-311-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | Intel MPI on Windows prefixes all outputs with some boilerplate copyright text. By discarding it, we should prevent any potential clashes with our regex parsing.
| * | | FindMPI: Support for IMPI's compiler checkChristian Pfeiffer2018-01-311-0/+27
| | | | | | | | | | | | | | | | | | | | | | | | Intel MPI has an optional feature to check compatibility with the compiler, given by I_MPI_CHECK_COMPILER. This commit adds support for executing that check.
| * | | FindMPI: Set up environment variables for wrapperChristian Pfeiffer2018-01-311-5/+80
| | | | | | | | | | | | | | | | | | | | | | | | For MPICH derivates and Intel MPI, we can improve the compiler wrapper behavior and accuracy by defining certain environment variables if they haven't been set otherwise.
| * | | FindMPI: Retain unused link pathsChristian Pfeiffer2018-01-301-6/+18
| | | | | | | | | | | | | | | | | | | | | | | | If our ``find_library`` step hasn't used a particular link directory at all, it's best to retain it in order to prevent issues from secondary dependencies not being found.
| * | | FindMPI: Use more CMake variablesChristian Pfeiffer2018-01-301-59/+118
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This replaces hardcoded expectations of flags like -l and -L with a dynamical solution based on CMake platform variables. Furthermore, the linker flag parsing is dynamified to support more forms and given linker paths are now removed properly from the linker flags.
| * | | FindMPI: Improve link information parsingChristian Pfeiffer2018-01-251-53/+65
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The parsing of link information coming from the compiler wrapper has been improved: - Support MSVC /link argument separation properly and add support for potential VC++ link flags - Rely on the global import/static/shared library suffixes instead of hardcoded special values. This should improve compatibility with Cygwin and MinGW should any MPI implementation there need this behavior. - Don't use ``find_library`` if the full path of a library is known anyways.
* | | | Merge topic 'perf-from-callgrind'Brad King2018-02-017-69/+146
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 901c4a1e cmExpandedCommandArgument: add an overload for const char* 88ed556d cmGeneratorTarget: make keyword strings const 14a13d30 cmGeneratorExpressionLexer: only tokenize strings with a '$' f2b8d67f cmTarget: use static strings for special property names 6dfd0f92 cmGeneratorExpressionNode: avoid some strlen in $<TARGET_PROPERTY> f9235fd4 cmAddCustomCommandCommand: use std::string const& for FileIsFullPath c0e7a137 cmAddCustomCommandCommand: store keywords in strings Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1689
| * | | | cmExpandedCommandArgument: add an overload for const char*Ben Boeckel2018-01-312-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | Static string comparisons were causing heap allocations just for a comparison.
| * | | | cmGeneratorTarget: make keyword strings constBen Boeckel2018-01-311-4/+4
| | | | |
| * | | | cmGeneratorExpressionLexer: only tokenize strings with a '$'Ben Boeckel2018-01-311-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In standard libraries, `std::string::find` is usually implemented using vectorized code. Since the Tokenize method iterates character-by-character, doing an initial check using `find` improves performance.
| * | | | cmTarget: use static strings for special property namesBen Boeckel2018-01-311-14/+28
| | | | | | | | | | | | | | | | | | | | | | | | | Similar to 660769151a7f628f92eb28d77bcae854eaae54c2, the `SetProperty` side is showing up in performance listings due to string comparisons.
| * | | | cmGeneratorExpressionNode: avoid some strlen in $<TARGET_PROPERTY>Ben Boeckel2018-01-311-1/+2
| | | | |
| * | | | cmAddCustomCommandCommand: use std::string const& for FileIsFullPathBen Boeckel2018-01-311-1/+1
| | | | |
| * | | | cmAddCustomCommandCommand: store keywords in stringsBen Boeckel2018-01-311-49/+99
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Callgrind indicated that `strlen` was being called a lot of times here due to the string comparisons. Since keywords are "sparse" in `add_custom_command`, use a hash comparison to handle keywords and then use strings for comparison since they have a built-in length parameter.
* | | | | CMake Nightly Date StampKitware Robot2018-02-011-1/+1
| |_|/ / |/| | |
* | | | Merge topic 'windows-cmake-stack-size'Brad King2018-01-311-0/+4
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | c7cee1a1 Windows: Increase stack size used by CMake binaries Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1728
| * | | | Windows: Increase stack size used by CMake binariesBrad King2018-01-301-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Deep regex matching logic can exceed the default 1MB stack size. Until a better regex engine is used, simply push the problem over a farther horizon by increasing the stack size when built using a MSVC-compatible linker. Issue: #17659
* | | | | Merge topic 'windows-embed-cmake-gui-version'Brad King2018-01-311-0/+4
|\ \ \ \ \ | |_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | 45f6aa32 Windows: Embed version information into cmake-gui Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1726
| * | | | Windows: Embed version information into cmake-guiBrad King2018-01-301-0/+4
| |/ / / | | | | | | | | | | | | | | | | In commit 5b9da05b7a (Windows: Embed version information into CMake binaries, 2017-10-25) we accidentally left out cmake-gui.
* | | | Merge topic 'msvc_cuda_files_use_consistent_obj_names'Brad King2018-01-317-26/+51
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fa583869 CUDA: Use MSVC default pattern for naming object files Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1722
| * | | | CUDA: Use MSVC default pattern for naming object filesRobert Maynard2018-01-307-26/+51
| |/ / / | | | | | | | | | | | | | | | | The default that CUDA uses causes failures when you try to embed CUDA obj's into another target.
* | | | Merge topic 'generate_speedup'Brad King2018-01-312-29/+6
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | aed227fd cmLocalGenerator: change ImportedGeneratorTargets from vector to map 4443adc1 cmLocalGenerator: remove public GetImportedGeneratorTargets Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Attila Krasznahorkay <attila.krasznahorkay@gmail.com> Merge-request: !1717
| * | | | cmLocalGenerator: change ImportedGeneratorTargets from vector to mapFrank Winklmeier2018-01-302-24/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For large number of targets significant amount of time is spent in cmLocalGenerator::FindGeneratorTargetToUse, which uses find_if on a vector to locate the given target. Using a map instead of vector for ImportedGeneratorTargets (as done for cmMakefile::ImportedTargets) provides a significant speedup (up to factor of 2).
| * | | | cmLocalGenerator: remove public GetImportedGeneratorTargetsFrank Winklmeier2018-01-301-5/+0
| |/ / / | | | | | | | | | | | | | | | | GetImportedGeneratorTargets is not used anywhere hence remove it to avoid exposing the type of ImportedGeneratorTargets.
* | | | Merge topic 'source_group-TREE-args'Brad King2018-01-316-91/+181
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 365e02e7 source_group: Fix TREE argument parsing Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1713
| * | | | source_group: Fix TREE argument parsingMateusz Janek2018-01-306-91/+181
| | | | | | | | | | | | | | | | | | | | Fixes: #17581
* | | | | Merge topic 'CheckIPOSupported-doc-Fortran'Brad King2018-01-311-1/+1
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9e341f05 CheckIPOSupported: Document existing Fortran support Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1727
| * | | | | CheckIPOSupported: Document existing Fortran supportBrad King2018-01-301-1/+1
| | |/ / / | |/| | | | | | | | | | | | | | | | | | Support was added by commit v3.9.0-rc1~318^2 (CheckIPOSupported: Add Fortran support, 2017-04-02) but the documentation was not updated.
* | | | | Merge topic 'vs-restore-order'Brad King2018-01-311-2/+2
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1fe66c46 VS: Restore the order of the AdditionalIncludeDirectories tag Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1719
| * | | | | VS: Restore the order of the AdditionalIncludeDirectories tagVitaly Stakhovsky2018-01-301-2/+2
| | |_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | Move the `AdditionalIncludeDirectories` tag back to the VS-preferred location in `.vcxproj` files. Fixes: #17691
* | | | | Merge topic 'dedup-ComputeObjectFilenames'Brad King2018-01-316-38/+21
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 79f22e84 Makefile,Ninja: De-duplicate ComputeObjectFilenames method Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1715
| * | | | | Makefile,Ninja: De-duplicate ComputeObjectFilenames methodBrad King2018-01-296-38/+21
| |/ / / / | | | | | | | | | | | | | | | | | | | | Move the method implementation up to `cmLocalCommonGenerator` to avoid duplicating it in each generator.
* | | | | Merge topic 'adsp-asmembler-identification'Brad King2018-01-311-0/+4
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f83330ed ASM: ADSP assembler identification Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1723
| * | | | | ASM: ADSP assembler identificationAnton Danielsson2018-01-301-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add support to identify the ADSP (Analog Devices) assembler in CMakeDetermineASMCompiler. Fixes: #17695
* | | | | | Merge topic 'FindCUDA-restore-config-types'Brad King2018-01-311-0/+12
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9f74aaeb FindCUDA: Fix regression in per-config flags Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1725
| * | | | | | FindCUDA: Fix regression in per-config flagsBrad King2018-01-301-0/+12
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes in commit 48f7e2d300 (Unhardcode the CMAKE_CONFIGURATION_TYPES values, 2017-11-27) accidentally left `CUDA_configuration_types` undefined, but this is used in a few places to handle per-config flags. Restore it. Fixes: #17671
* | | | | | CMake Nightly Date StampKitware Robot2018-01-311-1/+1
| |_|/ / / |/| | | |
* | | | | Merge topic 'update_foreach_range_doc'Brad King2018-01-301-4/+4
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7771657c Help: Better explain that foreach(RANGE ) is inclusive. Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1716
| * | | | | Help: Better explain that foreach(RANGE ) is inclusive.Robert Maynard2018-01-291-4/+4
| | |/ / / | |/| | |
* | | | | Merge topic 'doc-typo-CMAKE_INCLUDE_CURRENT_DIR'Brad King2018-01-301-1/+1
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 99e473ca Help: Fix typo in CMAKE_INCLUDE_CURRENT_DIR docs Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1708
| * | | | | Help: Fix typo in CMAKE_INCLUDE_CURRENT_DIR docssilvioprog2018-01-291-1/+1
| | | | | |