Bionic lacks ttyname_r; provide a workaround

Signed-off-by: Matt Whitlock <busybox@mattwhitlock.name>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
diff --git a/include/platform.h b/include/platform.h
index df95945..d5ab7bc 100644
--- a/include/platform.h
+++ b/include/platform.h
@@ -368,6 +368,7 @@
 #define HAVE_DPRINTF 1
 #define HAVE_MEMRCHR 1
 #define HAVE_MKDTEMP 1
+#define HAVE_TTYNAME_R 1
 #define HAVE_PTSNAME_R 1
 #define HAVE_SETBIT 1
 #define HAVE_SIGHANDLER_T 1
@@ -480,6 +481,7 @@
 
 #if defined(ANDROID) || defined(__ANDROID__)
 # undef HAVE_DPRINTF
+# undef HAVE_TTYNAME_R
 # undef HAVE_GETLINE
 # undef HAVE_STPCPY
 # undef HAVE_STRCHRNUL
@@ -505,6 +507,11 @@
 extern char *mkdtemp(char *template) FAST_FUNC;
 #endif
 
+#ifndef HAVE_TTYNAME_R
+#define ttyname_r bb_ttyname_r
+extern int ttyname_r(int fd, char *buf, size_t buflen);
+#endif
+
 #ifndef HAVE_SETBIT
 # define setbit(a, b)  ((a)[(b) >> 3] |= 1 << ((b) & 7))
 # define clrbit(a, b)  ((a)[(b) >> 3] &= ~(1 << ((b) & 7)))