This lets to ensure nobody is accidentally linking with the alienized
version of `common`.
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
if(WITH_BLUESTORE)
add_subdirectory(alienstore)
+ set(alienstore_lib crimson-alienstore)
endif()
add_subdirectory(seastore)
target_link_libraries(crimson-os
crimson-cyanstore
- crimson-alienstore
+ ${alienstore_lib}
crimson-seastore
crimson)
#include "futurized_store.h"
#include "cyanstore/cyan_store.h"
+#ifdef WITH_BLUESTORE
#include "alienstore/alien_store.h"
+#endif
#include "seastore/seastore.h"
namespace crimson::os {
} else if (type == "seastore") {
return crimson::os::seastore::make_seastore(data, values);
} else {
+#ifdef WITH_BLUESTORE
// use AlienStore as a fallback. It adapts e.g. BlueStore.
return std::make_unique<crimson::os::AlienStore>(
type, data, values);
+#else
+ ceph_abort_msgf("unsupported objectstore type: %s", type.c_str());
+ return {};
+#endif
}
}