diff options
author | Ken Martin <ken.martin@kitware.com> | 2003-01-16 20:47:04 (GMT) |
---|---|---|
committer | Ken Martin <ken.martin@kitware.com> | 2003-01-16 20:47:04 (GMT) |
commit | fedf21722ad2b7c2a9c8d51dba1bb16a3f0080ca (patch) | |
tree | 448a5a334b2f9801a395d7c73457c5ce9d05ec30 /Tests/ComplexRelativePaths | |
parent | 51acf333cc119443d299773e4c28048df176b55b (diff) | |
download | CMake-fedf21722ad2b7c2a9c8d51dba1bb16a3f0080ca.zip CMake-fedf21722ad2b7c2a9c8d51dba1bb16a3f0080ca.tar.gz CMake-fedf21722ad2b7c2a9c8d51dba1bb16a3f0080ca.tar.bz2 |
ENH: fix for compilers that need _
Diffstat (limited to 'Tests/ComplexRelativePaths')
-rw-r--r-- | Tests/ComplexRelativePaths/Executable/complex.cxx | 23 |
1 files changed, 16 insertions, 7 deletions
diff --git a/Tests/ComplexRelativePaths/Executable/complex.cxx b/Tests/ComplexRelativePaths/Executable/complex.cxx index 97e382a..49b439f 100644 --- a/Tests/ComplexRelativePaths/Executable/complex.cxx +++ b/Tests/ComplexRelativePaths/Executable/complex.cxx @@ -112,7 +112,6 @@ int main() lib += cmDynamicLoader::LibPrefix(); lib += "CMakeTestModule"; lib += cmDynamicLoader::LibExtension(); - cmLibHandle handle = cmDynamicLoader::OpenLibrary(lib.c_str()); if(!handle) { @@ -121,17 +120,27 @@ int main() else { cmDynamicLoaderFunction fun = - cmDynamicLoader::GetSymbolAddress(handle, "ModuleFunction"); + cmDynamicLoader::GetSymbolAddress(handle, "ModuleFunction"); + if(!fun) + { + fun = cmDynamicLoader::GetSymbolAddress(handle, "_ModuleFunction"); + } typedef int (*TEST_FUNCTION)(); TEST_FUNCTION testFun = (TEST_FUNCTION)fun; - int ret = (*testFun)(); - if(!ret) + if(!testFun) { - cmFailed("ModuleFunction called from module did not return valid return"); + cmFailed("Could not find symbol ModuleFunction in library "); + } + else + { + int ret = (*testFun)(); + if(!ret) + { + cmFailed("ModuleFunction call did not return valid return."); + } + cmPassed("Module loaded and ModuleFunction called correctly."); } - cmPassed("Module loaded and ModuleFunction called correctly"); } - if(sharedFunction() != 1) { cmFailed("Call to sharedFunction from shared library failed."); |