Merge topic 'fix-export-segfault'

1cd1430 export(): Check targets exist at configure-time (#14608)
This commit is contained in:
Brad King 2013-12-04 08:33:36 -05:00 committed by CMake Topic Stage
commit a5c3f059ff
7 changed files with 21 additions and 0 deletions

View File

@ -135,6 +135,14 @@ bool cmExportCommand
return false;
}
}
else
{
cmOStringStream e;
e << "given target \"" << *currentTarget
<< "\" which is not built by this project.";
this->SetError(e.str().c_str());
return false;
}
}
cmGlobalGenerator *gg = this->Makefile->GetLocalGenerator()

View File

@ -99,6 +99,7 @@ add_RunCMake_test(Syntax)
add_RunCMake_test(add_dependencies)
add_RunCMake_test(build_command)
add_RunCMake_test(export)
add_RunCMake_test(cmake_minimum_required)
add_RunCMake_test(find_package)
add_RunCMake_test(get_filename_component)

View File

@ -0,0 +1,3 @@
cmake_minimum_required(VERSION 2.8.4)
project(${RunCMake_TEST})
include(${RunCMake_TEST}.cmake)

View File

@ -0,0 +1,3 @@
include(RunCMake)
run_cmake(TargetNotFound)

View File

@ -0,0 +1 @@
1

View File

@ -0,0 +1,4 @@
CMake Error at TargetNotFound.cmake:1 \(export\):
export given target "nonexistenttarget" which is not built by this project.
Call Stack \(most recent call first\):
CMakeLists.txt:3 \(include\)

View File

@ -0,0 +1 @@
export(TARGETS nonexistenttarget FILE somefile.cmake)