summaryrefslogtreecommitdiffstats
path: root/Source/cmGlobalXCodeGenerator.cxx
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'xcode-extra-sources'Brad King2019-04-121-18/+23
|\ | | | | | | | | | | | | | | 428c1e429f Xcode: Avoid mutating App Bundle targets during generation b4385d5ccc Xcode: Factor out duplicate source group code into lambda Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3208
| * Xcode: Avoid mutating App Bundle targets during generationBrad King2019-04-111-8/+14
| | | | | | | | | | | | | | | | | | | | For `MACOSX_BUNDLE` targets we generate an `Info.plist` automatically and add it to the sources presented to Xcode. Avoid mutating the original target's list of sources to achieve this. Otherwise when we generate the same target again (e.g. in a sub-project's Xcode file) it will look different than the first time and possibly break invariants. Fixes: #19114
| * Xcode: Factor out duplicate source group code into lambdaBrad King2019-04-111-11/+10
| |
* | cmLocalGenerator: Factor IPO logic out of AddLanguageFlagsBrad King2019-04-021-0/+4
| | | | | | | | | | | | The IPO flag logic was added to `AddLanguageFlags` based on my advice. However, this method should really only be about `CMAKE_<LANG>_FLAGS*` variables. Move the IPO logic out to its call sites.
* | Fix invalid ///! doxygen comment line startsSebastian Holtermann2019-03-311-1/+1
| | | | | | | | | | In various places `///!` was used to start a comment line. This is not valid Doygen syntax. This patch replaces `///!` comment starts with `//!`.
* | cmTarget: Move member `*Commands` to implSebastian Holtermann2019-03-231-0/+1
| |
* | Xcode: Create Xcode schemes per targetHarry Mallon2019-03-211-26/+27
| |
* | cmGlobalXCodeGenerator: Prefer std::string over char*Gregor Jasny2019-03-171-5/+5
| |
* | cmake: Teach --build mode to support multiple targetsBartosz Kosiorek2019-03-051-14/+26
| | | | | | | | Fixes: #16136
* | cmGlobalGenerator: Change case of methods from GeneratedMakeCommand structBartosz Kosiorek2019-03-041-10/+10
| |
* | Merge topic 'configurefile-stdstring'Brad King2019-02-201-4/+4
|\ \ | | | | | | | | | | | | | | | | | | 0281f9a4ca cmMakefile::ConfigureFile: Accept `std::string` parameters Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2982
| * | cmMakefile::ConfigureFile: Accept `std::string` parametersVitaly Stakhovsky2019-02-191-4/+4
| |/
* | Xcode: Require at least Xcode 5Gregor Jasny2019-02-161-60/+12
|/
* Xcode: Derive stdlib from CXX flagsGregor Jasny2019-02-071-0/+16
| | | | Closes: #18396
* Xcode: Update default Swift language version for Xcode 10.2Brad King2019-02-041-0/+2
| | | | | | Xcode 10.2 no longer supports Swift language versions before 4.0. Fixes: #18871
* Use cmSourceFile::GetIsGeneratedSebastian Holtermann2019-02-011-1/+1
|
* Merge topic 'xcode-object-dir'Brad King2019-01-311-12/+16
|\ | | | | | | | | | | | | | | 8a7f93d000 Xcode: Fix object library builds with sanitizers enabled eff9c69740 Xcode: Place object library artifacts outside Objects-normal directory Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2885
| * Xcode: Fix object library builds with sanitizers enabledBrad King2019-01-301-3/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Using `xcodebuild -enableAddressSanitizer YES ...` causes object files to be placed in a different directory name. Xcode provides a placeholder for this that we can use in `OTHER_LDFLAGS` to reference object files for linking the dependents of object libraries. However, CMake's features for installing and exporting object libraries depend on knowing the real path with no placeholders. For these cases, use the default object directory. Users will then have to choose between sanitizers and the installation and export features, but both will work individually. Fixes: #16289
| * Xcode: Place object library artifacts outside Objects-normal directoryBrad King2019-01-301-12/+14
| | | | | | | | | | | | | | | | | | | | | | The `CONFIGURATION_BUILD_DIR` value in the Xcode project file specifies where to place the library artifact. For object libraries we've used the `Objects-normal` directory to hide away the `.a` that we otherwise cannot stop Xcode from producing. The parent of this directory is also specific to the target and does not vary with Xcode's sanitizer features, so move the artifact there. Issue: #16289
* | clang-tidy: Use `= delete`Regina Pfeifer2019-01-291-2/+5
|/
* Merge topic 'add_consistent_verbose_build_flag'Brad King2019-01-291-24/+19
|\ | | | | | | | | | | | | | | | | | | | | | | 66801f4d40 cmake: Add tests for verbose output to --build mode 439fe2e253 cmake: Add options for verbose output to --build mode 638667efa2 cmake: cmcmd.cxx fix "The arguments are" comments 3ca4402966 ctest: Fix --build-and-test without --build-target on Xcode cb6c233ecc cmake: Add -hideShellScriptEnvironment xcodebuild option 1a45266cb5 cmGlobalGenerator: Add a class that represent the build command Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2708
| * ctest: Fix --build-and-test without --build-target on XcodeFlorian Maushart2019-01-251-5/+7
| |
| * cmake: Add -hideShellScriptEnvironment xcodebuild optionFlorian Maushart2019-01-251-0/+3
| | | | | | | | | | For CMake's build tool mode add -hideShellScriptEnvironment if version is XCode 7.0 or above
| * cmGlobalGenerator: Add a class that represent the build commandRobert Maynard2019-01-251-21/+11
| | | | | | | | | | | | This refactors a std::vector<std::string> into a class so that we can extend the features to represent things such as multiple chained commands in the future.
* | Merge topic 'cmoutputconverter-simplify'Brad King2019-01-291-1/+1
|\ \ | | | | | | | | | | | | | | | | | | 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-1/+1
| | |
* | | Merge topic 'exclude_from_all'Brad King2019-01-251-6/+1
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | dc6888573d Pass EXCLUDE_FROM_ALL from directory to targets Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2816
| * | | Pass EXCLUDE_FROM_ALL from directory to targetsZack Galbreath2019-01-211-6/+1
| | | | | | | | | | | | | | | | | | | | | | | | When a target is created it now inherits the EXCLUDE_FROM_ALL property from its directory. This change makes it possible to include a target in "all", even if its directory has been marked as EXCLUDE_FROM_ALL.
* | | | Merge topic 'cmake-files-directory'Brad King2019-01-251-3/+3
|\ \ \ \ | |_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | 3e867ed400 cmake: inlined files dir constant and removed it from cmake.h Acked-by: Kitware Robot <kwrobot@kitware.com> Rejected-by: vvs31415 <vstakhovsky@fastmail.com> Merge-request: !2655
| * | | cmake: inlined files dir constant and removed it from cmake.hBruno Manganelli2019-01-211-3/+3
| |/ /
* | | Merge topic 'Wcomma'Brad King2019-01-221-6/+8
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 5ff7fb592e Fixed all but one clang -Wcomma warning Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2828
| * | | Fixed all but one clang -Wcomma warningSean McBride2019-01-121-6/+8
| | | |
* | | | Merge topic 'cmake-gui-generator-platform'Brad King2019-01-221-1/+15
|\ \ \ \ | |_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 67bced8a26 cmake-gui: Improve label for default platform 48ec0bc140 cmake-gui: Add field for generator platform selection 8bba458ea5 Add global generator factory method to get default platform name 818df52c48 Add global generator factory method to get list of known platforms 8144b00e32 Split global generator factory list with and without platforms b70c0aed5c VS: Factor out helper function to compute host platform name Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2832
| * | | Add global generator factory method to get default platform nameBrad King2019-01-181-0/+2
| | | |
| * | | Add global generator factory method to get list of known platformsBrad King2019-01-181-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a `cmGlobalGeneratorFactory::GetKnownPlatforms` method to return a list of known possible values for `CMAKE_GENERATOR_PLATFORM`. Implement the method for each generator by referencing the list of possible values documented in `Help/generator/*.rst` for it. Co-Author: Julien Jomier <julien.jomier@kitware.com>
| * | | Split global generator factory list with and without platformsBrad King2019-01-181-1/+8
| | |/ | |/| | | | | | | | | | | | | Replace `cmGlobalGeneratorFactory::GetGenerators` with a pair of methods to split the list of generator names into those that have platforms in the name and those that do not.
* | | clang-tidy: Use emplaceRegina Pfeifer2019-01-171-13/+13
|/ /
* | Factor out enum MessageType into dedicated headerBruno Manganelli2019-01-161-3/+4
|/ | | | Reduce the number of files relying on `cmake.h`.
* cmOutputConverter: Moved ForceToRelativePath to cmSystemBruno Manganelli2018-12-071-1/+1
|
* clang-tidy: fix warnings in macOS-only codeBrad King2018-11-271-11/+8
|
* POSITION_INDEPENDENT_CODE: Manage link flags for executablesMarc Chevrier2018-11-111-0/+23
| | | | Fixes: #14983, #16561
* Using front() and back() instead of calculationsCengizhan Pasaoglu2018-11-061-1/+1
|
* cmGeneratorTarget::GetExportMacro: return const std::string*Vitaly Stakhovsky2018-10-161-2/+2
|
* genex: Simplify cmGeneratorExpressionInterpreterBrad King2018-09-071-7/+5
| | | | | | | | | 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.
* Merge topic 'genex-evaluate-stdstring'Brad King2018-08-301-3/+5
|\ | | | | | | | | | | | | 65ab9ce938 Genex: Return Evaluate results as const std::string& Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2314
| * Genex: Return Evaluate results as const std::string&Vitaly Stakhovsky2018-08-281-3/+5
| | | | | | | | Also remove unused overloads.
* | 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/+1
|/ | | | issue: #18251
* Xcode: Process targets in depth-first order during generationBrad King2018-07-191-1/+5
| | | | | | | | | | The Xcode 10 "new build system" requires more strict handling of custom commands. It may need a fix similar to what commit v3.12.0-rc1~171^2 (VS: Generate a custom command only in the least dependent target, 2018-03-23) did for VS. Prepare for this by generating targets within each local generator in dependency order. Issue: #18070