--- base/trace_event/malloc_dump_provider.cc.orig +++ base/trace_event/malloc_dump_provider.cc @@ -174,7 +174,8 @@ #if (BUILDFLAG(USE_PARTITION_ALLOC_AS_MALLOC) && BUILDFLAG(IS_ANDROID)) || \ (!BUILDFLAG(USE_PARTITION_ALLOC_AS_MALLOC) && !BUILDFLAG(IS_WIN) && \ - !BUILDFLAG(IS_APPLE) && !BUILDFLAG(IS_WIN) && !BUILDFLAG(IS_FUCHSIA)) + !BUILDFLAG(IS_APPLE) && !BUILDFLAG(IS_WIN) && !BUILDFLAG(IS_FUCHSIA) && \ + !(BUILDFLAG(IS_LINUX) && !defined(__GLIBC__))) void ReportMallinfoStats(ProcessMemoryDump* pmd, size_t* total_virtual_size, size_t* resident_size, --- base/trace_event/malloc_dump_provider.cc +++ base/trace_event/malloc_dump_provider.cc @@ -339,7 +339,7 @@ &allocated_objects_count); #elif BUILDFLAG(IS_FUCHSIA) // TODO(fuchsia): Port, see https://crbug.com/706592. -#else +#elif defined(__GLIBC__) ReportMallinfoStats(/*pmd=*/nullptr, &total_virtual_size, &resident_size, &allocated_objects_size, &allocated_objects_count); #endif --- base/process/process_metrics_posix.cc.orig +++ base/process/process_metrics_posix.cc @@ -105,7 +105,7 @@ #endif // !BUILDFLAG(IS_FUCHSIA) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) +#if (BUILDFLAG(IS_LINUX) && defined(__GLIBC__)) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) namespace { size_t GetMallocUsageMallinfo() { @@ -123,7 +123,7 @@ } } // namespace -#endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || +#endif // (BUILDFLAG(IS_LINUX) && defined(__GLIBC__)) || BUILDFLAG(IS_CHROMEOS) || // BUILDFLAG(IS_ANDROID) size_t ProcessMetrics::GetMallocUsage() { @@ -131,9 +131,9 @@ malloc_statistics_t stats = {0}; malloc_zone_statistics(nullptr, &stats); return stats.size_in_use; -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) +#elif (BUILDFLAG(IS_LINUX) && defined(__GLIBC__)) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) return GetMallocUsageMallinfo(); -#elif BUILDFLAG(IS_FUCHSIA) +#elif BUILDFLAG(IS_FUCHSIA) || (BUILDFLAG(IS_LINUX) && !defined(__GLIBC__)) // TODO(fuchsia): Not currently exposed. https://crbug.com/735087. return 0; #endif --- third_party/tflite/src/tensorflow/lite/profiling/memory_info.cc.orig +++ third_party/tflite/src/tensorflow/lite/profiling/memory_info.cc @@ -35,7 +35,7 @@ MemoryUsage GetMemoryUsage() { MemoryUsage result; -#ifdef __linux__ +#if defined(__linux__) && defined(__GLIBC__) rusage res; if (getrusage(RUSAGE_SELF, &res) == 0) { result.max_rss_kb = res.ru_maxrss; --- third_party/swiftshader/third_party/llvm-subzero/lib/Support/Unix/Process.inc +++ third_party/swiftshader/third_party/llvm-subzero/lib/Support/Unix/Process.inc.orig @@ -86,11 +86,11 @@ } size_t Process::GetMallocUsage() { -#if defined(HAVE_MALLINFO2) +#if defined(HAVE_MALLINFO2) && defined(__GLIBC__) struct mallinfo2 mi; mi = ::mallinfo2(); return mi.uordblks; -#elif defined(HAVE_MALLINFO) +#elif defined(HAVE_MALLINFO) && defined(__GLIBC__) struct mallinfo mi; mi = ::mallinfo(); return mi.uordblks; --- third_party/swiftshader/third_party/llvm-10.0/configs/linux/include/llvm/Config/config.h.orig 2019-09-30 13:03:42.556880537 -0400 +++ third_party/swiftshader/third_party/llvm-10.0/configs/linux/include/llvm/Config/config.h 2019-09-30 13:07:27.989821227 -0400 @@ -122,7 +122,9 @@ /* #undef HAVE_MALLCTL */ /* Define to 1 if you have the `mallinfo' function. */ +#if defined(__GLIBC__) #define HAVE_MALLINFO 1 +#endif /* Define to 1 if you have the header file. */ #define HAVE_MALLOC_H 1