Merge changes I56b23576,I37ede846,Iec9ba776

* changes:
  Replace local MUSL define with global ANDROID_HOST_MUSL
  Fix some clang-format issues
  Fix bionic-unit-tests-glibc for 32-bit musl
diff --git a/tests/Android.bp b/tests/Android.bp
index 1df9264..3637404 100644
--- a/tests/Android.bp
+++ b/tests/Android.bp
@@ -43,9 +43,6 @@
         linux_bionic: {
             header_libs: ["bionic_libc_platform_headers"],
         },
-        musl: {
-            cflags: ["-DMUSL"],
-        },
     },
     cflags: [
         "-fstack-protector-all",
diff --git a/tests/arpa_inet_test.cpp b/tests/arpa_inet_test.cpp
index 3ee0419..7150854 100644
--- a/tests/arpa_inet_test.cpp
+++ b/tests/arpa_inet_test.cpp
@@ -14,6 +14,8 @@
  * limitations under the License.
  */
 
+#include <sys/cdefs.h>
+
 #include <gtest/gtest.h>
 
 #include <arpa/inet.h>
@@ -160,7 +162,7 @@
 }
 
 TEST(arpa_inet, inet_nsap_addr) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   // inet_nsap_addr() doesn't seem to be documented anywhere, but it's basically
   // text to binary for arbitrarily-long strings like "0xdeadbeef". Any
   // '.', '+', or '/' characters are ignored as punctuation. The return value is
@@ -240,7 +242,7 @@
 }
 
 TEST(arpa_inet, inet_nsap_ntoa) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   // inet_nsap_ntoa() doesn't seem to be documented anywhere, but it's basically
   // binary to text for arbitrarily-long byte buffers.
   // The return value is a pointer to the buffer. No errors are possible.
@@ -254,7 +256,7 @@
 }
 
 TEST(arpa_inet, inet_nsap_ntoa__nullptr) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   // If you don't provide a destination, a static buffer is provided for you.
   const unsigned char bytes[] = {0x01, 0x00, 0x02, 0x0e, 0xf0, 0x20};
   ASSERT_STREQ("0x01.0002.0EF0.20", inet_nsap_ntoa(6, bytes, nullptr));
diff --git a/tests/dirent_test.cpp b/tests/dirent_test.cpp
index 1155a4e..3ea9cbd 100644
--- a/tests/dirent_test.cpp
+++ b/tests/dirent_test.cpp
@@ -20,6 +20,7 @@
 #include <errno.h>
 #include <fcntl.h>
 #include <limits.h>
+#include <sys/cdefs.h>
 #include <sys/stat.h>
 #include <sys/types.h>
 #include <unistd.h>
@@ -82,7 +83,7 @@
 }
 
 TEST(dirent, scandirat_scandirat64) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   // Get everything from /proc/self...
   dirent** entries;
   int entry_count = scandir("/proc/self", &entries, nullptr, alphasort);
@@ -144,7 +145,7 @@
 }
 
 TEST(dirent, scandirat_ENOENT) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   int root_fd = open("/", O_DIRECTORY | O_RDONLY);
   ASSERT_NE(-1, root_fd);
   dirent** entries;
@@ -158,7 +159,7 @@
 }
 
 TEST(dirent, scandirat64_ENOENT) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   int root_fd = open("/", O_DIRECTORY | O_RDONLY);
   ASSERT_NE(-1, root_fd);
   dirent64** entries;
diff --git a/tests/dlfcn_test.cpp b/tests/dlfcn_test.cpp
index 6bbe41b..a9c2b87 100644
--- a/tests/dlfcn_test.cpp
+++ b/tests/dlfcn_test.cpp
@@ -18,9 +18,10 @@
 
 #include <dlfcn.h>
 #include <limits.h>
-#include <stdio.h>
 #include <stdint.h>
+#include <stdio.h>
 #include <string.h>
+#include <sys/cdefs.h>
 #if __has_include(<sys/auxv.h>)
 #include <sys/auxv.h>
 #endif
@@ -1259,7 +1260,7 @@
 }
 
 TEST(dlfcn, dlvsym_smoke) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   void* handle = dlopen("libtest_versioned_lib.so", RTLD_NOW);
   ASSERT_TRUE(handle != nullptr) << dlerror();
   typedef int (*fn_t)();
diff --git a/tests/fenv_test.cpp b/tests/fenv_test.cpp
index ea3f539..c5b5eca 100644
--- a/tests/fenv_test.cpp
+++ b/tests/fenv_test.cpp
@@ -20,6 +20,7 @@
 
 #include <fenv.h>
 #include <stdint.h>
