summaryrefslogtreecommitdiffstats
path: root/Source/cmLocalVisualStudio7Generator.cxx
Commit message (Collapse)AuthorAgeFilesLines
* Convert more loops to range-based for-loopsVitaly Stakhovsky2020-03-101-3/+2
|
* Modernize memory managementMarc Chevrier2020-03-051-5/+4
| | | | Update internals of various classes.
* Merge branch 'backport-3.16-link-line-backtrace'Brad King2020-02-101-2/+2
|\
| * Propagate backtraces from LINK_LIBRARIES through to link line itemsBrad King2020-02-101-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | Since commit d4d0dd0f6a (cmLinkLineComputer: Add ComputeLinkLibs overload with backtraces, 2019-09-13, v3.16.0-rc1~87^2~4), backtraces have been collected by `ComputeLinkLibs` by looking back through the link implementation libraries for one matching the text of the link line item. This is slow in projects with long link lines. Instead, teach `cmComputeLinkDepends` and `cmComputeLinkInformation` to carry backtrace information explicitly along with the text of each item. Fixes: #20322
* | cmLocalVisualStudio7Generator: clean up c_str()Vitaly Stakhovsky2020-01-201-48/+43
| |
* | Merge topic 'vs-Fortran-link-flags'Brad King2020-01-141-0/+8
|\ \ | |/ | | | | | | | | | | a3c827b2ea VS: Add Fortran link flag table entries for /OPT:* Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4210
| * VS: Add Fortran link flag table entries for /OPT:*Pavel Liavonau2020-01-131-0/+8
| | | | | | | | Fixes: #20190
| * Merge branch 'pch-generate' into release-3.16Brad King2019-10-101-2/+16
| |\ | | | | | | | | | Merge-request: !3890
* | | cmTarget: add std::string overloadsVitaly Stakhovsky2019-12-141-1/+1
| | |
* | | cmMakefile: Delay custom command creationDaniel Eiband2019-11-241-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | Move custom command creation to cmLocalGenerator and dispatch custom commands in cmMakefile to generate time. Generators add custom commands using the new methods provided by cmLocalGenerator. Issue: #12877
* | | Merge topic 'tag-std-string'Brad King2019-11-131-1/+1
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 64843b1737 cmVisualStudio10TargetGenerator: use std::string for tag Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4026
| * | | cmVisualStudio10TargetGenerator: use std::string for tagVitaly Stakhovsky2019-11-101-1/+1
| | | |
* | | | cmLocalGenerator: modernize memory managementMarc Chevrier2019-11-111-7/+7
|/ / /
* | | cmGeneratorTarget: Return non-const sources from GetAllConfigSourcesBrad King2019-10-171-1/+1
| | | | | | | | | | | | | | | We need a non-const pointer to `cmSourceFile` instances in order to call `GetOrDetermineLanguage` on them.
* | | Merge topic 'pch-generate'Brad King2019-10-101-2/+16
|\ \ \ | |/ / |/| / | |/ | | | | | | 36ded610af PCH: Generate sources during Compute step Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3890
| * PCH: Generate sources during Compute stepCristian Adam2019-10-091-2/+16
| |
* | VS: Tell VS 16.4 not to verify CMake-provided custom command outputsBrad King2019-10-071-0/+4
|/ | | | | | | | | Extend the fix from commit 0578239d3a (VS: Tell VS 16.4 not to verify SYMBOLIC custom command outputs, 2019-09-23, v3.15.4~2^2) to apply to outputs in CMake-provided targets like `install`. Simply mark these outputs as `SYMBOLIC` too since they are not actually generated. Fixes: #19737
* Unity build: Generate sources during Compute stepBrad King2019-10-031-1/+0
| | | | | | | | The unity build sources need to be added for all generators. Create them during `cmGlobalGenerator::Compute` to avoid duplicating the calls in every generator. We already handle Qt autogen there too. Issue: #19789
* Revise include order using clang-format-6.0Kitware Robot2019-10-011-7/+8
| | | | | Run the `clang-format.bash` script to update our C and C++ code to a new include order `.clang-format`. Use `clang-format` version 6.0.
* cmCustomCommandLine: Provide command line make functionsDaniel Eiband2019-09-161-17/+8
| | | | | Reduce boilerplate necessary to create custom command lines by introducing and applying cmMakeCommandLine and cmMakeSingleCommandLine functions.
* Merge topic 'use-using'Brad King2019-09-061-1/+1
|\ | | | | | | | | | | | | | | 1d3f5ebb0d clang-tidy: Enable check modernize-use-using a1ddf2d0ba clang-tidy: Replace typedef with using Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3782
| * clang-tidy: Replace typedef with usingRegina Pfeifer2019-09-041-1/+1
| | | | | | | | | | | | | | | | Automate the conversion with perl -i -0pe 's/typedef ([^;]*) ([^ ]+);/using $2 = $1;/g' then manually fix a few places.
* | Merge topic 'unity-build'Brad King2019-09-051-2/+6
|\ \ | |/ |/| | | | | | | | | | | | | | | | | | | | | 7786a05c70 Unity build: Add XCode support 1353802af3 Unity build: Add unit tests 8dfeb5d278 Unity build: Add support for Visual Studio generator 7114c141e2 Unity build: Add support for Ninja and Makefile generators Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Stanislav Ershov <digital.stream.of.mind@gmail.com> Acked-by: Evgeniy Dushistov <dushistov@mail.ru> Acked-by: Viktor Kirilov <vik.kirilov@gmail.com> Merge-request: !3611
| * Unity build: Add support for Visual Studio generatorCristian Adam2019-08-291-2/+6
| | | | | | | | | | | | | | | | | | It works as expected in Visual Studio. Visual Studio 2017 will (partially) benefit from the build in support for unity builds. The custom unity sources are used, because the build in support doesn't allow batching of certain number of files. It can do only batching by directory.
* | clang-tidy: Replace typedef with usingRegina Pfeifer2019-09-031-0/+1
| |
* | cmSourceFile: Rename mutating GetFullPath() overloadDaniel Eiband2019-08-291-2/+2
|/ | | | Rename mutating GetFullPath() overload to ResolveFullPath().
* Precompile headers: Add support for Visual Studio generatorsCristian Adam2019-08-281-0/+2
| | | | | | Tested with Visual C++ 2017 on Windows. Co-Author: Daniel Pfeifer <daniel@pfeifer-mail.de>
* Source sweep: Replace cmExpandList with the shorter cmExpandedListSebastian Holtermann2019-08-231-2/+1
| | | | | | | | | | | | This replaces the code pattern ``` std::vector<std::string> args; cmExpandList(valueStr, args, ...) ``` with ``` std::vector<std::string> args = cmExpandedList(valueStr, ...) ```
* Source sweep: Use cmStrCat for string concatenationSebastian Holtermann2019-08-221-84/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch is generated by a python script that uses regular expressions to search for string concatenation patterns of the kind ``` std::string str = <ARG0>; str += <ARG1>; str += <ARG2>; ... ``` and replaces them with a single `cmStrCat` call ``` std::string str = cmStrCat(<ARG0>, <ARG1>, <ARG2>, ...); ``` If any `<ARGX>` is itself a concatenated string of the kind ``` a + b + c + ...; ``` then `<ARGX>` is split into multiple arguments for the `cmStrCat` call. If there's a sequence of literals in the `<ARGX>`, then all literals in the sequence are concatenated and merged into a single literal argument for the `cmStrCat` call. Single character strings are converted to single char arguments for the `cmStrCat` call. `std::to_string(...)` wrappings are removed from `cmStrCat` arguments, because it supports numeric types as well as string types. `arg.substr(x)` arguments to `cmStrCat` are replaced with `cm::string_view(arg).substr(x)`
* Merge topic 'cm-contains'Brad King2019-08-211-3/+2
|\ | | | | | | | | | | | | | | | | 2dfc52675c cmAlgorithms: Add cmContains Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Sebastian Holtermann <sebholt@web.de> Acked-by: Daniel Pfeifer <daniel@pfeifer-mail.de> Merge-request: !3700
| * cmAlgorithms: Add cmContainsRegina Pfeifer2019-08-191-3/+2
| | | | | | | | Also, use the new function where applicable.
* | avoid adding multiple consecutive string literals to std::stringRolf Eike Beer2019-08-181-4/+2
|/ | | | While at it change some single character additions to be of type char.
* Source code: Use cmExpandList instead of cmSystemTools::ExpandListArgumentSebastian Holtermann2019-08-141-1/+1
|
* VS: Place intermediate files in the "ASM List Location" next to objectsBrad King2019-07-181-2/+1
| | | | | | | | | | | | | The `AssemblerListingLocation` setting in VS project files is meant for intermediate files created during the build much like object files. When the VS 7 generator was first under development, commit 49aebe6c99 (new arch, 2002-09-04) placed both object files and the ASM list location in the same directory. Later commit f9aef0e422 (Generator now creates a separate intermediate files directory for each target, 2005-07-27) moved the object files to a per-target directory but the ASM list location was not moved with them. Move it now. Fixes: #19480
* VS: Use AddLanguageFlags to de-duplicate CMAKE_<LANG>_FLAGS* lookupBrad King2019-04-021-8/+1
|
* cmTarget: Move member `*Commands` to implSebastian Holtermann2019-03-231-0/+1
|
* cmSystemTools::Error: consolidate parameters into single std::stringVitaly Stakhovsky2019-02-201-5/+5
|
* Create and use `cmGeneratorTarget::Names`Saleem Abdulrasool2019-02-111-20/+11
| | | | | | Rather than taking a number of out parameters for the various names, create a structure that is reused for both `GetLibraryNames` and `GetExecutableNames`. Replace uses according to the new interface.
* Merge topic 'modernize-for-loops'Brad King2019-02-111-63/+45
|\ | | | | | | | | | | | | | | | | 01b2d6ab74 Modernize: Use ranged for-loops when possible 15bdbec017 cmAlgorithms: Make cmRange advance/retreat safe for rvalues Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Daniel Pfeifer <daniel@pfeifer-mail.de> Merge-request: !2901
| * Modernize: Use ranged for-loops when possibleArtur Ryt2019-02-071-63/+45
| | | | | | | | | | | | | | Replaced most manual `const_iterator`-based loops and some reverse-iterator loops with range loops. Fixes: #18858
* | cmMakefile::GetRequiredDefinition: return const std::string&Vitaly Stakhovsky2019-02-071-7/+4
|/
* Merge topic 'cmoutputconverter-simplify'Brad King2019-01-291-5/+5
|\ | | | | | | | | | | | | b6a957c969 cmOutputConverter: move ConvertToRelativePath to cmStateDirectory. Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2831
| * cmOutputConverter: move ConvertToRelativePath to cmStateDirectory.Bruno Manganelli2019-01-271-5/+5
| |
* | cmake: inlined files dir constant and removed it from cmake.hBruno Manganelli2019-01-211-3/+3
|/
* Factor out enum MessageType into dedicated headerBruno Manganelli2019-01-161-0/+1
| | | | Reduce the number of files relying on `cmake.h`.
* Convert cmIDEFlagTable to use owned stringsStephan Szabo2018-11-281-4/+4
| | | | | | Convert from char* to std::string in flag tables. Change termination condition from nullptr to empty string in command flag. Update tables to store empty strings.
* Using front() and back() instead of calculationsCengizhan Pasaoglu2018-11-061-1/+1
|
* cmGeneratorTarget::GetExportMacro: return const std::string*Vitaly Stakhovsky2018-10-161-2/+2
|
* Merge topic 'provide_explicit_source_and_build_command_line_options'Brad King2018-09-191-1/+1
|\ | | | | | | | | | | | | | | | | 638f00117a Add release note for the -S and -B options. de962cc00d CMake: Internally uses -S instead of -H to specify source directory a10d63d578 cmake: -S and -B can be used to specify source and build directories Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2358
| * CMake: Internally uses -S instead of -H to specify source directoryRobert Maynard2018-09-151-1/+1
| |