The TARGET_NAME expression, which requires a literal, provides
target names. $<TARGET_PROPERTY:tgt,prop> also provides target
names in the cases where tgt is a literal, so that TARGET_NAME is
not needed then in addition.
This is for specifying INCLUDE_DIRECTORIES relevant to the build-location
or the install location for example:
set_property(TARGET foo PROPERTY
INTERFACE_INCLUDE_DIRECTORIES
"$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR};${CMAKE_CURRENT_SOURCE_DIR}>"
"$<INSTALL_INTERFACE:${CMAKE_INSTALL_PREFIX}/include>"
)
A 'bar' target can then use:
set_property(TARGET bar PROPERTY
INCLUDE_DIRECTORIES
"$<TARGET_PROPERTY:foo,INTERFACE_INCLUDE_DIRECTORIES>"
)
and it will work whether foo is in the same project, or an imported target
from an installation location, or an imported target from a build location
generated by the export() command.
Because the generator expressions are only evaluated at build-time, these
new expressions are equivalent to the ZeroNode and OneNode.
The GeneratorExpression test is split into parts. Some shells can't run
the custom command as it is getting too long.
Xcode and VS <= 7.1 will not build targets that have no source files
besides $<TARGET_OBJECTS:...>. Suggest in the documentation that
projects always add at least one real source file.
0941d62 Add a way to print the origins of used include directories.
18a3195 Keep track of INCLUDE_DIRECTORIES as a vector of structs.
76ea420 Use cmsys::auto_ptr to manage cmCompiledGeneratorExpressions
Resolve this warning:
".../Tests/CMakeCommands/target_link_libraries/depB.cpp", line 8: warning:
variable "a" was declared but never referenced
DepA a;
^
Add a test that verifies that when ctest -j 4 is called, at most, 4 tests
are executed at any one time.
The test works by running the same script as each of 100 tests. And then setting
up test properties for DEPENDS, RUN_SERIAL, PROCESSORS and COST in order to get
the tests to run in a semi-deterministic ordering, even in parallel. The script
writes a file, sleeps for a bit, and then deletes the file. In the meantime, it
counts files that currently exist, and emits output that triggers a test failure
if the count of files is ever greater than 4.
Prior to the commit that fixed bug #12904, this would result in a failed test
because the output of some of the tests would indicate that more than 4 tests
were running simultaneously.
Now that this issue is resolved, this test will help guarantee that it stays
resolved moving forward.
The __aarch64__ defines Aarch64, while __AARCH64EB__ defines bigendian
and __AARCH64EL__ little endian. Only little endian tested, no big
endian toolchain exists yet.
Signed-off-by: Riku Voipio <riku.voipio@linaro.org>
The KWSys "EncodeExecutable" and "ProcessFwd9x" executables were dropped
from KWSys along with Win9x Process support. Drop references from the
rest of the CMake build rules.
Extract upstream KWSys using the following shell commands.
$ git archive --prefix=upstream-kwsys/ 933eb822 | tar x
$ git shortlog --no-merges --abbrev=8 --format='%h %s' 3b17de34..933eb822
Brad King (2):
fea37696 Process: Remove support for Windows 98
01e15c22 Remove KWSys Registry
Rolf Eike Beer (7):
f376ec32 SystemInformation: fix typos
bfee5174 SystemInformation: sum up all caches found in /proc/cpuinfo
5690d711 SystemInformation: fix value extraction from /proc/cpuinfo
36295981 SystemInformation: PA-RISC chips are from HP
72e9d02e SystemInformation: try harder to find a useful processor name
b39de34c SystemInformation: try harder to find the CPU family
933eb822 SystemInformation: extract CPU stepping information from /proc/cpuinfo, too
Sean McBride (2):
5e17bfde Process: Dereference NULL++ instead of NULL to force crash
86a78cb7 SystemTools: Add check for empty strings to prevent integer underflow
Change-Id: Id7194f434fe67be81e6ee9e96d705010a1171a06