+#include <sys/cdefs.h>
 
 static void TestRounding(float expectation1, float expectation2) {
   // Volatile to prevent compile-time evaluation.
@@ -170,7 +171,7 @@
 }
 
 TEST(fenv, fedisableexcept_fegetexcept) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   feclearexcept(FE_ALL_EXCEPT);
   ASSERT_EQ(0, fetestexcept(FE_ALL_EXCEPT));
 
@@ -185,7 +186,7 @@
 }
 
 TEST(fenv, feenableexcept_fegetexcept) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
 #if defined(__aarch64__) || defined(__arm__)
   // ARM doesn't support this. They used to if you go back far enough, but it was removed in
   // the Cortex-A8 between r3p1 and r3p2.
diff --git a/tests/glob_test.cpp b/tests/glob_test.cpp
index 8bf35bf..6ce5f2f 100644
--- a/tests/glob_test.cpp
+++ b/tests/glob_test.cpp
@@ -17,6 +17,8 @@
 #include <glob.h>
 
 #include <dirent.h>
+#include <sys/cdefs.h>
+
 #include <gtest/gtest.h>
 
 #include <string>
@@ -34,7 +36,7 @@
 // Helper for use with GLOB_ALTDIRFUNC to iterate over the elements of `fake_dir`.
 //
 
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
 static std::vector<std::string> fake_dir;
 static size_t fake_dir_offset;
 static void fake_closedir(void*) {
@@ -104,7 +106,7 @@
   globfree(&g);
 }
 
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
 static std::string g_failure_path;
 static int g_failure_errno;
 static int test_error_callback_result;
@@ -116,7 +118,7 @@
 #endif
 
 TEST(glob, glob_gl_errfunc) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   glob_t g = {};
   InstallFake(&g);
 
@@ -137,7 +139,7 @@
 }
 
 TEST(glob, glob_GLOB_ERR) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   glob_t g = {};
   InstallFake(&g);
 
@@ -184,7 +186,7 @@
 }
 
 TEST(glob, glob_GLOB_NOSORT) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   fake_dir = { "c", "a", "d", "b" };
 
   glob_t g = {};
@@ -213,7 +215,7 @@
 }
 
 TEST(glob, glob_GLOB_MAGCHAR) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   glob_t g = {};
   ASSERT_EQ(GLOB_NOMATCH, glob("/does-not-exist", 0, nullptr, &g));
   ASSERT_TRUE((g.gl_flags & GLOB_MAGCHAR) == 0);
@@ -228,7 +230,7 @@
 #endif
 }
 
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
 static void CheckGlob(const char* pattern, const std::vector<std::string>& expected_matches) {
   glob_t g = {};
   InstallFake(&g);
@@ -248,7 +250,7 @@
 #endif
 
 TEST(glob, glob_globbing) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   fake_dir = { "f1", "f2", "f30", "f40" };
 
   CheckGlob("f?", { "f1", "f2" });
@@ -260,7 +262,7 @@
 }
 
 TEST(glob, glob_globbing_rsc) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   // https://research.swtch.com/glob
   fake_dir = { "axbxcxdxe" };
   CheckGlob("a*b*c*d*e*", { "axbxcxdxe" });
diff --git a/tests/libgen_basename_test.cpp b/tests/libgen_basename_test.cpp
index 1202af6..300282c 100644
--- a/tests/libgen_basename_test.cpp
+++ b/tests/libgen_basename_test.cpp
@@ -14,11 +14,13 @@
  * limitations under the License.
  */
 
+#include <sys/cdefs.h>
+
 #ifndef _GNU_SOURCE
   #define _GNU_SOURCE 1
 #endif
 
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
 #include <string.h>
 
 #if defined(basename)
@@ -33,8 +35,8 @@
 
 #include <libgen.h>
 
