Build bionic unit tests for musl
Modify bionic unit tests that are built for glibc so that they also
build against musl. They don't all pass though:
With glibc:
2 SLOW TESTS
4 TIMEOUT TESTS
313 FAILED TESTS
YOU HAVE 2 DISABLED TESTS
With musl:
11 SLOW TESTS
11 TIMEOUT TESTS
363 FAILED TESTS
YOU HAVE 2 DISABLED TESTS
Bug: 190084016
Test: m bionic-unit-tests-glibc with musl
Test: atest bionic-unit-tests-static
Test: atest --host bionic-unit-tests-glibc with glibc
Change-Id: I79b6eab04fed3cc4392450df5eef2579412edfe1
diff --git a/tests/string_posix_strerror_r_test.cpp b/tests/string_posix_strerror_r_test.cpp
index c4757ae..f3d73d4 100644
--- a/tests/string_posix_strerror_r_test.cpp
+++ b/tests/string_posix_strerror_r_test.cpp
@@ -27,16 +27,28 @@
// Valid.
ASSERT_EQ(0, posix_strerror_r(0, buf, sizeof(buf)));
+#if defined(MUSL)
+ ASSERT_STREQ("No error information", buf);
+#else
ASSERT_STREQ("Success", buf);
+#endif
ASSERT_EQ(0, posix_strerror_r(1, buf, sizeof(buf)));
ASSERT_STREQ("Operation not permitted", buf);
-#if defined(__BIONIC__)
+#if defined(__BIONIC__) || defined(MUSL)
// Invalid.
ASSERT_EQ(0, posix_strerror_r(-1, buf, sizeof(buf)));
+# if defined(__BIONIC__)
ASSERT_STREQ("Unknown error -1", buf);
+# else
+ ASSERT_STREQ("No error information", buf);
+# endif
ASSERT_EQ(0, posix_strerror_r(1234, buf, sizeof(buf)));
+# if defined(__BIONIC__)
ASSERT_STREQ("Unknown error 1234", buf);
+# else
+ ASSERT_STREQ("No error information", buf);
+# endif
#else
// glibc returns EINVAL for unknown errors
ASSERT_EQ(EINVAL, posix_strerror_r(-1, buf, sizeof(buf)));