summaryrefslogtreecommitdiff
path: root/Source/cmGlobalVisualStudio71Generator.h
Commit message (Collapse)AuthorAgeFilesLines
* Source: Fix possible IWYU warnings in Windows generatorsNAKAMURA Takumi2021-11-201-0/+13
|
* Rename cmProp in cmValueMarc Chevrier2021-09-211-1/+1
|
* Refactor: reduce cmToCStr usageMarc Chevrier2021-08-191-1/+1
|
* Modernize: Use #pragma once in all header filesKitware Robot2020-09-031-3/+1
| | | | | | | | | | | | | | | | #pragma once is a widely supported compiler pragma, even though it is not part of the C++ standard. Many of the issues keeping #pragma once from being standardized (distributed filesystems, build farms, hard links, etc.) do not apply to CMake - it is easy to build CMake on a single machine. CMake also does not install any header files which can be consumed by other projects (though cmCPluginAPI.h has been deliberately omitted from this conversion in case anyone is still using it.) Finally, #pragma once has been required to build CMake since at least August 2017 (7f29bbe6 enabled server mode unconditionally, which had been using #pragma once since September 2016 (b13d3e0d)). The fact that we now require C++11 filters out old compilers, and it is unlikely that there is a compiler which supports C++11 but does not support #pragma once.
* Ninja Multi-Config: Fix issue with framework dependencies and AutogenKyle Edwards2020-02-171-3/+4
| | | | Fixes: #20345
* Source: use std::string in place of const char*Vitaly Stakhovsky2020-01-291-3/+4
|
* VS: Convert WriteSLNHeader to non-virtual lookup tableBrad King2019-01-101-1/+0
|
* Add missing overrideVitaly Stakhovsky2018-12-301-1/+1
|
* add_dependencies: Track backtraces internallyBrad King2018-10-181-1/+1
| | | | | Record backtraces for "utility" dependencies created by `add_dependencies` calls.
* VS: Use 'override' keyword for overridden methods in generator classesVitaly Stakhovsky2017-12-151-14/+13
| | | | The corresponding 'virtual' removed.
* Drop Visual Studio 7 .NET 2003 generatorBrad King2017-04-191-29/+0
| | | | This generator has been deprecated since CMake 3.6. Remove it.
* VS: Pass whole target to WriteProjectConfigurationsBeeble2017-04-051-2/+2
|
* cmState: Move TargetType enum to separate namespaceStephen Kelly2016-10-191-1/+1
|
* Simplify CMake per-source license noticesBrad King2016-09-271-11/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | Per-source copyright/license notice headers that spell out copyright holder names and years are hard to maintain and often out-of-date or plain wrong. Precise contributor information is already maintained automatically by the version control tool. Ultimately it is the receiver of a file who is responsible for determining its licensing status, and per-source notices are merely a convenience. Therefore it is simpler and more accurate for each source to have a generic notice of the license name and references to more detailed information on copyright holders and full license terms. Our `Copyright.txt` file now contains a list of Contributors whose names appeared source-level copyright notices. It also references version control history for more precise information. Therefore we no longer need to spell out the list of Contributors in each source file notice. Replace CMake per-source copyright/license notice headers with a short description of the license and links to `Copyright.txt` and online information available from "https://cmake.org/licensing". The online URL also handles cases of modules being copied out of our source into other projects, so we can drop our notices about replacing links with full license text. Run the `Utilities/Scripts/filter-notices.bash` script to perform the majority of the replacements mechanically. Manually fix up shebang lines and trailing newlines in a few files. Manually update the notices in a few files that the script does not handle.
* Revise C++ coding style using clang-formatKitware Robot2016-05-161-17/+17
| | | | | | | | | | | | | Run the `Utilities/Scripts/clang-format.bash` script to update all our C++ code to a new style defined by `.clang-format`. Use `clang-format` version 3.8. * If you reached this commit for a line in `git blame`, re-run the blame operation starting at the parent of this commit to see older history for the content. * See the parent commit for instructions to rebase a change across this style transition commit.
* VS: Ignore USE_FOLDER property on VS versions that do not support itBrad King2016-04-261-0/+3
| | | | | Solution folders are supported on VS 8 and above in the full versions and on VS 11 and above in the express versions.
* VS: Port ProjectDepends to cmGeneratorTarget.Stephen Kelly2015-10-241-1/+1
|
* VS: Port WriteProject to cmGeneratorTargetStephen Kelly2015-10-241-1/+1
|
* cmState: Move TargetType enum from cmTarget.Stephen Kelly2015-10-151-1/+1
| | | | | | | Mostly automated: values=( "EXECUTABLE" "STATIC_LIBRARY" "SHARED_LIBRARY" "MODULE_LIBRARY" "OBJECT_LIBRARY" "UTILITY" "GLOBAL_TARGET" "INTERFACE_LIBRARY" "UNKNOWN_LIBRARY" "TargetType") for i in "${values[@]}"; do git grep -l cmTarget::$i | xargs sed -i "s|cmTarget::$i|cmState::$i|g"; done
* cmGlobalGenerator: Require a cmake instance in ctor.Stephen Kelly2015-05-271-1/+2
| | | | It is required anyway, so this makes it explicit.
* VS: Do not accumulate configurations globally (#15577)Brad King2015-05-211-1/+3
| | | | | | | | | | | Drop the VS >= 7 generator's global Configurations member and instead lookup configurations using cmMakefile::GetConfigurations where needed. This avoids accumulating all CMAKE_CONFIGURATION_TYPES values ever encountered by a project() or enable_language() command and allows the final value to be used in each directory. We don't officially support per-directory CMAKE_CONFIGURATION_TYPES values but we certainly should not generate configurations not in the final value in the top level directory.
* VS: Remove obsolete methods.Stephen Kelly2015-05-191-3/+0
| | | | Base class implementations for these are identical.
* cmLocalGenerator: Require a parent in the constructor.Stephen Kelly2015-04-281-1/+1
| | | | | | | Pass the parent though cmGlobalGenerator::CreateLocalGenerator. This will make it easy to initialize state scopes independent of cmMakefile.
* stringapi: Use strings for generator namesBen Boeckel2014-03-081-4/+4
|
* strings: Remove cmStdString referencesBen Boeckel2014-03-081-1/+1
| | | | | | | | | | | Casts from std::string -> cmStdString were high on the list of things taking up time. Avoid such implicit casts across function calls by just using std::string everywhere. The comment that the symbol name is too long is no longer relevant since modern debuggers alias the templates anyways and the size is a non-issue since the underlying methods are generated since it's inherited.
* stringapi: Use strings for VS project namesBen Boeckel2014-03-081-4/+4
|
* Constify handling of target dependencies.Stephen Kelly2013-12-111-2/+4
|
* VS: Replace ArchitectureId with PlatformNamePatrick Gansterer2013-08-051-1/+1
| | | | | | | | Since we do not need the information about the target architecture we can use the PlatformName only to specify the this information. This also removes setting of the MSVC_*_ARCHITECTURE_ID variable which is not required, because this variable gets set by the compiler detection code in CMAKE_DETERMINE_COMPILER_ID_CHECK().
* VS: Added "Deploy" at project configuration for WindowsCE targetsPatrick Gansterer2012-11-271-1/+1
|
* Merge topic 'generator-factory'Brad King2012-11-201-3/+4
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | 75ebebc VS: Remove platform specific generator files 8b62080 VS: Remove EnableLanguage from platform-specific generators 5bdf011 VS: Remove GetPlatformName from platform-specific generators 8d42ab4 VS: Fix ArchitectureId of Visual Studio 10 IA64 generator 6f439b3 VS: Remove AddPlatformDefinitions from platform-specific generators 5170a88 Make cmGlobalGenerator::GetDocumentation() a static function 04ff866 Allow a GeneratorFactory handling of more than one generator 984ebc3 Search generator in cmake::ExtraGenerators before in cmake::Generators 30a6950 Add cmGlobalGeneratorFactory::GetGenerators() e8f8414 Introduce the abstract class cmGlobalGeneratorFactory
| * Make cmGlobalGenerator::GetDocumentation() a static functionPatrick Gansterer2012-11-191-1/+1
| | | | | | | | | | Making the function static allows us to call it directly, without creating and removing an instance of the generator.
| * Introduce the abstract class cmGlobalGeneratorFactoryPatrick Gansterer2012-11-191-2/+3
| | | | | | | | | | This new abstract class allows us move some logic from the cmGlobalGenerator into its own layer in a next step.
* | Merge topic 'per-config-EXCLUDE_FROM_DEFAULT_BUILD' into vs-global-sectionsBrad King2012-11-161-4/+4
|\ \ | | | | | | | | | | | | Conflicts: Source/cmGlobalVisualStudio7Generator.h
| * | Add property EXCLUDE_FROM_DEFAULT_BUILD_<CONFIG>Petr Kmoch2012-11-131-4/+4
| |/ | | | | | | Allow EXCLUDE_FROM_DEFAULT_BUILD to be specified per configuration.
* | Implement properties VS_GLOBAL_SECTION_*Petr Kmoch2012-11-161-1/+0
|/ | | | | | Add properties VS_GLOBAL_SECTION_PRE_<name> and VS_GLOBAL_SECTION_POST_<name>, which can be used to generate custom GlobalSection-s in the .sln file.
* VS: Cleanup AddPlatformDefinitions() of Visual Studio generatorsPatrick Gansterer2012-08-221-1/+0
| | | | | Move adding of definitions into cmGlobalVisualStudioGenerator to share code and avoid duplicate architecture string literals.
* Remove trailing whitespace from most CMake and C/C++ codeKitware Robot2012-08-131-6/+6
| | | | | | | | | | | | | | | | | Our Git commit hooks disallow modification or addition of lines with trailing whitespace. Wipe out all remnants of trailing whitespace everywhere except third-party code. Run the following shell code: git ls-files -z -- \ bootstrap doxygen.config '*.readme' \ '*.c' '*.cmake' '*.cpp' '*.cxx' \ '*.el' '*.f' '*.f90' '*.h' '*.in' '*.in.l' '*.java' \ '*.mm' '*.pike' '*.py' '*.txt' '*.vim' | egrep -z -v '^(Utilities/cm|Source/(kwsys|CursesDialog/form)/)' | egrep -z -v '^(Modules/CPack\..*\.in)' | xargs -0 sed -i 's/ \+$//'
* include_external_msproject: Add TYPE, GUID, PLATFORM options (#13120)Leonid Yurchenko2012-04-161-1/+3
| | | | These allow one to reference more external VS project file variations.
* Convert CMake to OSI-approved BSD LicenseBrad King2009-09-281-14/+9
| | | | | | | This converts the CMake license to a pure 3-clause OSI-approved BSD License. We drop the previous license clause requiring modified versions to be plainly marked. We also update the CMake copyright to cover the full development time range.
* Create VS generator GetRegistryBase methodBrad King2009-09-161-0/+1
| | | | | | | | | This method returns the registry key HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\<version> A protected GetIDEVersion method retrieves the version-specific part of the key name.
* ENH: remove INCLUDE_EXTERNAL_MSPROJECT name hack, and use target properties ↵Bill Hoffman2009-07-141-1/+1
| | | | instead, fix VXExternalInclude test for VS10
* ENH: Add code to support calling the VS reload macro from Visual Studio 7.1 ↵David Cole2008-02-151-0/+13
| | | | and 9.0 in addition to 8.0 sp1... Make new macros file with VS 7.1 so that it can be read by 7.1 and later. VS 7.1 does not appear to run the macros while a build is in progress, but does not return any errors either, so for now, the reload macro is not called when using 7.1. If I can figure out how to get 7.1 to execute the macro, I will uncomment the code in cmGlobalVisualStudio71Generator::GetUserMacrosDirectory() to activate executing the macros in VS 7.1, too.
* ENH: fix for bug 3218 dependant projects are written out automatically if ↵Bill Hoffman2008-01-301-1/+2
| | | | they are in the project. Also fix bug 5829, remove hard coded CMAKE_CONFIGURATION_TYPES from vs 7 generator
* ENH: commit fix for putting everything in the build on vsBill Hoffman2006-11-091-1/+1
|
* BUG: Fix/cleanup custom commands and custom targets. Make empty comment ↵Brad King2006-09-281-2/+2
| | | | strings work. Fix ZERO_CHECK target always out of date for debugging. Fix Makefile driving of custom commands in a custom target. Fix dependencies on custom targets not in ALL in VS generators.
* STYLE: fix line lengthKen Martin2006-05-111-1/+2
|
* BUG: MSVC* variables should be set in IDE generators instead of just NMake.Brad King2006-05-051-0/+1
|
* STYLE: some m_ to this-> cleanupKen Martin2006-03-151-1/+1
|
* STYLE: fix line lengthsBill Hoffman2006-03-101-3/+6
|
* BUG: Fixed generation of VS8 solution file to not be re-written when loaded ↵Brad King2006-02-141-0/+3
| | | | by VS and to work with msbuild.