-#if !defined(basename) && !defined(MUSL)
-  #error basename should be defined at this point
+#if !defined(basename) && !defined(ANDROID_HOST_MUSL)
+#error basename should be defined at this point
 #endif
 
 static char* posix_basename(char* in) {
@@ -44,7 +46,7 @@
 #include <errno.h>
 #include <gtest/gtest.h>
 
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
 static void __TestGnuBasename(const char* in, const char* expected_out, int line) {
   errno = 0;
   const char* out = gnu_basename(in);
@@ -66,7 +68,7 @@
 #define TestPosixBasename(in, expected) __TestPosixBasename(in, expected, __LINE__)
 
 TEST(libgen_basename, gnu_basename) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   // GNU's basename doesn't accept NULL
   // TestGnuBasename(NULL, ".");
   TestGnuBasename("", "");
diff --git a/tests/malloc_test.cpp b/tests/malloc_test.cpp
index f15fc75..eae44ce 100644
--- a/tests/malloc_test.cpp
+++ b/tests/malloc_test.cpp
@@ -27,6 +27,7 @@
 #include <stdlib.h>
 #include <string.h>
 #include <sys/auxv.h>
+#include <sys/cdefs.h>
 #include <sys/prctl.h>
 #include <sys/types.h>
 #include <sys/wait.h>
@@ -59,7 +60,7 @@
 
 #define HAVE_REALLOCARRAY __GLIBC_PREREQ(2, 26)
 
-#elif defined(MUSL)
+#elif defined(ANDROID_HOST_MUSL)
 
 #define HAVE_REALLOCARRAY 1
 
@@ -659,7 +660,7 @@
 }
 
 TEST(malloc, mallopt_smoke) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   errno = 0;
   ASSERT_EQ(0, mallopt(-1000, 1));
   // mallopt doesn't set errno.
diff --git a/tests/math_test.cpp b/tests/math_test.cpp
index c53741c..76b5078 100644
--- a/tests/math_test.cpp
+++ b/tests/math_test.cpp
@@ -62,6 +62,7 @@
 #include <float.h>
 #include <limits.h>
 #include <stdint.h>
+#include <sys/cdefs.h>
 
 #include <android-base/scopeguard.h>
 
@@ -201,7 +202,7 @@
 }
 
 TEST(MATH_TEST, __fpclassifyd) {
-#if defined(__GLIBC__) || defined(MUSL)
+#if defined(__GLIBC__) || defined(ANDROID_HOST_MUSL)
 #define __fpclassifyd __fpclassify
 #endif
   ASSERT_EQ(FP_INFINITE, __fpclassifyd(HUGE_VAL));
@@ -246,7 +247,7 @@
 TEST(MATH_TEST, __isfinite) {
 #if defined(__GLIBC__)
 #define __isfinite __finite
-#elif defined(MUSL)
+#elif defined(ANDROID_HOST_MUSL)
 #define __isfinite isfinite
 #endif
   ASSERT_TRUE(__isfinite(123.0));
@@ -257,7 +258,7 @@
 TEST(MATH_TEST, __isfinitef) {
 #if defined(__GLIBC__)
 #define __isfinitef __finitef
-#elif defined(MUSL)
+#elif defined(ANDROID_HOST_MUSL)
 #define __isfinitef isfinite
 #endif
   ASSERT_TRUE(__isfinitef(123.0f));
@@ -268,7 +269,7 @@
 TEST(MATH_TEST, isfinitef) {
 #if defined(__GLIBC__)
 #define isfinitef __finitef
-#elif defined(MUSL)
+#elif defined(ANDROID_HOST_MUSL)
 #define isfinitef isfinite
 #endif
   ASSERT_TRUE(isfinitef(123.0f));
@@ -279,7 +280,7 @@
 TEST(MATH_TEST, __isfinitel) {
 #if defined(__GLIBC__)
 #define __isfinitel __finitel
-#elif defined(MUSL)
+#elif defined(ANDROID_HOST_MUSL)
 #define __isfinitel isfinite
 #endif
   ASSERT_TRUE(__isfinitel(123.0L));
@@ -290,7 +291,7 @@
 TEST(MATH_TEST, isfinitel) {
 #if defined(__GLIBC__)
 #define isfinitel __finitel
-#elif defined(MUSL)
+#elif defined(ANDROID_HOST_MUSL)
 #define isfinitel isfinite
 #endif
   ASSERT_TRUE(isfinitel(123.0L));
@@ -319,7 +320,7 @@
 extern "C" int isinfl(long double);
 
 TEST(MATH_TEST, __isinf) {
-#if defined(MUSL)
+#if defined(ANDROID_HOST_MUSL)
 #define __isinf isinf
 #endif
   ASSERT_FALSE(__isinf(123.0));
@@ -328,7 +329,7 @@
 }
 
 TEST(MATH_TEST, __isinff) {
-#if defined(MUSL)
+#if defined(ANDROID_HOST_MUSL)
 #define __isinff isinf
 #endif
   ASSERT_FALSE(__isinff(123.0f));
@@ -337,7 +338,7 @@
 }
 
 TEST(MATH_TEST, isinff) {
-#if defined(MUSL)
+#if defined(ANDROID_HOST_MUSL)
 #define isinff isinf
 #endif
   ASSERT_FALSE(isinff(123.0f));
@@ -346,7 +347,7 @@
 }
 
 TEST(MATH_TEST, __isinfl) {
-#if defined(MUSL)
+#if defined(ANDROID_HOST_MUSL)
 #define __isinfl isinf
 #endif
   ASSERT_FALSE(__isinfl(123.0L));
@@ -355,7 +356,7 @@
 }
 
 TEST(MATH_TEST, isinfl) {
-#if defined(MUSL)
+#if defined(ANDROID_HOST_MUSL)
 #define isinfl isinf
 #endif
   ASSERT_FALSE(isinfl(123.0L));
@@ -377,7 +378,7 @@
 extern "C" int isnanl(long double);
 
 TEST(MATH_TEST, __isnan) {
-#if defined(MUSL)
+#if defined(ANDROID_HOST_MUSL)
 #define __isnan isnan
 #endif
   ASSERT_FALSE(__isnan(123.0));
@@ -385,7 +386,7 @@
 }
 
 TEST(MATH_TEST, __isnanf) {
-#if defined(MUSL)
+#if defined(ANDROID_HOST_MUSL)
 #define __isnanf isnan
 #endif
   ASSERT_FALSE(__isnanf(123.0f));
@@ -393,7 +394,7 @@
 }
 
 TEST(MATH_TEST, isnanf) {
-#if defined(MUSL)
+#if defined(ANDROID_HOST_MUSL)
 #define isnanf isnan
 #endif
   ASSERT_FALSE(isnanf(123.0f));
@@ -401,7 +402,7 @@
 }
 
 TEST(MATH_TEST, __isnanl) {
-#if defined(MUSL)
+#if defined(ANDROID_HOST_MUSL)
 #define __isnanl isnan
 #endif
   ASSERT_FALSE(__isnanl(123.0L));
@@ -409,7 +410,7 @@
 }
 
 TEST(MATH_TEST, isnanl) {
-#if defined(MUSL)
+#if defined(ANDROID_HOST_MUSL)
 #define isnanl isnan
 #endif
   ASSERT_FALSE(isnanl(123.0L));
@@ -1385,7 +1386,7 @@
 }
 
 TEST(MATH_TEST, significandl) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   ASSERT_DOUBLE_EQ(0.0L, significandl(0.0L));
   ASSERT_DOUBLE_EQ(1.2L, significandl(1.2L));
   ASSERT_DOUBLE_EQ(1.53125L, significandl(12.25L));
@@ -1428,7 +1429,7 @@
 }
 
 TEST(MATH_TEST, gamma) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   ASSERT_DOUBLE_EQ(log(24.0), gamma(5.0));
 #else
   GTEST_SKIP() << "musl doesn't have gamma";
@@ -1436,7 +1437,7 @@
 }
 
 TEST(MATH_TEST, gammaf) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   ASSERT_FLOAT_EQ(logf(24.0f), gammaf(5.0f));
 #else
   GTEST_SKIP() << "musl doesn't have gammaf";
diff --git a/tests/netdb_test.cpp b/tests/netdb_test.cpp
index 0205707..1cb569c 100644
--- a/tests/netdb_test.cpp
+++ b/tests/netdb_test.cpp
@@ -19,10 +19,11 @@
 #include <gtest/gtest.h>
 
 #include <arpa/inet.h>
-#include <string.h>
-#include <sys/types.h>
-#include <sys/socket.h>
 #include <netinet/in.h>
+#include <string.h>
+#include <sys/cdefs.h>
+#include <sys/socket.h>
+#include <sys/types.h>
 
 // https://code.google.com/p/android/issues/detail?id=13228
 TEST(netdb, freeaddrinfo_NULL) {
@@ -265,7 +266,7 @@
   ASSERT_EQ(0, hp->h_addr[0]);
 }
 
-#if defined(MUSL)
+#if defined(ANDROID_HOST_MUSL)
 // musl doesn't define NETDB_INTERNAL.  It also never sets *err to -1, but
 // since gethostbyname_r is a glibc extension, the difference in behavior
 // between musl and  glibc should probably be considered a bug in musl.
diff --git a/tests/netinet_in_test.cpp b/tests/netinet_in_test.cpp
index 8343f57..b7dd7c5 100644
--- a/tests/netinet_in_test.cpp
+++ b/tests/netinet_in_test.cpp
@@ -17,6 +17,7 @@
 #include <netinet/in.h>
 
 #include <errno.h>
+#include <sys/cdefs.h>
 
 #include <gtest/gtest.h>
 
@@ -31,7 +32,7 @@
 static constexpr uint64_t be64 = 0xf0debc9a78563412;
 
 TEST(netinet_in, bindresvport) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   // This isn't something we can usually test (because you need to be root),
   // so just check the symbol's there.
   ASSERT_EQ(-1, bindresvport(-1, nullptr));
diff --git a/tests/pthread_test.cpp b/tests/pthread_test.cpp
index 3686ffb..e4f9cb8 100644
--- a/tests/pthread_test.cpp
+++ b/tests/pthread_test.cpp
@@ -23,6 +23,7 @@
 #include <pthread.h>
 #include <signal.h>
 #include <stdio.h>
+#include <sys/cdefs.h>
 #include <sys/mman.h>
 #include <sys/prctl.h>
 #include <sys/resource.h>
@@ -844,7 +845,7 @@
     ASSERT_EQ(pshared_value_array[i], pshared);
   }
 
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   // musl doesn't have pthread_rwlockattr_setkind_np
   int kind_array[] = {PTHREAD_RWLOCK_PREFER_READER_NP,
                       PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP};
@@ -1238,7 +1239,7 @@
 #endif  // __BIONIC__
 }
 
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
 // musl doesn't have pthread_rwlockattr_setkind_np
 class RwlockKindTestHelper {
  private:
@@ -1310,7 +1311,7 @@
 #endif
 
 TEST(pthread, pthread_rwlock_kind_PTHREAD_RWLOCK_PREFER_READER_NP) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   RwlockKindTestHelper helper(PTHREAD_RWLOCK_PREFER_READER_NP);
   ASSERT_EQ(0, pthread_rwlock_rdlock(&helper.lock));
 
@@ -1332,7 +1333,7 @@
 }
 
 TEST(pthread, pthread_rwlock_kind_PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   RwlockKindTestHelper helper(PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP);
   ASSERT_EQ(0, pthread_rwlock_rdlock(&helper.lock));
 
@@ -2166,7 +2167,7 @@
   ASSERT_EQ(0, memcmp(&lock_normal, &m1.lock, sizeof(pthread_mutex_t)));
   pthread_mutex_destroy(&lock_normal);
 
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   // musl doesn't support PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP or
   // PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP.
   pthread_mutex_t lock_errorcheck = PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP;
diff --git a/tests/resolv_test.cpp b/tests/resolv_test.cpp
index 7f1f03e..4425503 100644
--- a/tests/resolv_test.cpp
+++ b/tests/resolv_test.cpp
@@ -28,10 +28,12 @@
 
 #include <resolv.h>
 
+#include <sys/cdefs.h>
+
 #include <gtest/gtest.h>
 
 TEST(resolv, b64_pton_28035006) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   // Test data from https://groups.google.com/forum/#!topic/mailing.openbsd.tech/w3ACIlklJkI.
   const char* data =
       "p1v3+nehH3N3n+/OokzXpsyGF2VVpxIxkjSn3Mv/Sq74OE1iFuVU+K4bQImuVj"
@@ -48,7 +50,7 @@
 }
 
 TEST(resolv, b64_ntop) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   char buf[128];
   memset(buf, 'x', sizeof(buf));
   ASSERT_EQ(static_cast<int>(strlen("aGVsbG8=")),
@@ -61,7 +63,7 @@
 }
 
 TEST(resolv, b64_pton) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   u_char buf[128];
   memset(buf, 'x', sizeof(buf));
   ASSERT_EQ(static_cast<int>(strlen("hello")), b64_pton("aGVsbG8=", buf, sizeof(buf)));
@@ -72,7 +74,7 @@
 }
 
 TEST(resolv, p_class) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   ASSERT_STREQ("IN", p_class(ns_c_in));
   ASSERT_STREQ("BADCLASS", p_class(-1));
 #else
@@ -81,7 +83,7 @@
 }
 
 TEST(resolv, p_type) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   ASSERT_STREQ("AAAA", p_type(ns_t_aaaa));
   ASSERT_STREQ("BADTYPE", p_type(-1));
 #else
@@ -94,7 +96,7 @@
 }
 
 TEST(resolv, res_randomid) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   res_randomid();
 #else
   GTEST_SKIP() << "musl doesn't have res_randomid";
