ENH: fix for compilers that need _
This commit is contained in:
parent
51acf333cc
commit
fedf21722a
@ -112,7 +112,6 @@ int main()
|
|||||||
lib += cmDynamicLoader::LibPrefix();
|
lib += cmDynamicLoader::LibPrefix();
|
||||||
lib += "CMakeTestModule";
|
lib += "CMakeTestModule";
|
||||||
lib += cmDynamicLoader::LibExtension();
|
lib += cmDynamicLoader::LibExtension();
|
||||||
|
|
||||||
cmLibHandle handle = cmDynamicLoader::OpenLibrary(lib.c_str());
|
cmLibHandle handle = cmDynamicLoader::OpenLibrary(lib.c_str());
|
||||||
if(!handle)
|
if(!handle)
|
||||||
{
|
{
|
||||||
@ -122,16 +121,26 @@ int main()
|
|||||||
{
|
{
|
||||||
cmDynamicLoaderFunction fun =
|
cmDynamicLoaderFunction fun =
|
||||||
cmDynamicLoader::GetSymbolAddress(handle, "ModuleFunction");
|
cmDynamicLoader::GetSymbolAddress(handle, "ModuleFunction");
|
||||||
|
if(!fun)
|
||||||
|
{
|
||||||
|
fun = cmDynamicLoader::GetSymbolAddress(handle, "_ModuleFunction");
|
||||||
|
}
|
||||||
typedef int (*TEST_FUNCTION)();
|
typedef int (*TEST_FUNCTION)();
|
||||||
TEST_FUNCTION testFun = (TEST_FUNCTION)fun;
|
TEST_FUNCTION testFun = (TEST_FUNCTION)fun;
|
||||||
|
if(!testFun)
|
||||||
|
{
|
||||||
|
cmFailed("Could not find symbol ModuleFunction in library ");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
int ret = (*testFun)();
|
int ret = (*testFun)();
|
||||||
if(!ret)
|
if(!ret)
|
||||||
{
|
{
|
||||||
cmFailed("ModuleFunction called from module did not return valid return");
|
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)
|
if(sharedFunction() != 1)
|
||||||
{
|
{
|
||||||
cmFailed("Call to sharedFunction from shared library failed.");
|
cmFailed("Call to sharedFunction from shared library failed.");
|
||||||
|
@ -112,7 +112,6 @@ int main()
|
|||||||
lib += cmDynamicLoader::LibPrefix();
|
lib += cmDynamicLoader::LibPrefix();
|
||||||
lib += "CMakeTestModule";
|
lib += "CMakeTestModule";
|
||||||
lib += cmDynamicLoader::LibExtension();
|
lib += cmDynamicLoader::LibExtension();
|
||||||
|
|
||||||
cmLibHandle handle = cmDynamicLoader::OpenLibrary(lib.c_str());
|
cmLibHandle handle = cmDynamicLoader::OpenLibrary(lib.c_str());
|
||||||
if(!handle)
|
if(!handle)
|
||||||
{
|
{
|
||||||
@ -122,16 +121,26 @@ int main()
|
|||||||
{
|
{
|
||||||
cmDynamicLoaderFunction fun =
|
cmDynamicLoaderFunction fun =
|
||||||
cmDynamicLoader::GetSymbolAddress(handle, "ModuleFunction");
|
cmDynamicLoader::GetSymbolAddress(handle, "ModuleFunction");
|
||||||
|
if(!fun)
|
||||||
|
{
|
||||||
|
fun = cmDynamicLoader::GetSymbolAddress(handle, "_ModuleFunction");
|
||||||
|
}
|
||||||
typedef int (*TEST_FUNCTION)();
|
typedef int (*TEST_FUNCTION)();
|
||||||
TEST_FUNCTION testFun = (TEST_FUNCTION)fun;
|
TEST_FUNCTION testFun = (TEST_FUNCTION)fun;
|
||||||
|
if(!testFun)
|
||||||
|
{
|
||||||
|
cmFailed("Could not find symbol ModuleFunction in library ");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
int ret = (*testFun)();
|
int ret = (*testFun)();
|
||||||
if(!ret)
|
if(!ret)
|
||||||
{
|
{
|
||||||
cmFailed("ModuleFunction called from module did not return valid return");
|
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)
|
if(sharedFunction() != 1)
|
||||||
{
|
{
|
||||||
cmFailed("Call to sharedFunction from shared library failed.");
|
cmFailed("Call to sharedFunction from shared library failed.");
|
||||||
|
@ -112,7 +112,6 @@ int main()
|
|||||||
lib += cmDynamicLoader::LibPrefix();
|
lib += cmDynamicLoader::LibPrefix();
|
||||||
lib += "CMakeTestModule";
|
lib += "CMakeTestModule";
|
||||||
lib += cmDynamicLoader::LibExtension();
|
lib += cmDynamicLoader::LibExtension();
|
||||||
|
|
||||||
cmLibHandle handle = cmDynamicLoader::OpenLibrary(lib.c_str());
|
cmLibHandle handle = cmDynamicLoader::OpenLibrary(lib.c_str());
|
||||||
if(!handle)
|
if(!handle)
|
||||||
{
|
{
|
||||||
@ -122,16 +121,26 @@ int main()
|
|||||||
{
|
{
|
||||||
cmDynamicLoaderFunction fun =
|
cmDynamicLoaderFunction fun =
|
||||||
cmDynamicLoader::GetSymbolAddress(handle, "ModuleFunction");
|
cmDynamicLoader::GetSymbolAddress(handle, "ModuleFunction");
|
||||||
|
if(!fun)
|
||||||
|
{
|
||||||
|
fun = cmDynamicLoader::GetSymbolAddress(handle, "_ModuleFunction");
|
||||||
|
}
|
||||||
typedef int (*TEST_FUNCTION)();
|
typedef int (*TEST_FUNCTION)();
|
||||||
TEST_FUNCTION testFun = (TEST_FUNCTION)fun;
|
TEST_FUNCTION testFun = (TEST_FUNCTION)fun;
|
||||||
|
if(!testFun)
|
||||||
|
{
|
||||||
|
cmFailed("Could not find symbol ModuleFunction in library ");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
int ret = (*testFun)();
|
int ret = (*testFun)();
|
||||||
if(!ret)
|
if(!ret)
|
||||||
{
|
{
|
||||||
cmFailed("ModuleFunction called from module did not return valid return");
|
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)
|
if(sharedFunction() != 1)
|
||||||
{
|
{
|
||||||
cmFailed("Call to sharedFunction from shared library failed.");
|
cmFailed("Call to sharedFunction from shared library failed.");
|
||||||
|
Loading…
x
Reference in New Issue
Block a user