From 976244d00f38ff7b0e28d404be6acec1938b9542 Mon Sep 17 00:00:00 2001 From: Jelle Foks Date: Thu, 11 Jan 2024 16:30:05 -0800 Subject: [PATCH] Starboardize absl raw logging --- third_party/abseil-cpp/absl/base/BUILD.gn | 1 + .../abseil-cpp/absl/base/internal/raw_logging.cc | 12 +++++++++--- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/third_party/abseil-cpp/absl/base/BUILD.gn b/third_party/abseil-cpp/absl/base/BUILD.gn index e95dc8f207f4..fb7b496c1ad4 100644 --- a/third_party/abseil-cpp/absl/base/BUILD.gn +++ b/third_party/abseil-cpp/absl/base/BUILD.gn @@ -31,6 +31,7 @@ absl_source_set("log_severity") { absl_source_set("raw_logging_internal") { sources = [ "internal/raw_logging.cc" ] public = [ "internal/raw_logging.h" ] + deps = [ "//starboard:starboard_headers_only" ] public_deps = [ ":atomic_hook", ":config", diff --git a/third_party/abseil-cpp/absl/base/internal/raw_logging.cc b/third_party/abseil-cpp/absl/base/internal/raw_logging.cc index 5bbf8a036144..90e797f9d64c 100644 --- a/third_party/abseil-cpp/absl/base/internal/raw_logging.cc +++ b/third_party/abseil-cpp/absl/base/internal/raw_logging.cc @@ -27,6 +27,9 @@ #include "absl/base/internal/errno_saver.h" #include "absl/base/log_severity.h" +#if defined(STARBOARD) +#include "starboard/log.h" +#endif // We know how to perform low-level writes to stderr in POSIX and Windows. For // these platforms, we define the token ABSL_LOW_LEVEL_WRITE_SUPPORTED. // Much of raw_logging.cc becomes a no-op when we can't output messages, @@ -37,9 +40,10 @@ // // This preprocessor token is also defined in raw_io.cc. If you need to copy // this, consider moving both to config.h instead. -#if defined(__linux__) || defined(__APPLE__) || defined(__FreeBSD__) || \ - defined(__Fuchsia__) || defined(__native_client__) || \ - defined(__OpenBSD__) || defined(__EMSCRIPTEN__) || defined(__ASYLO__) +#if (defined(__linux__) || defined(__APPLE__) || defined(__FreeBSD__) || \ + defined(__Fuchsia__) || defined(__native_client__) || \ + defined(__OpenBSD__) || defined(__EMSCRIPTEN__) || defined(__ASYLO__)) && \ + !defined(STARBOARD) #include @@ -211,6 +215,8 @@ void AsyncSignalSafeWriteToStderr(const char* s, size_t len) { write(STDERR_FILENO, s, len); #elif defined(ABSL_HAVE_RAW_IO) _write(/* stderr */ 2, s, static_cast(len)); +#elif defined(STARBOARD) + SbLog(kSbLogPriorityError, s); #else // stderr logging unsupported on this platform (void) s;