summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStephen Kelly <steveire@gmail.com>2014-02-07 14:31:57 (GMT)
committerStephen Kelly <steveire@gmail.com>2014-02-07 14:49:15 (GMT)
commit6d85a6a64c6919c07d983b584bb74f6a29cddac5 (patch)
treea3183a350845bc0da44b9db9c2496b21a20edad5
parent770245e9287de01c990605b54d28302c9cac3340 (diff)
downloadCMake-6d85a6a64c6919c07d983b584bb74f6a29cddac5.zip
CMake-6d85a6a64c6919c07d983b584bb74f6a29cddac5.tar.gz
CMake-6d85a6a64c6919c07d983b584bb74f6a29cddac5.tar.bz2
add_library: Issue better diagnostic for INTERFACE GLOBAL signature.
-rw-r--r--Source/cmAddLibraryCommand.cxx7
-rw-r--r--Tests/RunCMake/interface_library/invalid_signature-stderr.txt2
2 files changed, 8 insertions, 1 deletions
diff --git a/Source/cmAddLibraryCommand.cxx b/Source/cmAddLibraryCommand.cxx
index a29f784..009b1ca 100644
--- a/Source/cmAddLibraryCommand.cxx
+++ b/Source/cmAddLibraryCommand.cxx
@@ -173,6 +173,13 @@ bool cmAddLibraryCommand
++s;
importGlobal = true;
}
+ else if(type == cmTarget::INTERFACE_LIBRARY && *s == "GLOBAL")
+ {
+ cmOStringStream e;
+ e << "GLOBAL option may only be used with IMPORTED libraries.";
+ this->SetError(e.str().c_str());
+ return false;
+ }
else
{
break;
diff --git a/Tests/RunCMake/interface_library/invalid_signature-stderr.txt b/Tests/RunCMake/interface_library/invalid_signature-stderr.txt
index 701586a..6374b33 100644
--- a/Tests/RunCMake/interface_library/invalid_signature-stderr.txt
+++ b/Tests/RunCMake/interface_library/invalid_signature-stderr.txt
@@ -84,6 +84,6 @@ Call Stack \(most recent call first\):
CMakeLists.txt:3 \(include\)
+
CMake Error at invalid_signature.cmake:20 \(add_library\):
- add_library INTERFACE library requires no source arguments.
+ add_library GLOBAL option may only be used with IMPORTED libraries.
Call Stack \(most recent call first\):
CMakeLists.txt:3 \(include\)