summaryrefslogtreecommitdiffstats
path: root/Tests/RunCMake/TargetSources/CMP0026-LOCATION.cmake
diff options
context:
space:
mode:
authorStephen Kelly <steveire@gmail.com>2014-04-13 08:07:16 (GMT)
committerStephen Kelly <steveire@gmail.com>2014-04-13 08:59:50 (GMT)
commitb8af20116854b51923da9ebef668fba0072b06c4 (patch)
tree3da0a2439e43d2d71bbf094bb9553cb035ad3901 /Tests/RunCMake/TargetSources/CMP0026-LOCATION.cmake
parent3927747547a5ddc9495cc4796876e207f2cae811 (diff)
downloadCMake-b8af20116854b51923da9ebef668fba0072b06c4.zip
CMake-b8af20116854b51923da9ebef668fba0072b06c4.tar.gz
CMake-b8af20116854b51923da9ebef668fba0072b06c4.tar.bz2
cmTarget: Fix listing of source files at configure-time.
Since commit e5da9e51 (cmTarget: Allow any generator expression in SOURCES property., 2014-03-18), source files are computed by true evaluation of generator expressions, including TARGET_OBJECTS. This evaluation requires the presence of cmGeneratorTarget objects since commit bf98cc25 (Genex: Evaluate TARGET_OBJECTS as a normal expression., 2014-02-26). Ensure that we don't attempt to evaluate the TARGET_OBJECTS generator expression at configure-time, as can happen if CMP0024 or CMP0026 are OLD. Use old-style parsing of the source item to extract object target names in that case. Avoid calling GetProperty("SOURCES") to bypass warnings from CMP0051. Refactor existing logic in GetLanguages which is similar in intent to the new GetSourceFiles code.
Diffstat (limited to 'Tests/RunCMake/TargetSources/CMP0026-LOCATION.cmake')
-rw-r--r--Tests/RunCMake/TargetSources/CMP0026-LOCATION.cmake13
1 files changed, 13 insertions, 0 deletions
diff --git a/Tests/RunCMake/TargetSources/CMP0026-LOCATION.cmake b/Tests/RunCMake/TargetSources/CMP0026-LOCATION.cmake
new file mode 100644
index 0000000..464df36
--- /dev/null
+++ b/Tests/RunCMake/TargetSources/CMP0026-LOCATION.cmake
@@ -0,0 +1,13 @@
+
+cmake_policy(SET CMP0026 OLD)
+
+add_library(objlib OBJECT
+ empty_1.cpp
+)
+
+add_executable(my_exe
+ empty_2.cpp
+ $<TARGET_OBJECTS:objlib>
+)
+
+get_target_property( loc my_exe LOCATION)