diff --git a/tests/signal_test.cpp b/tests/signal_test.cpp
index 08c21b4..5bda8b3 100644
--- a/tests/signal_test.cpp
+++ b/tests/signal_test.cpp
@@ -16,6 +16,7 @@
 
 #include <errno.h>
 #include <signal.h>
+#include <sys/cdefs.h>
 #include <sys/syscall.h>
 #include <sys/types.h>
 #include <unistd.h>
@@ -554,7 +555,7 @@
 }
 
 TEST(signal, sys_siglist) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   ASSERT_TRUE(sys_siglist[0] == nullptr);
   ASSERT_STREQ("Hangup", sys_siglist[SIGHUP]);
 #else
@@ -594,7 +595,7 @@
 }
 
 TEST(signal, pthread_sigqueue_self) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   ScopedSignalHandler ssh(SIGALRM, SigqueueSignalHandler, SA_SIGINFO);
   sigval sigval = {.sival_int = 1};
   errno = 0;
@@ -607,7 +608,7 @@
 }
 
 TEST(signal, pthread_sigqueue_other) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   ScopedSignalHandler ssh(SIGALRM, SigqueueSignalHandler, SA_SIGINFO);
   sigval sigval = {.sival_int = 1};
 
diff --git a/tests/spawn_test.cpp b/tests/spawn_test.cpp
index 3309466..f3c5b9a 100644
--- a/tests/spawn_test.cpp
+++ b/tests/spawn_test.cpp
@@ -18,6 +18,8 @@
 
 #include <errno.h>
 #include <fcntl.h>
