summaryrefslogtreecommitdiffstats
path: root/Source/cmake.cxx
Commit message (Collapse)AuthorAgeFilesLines
* cmStandardIncludes: Remove list include.Stephen Kelly2015-02-061-0/+2
| | | | Include it only where used.
* cmake: Display "loading initial cache" message on stdoutJean-Christophe Fillion-Robin2015-01-261-1/+1
| | | | | | This message has been on stderr since the "-C" option was first added, but it is informational and not an error. Other informational messages go to stdout, so send this one there too.
* Replace 'foo.length() >= 1' pattern with !foo.empty()Stephen Kelly2015-01-181-1/+1
|
* Replace 'foo.length() > 0' pattern with !foo.empty().Stephen Kelly2015-01-181-2/+2
|
* Replace foo.size() pattern with !foo.empty().Stephen Kelly2015-01-181-3/+3
|
* Replace 'foo.size() == 0' pattern with foo.empty().Stephen Kelly2015-01-181-10/+10
|
* Replace 'foo.size() > 0' pattern with !foo.empty().Stephen Kelly2015-01-181-2/+2
|
* Use the cmDeleteAll algorithm instead of trivial raw loops.Stephen Kelly2015-01-131-10/+2
|
* Merge topic 'join-algorithm'Brad King2015-01-121-8/+1
|\ | | | | | | | | | | | | 55a73e6b Use the cmJoin algorithm where possible. 8dc8d756 cmStandardIncludes: Add a join algorithm for string containers. b5813cee cmInstallCommand: Remove unused variable.
| * Use the cmJoin algorithm where possible.Stephen Kelly2015-01-081-8/+1
| |
* | Port all cmOStringStream to std::ostringstream.Stephen Kelly2015-01-111-13/+13
|/ | | | All compilers hosting CMake support the std class.
* Remove some unneeded c_str calls.Stephen Kelly2014-11-231-2/+2
|
* Merge topic 'vs14-is-2015'Brad King2014-11-171-1/+1
|\ | | | | | | | | f5afb90d VS: Rename VS 14 generator to 'Visual Studio 14 2015'
| * VS: Rename VS 14 generator to 'Visual Studio 14 2015'Brad King2014-11-141-1/+1
| | | | | | | | | | | | Now that we know the year component of this VS version we can add it to the generator name. For convenience, map the name without the year to the name with the year.
* | Merge topic 'remove-borland-build'Brad King2014-10-211-3/+1
|\ \ | | | | | | | | | | | | 2db55ffa Remove borland workarounds.
| * | Remove borland workarounds.Stephen Kelly2014-10-151-3/+1
| |/ | | | | | | | | CMake 3.0 is the last release to require to be able to build with Borland.
* | strings: Remove redundant calls to std::string::c_str()Nils Gladitz2014-10-151-13/+13
|/ | | | | Replacements were detected and performed by the clang tool remove-cstr-calls on a linux build.
* cmake: Add -A option to specify a generator platformBrad King2014-09-151-0/+22
| | | | | | | | | | | | Define the 'cmake -A' option to set CMAKE_GENERATOR_PLATFORM without having to spell out the whole variable name. We choose the name '-A' for "platform" because '-P' is already taken, and in the common use case the "platform" is actually an architecture (e.g. x64). Teach the RunCMake test infrastructure to use -A to pass the generator platform. Extend the RunCMake.GeneratorPlatform test with a case to verify that the -A option cannot be repeated.
* CMake: Add CMAKE_GENERATOR_PLATFORM optionBrad King2014-09-051-0/+28
| | | | | | | | | | | Reject the option by default. It will be implemented on a per-generator basis. Pass the setting into try_compile project generation. Add cache entry CMAKE_GENERATOR_PLATFORM and associated variable documentation to hold the value persistently. Add a RunCMake.GeneratorPlatform test to cover basic use cases for the option. Verify that CMAKE_GENERATOR_PLATFORM is empty by default, and that it is rejected when the generator does not support a user setting.
* cmGlobalGenerator: Take Build output argument by referenceBrad King2014-07-311-1/+1
| | | | | | No call sites pass NULL to the output argument, so take it by reference to avoid the if(output) conditions. Propagate the change through the TryCompile APIs that call it.
* cmGlobalGenerator: Create a non-virtual 'DoGenerate' methodBrad King2014-07-221-1/+1
| | | | | | | Make the virtual 'Generate' method protected. Make 'DoGenerate' the main entry point to generation. This gives cmGlobalGenerator a chance to do some early operations before the individual generator-specific implementations take over.
* VS14: Add Visual Studio 14 generator (#14982)Brad King2014-06-251-0/+4
| | | | | | | | | | | | | | | | Call the generator "Visual Studio 14" without any year because this version of VS does not provide a year in the product name. Copy cmGlobalVisualStudio12Generator to cmGlobalVisualStudio14Generator and update version numbers accordingly. Add the VS14 enumeration value. Teach the platform module Windows-MSVC to set MSVC14 and document the variable. Teach module InstallRequiredSystemLibraries to look for the VS 14 runtime libraries. Teach tests CheckCompilerRelatedVariables, VSExternalInclude, and RunCMake.GeneratorToolset to treat VS 14 as they do VS 10, 11, and 12. Co-Author: Pawel Stopinski <diokhan@go2.pl>
* cmake: Fix read-after-free while checking command-line argumentsBrad King2014-06-121-5/+13
| | | | | | | | Since commit v2.8.12~300^2~1 (CLI: Suppress the unused warning if the key value pair is cached, 2013-05-16), cmake::SetCacheArgs saves a cachedValue pointer and may cause the memory to be freed (by setting the cache entry) before reading it again. Fix this by saving the old value in a separate string.
* backtrace: Convert to local paths in IssueMessageBen Boeckel2014-06-051-1/+4
| | | | | This is the only place we care show the FilePath to the user, so defer the expensive relative path calculation until here.
* cmake: remove dummy backtraces for IssueMessageBen Boeckel2014-06-051-1/+1
|
* Allow a toolchain file to specify a generator toolsetBrad King2014-06-041-5/+0
| | | | | | | | | | | | | | | | | | | | Delay use of CMAKE_GENERATOR_TOOLSET until the CMakeSystem.cmake file has been configured and loaded during the first project() or enable_language() command. This gives the toolchain file named by CMAKE_TOOLCHAIN_FILE a chance to set CMAKE_GENERATOR_TOOLSET. This point is still early enough to set the generator toolset prior to the initialization of any languages that might use the toolset. The cmake::GeneratorToolset member variable remains an indication of what was specified by the -T option or loaded from the cache. It does not need to be updated based on the toolchain file setting. The cmMakefile::TryCompile can still pass cmake::GeneratorToolset into the inner instance because the try-compiled project will do platform and language initialization using the CMakeSystem module configured for the outer project. Extend the RunCMake.GeneratorToolset test with cases that use a toolchain file to set CMAKE_GENERATOR_TOOLSET.
* Merge topic 'fix-build-crash-on-bad-generator'Brad King2014-06-041-1/+7
|\ | | | | | | | | 44e2923f cmake: Fix --build crash on bad CMAKE_GENERATOR in cache
| * cmake: Fix --build crash on bad CMAKE_GENERATOR in cacheBrad King2014-06-031-1/+7
| | | | | | | | | | | | | | | | | | | | If we fail to create the generator named by CMAKE_GENERATOR, exit with an error message instead of crashing. While at it, fix the wording of the error message when CMAKE_GENERATOR is not set. Extend the RunCMake.CommandLine test with cases covering the "cmake --build" option when the named directory does not provide a CMakeCache.txt with a valid CMAKE_GENERATOR.
* | Merge topic 'cpack-properties'Brad King2014-05-281-0/+35
|\ \ | | | | | | | | | | | | | | | d0b1d2a6 CPackWiX: Implement CPACK_NEVER_OVERWRITE and CPACK_PERMANENT properties 15a8af21 Add an "installed file" property scope
| * | Add an "installed file" property scopeNils Gladitz2014-05-281-0/+35
| | | | | | | | | | | | | | | | | | | | | Teach set_property and get_property an "INSTALL" property type to be associated with install-tree file paths. Make the properties available to CPack for use during packaging. Add a "prop_inst" Sphinx domain object type for documentation of such properties.
* | | Merge topic 'fix-cache-self-assignment'Brad King2014-05-281-1/+4
|\ \ \ | | | | | | | | | | | | | | | | | | | | 1cd37527 cmCacheManager: Avoid cache entry self-assignment 326d15a3 cmake: Tolerate missing HELPSTRING on compiler change
| * | | cmake: Tolerate missing HELPSTRING on compiler changeBrad King2014-05-271-1/+4
| | |/ | |/| | | | | | | | | | | | | Teach cmake::HandleDeleteCacheVariables to tolerate a missing HELPSTRING (NULL pointer) when saving cache entries. In the absence of other bugs this should not be possible, but avoid the crash just in case.
* | | Features: Extend concept to C language.Stephen Kelly2014-05-141-2/+6
| |/ |/| | | | | | | | | | | | | | | | | | | Add properties and variables corresponding to CXX equivalents. Add features for c_function_prototypes (C90), c_restrict (C99), c_variadic_macros (C99) and c_static_assert (C11). This feature set can be extended later. Add a <PREFIX>_RESTRICT symbol define to WriteCompilerDetectionHeader to conditionally represent the c_restrict feature.
* | Features: Make CMAKE_CXX_KNOWN_FEATURES a property.Stephen Kelly2014-05-021-0/+6
| | | | | | | | | | As a 'built-in' variable it imposes a cost on all variable lookups and it is expected to be rarely used.
* | cmake: Print C++ stack trace after INTERNAL_ERROR messagesBrad King2014-04-171-0/+17
| | | | | | | | | | Since an INTERNAL_ERROR is always a bug, it will be useful to have the program stack trace available in the report.
* | Watcom: Use single quote for all file/path items in wlink commandJiri Malak2014-04-081-1/+1
| | | | | | | | | | | | Watcom Linker use single quote if necessary for quoting target name, libraries names and libraries search path. Object names were already fixed.
* | cmake: Advise user to remove CMakeFiles with CMakeCache.txt (#14820)Brad King2014-03-211-4/+4
| |
* | Watcom: Enable 'WMake Makefiles' generator on LinuxJiri Malak2014-03-171-3/+7
| |
* | Remove c_str calls when using stream APIs.Stephen Kelly2014-03-111-7/+7
| | | | | | | | | | Use an ad-hoc clang tool for matching the calls which should be ported.
* | Remove some c_str() calls.Stephen Kelly2014-03-111-56/+56
| | | | | | | | | | | | Use the clang RemoveCStrCalls tool to automatically migrate the code. This was only run on linux, so does not have any positive or negative effect on other platforms.
* | stringapi: Command namesBen Boeckel2014-03-081-4/+5
| |
* | stringapi: Use strings for program pathsBen Boeckel2014-03-081-1/+1
| |
* | stringapi: Use strings for generator namesBen Boeckel2014-03-081-7/+9
| |
* | stringapi: Use strings for directoriesBen Boeckel2014-03-081-1/+1
| |
* | Directories: Take strings when setting directoriesBen Boeckel2014-03-081-2/+2
| |
* | 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 variable namesBen Boeckel2014-03-081-5/+5
| | | | | | | | Variable names are always generated by CMake and should never be NULL.
* | stringapi: Use strings for property namesBen Boeckel2014-03-081-30/+20
|/ | | | Property names are always generated by CMake and should never be NULL.
* cmake: Fix --check-build-system argument count check (#14784)Brad King2014-03-041-1/+1
| | | | | This internal option requires two arguments, not just one. Fix the argument count required to recognize the option.
* Merge topic 'support-codelite-ide-generator'Brad King2014-01-131-0/+3
|\ | | | | | | | | 0c4e8c70 Add support for codelite IDE project fles