Revert "base: make boot_clock work on host linux, hide it on non-linux."

This reverts commit ae29339ca138648eeaee68f801feb02d85ee2abf, which broke the darwin build.

Change-Id: Ib33e2dab197532f04944cb12151002e9219b1bb5
diff --git a/base/Android.bp b/base/Android.bp
index 14bfe36..81b96db 100644
--- a/base/Android.bp
+++ b/base/Android.bp
@@ -42,7 +42,6 @@
     clang: true,
     host_supported: true,
     srcs: [
-        "chrono_utils.cpp",
         "file.cpp",
         "logging.cpp",
         "parsenetaddress.cpp",
@@ -65,6 +64,7 @@
             srcs: [
                 "errors_unix.cpp",
                 "properties.cpp",
+                "chrono_utils.cpp",
             ],
             cppflags: ["-Wexit-time-destructors"],
             sanitize: {
@@ -74,12 +74,14 @@
         },
         darwin: {
             srcs: [
+                "chrono_utils.cpp",
                 "errors_unix.cpp",
             ],
             cppflags: ["-Wexit-time-destructors"],
         },
         linux_bionic: {
             srcs: [
+                "chrono_utils.cpp",
                 "errors_unix.cpp",
             ],
             cppflags: ["-Wexit-time-destructors"],
@@ -87,6 +89,7 @@
         },
         linux: {
             srcs: [
+                "chrono_utils.cpp",
                 "errors_unix.cpp",
             ],
             cppflags: ["-Wexit-time-destructors"],
diff --git a/base/chrono_utils.cpp b/base/chrono_utils.cpp
index d73b551..5eedf3b 100644
--- a/base/chrono_utils.cpp
+++ b/base/chrono_utils.cpp
@@ -21,14 +21,17 @@
 namespace android {
 namespace base {
 
-#if defined(__linux__)
 boot_clock::time_point boot_clock::now() {
+#ifdef __ANDROID__
   timespec ts;
   clock_gettime(CLOCK_BOOTTIME, &ts);
   return boot_clock::time_point(std::chrono::seconds(ts.tv_sec) +
                                 std::chrono::nanoseconds(ts.tv_nsec));
+#else
+  // Darwin does not support clock_gettime.
+  return boot_clock::time_point();
+#endif  // __ANDROID__
 }
-#endif
 
 }  // namespace base
 }  // namespace android
diff --git a/base/chrono_utils_test.cpp b/base/chrono_utils_test.cpp
index 1f1ce15..057132d 100644
--- a/base/chrono_utils_test.cpp
+++ b/base/chrono_utils_test.cpp
@@ -16,7 +16,6 @@
 
 #include "android-base/chrono_utils.h"
 
-#include <err.h>
 #include <time.h>
 
 #include <chrono>
@@ -26,12 +25,9 @@
 namespace android {
 namespace base {
 
-#if defined(__linux__)
 std::chrono::seconds GetBootTimeSeconds() {
   struct timespec now;
-  if (clock_gettime(CLOCK_BOOTTIME, &now) != 0) {
-    err(1, "clock_gettime failed");
-  }
+  clock_gettime(CLOCK_BOOTTIME, &now);
 
   auto now_tp = boot_clock::time_point(std::chrono::seconds(now.tv_sec) +
                                        std::chrono::nanoseconds(now.tv_nsec));
@@ -45,7 +41,6 @@
       std::chrono::duration_cast<std::chrono::seconds>(boot_clock::now().time_since_epoch());
   EXPECT_EQ(now, boot_seconds);
 }
-#endif  // defined(__linux__)
 
 }  // namespace base
-}  // namespace android
+}  // namespace android
\ No newline at end of file
diff --git a/base/include/android-base/chrono_utils.h b/base/include/android-base/chrono_utils.h
index 795225b..0086425 100644
--- a/base/include/android-base/chrono_utils.h
+++ b/base/include/android-base/chrono_utils.h
@@ -22,7 +22,6 @@
 namespace android {
 namespace base {
 
-#if defined(__linux__)
 // A std::chrono clock based on CLOCK_BOOTTIME.
 class boot_clock {
  public:
@@ -31,7 +30,6 @@
 
   static time_point now();
 };
-#endif  // defined(__linux__)
 
 }  // namespace base
 }  // namespace android