CMake Nightly Date Stamp
Config-specific tests.
Merge topic 'target-sources-refactor' into next

38c877e1 Config-specific tests.
cmGeneratorTarget: Compute the object directory early.

Ensure it is populated before tracing dependencies.
cmTarget: Use GetSourceFiles for languages.
cmTarget: Rename AddSource method for backward compatibility.

Add a new AddSource method for future use.
cmSourceFileLocation: Make copyable and assignable.

This allows using it in containers and algorithms.
cmTarget: Add a method to obtain list of filenames for sources.
cmTarget: Use string API to add sources to cmTarget objects.

Continue to call GetOrCreateSource where necessary to create
cmSourceFile objects which have the GENERATED attribute set.
cmTarget: Remove AddSourceFile method

It is no longer used.
cmTarget: Store strings instead of cmSourceFile* to represent SOURCES.

This will allow the strings to contain generator expressions.

At this point, generator expressions are still not part of the
SOURCES property when it is read.
Genex: Evaluate TARGET_OBJECTS as a normal expression.
cmStringCommand: Add GENEX_STRIP subcommand.

Strip out any generator expressions in the input string.
cmTarget: Include TARGET_OBJECTS genex in target SOURCES property.

Add policy CMP0051 to control this behavior.
cmTarget: Allow any generator expression in SOURCES property.

Remove use of UseObjectLibraries from Makefile and Ninja generators. It
is not needed now because those generators use GetExternalObjects
which already contains the objects from object libraries.

The VS10 generator calls both the UseObjectLibraries and the GetExternalObjects
methods. Ensure that duplicates are not created by skipping objects
from object libraries in handling of GetExternalObjects.

The error message in the BadSourceExpression1 test is now reported
by the generator expression evaluator, so it has different text.
cmComputeTargetDepends: Track object library depends.

Relieve cmGeneratorTarget of that responsibility.
cmGeneratorTarget: Compute consumed object libraries on demand.

Remove up-front object library computation from cmGlobalGenerator.

Adjust tests for message coming from the generator expression
evaluation.
Merge topic 'target-sources-refactor' into next

aee52a01 cmGeneratorTarget: Compute consumed object libraries on demand.
07a4e973 cmComputeTargetDepends: Track object library depends.
7d2d26ed cmTarget: Allow any generator expression in SOURCES property.
b7dbf1f4 cmTarget: Include TARGET_OBJECTS genex in target SOURCES property.
fb6ca841 cmStringCommand: Add GENEX_STRIP subcommand.
e3ba552d Genex: Evaluate TARGET_OBJECTS as a normal expression.
aaf50b74 cmTarget: Store strings instead of cmSourceFile* to represent SOURCES.
0a4e7653 cmTarget: Remove AddSourceFile method
e810c13c cmTarget: Use string API to add sources to cmTarget objects.
623397e2 cmTarget: Add a method to obtain list of filenames for sources.
59759766 cmSourceFileLocation: Make copyable and assignable.
cc078e55 cmTarget: Rename AddSource method for backward compatibility.
159e2f6c cmTarget: Use GetSourceFiles for languages.
aa867938 cmGeneratorTarget: Compute the object directory early.
2c5e78fa CMake Nightly Date Stamp