+#include <sys/cdefs.h>
+
 #include <gtest/gtest.h>
 
 #include "SignalUtils.h"
@@ -379,7 +381,7 @@
 }
 
 TEST(spawn, posix_spawn_POSIX_SPAWN_SETSIGMASK) {
-#if defined(__GLIBC__) || defined(MUSL)
+#if defined(__GLIBC__) || defined(ANDROID_HOST_MUSL)
   GTEST_SKIP() << "glibc doesn't ignore the same signals.";
 #else
   // Block SIGBUS in the parent...
@@ -417,7 +419,7 @@
 }
 
 TEST(spawn, posix_spawn_POSIX_SPAWN_SETSIGDEF) {
-#if defined(__GLIBC__) || defined(MUSL)
+#if defined(__GLIBC__) || defined(ANDROID_HOST_MUSL)
   GTEST_SKIP() << "glibc doesn't ignore the same signals.";
 #else
   // Ignore SIGALRM and SIGCONT in the parent...
diff --git a/tests/stdio_test.cpp b/tests/stdio_test.cpp
index 9d840f5..e38dd60 100644
--- a/tests/stdio_test.cpp
+++ b/tests/stdio_test.cpp
@@ -19,14 +19,15 @@
 #include <errno.h>
 #include <fcntl.h>
 #include <limits.h>
+#include <locale.h>
 #include <math.h>
 #include <stdio.h>
-#include <sys/types.h>
+#include <sys/cdefs.h>
 #include <sys/socket.h>
 #include <sys/stat.h>
+#include <sys/types.h>
 #include <unistd.h>
 #include <wchar.h>
-#include <locale.h>
 
 #include <string>
 #include <thread>
@@ -2740,7 +2741,7 @@
 }
 
 TEST(STDIO_TEST, renameat2) {
-#if defined(__GLIBC__) || defined(MUSL)
+#if defined(__GLIBC__) || defined(ANDROID_HOST_MUSL)
   GTEST_SKIP() << "glibc doesn't have renameat2 until 2.28 and musl doesn't have renameat2";
 #else
   TemporaryDir td;
diff --git a/tests/stdlib_test.cpp b/tests/stdlib_test.cpp
index 5b81834..6679480 100644
--- a/tests/stdlib_test.cpp
+++ b/tests/stdlib_test.cpp
@@ -22,6 +22,7 @@
 #include <pthread.h>
 #include <stdint.h>
 #include <stdlib.h>
+#include <sys/cdefs.h>
 #include <sys/types.h>
 #include <sys/wait.h>
 #include <unistd.h>
@@ -632,7 +633,7 @@
   AssertChildExited(pid, 99);
 }
 
