base: don't use struct stat64
This struct was introduced to match the stat64() syscall, which was
necessary on 32-bit Linux systems because some members of struct
stat were not large enough - in particular, st_size. These days, the
"correct" way to work around this problem is instead to define
_FILE_OFFSET_BITS to 64 and use stat() and struct stat as normal, and
stat64 and friends (which are not standard) are missing from some
libcs.
This change has Chromium use _FILE_OFFSET_BITS=64 when needed, and
asserts statically that we really do get a 64-bit st_size field. This
relies on the Android NDK being >= version 15 (we require 24).
Cherry-picked from https://chromium-review.googlesource.com/c/chromium/src/+/4134763
Test: m USE_HOST_MUSL=true out/soong/.intermediates/external/cronet/cronet_aml_base_base__testing/linux_musl_x86_64_static/cronet_aml_base_base__testing.a
Change-Id: Ic933d8840db6eb6e9a6487c16168b477959a736e
2 files changed