summaryrefslogtreecommitdiffstats
path: root/Source
Commit message (Collapse)AuthorAgeFilesLines
* cmState: Move snapshot creation to the cmake instance.Stephen Kelly2015-05-245-20/+43
| | | | | | | | | | | | | | | | Don't create a snapshot in Initialize(), but leave the creation responsibility to the cmake instance instead. Previously, the cmState would Initialize() in its constructor, and the cmake instance would re-Initialize() during Configure(). The end result was the same and there would be one snapshot present. However, cmLocalGenerator also created a snapshot on construction, and that one was used, leaving the first snapshot unused, and potential for off-by-one errors. Fix that by making the cmLocalGenerator use the existing snapshot if it is top-level. Add a CurrentSnapshot to the cmake instance and populated it while configuring a directory. This will eventually replace the 'current local generator' concept. Fix the GetParent implementation to be able to return the first snapshot.
* GHS: Remove call to SetCurrentLocalGenerator.Stephen Kelly2015-05-241-3/+1
| | | | It is not needed as cmLocalGenerator::Configure does this.
* GHS: Don't attempt to generate for IMPORTED or INTERFACE targets.Stephen Kelly2015-05-241-0/+5
|
* GHS: Remove unnecessary condition.Stephen Kelly2015-05-241-7/+5
|
* GHS: Remove unused CustomCommandUseLocal.Stephen Kelly2015-05-241-3/+0
| | | | | This was copied from the VS generator. It is not an override of a base class method.
* GHS: Remove BuildFileName.Stephen Kelly2015-05-241-5/+0
| | | | It is never read or written.
* GHS: Remove unnecessary Configure override.Stephen Kelly2015-05-242-28/+0
| | | | | This only sets a member variable which is never read. Presumably this was copied from the makefile generator.
* cmake: Remove redundant forward declaration.Stephen Kelly2015-05-241-1/+0
| | | | The appropriate include is already here.
* cmake: Remove redundant condition.Stephen Kelly2015-05-241-5/+0
|
* foreach: Remove unused variables.Stephen Kelly2015-05-241-2/+0
|
* cmGlobalGenerator: De-virtualize methods with no overrides.Stephen Kelly2015-05-241-3/+3
|
* Ninja: Remove some bogus comments.Stephen Kelly2015-05-231-9/+0
| | | | | | The virtual methods are overrides not overloads, the constructor is no longer a default variant, the destructor and GetCMakeInstance comments add no value, only a typo.
* Merge topic 'clean-up-backtrace-handling'Brad King2015-05-224-51/+86
|\ | | | | | | | | | | | | | | | | 8b4b9631 cmake: Add IssueMessage overload taking a single cmListFileContext. 46656aa1 cmake: Extract displayMessage method. 55fc5e7c cmake: Extract printMessageText method. ca7cc2eb cmake: Extract PrintMessagePreamble method. fa752bf3 cmake: Move isError determination to a more-natural place.
| * cmake: Add IssueMessage overload taking a single cmListFileContext.Stephen Kelly2015-05-214-26/+44
| | | | | | | | Port appropriate clients to use it.
| * cmake: Extract displayMessage method.Stephen Kelly2015-05-211-19/+25
| |
| * cmake: Extract printMessageText method.Stephen Kelly2015-05-211-7/+9
| |
| * cmake: Extract PrintMessagePreamble method.Stephen Kelly2015-05-212-8/+19
| |
| * cmake: Move isError determination to a more-natural place.Stephen Kelly2015-05-211-5/+3
| |
* | Merge topic 'vs-cleanup-internal-configs'Brad King2015-05-2210-176/+119
|\ \ | | | | | | | | | | | | 2f4bb4e9 VS: Do not accumulate configurations globally (#15577)
| * | VS: Do not accumulate configurations globally (#15577)Brad King2015-05-2110-176/+119
| |/ | | | | | | | | | | | | | | | | | | | | 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.
* | Merge topic 'revert-extra-qbs-generator'Brad King2015-05-224-316/+0
|\ \ | | | | | | | | | | | | deec97d8 Revert "Qbs: Add new 'extra' generator for qbs project files"
| * | Revert "Qbs: Add new 'extra' generator for qbs project files"Brad King2015-05-214-316/+0
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit f85db2f32358e6de921aba7d1cb8ecb81da934c0. Discussion by the QtCreator community at https://bugreports.qt.io/browse/QTCREATORBUG-13695 raises concerns about this particular approach to working with CMake projects using QtCreator. Also, the functionality and design of the QBS extra generator was never discussed on the CMake mailing list or with QtCreator developers. There may be better ways to make the two tools work together. In order to avoid committing to long-term support of this generator prior to such discussion taking place, revert it from CMake for now. We may restore this or use an alternative design based on results of such discussion.
* | CMake Nightly Date StampKitware Robot2015-05-221-1/+1
|/
* Merge topic 'clean-up-cmLocalGenerator'Brad King2015-05-215-26/+13
|\ | | | | | | | | | | | | | | | | e54d2fdf Convert: Remove specification of default parameter. 20c2fe4d cmLocalGenerator: Get enabled languages from cmState. 7601a7b1 cmLocalGenerator: Implement IsRootMakefile in terms of cmState. 4080ca49 cmLocalGenerator: Inline ReadListFile method. ad706819 cmLocalGenerator: Devirtualize method.
| * Convert: Remove specification of default parameter.Stephen Kelly2015-05-204-7/+5
| |
| * cmLocalGenerator: Get enabled languages from cmState.Stephen Kelly2015-05-201-2/+2
| |
| * cmLocalGenerator: Implement IsRootMakefile in terms of cmState.Stephen Kelly2015-05-201-1/+1
| |
| * cmLocalGenerator: Inline ReadListFile method.Stephen Kelly2015-05-202-15/+4
| |
| * cmLocalGenerator: Devirtualize method.Stephen Kelly2015-05-201-1/+1
| |
* | Merge topic 'clean-up-CMAKE_COMMAND'Brad King2015-05-2116-56/+32
|\ \ | |/ | | | | | | 6fbd4cae Use cmSystemTools::GetCMakeCommand() to get path to cmake internally
| * Use cmSystemTools::GetCMakeCommand() to get path to cmake internallyBrad King2015-05-2016-56/+32
| | | | | | | | | | This is much simpler than finding a way to lookup "CMAKE_COMMAND" everywhere.
* | Merge topic 'cmake-gui-osx-install-command-line'Brad King2015-05-216-263/+99
|\ \ | | | | | | | | | | | | | | | | | | | | | e462ef74 Help: Add notes for topic 'cmake-gui-osx-install-command-line' 8ea2db26 cmake-gui: Replace command-line install dialog with information box 438ce4a0 cmake-gui: Add --install option to add command-line tools on OS X 41477d5c cmake-gui: Drop undocumented and unused --mac-install option
| * | cmake-gui: Replace command-line install dialog with information boxBrad King2015-05-216-253/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The QMacInstallDialog infrastructure no longer works on modern OS X versions. Drop it and replace the dialog with a simple info box that explains to the user how to run 'cmake-gui --install' to add symlinks. Also suggest simply modifying the PATH. This approach is similar to the Xcode 'xcode-select --install' method of installing Xcode Command Line Tools.
| * | cmake-gui: Add --install option to add command-line tools on OS XBrad King2015-05-211-0/+67
| | | | | | | | | | | | | | | | | | | | | On OS X add an "--install[=/path/to/bin]" option (defaulting to /usr/bin) that installs symbolic links into the given directory. This will help OS X users make the tools available on the command line even when they sit inside a CMake.app bundle.
| * | cmake-gui: Drop undocumented and unused --mac-install optionBrad King2015-05-191-10/+0
| | | | | | | | | | | | | | | | | | This option was once used by our OS X package installer to create symlinks at install time. Since switching to the DragNDrop installer we no longer use this option.
* | | Merge topic 'doc-cache-option-space'Brad King2015-05-211-1/+1
|\ \ \ | | | | | | | | | | | | | | | | b0ea3673 Help: Spell '-D' option consistently across documentation (#15575)
| * | | Help: Spell '-D' option consistently across documentation (#15575)Brad King2015-05-201-1/+1
| | |/ | |/| | | | | | | | | | | | | Always show the option with its argument separate in summary text. State in the main documentation that the option and its argument can be given together too.
* | | Merge topic 'clean-up-cmQtAutoGenerators'Brad King2015-05-211-26/+11
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a5b59fae QtAutogen: Create global generator on the stack. fe401ede QtAutogen: Use a more-obvious delete-target. c95a55ad QtAutogen: Remove the need for a local makefile variable. 460e8fb9 QtAutogen: Inline static factory method. 58f41c78 QtAutogen: Remove repeated setters.
| * | | QtAutogen: Create global generator on the stack.Stephen Kelly2015-05-191-6/+4
| | | |
| * | | QtAutogen: Use a more-obvious delete-target.Stephen Kelly2015-05-191-1/+1
| | | |
| * | | QtAutogen: Remove the need for a local makefile variable.Stephen Kelly2015-05-191-6/+3
| | | |
| * | | QtAutogen: Inline static factory method.Stephen Kelly2015-05-191-14/+7
| | | |
| * | | QtAutogen: Remove repeated setters.Stephen Kelly2015-05-191-3/+0
| |/ / | | | | | | | | | These methods are called already just before calling the static method.
* | | Merge topic 'clean-up-cmMakefile'Brad King2015-05-219-247/+118
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b9f99155 cmMakefile: Remove VarUsageStack. 2b09d9f3 cmMakefile: Remove VarInitStack. 528d6802 cmMakefile: Use more suitable method name to log var usage. 9118b53b cmMakefile: Move internal method to private scope. f58c3774 cmMakefile: Mark definitions explicitly erased, even at top level. ea7b962b cmMakefile: Raise variable in scope explicitly when needed. c8cb6688 cmMakefile: Use early return to reduce nested code. bdd1aa91 cmMakefile: Don't use else after return. c42f0e2b cmMakefile: Remove redundant conditions. caff8e5a cmCTest: Remove unimplemented method. bb1e8c3a cmMakefile: Remove Print() debugging facilities. 1363bff8 cmMakefile: Remove duplicate variable initialization. 5b7ff35c cmMakefile: Don't expect the VarStack iterator to support size(). 390bc324 cmMakefile: Remove redundant condition. 8ab1cce7 cmMakefile: Rename method to something more appropriate. 2dd5d42f cmMakefile: Make the public ReadListFile method take one param. ...
| * | | cmMakefile: Remove VarUsageStack.Stephen Kelly2015-05-194-61/+22
| | | | | | | | | | | | | | | | | | | | | | | | Store usage information in the cmDefintions value instead. We already pay for the memory as padding in the Def struct, so we might as well use it.
| * | | cmMakefile: Remove VarInitStack.Stephen Kelly2015-05-193-21/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In cmMakefile::PushScope, a copy of the closure of keys initialized in the parent scope is made. In PopScope, essentially the same copy is inserted back into the parent. That means a lot of duplication of strings and a lot of string comparisons. None of it is needed, because the cmDefinitions keys already provide a canonical representation of what is initialized. The removal of the separate container also makes the variable handling code more easy to reason about in general. Before this patch, configuring llvm uses 200 KiB for the VarInitStack. Overall peak memory consumption goes from 35.5 MiB to 35.1 MiB.
| * | | cmMakefile: Use more suitable method name to log var usage.Stephen Kelly2015-05-192-7/+7
| | | |
| * | | cmMakefile: Move internal method to private scope.Stephen Kelly2015-05-191-2/+2
| | | |
| * | | cmMakefile: Mark definitions explicitly erased, even at top level.Stephen Kelly2015-05-193-16/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Presumably the intention here is to attempt to optimize memory by not storing what is not needed. However, all keys need to be tracked anyway to implement initialization tracking, and this special case gets in the way of simplifying the implementation of that. This doesn't change any observable effects because values set to 0 are considered not to exist by the cmDefinitions API.
| * | | cmMakefile: Raise variable in scope explicitly when needed.Stephen Kelly2015-05-193-7/+17
| | | | | | | | | | | | | | | | | | | | The Get method implicitly pulls a copy of all variables into a local scope. This is not necessary.