Eliminate the C FFI; Namespace lib API and DeviceManager
We decided to get rid of the C FFI for libs. It was becoming too intricate and complicated. It was becoming a technical burden and expanding into too much extra code. It's unfortunate, but we'll have to give up on getting out-of-tree hot-loadable libraries the easy way. It's possible to still do it with cross compilation or by keeping track of the libstdc++ version that the running harikoff binary was compiled against. Then we can ensure that our loadable lib code is linked against that same libstdc++ code and this should ensure ABI stability.
This commit is contained in:
@@ -86,9 +86,9 @@ static int initializeHarikoff(int argc, char **argv, char **envp)
|
||||
return EXIT_SUCCESS;
|
||||
}
|
||||
|
||||
DeviceManager::getInstance().collateAllDeviceSpecs();
|
||||
DeviceManager::getInstance().parseAllDeviceSpecs();
|
||||
std::cout << DeviceManager::stringifyDeviceSpecs() << std::endl;
|
||||
device::DeviceManager::getInstance().collateAllDeviceSpecs();
|
||||
device::DeviceManager::getInstance().parseAllDeviceSpecs();
|
||||
std::cout << device::DeviceManager::stringifyDeviceSpecs() << std::endl;
|
||||
sense_api::SenseApiManager::getInstance().loadAllSenseApiLibsFromOptions();
|
||||
std::cout << sense_api::SenseApiManager::getInstance().stringifyLibs()
|
||||
<< std::endl;
|
||||
|
||||
Reference in New Issue
Block a user