-#if defined(MUSL)
+#if defined(ANDROID_HOST_MUSL)
 // musl doesn't have getpt
 int getpt() {
   return posix_openpt(O_RDWR|O_NOCTTY);
@@ -968,7 +969,7 @@
 }
 
 TEST(stdlib, getprogname) {
-#if defined(__GLIBC__) || defined(MUSL)
+#if defined(__GLIBC__) || defined(ANDROID_HOST_MUSL)
   GTEST_SKIP() << "glibc and musl don't have getprogname()";
 #else
   // You should always have a name.
@@ -979,7 +980,7 @@
 }
 
 TEST(stdlib, setprogname) {
-#if defined(__GLIBC__) || defined(MUSL)
+#if defined(__GLIBC__) || defined(ANDROID_HOST_MUSL)
   GTEST_SKIP() << "glibc and musl don't have setprogname()";
 #else
   // setprogname() only takes the basename of what you give it.
diff --git a/tests/string_posix_strerror_r_test.cpp b/tests/string_posix_strerror_r_test.cpp
index f3d73d4..e4becaa 100644
--- a/tests/string_posix_strerror_r_test.cpp
+++ b/tests/string_posix_strerror_r_test.cpp
@@ -27,7 +27,7 @@
 
   // Valid.
   ASSERT_EQ(0, posix_strerror_r(0, buf, sizeof(buf)));
-#if defined(MUSL)
+#if defined(ANDROID_HOST_MUSL)
   ASSERT_STREQ("No error information", buf);
 #else
   ASSERT_STREQ("Success", buf);
@@ -35,7 +35,7 @@
   ASSERT_EQ(0, posix_strerror_r(1, buf, sizeof(buf)));
   ASSERT_STREQ("Operation not permitted", buf);
 
-#if defined(__BIONIC__) || defined(MUSL)
+#if defined(__BIONIC__) || defined(ANDROID_HOST_MUSL)
   // Invalid.
   ASSERT_EQ(0, posix_strerror_r(-1, buf, sizeof(buf)));
 # if defined(__BIONIC__)
diff --git a/tests/string_test.cpp b/tests/string_test.cpp
index d19b60d..8d3fb68 100644
--- a/tests/string_test.cpp
+++ b/tests/string_test.cpp
@@ -23,6 +23,7 @@
 #include <malloc.h>
 #include <math.h>
 #include <stdint.h>
+#include <sys/cdefs.h>
 
 #include <algorithm>
 #include <vector>
@@ -95,7 +96,7 @@
 }
 
 TEST(STRING_TEST, gnu_strerror_r) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   char buf[256];
 
   // Note that glibc doesn't necessarily write into the buffer.
