| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It is not necessary and the current state is unintentional. Before
this patch,
target_link_libraries(foo bar)
causes the LINK_LIBRARIES property of foo to contain
$<TARGET_NAME:bar>
instead of just
bar
|
| |
|
| |
|
| |
|
| |
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
1d74ba2 Test evaluation target via export for generator expressions
522bdac Export the INTERFACE_PIC property.
4ee872c Make the BUILD_INTERFACE of export()ed targets work.
1d47cd9 Add a test for the interfaces in targets exported from the build tree.
6c828f9 Move the exported check for file existence.
cfd4f0a Move the exported check for dependencies of targets
d8fe1fc Only generate one check per missing target.
f623d37 Don't write a comment in the export file without the code.
b279f2b Strip consecutive semicolons when preprocessing genex strings.
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
The existing BUILD_INTERFACE code is executed at generate time, which
is too late for export().
|
| | |
|
| |
| |
| |
| |
| | |
Check only once, in the Config.cmake file, instead of once in each
Config-<cfg>.cmake file.
|
| |
| |
| |
| |
| | |
Check only once, in the Config.cmake file, instead of once in each
Config-<cfg>.cmake file.
|
| | |
|
| | |
|
| | |
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
e2c756f Merge branch 'upstream-kwsys' into update-kwsys
4ba0ac7 KWSys 2013-01-14 (6fa1c99f)
6f57a90 Merge branch 'upstream-kwsys' into update-kwsys
6318834 KWSys 2013-01-10 (608d6b47)
|
| |\ \ |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Extract upstream KWSys using the following shell commands.
$ git archive --prefix=upstream-kwsys/ 6fa1c99f | tar x
$ git shortlog --no-merges --abbrev=8 --format='%h %s' 608d6b47..6fa1c99f
Brad King (1):
84827cc1 Process: Avoid argv[0]==NULL from parsing empty command line
Rolf Eike Beer (8):
e041cd66 SystemInformation: factor out QueryMemoryBySysconf()
ea850fa0 SystemInformation: factor out QueryProcessorBySysconf()
57f06d49 SystemInformation: count processors with sysconf() on Solaris
c6057a06 SystemInformation: fix "Multi-character character constant"
5a27bd4f SystemInformation: make IsHyperThreadingSupported() return bool
342c0ad2 SystemInformation: query memory size with sysconf() on Solaris
f0b857c1 SystemInformation: cache result of IsHyperThreadingSupported()
ab0c2a09 SystemInformation: try using assembler with BorlandC
Change-Id: I072371ed35eed892a5ef62a9e9e6cad734e961d9
|
| |\ \ \
| | |/ / |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Extract upstream KWSys using the following shell commands.
$ git archive --prefix=upstream-kwsys/ 608d6b47 | tar x
$ git shortlog --no-merges --abbrev=8 --format='%h %s' fc60c8b8..608d6b47
Rolf Eike Beer (6):
297758a5 SystemInformation: fix conversion warning
79ef34ef SystemInformation: fix calling kwsysProcess_WaitForData()
f1068caf SystemInformation: speed up copying process data
7dfc27d5 SystemInformation: check CPU vendor and SSE support on OpenBSD
494d9d7a SystemInformation: get stepping code on Intel Macs
608d6b47 SystemInformation: determine processor features on Intel Macs
Change-Id: I7f5bc5b7af2bf7d4e5c1ee291c286add0f17a7d5
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | | |
2bee6f5 Add the TARGET_DEFINED generator expression
|
| | |_|/
| |/| |
| | | |
| | | | |
This tests whether the parameter is a usable target.
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | | |
7c7b94f Document the use of generator expressions in new commands.
|
| | | | | |
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
1da7502 Don't include generator expressions in old-style link handling.
|
| |/ / / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Don't add generator expressions to variables which are used
for CMP0003, CMP0004, and the old-style _LIB_DEPENDS content. They
will not be evaluated when read anyway and would probably confuse
the code reading them.
This makes it legitimate to use target_link_libraries with generator
expressions as arguments.
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
7171fd0 Add a way to check INTERFACE user property compatibility.
|
| | |_|/ /
| |/| | | |
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
8ff1d47 CMake: Skip empty link.txt lines (#13845)
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
In the implementation of "cmake -E cmake_link_script", skip lines from
the input file that are empty or contain only whitespace. Do not try to
run a child with no command line.
|
| | | | | | |
|
| |_|/ / /
|/| | | | |
|
| |_|/ /
|/| | | |
|
| |/ /
|/| | |
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
77d2646 Allow generator expressions in LINK_INTERFACE_LIBRARIES.
94aeaf7 Split LINK_INTERFACE_LIBRARIES export handling into dedicated method.
a3aedb8 Split the generator expression before extracting targets.
b6036d1 Extract the AddTargetNamespace method.
cb1afbf Don't pass a position when determining if a target name is a literal.
f99196d Add cmGeneratorExpression::Split() API.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The Config and IMPORTED_ variants may also contain generator
expressions.
If 'the implementation is the interface', then the result of
evaluating the expressions at generate time is used to populate
the IMPORTED_LINK_INTERFACE_LIBRARIES property.
1) In the case of non-static libraries, this is fine because the
user still has the option to populate the LINK_INTERFACE_LIBRARIES
with generator expressions if that is what is wanted.
2) In the case of static libraries, this prevents a footgun,
enforcing that the interface and the implementation are really
the same.
Otherwise, the LINK_LIBRARIES could contain a generator
expression which is evaluated with a different context at build
time, and when used as an imported target. That would mean that the
result of evaluating the INTERFACE_LINK_LIBRARIES property for
a static library would not necessarily be the 'link implementation'.
For example:
add_library(libone STATIC libone.cpp)
add_library(libtwo STATIC libtwo.cpp)
add_library(libthree STATIC libthree.cpp)
target_link_libraries(libtwo
$<$<STREQUAL:$<TARGET_PROPERTY:TYPE>,STATIC_LIBRARY>:libone>)
target_link_libraries(libthree libtwo)
If the LINK_LIBRARIES content was simply copied to the
IMPORTED_LINK_INTERFACE_LIBRARIES, then libthree links to libone, but
executables linking to libthree will not link to libone.
3) As the 'implementation is the interface' concept is to be
deprecated in the future anyway, this should be fine.
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Now that we're processing a LINK_INTERFACE_LIBRARIES string, it
can contain targets. Make sure they are extracted for
namespacing purposes.
This needs to be restricted to strings which can actually have
targets named in them. For example, this is not done for
INTERFACE_COMPILE_DEFINITIONS, because even if there is a target
named 'foo', the string 'foo' in that property means that '-Dfoo'
will be set when compiling.
|
| | | | |
|
| | | |
| | | |
| | | |
| | | | |
The lastPos refers to a position in a different string.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
It can split a string like
"A;$<1:B>;$<1:C>;D;E;$<1:F;G;H>;$<1:I>;J"
into
"A" "$<1:B>" "$<1:C>" "D" "E" "$<1:F;G;H>" "$<1:I>" "J"
|
|\ \ \ \
| |/ / /
| | / /
| |/ /
|/| | |
93034a8 Fix linking to imported libraries test.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Make a C executable instead of attempting to make a C++ static
library (and not really succeeding). This was introduced in
commit 894f52f3 (Handle INTERFACE properties transitively for
includes and defines., 2012-09-23).
|
|/ / |
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
3581b96 Process the INTERFACE_PIC property from linked dependencies
042ecf0 Add API to calculate link-interface-dependent bool properties or error.
bf5ece5 Keep track of properties used to determine linker libraries.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This allows a dependee to inform a target that it should have its
POSITION_INDEPENDENT_CODE property set to ON, or OFF. The value of
the POSITION_INDEPENDENT_CODE property, if set, must be consistent
with any INTERFACE_POSITION_INDEPENDENT_CODE properties on dependees.
Add a test covering the consistency checks on platforms where they run.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This new method checks that the property FOO on a target is consistent
with the INTERFACE_FOO properties of its dependees. If they are not the
consistent, an error is reported. 'Consistent' means that iff the
property is set, it must have the same boolean value as all other
related properties.
|
| | |
| | |
| | |
| | |
| | | |
Those properties can't later be implicitly defined by the interface
of those link libraries.
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | | |
fc61a7a Add the target_compile_definitions command.
8a37ebe Add the target_include_directories command.
|
| | | |
| | | |
| | | |
| | | | |
This is a convenience API to populate the corresponding properties.
|