diff --git a/disaster_recovery/Android.bp b/disaster_recovery/Android.bp
index 8522fa7..06d8a40 100644
--- a/disaster_recovery/Android.bp
+++ b/disaster_recovery/Android.bp
@@ -3,6 +3,7 @@
 // ========================================================
 cc_binary {
     name: "flags_health_check",
+    host_supported: true,
     srcs: ["disaster_recovery.cc"],
     shared_libs: [
         "libbase",
diff --git a/libflags/Android.bp b/libflags/Android.bp
index cf06f77..70ebcb3 100644
--- a/libflags/Android.bp
+++ b/libflags/Android.bp
@@ -1,6 +1,7 @@
 cc_library {
     name: "server_configurable_flags",
     srcs: ["server_configurable_flags.cc"],
+    host_supported: true,
     shared_libs: [
         "libbase",
         "libcutils",
diff --git a/libflags/server_configurable_flags.cc b/libflags/server_configurable_flags.cc
index 7540f18..c422621 100644
--- a/libflags/server_configurable_flags.cc
+++ b/libflags/server_configurable_flags.cc
@@ -17,7 +17,9 @@
 #include "server_configurable_flags/disaster_recovery.h"
 #include "server_configurable_flags/get_flags.h"
 
+#if defined(__BIONIC__)
 #include <cutils/properties.h>
+#endif  // __BIONIC__
 #include <regex>
 #include <string>
 
@@ -51,6 +53,7 @@
          segment.find(".") != segment.size() - 1;
 }
 
+#if defined(__BIONIC__)
 static void ResetFlag(const char* key, const char* value, void* cookie) {
   if (strcmp(ATTEMPTED_BOOT_COUNT_PROPERTY, key) &&
       android::base::StartsWith(key, SYSTEM_PROPERTY_PREFIX) && strlen(value) > 0) {
@@ -63,8 +66,10 @@
     android::base::SetProperty(RESET_PERFORMED_PROPERTY, "true");
   }
 }
+#endif  // __BIONIC__
 
 void ServerConfigurableFlagsReset() {
+#if defined(__BIONIC__)
   int fail_count = android::base::GetIntProperty(ATTEMPTED_BOOT_COUNT_PROPERTY, 0);
   if (fail_count < ATTEMPTED_BOOT_COUNT_THRESHOLD) {
     LOG(INFO) << __FUNCTION__ << " attempted boot count is under threshold, skipping reset.";
@@ -76,6 +81,7 @@
     LOG(INFO) << __FUNCTION__ << " attempted boot count reaches threshold, resetting flags.";
     std::string reset_flags;
     property_list(ResetFlag, &reset_flags);
+
     if (reset_flags.length() > 0) {
       android::base::unique_fd fd(
           TEMP_FAILURE_RETRY(open(RESET_FLAGS_FILE_PATH, O_RDWR | O_CREAT | O_TRUNC, 0666)));
@@ -88,6 +94,9 @@
       }
     }
   }
+#else
+  LOG(ERROR) << __FUNCTION__ << " ServerConfigurableFlagsReset is not available for this build.";
+#endif  // __BIONIC__
 }
 
 std::string GetServerConfigurableFlags(const std::string& experiment_category_name,
diff --git a/libflags/server_configurable_flags_test.cc b/libflags/server_configurable_flags_test.cc
index 23c06f7..c3509cd 100644
--- a/libflags/server_configurable_flags_test.cc
+++ b/libflags/server_configurable_flags_test.cc
@@ -81,6 +81,7 @@
 }
 
 TEST(server_configurable_flags, flags_reset_performed_over_threshold) {
+#if defined(__BIONIC__)
   android::base::SetProperty("persist.device_config.attempted_boot_count", "5");
   android::base::SetProperty("persist.device_config.category1.prop1", "val1");
   android::base::SetProperty("persist.device_config.category1.prop2", "val2");
@@ -106,4 +107,7 @@
   ASSERT_EQ(true, contains(properties, prop1));
   ASSERT_EQ(true, contains(properties, prop2));
   ASSERT_EQ(true, contains(properties, prop3));
-}
\ No newline at end of file
+#else   // __BIONIC__
+  GTEST_LOG_(INFO) << "This test does nothing.\n";
+#endif  // __BIONIC__
+}
