summaryrefslogtreecommitdiffstats
path: root/Help/generator
Commit message (Collapse)AuthorAgeFilesLines
* Help: Fix documentation for Ninja Multi-Config's build.ninjaKyle Edwards2020-10-091-2/+1
|
* Xcode: Switch to the "new build system" for Xcode 12 and aboveBrad King2020-09-181-0/+3
| | | | | | | Provide an option to switch back to the original build system via `-T buildsystem=1`. Fixes: #18088
* Xcode: Add option to specify build system variantBrad King2020-09-181-2/+21
| | | | | | Extend the `-T <toolset>` option to support a `buildsystem=` field with the Xcode generator. Add a `CMAKE_XCODE_BUILD_SYSTEM` variable to inform project code about the selected build system variant.
* VS: Add option for custom Win10 SDK version maximumjonathan molinatto2020-08-251-0/+16
| | | | | | | | | | | | | | | | | | | | | Since commit 83ddc4d289 (VS: Do not select a Windows SDK too high for current VS version, 2017-08-07, v3.13.0-rc1~72^2~2) we enforce a maximum SDK version for the VS 2015 generator. The blog post linked in the original commit is no longer available, but it can be seen here: * https://web.archive.org/web/20190108032520/https://blogs.msdn.microsoft.com/chuckw/2018/10/02/windows-10-october-2018-update/ In particular, it states: > VS 2015 Users: The Windows 10 SDK (15063, 16299, 17134, 17763) > is officially only supported for VS 2017. However, in some circumstances a higher version can be used. Add a `CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION_MAXIMUM` to override the generator's default maximum SDK version. Fixes: #20633
* Help: Add Sphinx 'versionadded' directives to each top-level documentKitware Robot2020-07-065-0/+10
| | | | | | | Run the `Utilities/Sphinx/update_versions.py` script to add initial markup to every top-level document and find module. Issue: #19715
* Ninja: Document that Fortran support is available with Ninja 1.10+Brad King2020-04-171-5/+1
| | | | | | Ninja 1.10 was released in Jan 2020 and has the features we need to support Fortran. Replace documentation that mentions Kitware's branch with mention of Ninja 1.10+ instead.
* Help: Move Ninja Multi-Config variable details into their respective pagesKyle Edwards2020-03-261-37/+3
|
* Ninja Multi-Config: Always generate build.ninjaKyle Edwards2020-02-271-7/+8
| | | | | If CMAKE_DEFAULT_BUILD_TYPE is not specified, use the first item from CMAKE_CONFIGURATION_TYPES instead.
* Ninja Multi-Config: Remove "NMC" from variable namesKyle Edwards2020-02-271-13/+13
| | | | | | Also rename `..._DEFAULT_BUILD_FILE_CONFIG` to `..._DEFAULT_BUILD_TYPE`. These name changes make the variables meaningful for future use by other generators.
* Help: Make note of ninja -f argument in Ninja Multi-Config docsKyle Edwards2020-02-041-1/+2
|
* Help: Explain new behavior of cmake --build in Ninja Multi-ConfigKyle Edwards2020-02-041-0/+5
|
* Ninja Multi-Config: Shuffle variables aroundKyle Edwards2020-02-031-44/+62
| | | | | | Remove redundant variable CMAKE_NINJA_MULTI_CROSS_CONFIG_ENABLE. Rename other variables. Document and improve handling of error conditions.
* Ninja Multi-Config: Add variable to control configs used in cross-config buildKyle Edwards2020-01-231-0/+6
|
* Ninja Multi-Config: Add variable to control aliases in build.ninjaKyle Edwards2020-01-221-1/+10
|
* Ninja Multi-Config: Rename variable to be more consistentKyle Edwards2020-01-161-6/+6
| | | | Also make some tweaks to the documentation.
* Ninja Multi-Config: Make cross-config building opt-inKyle Edwards2020-01-101-3/+10
| | | | | | | | | | | Many users will want to use the Ninja Multi-Config generator like a traditional Visual Studio-style multi-config generator, which doesn't mix configurations - custom commands are built using target executables of the same configuration the command is for. We do not want to force these people to generate an N*N build matrix when they only need N*1, especially if they have lots of targets. Add a new variable, CMAKE_NINJA_CROSS_CONFIG_ENABLE, to opt-in to the cross-config build matrix.
* Help: Add documentation and release notes for multi-config NinjaKyle Edwards2019-12-132-1/+81
|
* Help: Document install/strip targets for Ninja/UNIX Makefiles generatorsCristian Adam2019-10-042-6/+36
|
* Merge topic 'vs-default-platform'Brad King2019-04-221-1/+2
|\ | | | | | | | | | | | | db02be85a0 VS: Provide the default platform name to project code Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3246
| * VS: Provide the default platform name to project codeBrad King2019-04-191-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The value of `CMAKE_VS_PLATFORM_NAME` is computed by Visual Studio generators based on `CMAKE_GENERATOR_PLATFORM` or some default. Prior to the VS 2019 generator, the default was always `Win32`. However, for the `Visual Studio 16 2019` generator, the default is based on the host platform. Store the default in a new `CMAKE_VS_PLATFORM_NAME_DEFAULT` variable for use by project code. This is particularly useful in toolchain files because they are allowed to set `CMAKE_GENERATOR_PLATFORM` and so `CMAKE_VS_PLATFORM_NAME` is not yet known. Of course the toolchain file author knows whether it will set `CMAKE_GENERATOR_PLATFORM`, and if not then `CMAKE_VS_PLATFORM_NAME_DEFAULT` provides the platform name that will be used. Fixes: #19177
* | Merge topic 'ghs_os_dir'Brad King2019-04-081-1/+2
|\ \ | | | | | | | | | | | | | | | | | | | | | a1e6b414b9 GHS: Update GHS_BSP_NAME processing 266dadf868 GHS: Print status message regarding GHS_OS_DIR Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3123
| * | GHS: Print status message regarding GHS_OS_DIRFred Baksik2019-03-291-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | -- Rename platform script so it runs before initial try_compile() in project() command. -- Fix incorrect variable name GHS_OS_DIR_OPTION -- Remove unnecessary ".*" from REGEX expression for GHS_CANDIDATE_OS_DIRS -- Forward GHS_OS_DIR_OPTION to try_compile() and preserve trailing whitespace of the variable.
* | | Help: Improve documentation formatingBartosz Kosiorek2019-04-0411-25/+28
|/ /
* | GHS: Add support for GHS Multi Generator in LinuxNaren Manimohan2019-03-211-2/+2
| |
* | Xcode: Require at least Xcode 5Gregor Jasny2019-02-161-3/+1
|/
* GHS: Document usage of GHS_NO_SOURCE_GROUP_FILEFred Baksik2019-02-081-0/+1
| | | | -- Also change variable name to CMAKE_GHS_NO_SOURCE_GROUP_FILE
* Xcode: deprecate support for Xcode 4Gregor Jasny2019-02-061-1/+3
|
* VS: Teach VS 2019 generator to select host tools matching host archBrad King2019-01-281-1/+2
| | | | | This generator is new so we can introduce the long-desired behavior of selecting ``host=x64`` tools by default on x64 hosts.
* VS: Add support for explicit 32-bit toolset selection via host=x86Brad King2019-01-285-3/+16
| | | | | Generalize the ``host=x64`` option in `CMAKE_GENERATOR_TOOLSET` to also support ``host=x86``.
* GHS: try_compile() now uses GHS platform variablesFred Baksik2019-01-161-1/+2
| | | | | | | -- Forward GHS platform variables to try_compile() CMAKE_TRY_COMPILE_PLATFORM_VARIABLES only worked for source signature try_compile() -- Update tests to no longer add GHS platform variables to try_compile() -- Avoid linker error in GhsMulti/GhsMultiCompilerOptions/CMakeLists.txt by building library
* GHS: Fix toolset selectionFred Baksik2019-01-161-4/+5
| | | | | | -- Allow -T to accept full or partial paths -- Use "C:/ghs" if GHS_TOOLSET_ROOT is empty string -- Put more information in error messages
* GHS: Integrity Application updatesFred Baksik2019-01-161-10/+19
| | | | | | | | | | | | | | | | | -- Check the property "ghs_integrity_app" on executables to set [INTEGRITY Application] If the property is not set then check if an integrate file is one of the source files (.int file). Dynamic Downloads that do not have an integrate file can use this property along with setting the compiler flag "-dynamic". -- Remove parsing for -dynamic flag; it is only used to print a comment The MULTI GUI will show if it is a Monolith or Dynamic Download application -- Use project references to specify which executables are part of the Integrity Application Usually Implicit Dependency Analysis will ensure that executable targets become part of the application. This does not work for Dynamic Download without integrate files. Use `add_dependencies(dd vas)` to mark that the vas target is part of dd target. -- Update file locations in the Integrate files.
* GHS: Place build system outputs per target output directivesFred Baksik2019-01-161-0/+3
| | | | | | | | | | | | | | -- Set output and object file locations -- Suffixes are no longer being forced but will now follow the target properties By default GHS tools have no suffix for executable files so CMAKE_EXECUTABLE_SUFFIX was changed to meet this behavior -- Remove #if 0 blocked out code; it has been replaced. Forcing the -relprog option has been removed from non-kernel executable targets. The default value of this option (if it is even available) is determined by the tool-chain for the specified target and platform (Some tool-chains default to -locatedprogram). The use of -relprog can have unexpected results as it cannot always produce a fully relocated executable. -- Clarify use of CMAKE_BUILD_TYPE to control build configuration
* VS: Add Visual Studio 16 2019 generatorBrad King2019-01-111-0/+49
| | | | | | | | | | | | Add this generator *without* support for specifying the target architecture in the generator name. cmake-gui will be taught to provide a field for this, and command-line builds can use -A. Also, teach this generator to select a default target architecture based on the host architecture. Fixes: #18689 Inspired-by: Egor Pugin <egor.pugin@gmail.com>
* Help: Document VS generator default platform selectionBrad King2019-01-106-0/+12
|
* Help: Suggest using -A to specify platform for VS generatorsBrad King2018-09-256-60/+119
| | | | | We already suggest `-T` for the toolset. Create a dedicated section for platform selection and suggest `-A`. Provide examples.
* Help: Describe the type of Visual Studio projects that can be generatedJean-Christophe Fillion-Robin2018-08-095-0/+30
| | | | | Issue: #17956 See-also: https://stackoverflow.com/questions/51647437/use-cmake-to-generate-visual-studio-python-projects/51666488
* GHS: Update default BSP nameFred Baksik2018-07-111-1/+4
| | | | | -- Use default value of sim<arch> if not user defined -- Also no reason to trim quotes or changes slashes; it is just a name not a path
* GHS: Update setting default OS location for Integrity platformsFred Baksik2018-07-111-1/+9
| | | | | | | -- Update how the latest OS is determined; scan the location GHS_OS_ROOT and sort it No longer use registry settings looking for installations The registry values are assigned in installation order for Green Hills tools not version order Filter out files from the list of directories (i.e if int1234.zip and int1234 are both in root folder)
* GHS: Set primary target using arch/platform values (or user specified value)Fred Baksik2018-07-111-0/+5
|
* GHS: Add platform selection supportFred Baksik2018-07-111-0/+5
|
* GHS: Add toolset selection supportFred Baksik2018-07-111-0/+9
| | | | | | | | | | | | | | | | -- Use the specified toolset located within GHS_TOOLSET_ROOT -- Update how the latest toolset is determined; scan the location GHS_TOOLSET_ROOT and sort it No longer use registry settings looking for installations The registry values are assigned in installation order for Green Hills tools not version order -- Update to use gbuild.exe from the proper toolset -- Clarify that CMAKE_MAKE_PROGRAM should not be set by user. -- Detect some toolset changes when regenerating project files This could occur if GHS_TOOLSET_ROOT was changed by user after the initial project generation This could occur if CMAKE_MAKE_PROGRAM was changed at the command line -- Use placeholder values for CMAKE_<LANG>_COMPILER The MULTI build system only uses gbuild to build a project gbuild uses the project file to determine which set of compilers to use based on target platform and architecture because compiler detection is skipped, placeholder values are used so that CMake does not complain
* GHS: Support ARM, PPC, 86 architecturesFred Baksik2018-07-071-0/+6
| | | | | | -- Update -A option to choose target architecture. -- Update commentary about which variables are used to control toolset and target settings -- Remove setting CMAKE_SYSTEM_PROCESSOR because the value is overwritten to be "" by subsequent CMAKE processing
* Drop Visual Studio 8 2005 generatorBrad King2018-04-021-20/+3
| | | | This generator has been deprecated since CMake 3.9. Remove it.
* Generators: remove KDevelop3 generatorAlex Neundorf2018-01-241-25/+0
| | | | | | | | | | The last KDevelop3 release was many years ago, in 2008 I think. I haven't seen or read about anybody using KDevelop 3 since a long time, so I think it can safely be removed from CMake. KDevelop 4 (first released in 2010) has its own proper CMake support now, independent from this generator. Alex
* VS: Select and save a VS 2017 instance persistentlyBrad King2017-10-191-7/+11
| | | | | | | | | | Visual Studio 2017 supports multiple instances installed on a single machine. We use the Visual Studio Installer tool to enumerate instances and select one. Once we select an instance for a given build tree, save the result in `CMAKE_GENERATOR_INSTANCE` so we can re-configure the tree with the same instance on future re-runs of CMake. Fixes: #17268
* CodeBlocks: add option to exclude external filesAlexandr (Sagrer) Gridnev2017-09-141-1/+5
| | | | | | | | | | | | Add variable `CMAKE_CODEBLOCKS_EXCLUDE_EXTERNAL_FILES` to optionally exclude files from outside the project root from the project file written by the CodeBlocks extra generator. This optionally restores logic that had been removed by commit v2.8.3~40^2 (CodeBlocks Generator: Do not omit files in the project file listing, 2010-10-05) in response to QTCREATORBUG-2250. Issue: #12110 Fixes: #17188
* VS: Choose VS 2017 instance via environment variableBrad King2017-07-101-0/+12
| | | | | | | | | In the `Visual Studio 15 2017` generator, if the `VS150COMNTOOLS` environment variable points at a specific VS 2017 instance reported by the Visual Studio Installer tool, use that as the preferred instance. Inspired-by: Iyyappa Murugandi <iyyappam@microsoft.com> Fixes: #16846
* Merge topic 'remove-xcode-2'Brad King2017-04-241-0/+2
|\ | | | | | | | | | | | | | | | | 7373b389 Xcode: Drop support for Xcode versions below 3 eaf53849 Xcode: Compute version number earlier Acked-by: Kitware Robot <kwrobot@kitware.com> Reviewed-by: Gregor Jasny <gjasny@googlemail.com> Merge-request: !737
| * Xcode: Drop support for Xcode versions below 3Brad King2017-04-221-0/+2
| |