summaryrefslogtreecommitdiffstats
path: root/Source
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'vs-host-x64-tools'Brad King2016-10-146-1/+81
|\ | | | | | | | | | | d079e71c VS: Provide an option to use x64 host tools 779939a0 Help: Document VS and Xcode toolset selection
| * VS: Provide an option to use x64 host toolsBrad King2016-10-146-1/+81
| | | | | | | | | | | | | | | | | | | | Visual Studio provides toolchains that are themselves built for 32-bit or 64-bit host architectures. By default it uses the 32-bit tools, but it can be told to prefer the 64-bit tools on 64-bit hosts. Extend the `CMAKE_GENERATOR_TOOLSET` specification to provide a way to request use of the 64-bit host tools. Closes: #15622
* | Merge topic 'flush-archive-list'Brad King2016-10-141-0/+1
|\ \ | | | | | | | | | | | | 39b08858 cmSystemTools: Flush output buffer for list_item_verbose
| * | cmSystemTools: Flush output buffer for list_item_verboseDāvis Mosāns2016-10-131-0/+1
| | | | | | | | | | | | | | | When `std::cout` and `FILE *stdout` are used at same time need to explicitly flush otherwise they can be out of sync.
* | | Merge topic 'st2-exclude-patterns-variable'Brad King2016-10-142-2/+11
|\ \ \ | | | | | | | | | | | | | | | | 19ffc072 Sublime: Exclude build tree from source tree project only optionally
| * | | Sublime: Exclude build tree from source tree project only optionallyBruno Pedrosa2016-10-122-2/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Create a `CMAKE_SUBLIME_TEXT_2_EXCLUDE_BUILD_TREE` variable to control addition of the build tree to `folder_exclude_patterns` in the `.sublime-project`. Change the default of this behavior to OFF. Closes: #16351
* | | | Merge topic 'ninja-framework-POST_BUILD'Brad King2016-10-141-2/+4
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | 20278872 Ninja: Fix POST_BUILD commands on macOS Frameworks
| * | | | Ninja: Fix POST_BUILD commands on macOS FrameworksBrad King2016-10-131-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The condition added by commit v2.8.12~179^2 (OS X: Fix regression handling frameworks for Ninja, 2013-07-16) for excluding use of versioning symlinks on macOS Frameworks must match that used for POST_BUILD selection. Otherwise we place the POST_BUILD commands after a symlink step that is never added. Closes: #16363
* | | | | Merge topic 'ninja-rc-regression'Brad King2016-10-141-1/+1
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 9977899d Ninja: Fix RC language depfile generation with cmcldeps
| * | | | | Ninja: Fix RC language depfile generation with cmcldepsBen Boeckel2016-10-131-1/+1
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit v3.7.0-rc1~275^2 (Ninja: Use full path for all source files, 2016-08-05), the source path was changed to use an absolute path. Inside of `cmcldeps` for `.rc` file compilation, it uses a separate argument for the path to the source file. This ended up causing `cmcldeps` to transform the following call: cmcldeps.exe RC source.rc ... C:/full/path/to/source.rc into: ... C:/full/path/to//Tc source.rc which is invalid. Update the source filename to use the full path to the source file so that the path is replaced properly.
* | | | | Merge topic 'LINK_WHAT_YOU_USE-allow-OFF'Brad King2016-10-143-6/+6
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2f79b22c Merge branch 'backport-LINK_WHAT_YOU_USE-allow-OFF' into LINK_WHAT_YOU_USE-allow-OFF 33cb0173 Honor LINK_WHAT_YOU_USE when set to OFF 933e54d3 Honor LINK_WHAT_YOU_USE when set to OFF
| * | | | | Honor LINK_WHAT_YOU_USE when set to OFFJamie Snape2016-10-133-6/+6
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | Explicitly setting variable CMAKE_LINK_WHAT_YOU_USE or property LINK_WHAT_YOU_USE to OFF should not cause LWYU to run. Fix the property lookup to use GetPropertyAsBool.
* | | | | CMake Nightly Date StampKitware Robot2016-10-141-1/+1
| | | | |
* | | | | Merge topic 'msbuild-json'Brad King2016-10-131-0/+453
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | ccdc3d30 Add a script to convert from MSBuild XML to a JSON format
| * | | | | Add a script to convert from MSBuild XML to a JSON formatDon Olmstead2016-10-121-0/+453
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This will supersede the `cmparseMSBuildXML.py` script once we have support for loading the JSON files instead of using hard-coded flag tables.
* | | | | | Merge topic 'vs-default-generator'Brad King2016-10-132-48/+60
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5380948f cmake: Fix default VS generator selection for Microsoft Build Tools 1aee54ed cmake: Simplify default generator search by switching direction 24c86e1c cmake: Use array iteration for default generator VS variants 6db64ad4 cmake: Use array iteration for default generator list d3df00ae cmake: Rename default generator selection list variable 10160f69 cmake: Rename default generator selection internal variable 0838d20e cmake: Simplify VS registry entry lookup 8f33de92 cmake: Factor out default generator selection into helper
| * | | | | | cmake: Fix default VS generator selection for Microsoft Build ToolsBrad King2016-10-111-7/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some versions of the VS tools do not install the registry entry HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\$v;InstallDir but all appear to set HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\$v\Setup\VC;ProductDir Update our search to consider both entries. Closes: #16360
| * | | | | | cmake: Simplify default generator search by switching directionBrad King2016-10-111-12/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Search from newest to oldest and stop once found.
| * | | | | | cmake: Use array iteration for default generator VS variantsBrad King2016-10-111-6/+7
| | | | | | |
| * | | | | | cmake: Use array iteration for default generator listBrad King2016-10-111-5/+5
| | | | | | |
| * | | | | | cmake: Rename default generator selection list variableBrad King2016-10-111-5/+5
| | | | | | |
| * | | | | | cmake: Rename default generator selection internal variableBrad King2016-10-111-4/+3
| | | | | | |
| * | | | | | cmake: Simplify VS registry entry lookupBrad King2016-10-111-4/+6
| | | | | | |
| * | | | | | cmake: Factor out default generator selection into helperBrad King2016-10-112-48/+54
| | |_|_|/ / | |/| | | |
* | | | | | Merge topic 'remove-obsolete'Brad King2016-10-133-68/+1
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b6a174d2 Makefiles: Remove query for CMAKE_OBJECT_NAME d0faa58a Makefiles: Remove forbidden flag logic
| * | | | | | Makefiles: Remove query for CMAKE_OBJECT_NAMEStephen Kelly2016-10-091-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | it is not set.
| * | | | | | Makefiles: Remove forbidden flag logicStephen Kelly2016-10-093-65/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This might have been needed some day in the past, but not anymore.
* | | | | | | Merge topic 'vs15-separate-flag-table'Brad King2016-10-133-3/+247
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b1d67ae8 VS: Split flag table between v140 and v141 toolsets
| * | | | | | | VS: Split flag table between v140 and v141 toolsetsBrad King2016-10-103-3/+247
| | |_|_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit v3.7.0-rc1~156^2~1 (VS: Update v140 flag tables from VS 15 MSBuild files, 2016-09-02) we extended the v140 flag table with values from the v141 toolset that comes with VS 15. However, the v140 toolset that comes with VS 14 does not have all of these entries and so the flags just need to be passed without special mapping. In order to support both toolsets, split our CL flag table into separate copies for each version and switch off the toolset name. Closes: #16352
* | | | | | | Merge topic 'cmake-gui-fix-extra-generator-names'Brad King2016-10-131-1/+1
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bf86012a cmake-gui: Fix "extra" generator entries in drop-down list
| * | | | | | | cmake-gui: Fix "extra" generator entries in drop-down listBrad King2016-10-111-1/+1
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Refactoring in commit v3.7.0-rc1~291^2~1 (Refactor extra generator registration to use factories, 2016-07-20) accidentally switched the order of the "extra - base" generator names to "base - extra". Switch it back. While this could affect all callers of the `GetRegisteredGenerators` method, only cmake-gui actually used this particular field. Closes: #16359
* | | | | | | CMake Nightly Date StampKitware Robot2016-10-131-1/+1
| |_|_|_|/ / |/| | | | |
* | | | | | CMake Nightly Date StampKitware Robot2016-10-121-1/+1
| |_|/ / / |/| | | |
* | | | | CMake Nightly Date StampKitware Robot2016-10-111-1/+1
| | | | |
* | | | | cmLinkLineComputer: Extract link libraries computation from cmLocalGeneratorStephen Kelly2016-10-105-34/+37
| | | | | | | | | | | | | | | | | | | | Hide some methods which no longer need to be public.
* | | | | cmLinkLineComputer: Move FrameworkPath computation from cmLocalGeneratorStephen Kelly2016-10-1012-34/+39
| | | | | | | | | | | | | | | | | | | | Add UseWatcomQuote state, and remove corresponding method parameters.
* | | | | cmLocalGenerator: Inline last use of local variableStephen Kelly2016-10-101-3/+1
| | | | |
* | | | | cmLinkLineComputer: Move RPath computation from cmLocalGeneratorStephen Kelly2016-10-108-36/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add state for Relink and populate it at the point of cmLinkLineComputer initialization. This allows removal of the parameter in go-between methods.
* | | | | cmLinkLineComputer: Move LinkPath computation from cmLocalGeneratorStephen Kelly2016-10-103-11/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a ConvertToOutputForExisting method which can be made virtual later to satisfy different generator needs. Pass additional strings as parameters for now. They can be turned into class state later.
* | | | | cmLinkLineComputer: Move ComputeLinkLibs from cmLocalGeneratorStephen Kelly2016-10-1019-49/+113
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a cmOutputConverter to the cmLinkLineComputer and factory methods to facilitate shell escapes. Add state to the cmLinkLineComputer to record whether outputting for response files or for watcom, to satisfy the cmOutputConverter API. These are constant for the lifetime of the cmLinkLineComputer, even when its functionality is extended in the future. This also keeps the signatures of cmLinkLineComputer relatively simple. Pass the cmComputeLinkInformation as a method parameter so that cmLinkLineComputer is free from target-specific state. An instance should be usable for all targets in a directory.
* | | | | cmLocalGenerator: Move variable to where it is usedStephen Kelly2016-10-101-2/+2
| | | | |
* | | | | cmLocalGenerator: Use a std::string instead of char*Stephen Kelly2016-10-101-2/+3
| | | | |
* | | | | cmLocalGenerator: Move stringstream to where it is usedStephen Kelly2016-10-101-1/+1
| | | | |
* | | | | cmLocalGenerator: Move flag determination up in the functionStephen Kelly2016-10-101-8/+9
| | | | | | | | | | | | | | | | | | | | This content is independent of any targets.
* | | | | cmLocalGenerator: Separate stdlib content from library streamStephen Kelly2016-10-101-1/+5
| | | | |
* | | | | cmLocalGenerator: Separate rpath content from library streamStephen Kelly2016-10-101-7/+9
| | | | |
* | | | | cmLocalGenerator: Pass link library info to OutputLinkLibrariesStephen Kelly2016-10-103-20/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove the cmGeneratorTarget from the interface. This is simplification of the OutputLinkLibraries responsibilities so that it can be broken apart into multiple methods.
* | | | | Makefiles: Port CreateLinkLibs to cmLinkLineComputerStephen Kelly2016-10-104-13/+20
| | | | |
* | | | | cmLinkLineComputer: Extract from cmLocalGeneratorStephen Kelly2016-10-1025-79/+280
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CMake has several classes which have too many responsibilities. cmLocalGenerator is one of them. Start to extract the link line computation. Create generator-specific implementations of the interface to account for generator-specific behavior. Unfortunately MSVC60 has different behavior to everything else and CMake still generates makefiles for it. Isolate it with MSVC60-specific names.
* | | | | Ninja: ConstifyStephen Kelly2016-10-102-4/+6
| | | | |