summaryrefslogtreecommitdiffstats
path: root/Source/cmGlobalUnixMakefileGenerator3.cxx
Commit message (Collapse)AuthorAgeFilesLines
...
* cmLocalUnixMakefileGenerator3: Provide GetConfigName() accessorBrad King2015-07-091-3/+3
| | | | | Rename internal member from ConfigurationName to ConfigName to match the ninja generator.
* Add common base classes to Makefile and Ninja generatorsBrad King2015-07-091-1/+1
| | | | Provide a place to move functionality common to both.
* cmGlobalGenerator: Map local generators to generator targets.Stephen Kelly2015-07-011-8/+7
|
* cmComputeTargetDepends: Change API to use cmGeneratorTarget.Stephen Kelly2015-07-011-12/+12
|
* cmMakefile: Move IsRoot API from cmLocalGenerator.Stephen Kelly2015-06-211-2/+2
|
* cmLocalGenerator: Require a valid cmState::Snapshot in the ctor.Stephen Kelly2015-05-271-2/+3
| | | | | | | | | | | Refactor the local generator creation API to accept a cmState::Snapshot. Adjust MakeLocalGenerator to use the 'current' snapshot in cases where there is no parent. Create the snapshot for subdirectories in cmMakefile::AddSubdirectory. This means that snapshots are now created at the point of extending the tree, as appropriate, and independently of the cmLocalGenerator and cmMakefile they represent the state for.
* cmGlobalGenerator: Require a cmake instance in ctor.Stephen Kelly2015-05-271-1/+2
| | | | It is required anyway, so this makes it explicit.
* cmGlobalUnixMakefileGenerator3: Host the UnixCD.Stephen Kelly2015-05-181-0/+1
|
* cmGlobalUnixMakefileGenerator3: Host the PassMakeflags.Stephen Kelly2015-05-181-0/+1
|
* cmGlobalUnixMakefileGenerator3: Host the DefineWindowsNULL.Stephen Kelly2015-05-161-0/+1
|
* cmGlobalUnixMakefileGenerator3: Host the include directive.Stephen Kelly2015-05-161-0/+2
| | | | There is no sense in copying this to each cmLocalGenerator.
* cmGlobalGenerator: Add NVI wrapper to create local generator.Stephen Kelly2015-05-161-1/+1
|
* Use new top-level check abstraction.Stephen Kelly2015-05-141-2/+2
|
* cmLocalGenerator: Require a global generator in the constructor.Stephen Kelly2015-05-141-3/+1
| | | | Port generator factory methods to pass it.
* cmLocalGenerator: Require a parent in the constructor.Stephen Kelly2015-04-281-2/+3
| | | | | | | Pass the parent though cmGlobalGenerator::CreateLocalGenerator. This will make it easy to initialize state scopes independent of cmMakefile.
* cmMakefile: Port users of GetStart* methods to new names.Stephen Kelly2015-04-201-7/+7
|
* cmMakefile: Rename GetCurrent{Output,Binary}Directory.Stephen Kelly2015-04-201-1/+1
| | | | Match names used in CMake code.
* Use the Home directories from the cmake class where intended.Stephen Kelly2015-04-201-2/+2
|
* Remove redundant calls to MakeStartDirectoriesCurrent.Stephen Kelly2015-04-201-1/+0
| | | | The SetStart{,Output}Directory methods do what it does.
* cmState: Move CacheEntryType enum from cmCacheManager.Stephen Kelly2015-04-131-1/+1
|
* Include cmAlgorithms where it is used.Stephen Kelly2015-03-101-0/+1
|
* JOM: Pass /NOLOGO when driving builds as is done for NMakeBrad King2015-03-021-1/+1
| | | | | | This fixes RunCMake.(Configure|configure_file|try_compile) test failures that failed to match empty stderr due to jom printing its identification line.
* cmake: Teach --build to honor CMAKE_VERBOSE_MAKEFILE for NinjaGregor Jasny2015-02-261-1/+1
| | | | | | | | | The Ninja build system does not support a in-file verbositiy switch. Instead teach 'cmake --build' to extract the CMAKE_VERBOSE_MAKEFILE setting and pass it as an optional '-v' argument to Ninja. This can serve as a reasonable fallback. Signed-off-by: Gregor Jasny <gjasny@googlemail.com>
* Makefile: Fix output during parallel builds (#12991)Brad King2015-02-061-25/+18
| | | | | | | | | | Replace use of separate "cmake -E cmake_progress_report" and "cmake -E cmake_echo_color" commands to report the progress and message portions of build output lines with --progress-* options to the latter to print everything with a single command. The line buffering of the stdout FILE stream should cause the whole line to be printed with one atomic write. This will avoid inter-mixing of line-wise messages from different processes during a parallel build.
* Replace foo.size() pattern with !foo.empty().Stephen Kelly2015-01-181-1/+1
|
* Replace !foo.size() pattern with foo.empty().Stephen Kelly2015-01-181-1/+1
|
* Port all cmOStringStream to std::ostringstream.Stephen Kelly2015-01-111-3/+3
| | | | All compilers hosting CMake support the std class.
* cmLocalGenerator: Rename 'MAKEFILE' to 'MAKERULE'Brad King2014-07-221-1/+1
| | | | | Rename the internal enumeration value for converting paths destined for use in Makefile rule syntax.
* cmTarget: Make the source files depend on the config.Stephen Kelly2014-04-021-1/+2
| | | | | | | | | | | | | | | | | Disallow the use of config-specific source files with the Visual Studio and Xcode generators. They don't have any way to represent the condition currently. Use the same common-config API in cmQtAutoGenerators. While it accepts config-specific files, it doesn't have to support multiple configurations yet. Loop over the configs in cmTargetTraceDependencies and cmGlobalGenerator::WriteSummary and consume all source files. Loop over the configs in cmComputeTargetDepends and compute the object library dependencies for each config.
* Makefiles: Remove duplicate code.Stephen Kelly2014-03-171-15/+0
| | | | | The cmGlobalUnixMakefileGenerator3::ProgressMapCompare struct is logically equivalent to cmStrictTargetComparison.
* Rename local 'dir_max' variables to 'dir'Stephen Kelly2014-03-171-6/+6
| | | | | The code is not computing the maximum length directory, as is the case in cmLocalVisualStudioGenerator::ComputeLongestObjectDirectory.
* cmGlobalGenerator: Make ComputeTargetObjects non-virtualStephen Kelly2014-03-151-24/+0
| | | | | | | | Implement it in terms of the ComputeObjectFilenames virtual method on the local generators. Remove the reimplementation from the global generators which are now all functionally identical.
* cmLocalGenerator: Add ComputeObjectFilenames interface.Stephen Kelly2014-03-131-8/+13
| | | | | Implement it in the local generators and use it in the global generators.
* cmGeneratorTarget: Constify cmSourceFile* in containers.Stephen Kelly2014-03-131-3/+3
| | | | | Some of them will be used with other APIs which require value_type to be cmSourceFile const*.
* cmGlobalGenerator: Extract a ComputeTargetObjectDirectory interface.Stephen Kelly2014-03-131-10/+17
| | | | Make it public for future external calls.
* Makefiles: Compute local object files on demand.Stephen Kelly2014-03-131-7/+1
| | | | Don't compute them up front.
* 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-30/+30
| | | | | | 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.
* speedup: Avoid excess iterator dereferencesBen Boeckel2014-03-081-57/+68
|
* stringapi: Use strings for program pathsBen Boeckel2014-03-081-1/+1
|
* stringapi: Use strings for generator namesBen Boeckel2014-03-081-2/+2
|
* stringapi: Use strings for directoriesBen Boeckel2014-03-081-1/+1
|
* stringapi: Pass configuration names as stringsBen Boeckel2014-03-081-1/+1
|
* strings: Remove cmStdString referencesBen Boeckel2014-03-081-6/+6
| | | | | | | | | | | 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 VS project namesBen Boeckel2014-03-081-1/+1
|
* stringapi: Use strings in target nameBen Boeckel2014-03-081-7/+5
|
* cmGeneratorTarget: Add methods to access source file groups.Stephen Kelly2014-01-091-3/+5
| | | | | These methods and others will be able to get a config parameter later to implement the INTERFACE_SOURCES feature.
* Constify handling of target dependencies.Stephen Kelly2013-12-111-7/+8
|
* Remove INTERFACE build targets.Stephen Kelly2013-12-101-55/+37
| | | | | | | | | | | | | | | Commit b04f3b9a (Create make rules for INTERFACE_LIBRARY targets., 2013-08-21) extended the makefile generator to create build targets for INTERFACE_LIBRARY targets. No other generators were extended with this feature. This conflicts with the feature of whitelisting of target properties read from INTERFACE_LIBRARY targets. The INTERFACE_* properties of the INTERFACE_LIBRARY may legitimately contain TARGET_PROPERTY generator expressions for reading properties from the 'head target'. The 'head target' would be the INTERFACE_LIBRARY itself when creating the build rules for it, which means that non-whitelisted properties would be read.
* Port some of the generator API to cmGeneratorTarget.Stephen Kelly2013-11-221-58/+77
| | | | | | | Just enough to reach the BuildMacContentDirectory method and the NeedRelinkBeforeInstall methods. In the future, those methods can be moved to cmGeneratorTarget.