Enable building without sync

This is needed because the linux node binding needs to work without sync
This commit is contained in:
Radu Tutueanu 2016-11-09 16:47:17 +01:00
parent d5cd3d7266
commit ba48933561
3 changed files with 35 additions and 27 deletions

View File

@ -32,7 +32,7 @@
},
{
"target_name": "object-store",
"dependencies": [ "realm-core", "realm-sync" ],
"dependencies": [ "realm-core" ],
"type": "static_library",
"include_dirs": [
"src/object-store/src",
@ -63,12 +63,6 @@
"src/object-store/src/parser/query_builder.cpp",
"src/object-store/src/util/format.cpp",
"src/object-store/src/util/thread_id.cpp",
"src/object-store/src/sync/sync_manager.cpp",
"src/object-store/src/sync/sync_user.cpp",
"src/object-store/src/sync/sync_session.cpp",
"src/object-store/src/sync/impl/sync_file.cpp",
"src/object-store/src/sync/impl/sync_metadata.cpp",
"src/object-store/src/impl/apple/keychain_helper.cpp"
],
"conditions": [
["OS=='linux'", {
@ -80,6 +74,17 @@
"sources": [
"src/object-store/src/impl/apple/external_commit_helper.cpp"
]
}],
["realm_enable_sync", {
"dependencies": [ "realm-sync" ],
"sources": [
"src/object-store/src/sync/sync_manager.cpp",
"src/object-store/src/sync/sync_user.cpp",
"src/object-store/src/sync/sync_session.cpp",
"src/object-store/src/sync/impl/sync_file.cpp",
"src/object-store/src/sync/impl/sync_metadata.cpp",
"src/object-store/src/impl/apple/keychain_helper.cpp"
],
}]
],
"all_dependent_settings": {

View File

@ -453,12 +453,15 @@ void RealmClass<T>::schema_version(ContextType ctx, ObjectType this_object, size
}
}
template<typename T>
void RealmClass<T>::clear_test_state(ContextType ctx, ObjectType this_object, size_t argc, const ValueType arguments[], ReturnValue &return_value) {
validate_argument_count(argc, 0);
#if REALM_ENABLE_SYNC
for(auto &user : SyncManager::shared().all_users()) {
user->log_out();
}
#endif
delete_all_realms();
}

View File

@ -18,7 +18,7 @@
]
},
"all_dependent_settings": {
"defines": [ "REALM_HAVE_CONFIG", "REALM_PLATFORM_NODE=1", "REALM_ENABLE_SYNC=1" ]
"defines": [ "REALM_HAVE_CONFIG", "REALM_PLATFORM_NODE=1", "REALM_ENABLE_SYNC=<(realm_enable_sync)" ]
},
"variables": {
"prefix": "<!(echo $REALM_CORE_PREFIX)"