summaryrefslogtreecommitdiffstats
path: root/Source/cmLocalVisualStudio7Generator.cxx
Commit message (Collapse)AuthorAgeFilesLines
* 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
* Reduce raw string pointers usage.Pavel Solodovnikov2018-01-311-2/+1
| | | | | | | | | | * 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 'sourceFile-new-properties'Brad King2018-01-251-63/+39
|\ | | | | | | | | | | | | | | | | | | 04483111 sourceFile properties: add property INCLUDE_DIRECTORIES 3073bd1f VisualStudio generators: refactoring 78b1c2e0 sourceFile properties: add property COMPILE_OPTIONS 3f935e69 LocalGenerator: refactoring Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1596
| * sourceFile properties: add property INCLUDE_DIRECTORIESMarc Chevrier2018-01-241-1/+12
| |
| * VisualStudio generators: refactoringMarc Chevrier2018-01-231-62/+21
| | | | | | | | | | | | Uniformize include directories handling. Fix memory leaks in class cmVisualStudio10TargetGenerator: OptionsMap uses now std::unique_ptr.
| * sourceFile properties: add property COMPILE_OPTIONSMarc Chevrier2018-01-231-0/+6
| | | | | | | | | | | | | | Add the support of per-source property COMPILE_OPTIONS, including generator expressions support. Related: #17507
* | cmMakefile: use std::string in more methods; cleanup c_str()sVitaly Stakhovsky2018-01-231-1/+1
|/ | | | | Follow up commit 969c1f94ae (cmSourceGroup: code improvements; use std::string and C++11 loops, 2017-01-10).
* Genex: Enable COMPILE_LANGUAGE for INCLUDE_DIRECTORIES with VS and XcodeBrad King2018-01-121-7/+17
| | | | | | | | | | | | | | | The set of compile flags used for a target's C and C++ sources is based on the linker language. By default this is always the C++ flags if any C++ sources appear in the target, and otherwise the C flags. Therefore we can define the `COMPILE_LANGUAGE` generator expression in `INCLUDE_DIRECTORIES` to match the selected language. This is not exactly the same as for other generators, but is the best VS and Xcode can do. It is also sufficient for many use cases since the set of include directories for C and C++ is frequently similar but may be distinct from those for other languages like CUDA. Fixes: #17435
* Genex: Enable COMPILE_LANGUAGE for COMPILE_DEFINITIONS with VS and XcodeBrad King2018-01-121-2/+5
| | | | | | | | | | | | | | | The set of compile flags used for a target's C and C++ sources is based on the linker language. By default this is always the C++ flags if any C++ sources appear in the target, and otherwise the C flags. Therefore we can define the `COMPILE_LANGUAGE` generator expression in `COMPILE_DEFINITIONS` to match the selected language. This is not exactly the same as for other generators, but is the best VS and Xcode can do. It is also sufficient for many use cases since the set of definitions for C and C++ is frequently similar but may be distinct from those for other languages like CUDA. Issue: #17435
* cmLocalVisualStudio7Generator: Clarify variable name of compiled languageBrad King2018-01-111-4/+6
|
* cmLocalVisualStudio7Generator: Clarify condition for target that compilesBrad King2018-01-111-1/+1
|
* VS: Use range-based 'for' loops in generator codeVitaly Stakhovsky2017-12-211-15/+12
| | | | Use `auto` for complex types.
* Merge topic 'per-source-COMPILE_LANGUAGE-genex-support'Brad King2017-12-141-15/+22
|\ | | | | | | | | | | | | 10f58b27 Genex: Per-source $<COMPILE_LANGUAGE:...> support Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1575
| * Genex: Per-source $<COMPILE_LANGUAGE:...> supportMarc Chevrier2017-12-131-15/+22
| | | | | | | | Fixes: #17542
* | cmIDEOptions: use std::string instead of const char*Vitaly Stakhovsky2017-12-091-2/+2
|/ | | | Revise method signatures to save a few c_str() conversions.
* Add generator expression support to per-source COMPILE_DEFINITIONSMarc Chevrier2017-12-051-3/+3
| | | | | | This allows users to specify different genex-based compile definitions for each file in a target. Fixes: #17508
* Merge topic 'src-genex-refactoring'Brad King2017-12-051-3/+2
|\ | | | | | | | | | | | | 6bffc13e Refactor per-source generator expression evaluation Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1550
| * Refactor per-source generator expression evaluationMarc Chevrier2017-12-041-3/+2
| | | | | | | | | | | | Prepare to add generator expression support to more source properties. Factor out some duplicated code into a helper to avoid further duplication.
* | Use CM_FALLTHROUGH in Windows-specific codeBrad King2017-12-041-0/+2
|/ | | | | Some cases were missed by earlier sweeps due to not compiling Windows-specific code.
* cmSourceGroup: Return strings from GetName and GetFullNameBrad King2017-11-151-1/+1
|
* VS,Xcode: Add CMakeLists.txt sources without mutating targetsBrad King2017-10-181-46/+54
| | | | | | | | | | | | Rather than injecting `CMakeLists.txt` files into each target's `SOURCES`, teach the generators to add them during generation using dedicated code. This avoids mutating the original targets, and avoids polluting `$<TARGET_PROPERTY:foo,SOURCES>` with generator-specific content. This also avoids listing the `CMakeLists.txt` sources in the results of `CMAKE_DEBUG_TARGET_PROPERTIES==SOURCES` so the `RunCMake.TargetSources` test no longer needs a separate case for IDEs.
* VS,Xcode: Fix TARGET_PROPERTY genex in source COMPILE_FLAGS propertyBrad King2017-10-031-1/+1
| | | | | | This already worked in other generators. Also add a test case. Fixes: #17314
* Merge topic 'auto_ptr'Brad King2017-09-271-2/+2
|\ | | | | | | | | | | | | | | f0489856 Retire std::auto_ptr and its macro CM_AUTO_PTR Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Pavel Solodovnikov <hellyeahdominate@gmail.com> Merge-request: !1300
| * Retire std::auto_ptr and its macro CM_AUTO_PTRMatthias Maennich2017-09-251-2/+2
| | | | | | | | Signed-off-by: Matthias Maennich <matthias@maennich.net>
* | VS: Adapt project parsers to support "ProjectGUID" without curly bracketsFredrik Orderud2017-09-261-1/+4
|/ | | | | | | This is needed to correctly parse Windows Installer "wiproj" projects, that by default contain "ProjectGUID" tags with GUID values without surrounding curly brackets. Otherwise CMake truncates the first & last character from the GUID value for these projects.
* Replace empty-string comparisons with checking against `empty()`.Pavel Solodovnikov2017-09-211-3/+3
|