#include "build_options.h"
+#include <algorithm>
+#include <cstring>
+
std::vector<Option> get_global_options();
std::vector<Option> get_mgr_options();
std::vector<Option> get_crimson_options();
auto ingest = [&result](std::vector<Option>&& options, const char* svc) {
for (auto &o : options) {
- o.add_service(svc);
+ if (std::none_of(o.services.begin(), o.services.end(),
+ [svc](const char* known_svc) {
+ return std::strcmp(known_svc, svc) == 0;
+ })) {
+ o.add_service(svc);
+ }
result.push_back(std::move(o));
}
};