summaryrefslogtreecommitdiffstats
path: root/Source/cmLocalVisualStudio7Generator.cxx
Commit message (Collapse)AuthorAgeFilesLines
* 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
| |
* | cmMakefile: Make GetSafeDefinition return std::string const&Vitaly Stakhovsky2018-09-181-2/+2
| |
* | genex: Simplify cmGeneratorExpressionInterpreterBrad King2018-09-071-2/+1
| | | | | | | | | | | | | | | | | | All callers were constructing with a non-empty target name using the target whose pointer was passed anyway. Drop this argument. Simplify logic accordingly. Re-order constructor arguments to match the cmCompiledGeneratorExpression::Evaluate arguments. Also remove unnecessary getters.
* | cmMakefile: Make GetRequiredDefinition return std::stringVitaly Stakhovsky2018-09-051-4/+3
|/ | | | | | | In all cases the return value is converted to std::string anyway. Also remove unnecessary `c_str()` calls in arguments to `GetRequiredDefinition`.
* Merge topic 'lg-directory'Brad King2018-08-281-1/+1
|\ | | | | | | | | | | | | 50fbfee3a0 cmLocalGenerator: return directories as const std::string& Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2309
| * cmLocalGenerator: return directories as const std::string&Vitaly Stakhovsky2018-08-271-1/+1
| |
* | static library: add property STATIC_LIBRARY_OPTIONSMarc Chevrier2018-08-151-1/+3
|/ | | | issue: #18251
* cmVisualStudioGeneratorOptions::Parse(): const std::string& argumentVitaly Stakhovsky2018-08-131-4/+4
|
* VS: extended OutputDeploymentDebuggerTool for AdditionalFilesFrank Goyens2018-07-091-18/+32
| | | | | | The `OutputDeploymentDebuggerTool` function now also retrieves a target property that is used for setting the `AdditionalFiles` attribute of `DeploymentTool`.
* VS: moved EscapeForXML function higher up and made staticFrank Goyens2018-07-061-11/+12
|
* LINK_OPTIONS: Add new family of propertiesMarc Chevrier2018-06-061-0/+7
| | | | | | | | | | | | | | This family enable to manage link flags Three new properties: * directory property: LINK_OPTIONS * target properties: LINK_OPTIONS and INTERFACE_LINK_OPTIONS Two new commands * add_link_options(): to populate directory property * target_link_options(): to populate target properties Fixes: #16543
* cmVisualStudioGeneratorOptions: specify indentation with integerVitaly Stakhovsky2018-04-251-20/+21
|
* Merge branch 'backport-fix-explicit-CMakeLists.txt'Brad King2018-04-131-1/+12
|\
| * Restore support for explicitly referenced CMakeLists.txt sourcesBrad King2018-04-131-1/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit v3.11.0-rc1~467^2 (VS,Xcode: Add CMakeLists.txt sources without mutating targets, 2017-10-18) we do not add `CMakeLists.txt` to target sources but instead generate references to them directly. This broke projects that explicitly specify their `CMakeLists.txt` file as a source file because the explicit entry is no longer consolidated with the generated one. Teach the relevant generators to avoid duplicating `CMakeLists.txt` source references and add test cases. Fixes: #17828
* | Merge topic 'glob_configure_depends'Brad King2018-04-061-9/+29
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6c4f8b4596 Adjust help documentation for file(GLOB), add topic notes 20612978c8 Add tests for `file(GLOB)` CONFIGURE_DEPENDS flag 3f4b81f540 Add glob verify support to XCode, VS, Ninja, and Makefile generators ca0befc2e1 Add `CONFIGURE_DEPENDS` flag support to cmFileCommand::HandleGlobCommand 599c93e22d Add cmGlobVerificationManager class, integrate with cmake and cmState Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1767
| * | Add glob verify support to XCode, VS, Ninja, and Makefile generatorsShane Parris2018-04-021-9/+29
| | |
* | | VS: Simplify XML codeVitaly Stakhovsky2018-03-271-15/+11
|/ / | | | | | | Get rid of suffix arguments
* | cmVisualStudioGeneratorOptions: Move XML code to subclassesVitaly Stakhovsky2018-03-261-0/+9
| |
* | cmIDEOptions: use std::stringVitaly Stakhovsky2018-02-261-2/+2
| |
* | Document and extend the CMAKE_SUPPRESS_REGENERATION variableShane Parris2018-02-231-1/+2
|/ | | | Fixes: https://gitlab.kitware.com/cmake/cmake/issues/16815