@@ -1477,7 +1478,7 @@
   RunSingleBufferOverreadTest(DoStrrchrTest);
 }
 
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
 static void TestBasename(const char* in, const char* expected_out) {
   errno = 0;
   const char* out = basename(in);
@@ -1487,7 +1488,7 @@
 #endif
 
 TEST(STRING_TEST, __gnu_basename) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   TestBasename("", "");
   TestBasename("/usr/lib", "lib");
   TestBasename("/usr/", "");
diff --git a/tests/sys_time_test.cpp b/tests/sys_time_test.cpp
index 5dda7ab..07394d6 100644
--- a/tests/sys_time_test.cpp
+++ b/tests/sys_time_test.cpp
@@ -132,6 +132,11 @@
   ASSERT_EQ(EINVAL, errno);
 }
 
+// Musl doesn't define __NR_gettimeofday on 32-bit architectures.
+#if !defined(__NR_gettimeofday)
+#define __NR_gettimeofday __NR_gettimeofday_time32
+#endif
+
 TEST(sys_time, gettimeofday) {
   // Try to ensure that our vdso gettimeofday is working.
   timeval tv1;
diff --git a/tests/time_test.cpp b/tests/time_test.cpp
index 932af9e..5fc4cad 100644
--- a/tests/time_test.cpp
+++ b/tests/time_test.cpp
@@ -20,6 +20,7 @@
 #include <gtest/gtest.h>
 #include <pthread.h>
 #include <signal.h>
+#include <sys/cdefs.h>
 #include <sys/syscall.h>
 #include <sys/types.h>
 #include <sys/wait.h>
@@ -282,7 +283,7 @@
 }
 
 TEST(time, strptime_l) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   setenv("TZ", "UTC", 1);
 
   struct tm t;
@@ -760,6 +761,11 @@
 #endif
 }
 
