[Cmake-commits] CMake branch, next, updated. v3.0.0-rc4-2823-g716cf7d
Stephen Kelly
steveire at gmail.com
Tue May 6 15:08:07 EDT 2014
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".
The branch, next has been updated
via 716cf7dca8e12e4692f5a78727e0cb393388df2b (commit)
via d648c4766ff56907bc17287077eeebcc9e40b184 (commit)
from 4c1560ce1caab2bab72a0fca7ef73177b45327d3 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=716cf7dca8e12e4692f5a78727e0cb393388df2b
commit 716cf7dca8e12e4692f5a78727e0cb393388df2b
Merge: 4c1560c d648c47
Author: Stephen Kelly <steveire at gmail.com>
AuthorDate: Tue May 6 15:08:06 2014 -0400
Commit: CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Tue May 6 15:08:06 2014 -0400
Merge topic 'no-assert-missing-objlib' into next
d648c476 cmTarget: Don't assert on object libraries for configure-time location.
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d648c4766ff56907bc17287077eeebcc9e40b184
commit d648c4766ff56907bc17287077eeebcc9e40b184
Author: Stephen Kelly <steveire at gmail.com>
AuthorDate: Tue May 6 13:16:23 2014 +0200
Commit: Stephen Kelly <steveire at gmail.com>
CommitDate: Tue May 6 21:07:40 2014 +0200
cmTarget: Don't assert on object libraries for configure-time location.
Commit b8af2011 (cmTarget: Fix listing of source files at
configure-time., 2014-04-13) refactored a GetObjectLibrariesCMP0026
method out of GetLanguages. In flight, a conditional use of a target
if available was changed to an assert-available.
This code is only used to read the LOCATION property at configure
time, when the link information is incomplete, and not all targets
are defined, so the assert is inappropriate, even though it can lead
to incorrect information being generated. CMP0026 warns about the
potentially incorrect information anyway.
diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx
index 6a87342..9d96fd9 100644
--- a/Source/cmTarget.cxx
+++ b/Source/cmTarget.cxx
@@ -5406,8 +5406,10 @@ cmTarget::GetObjectLibrariesCMP0026(std::vector<cmTarget*>& objlibs) const
continue;
}
cmTarget *objLib = this->Makefile->FindTargetToUse(objLibName.c_str());
- assert(objLib);
- objlibs.push_back(objLib);
+ if(objLib)
+ {
+ objlibs.push_back(objLib);
+ }
}
}
}
diff --git a/Tests/RunCMake/CMP0026/ObjlibNotDefined-result.txt b/Tests/RunCMake/CMP0026/ObjlibNotDefined-result.txt
new file mode 100644
index 0000000..573541a
--- /dev/null
+++ b/Tests/RunCMake/CMP0026/ObjlibNotDefined-result.txt
@@ -0,0 +1 @@
+0
diff --git a/Tests/RunCMake/CMP0026/ObjlibNotDefined-stderr.txt b/Tests/RunCMake/CMP0026/ObjlibNotDefined-stderr.txt
new file mode 100644
index 0000000..87d198d
--- /dev/null
+++ b/Tests/RunCMake/CMP0026/ObjlibNotDefined-stderr.txt
@@ -0,0 +1,12 @@
+CMake Warning \(dev\) at ObjlibNotDefined.cmake:[0-9]+ \(get_target_property\):
+ Policy CMP0026 is not set: Disallow use of the LOCATION target property.
+ Run "cmake --help-policy CMP0026" for policy details. Use the cmake_policy
+ command to set the policy and suppress this warning.
+
+ The LOCATION property should not be read from target "objlibuser". Use the
+ target name directly with add_custom_command, or use the generator
+ expression \$<TARGET_FILE>, as appropriate.
+
+Call Stack \(most recent call first\):
+ CMakeLists.txt:3 \(include\)
+This warning is for project developers. Use -Wno-dev to suppress it.
diff --git a/Tests/RunCMake/CMP0026/ObjlibNotDefined.cmake b/Tests/RunCMake/CMP0026/ObjlibNotDefined.cmake
new file mode 100644
index 0000000..194760c
--- /dev/null
+++ b/Tests/RunCMake/CMP0026/ObjlibNotDefined.cmake
@@ -0,0 +1,13 @@
+
+enable_language(CXX)
+
+add_executable(objlibuser
+ empty.cpp
+ $<TARGET_OBJECTS:bar>
+)
+
+get_target_property(_location objlibuser LOCATION)
+
+add_library(bar OBJECT
+ empty.cpp
+)
diff --git a/Tests/RunCMake/CMP0026/RunCMakeTest.cmake b/Tests/RunCMake/CMP0026/RunCMakeTest.cmake
index 1824cc6..7c2582f 100644
--- a/Tests/RunCMake/CMP0026/RunCMakeTest.cmake
+++ b/Tests/RunCMake/CMP0026/RunCMakeTest.cmake
@@ -9,3 +9,4 @@ run_cmake(CMP0026-CONFIG-LOCATION-WARN)
run_cmake(CMP0026-LOCATION-CONFIG-NEW)
run_cmake(CMP0026-LOCATION-CONFIG-OLD)
run_cmake(CMP0026-LOCATION-CONFIG-WARN)
+run_cmake(ObjlibNotDefined)
-----------------------------------------------------------------------
Summary of changes:
hooks/post-receive
--
CMake
More information about the Cmake-commits
mailing list