Wire comparator CLI, marionette threading model, and final load order.

Initialize SmoThreadingModelDesc from marionette before body startup, load
comparator libs before stimbuff via -c/--comparator-lib, and drop the hardcoded
libcomparatorCore.so load path.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-06-10 21:17:52 -04:00
parent 560e5364a0
commit 8836ab470b
10 changed files with 88 additions and 29 deletions
@@ -3,6 +3,7 @@
#include <stdexcept>
#include <comparatorLibs/comparatorApiManager.h>
#include <loadableLib/loadableLibraryManager.h>
#include <opts.h>
#include <user/comparatorApiDesc.h>
#include <user/smoHooks.h>
@@ -118,6 +119,14 @@ void ComparatorApiManager::unloadAllComparatorLibs(void)
}
}
void ComparatorApiManager::loadAllComparatorApiLibsFromOptions(void)
{
const auto& options = OptionParser::getOptions();
for (const auto& libPath : options.comparatorLibs) {
loadComparatorLib(libPath);
}
}
std::optional<std::shared_ptr<ComparatorLib>>
ComparatorApiManager::getComparatorLib(const std::string& libraryPath)
{