+// Musl doesn't define __NR_clock_gettime on 32-bit architectures.
+#if !defined(__NR_clock_gettime)
+#define __NR_clock_gettime __NR_clock_gettime32
+#endif
+
 TEST(time, clock_gettime) {
   // Try to ensure that our vdso clock_gettime is working.
   timespec ts0;
diff --git a/tests/unistd_test.cpp b/tests/unistd_test.cpp
index 6e495fc..840dad0 100644
--- a/tests/unistd_test.cpp
+++ b/tests/unistd_test.cpp
@@ -852,7 +852,7 @@
   EXPECT_EQ(_POSIX_VERSION, _POSIX_MONOTONIC_CLOCK);
 #endif
   EXPECT_GT(_POSIX_NO_TRUNC, 0);
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   EXPECT_EQ(_POSIX_VERSION, _POSIX_PRIORITY_SCHEDULING);
 #endif
   EXPECT_EQ(_POSIX_VERSION, _POSIX_RAW_SOCKETS);
@@ -863,7 +863,7 @@
   EXPECT_EQ(_POSIX_VERSION, _POSIX_SEMAPHORES);
   EXPECT_GT(_POSIX_SHELL, 0);
   EXPECT_EQ(_POSIX_VERSION, _POSIX_SPAWN);
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   EXPECT_EQ(-1, _POSIX_SPORADIC_SERVER);
   EXPECT_EQ(_POSIX_VERSION, _POSIX_SYNCHRONIZED_IO);
 #endif
@@ -875,16 +875,16 @@
 #endif
   EXPECT_EQ(_POSIX_VERSION, _POSIX_THREAD_PRIORITY_SCHEDULING);
   EXPECT_EQ(_POSIX_VERSION, _POSIX_THREAD_PROCESS_SHARED);
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   EXPECT_EQ(-1, _POSIX_THREAD_ROBUST_PRIO_PROTECT);
 #endif
   EXPECT_EQ(_POSIX_VERSION, _POSIX_THREAD_SAFE_FUNCTIONS);
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   EXPECT_EQ(-1, _POSIX_THREAD_SPORADIC_SERVER);
 #endif
   EXPECT_EQ(_POSIX_VERSION, _POSIX_TIMEOUTS);
   EXPECT_EQ(_POSIX_VERSION, _POSIX_TIMERS);
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   EXPECT_EQ(-1, _POSIX_TRACE);
   EXPECT_EQ(-1, _POSIX_TRACE_EVENT_FILTER);
   EXPECT_EQ(-1, _POSIX_TRACE_INHERIT);
@@ -895,13 +895,13 @@
 
   EXPECT_EQ(_POSIX_VERSION, _POSIX2_VERSION);
   EXPECT_EQ(_POSIX_VERSION, _POSIX2_C_BIND);
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   EXPECT_EQ(_POSIX_VERSION, _POSIX2_CHAR_TERM);
 #endif
 
   EXPECT_EQ(700, _XOPEN_VERSION);
   EXPECT_EQ(1, _XOPEN_ENH_I18N);
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   EXPECT_EQ(1, _XOPEN_REALTIME);
   EXPECT_EQ(1, _XOPEN_REALTIME_THREADS);
   EXPECT_EQ(1, _XOPEN_SHM);
diff --git a/tests/wchar_test.cpp b/tests/wchar_test.cpp
index 218c724..85a75ec 100644
--- a/tests/wchar_test.cpp
+++ b/tests/wchar_test.cpp
@@ -22,6 +22,7 @@
 #include <locale.h>
 #include <math.h>
 #include <stdint.h>
+#include <sys/cdefs.h>
 #include <wchar.h>
 
 #include "utils.h"
@@ -800,7 +801,7 @@
 }
 
 TEST(wchar, wmempcpy) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   wchar_t dst[6];
   ASSERT_EQ(&dst[4], wmempcpy(dst, L"hello", 4));
 #else
@@ -917,7 +918,7 @@
 }
 
 TEST(wchar, wcstod_l) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   EXPECT_EQ(1.23, wcstod_l(L"1.23", nullptr, LC_GLOBAL_LOCALE));
 #else
   GTEST_SKIP() << "musl doesn't have wcstod_l";
@@ -925,7 +926,7 @@
 }
 
 TEST(wchar, wcstof_l) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   EXPECT_EQ(1.23f, wcstof_l(L"1.23", nullptr, LC_GLOBAL_LOCALE));
 #else
   GTEST_SKIP() << "musl doesn't have wcstof_l";
@@ -933,7 +934,7 @@
 }
 
 TEST(wchar, wcstol_l) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   EXPECT_EQ(123L, wcstol_l(L"123", nullptr, 10, LC_GLOBAL_LOCALE));
 #else
   GTEST_SKIP() << "musl doesn't have wcstol_l";
@@ -949,7 +950,7 @@
 }
 
 TEST(wchar, wcstoul_l) {
-#if !defined(MUSL)
+#if !defined(ANDROID_HOST_MUSL)
   EXPECT_EQ(123UL, wcstoul_l(L"123", nullptr, 10, LC_GLOBAL_LOCALE));
 #else
   GTEST_SKIP() << "musl doesn't have wcstoul_l";