Previosuly, we used WITH_SEASTAR to not include KStore with Crimson.
As now Crimson's Alienstore is not defined WITH_SEASTAR We need to be able
to not include KStore to alien crimson target as well.
Instead, let Classic define PRIVATE WITH_KSTORE that will not
be used by the alien targets.
This doesn't change anything of non-crimson targets.
Signed-off-by: Matan Breizman <mbreizma@redhat.com>
blk
${FMT_LIB})
+target_compile_definitions(os PRIVATE -DWITH_KSTORE)
target_link_libraries(os heap_profiler kv)
if(WITH_BLUEFS)
#if defined(WITH_BLUESTORE)
#include "bluestore/BlueStore.h"
#endif
-#ifndef WITH_SEASTAR
+#ifdef WITH_KSTORE
#include "kstore/KStore.h"
#endif
return nullptr;
}
-#ifndef WITH_SEASTAR
std::unique_ptr<ObjectStore> ObjectStore::create(
CephContext *cct,
const string& type,
lgeneric_derr(cct) << __func__ << ": FileStore has been deprecated and is no longer supported" << dendl;
return nullptr;
}
+ #ifdef WITH_KSTORE
if (type == "kstore" &&
cct->check_experimental_feature_enabled("kstore")) {
return std::make_unique<KStore>(cct, data);
}
+ #endif
return create(cct, type, data);
}
-#endif
+
int ObjectStore::probe_block_device_fsid(
CephContext *cct,