summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDan Fandrich2011-06-28 23:03:27 -0700
committerDenys Vlasenko2011-06-30 02:11:49 +0200
commit0e79e7bb420c58fa8e5d2d88c5d3a26f94c761af (patch)
tree9545d2daaf7167c92442985f4178d17ef5d9de69
parent0a5b310067abfde9bf74a42352fc421e1c27e2b9 (diff)
downloadbusybox-0e79e7bb420c58fa8e5d2d88c5d3a26f94c761af.zip
busybox-0e79e7bb420c58fa8e5d2d88c5d3a26f94c761af.tar.gz
Use the built-in getline on more systems that don't have it
Signed-off-by: Dan Fandrich <dan@coneharvesters.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
-rw-r--r--include/platform.h18
1 files changed, 13 insertions, 5 deletions
diff --git a/include/platform.h b/include/platform.h
index eafc3fc..d186e49 100644
--- a/include/platform.h
+++ b/include/platform.h
@@ -376,6 +376,7 @@ typedef unsigned smalluint;
#if defined(__WATCOMC__)
# undef HAVE_DPRINTF
+# undef HAVE_GETLINE
# undef HAVE_MEMRCHR
# undef HAVE_MKDTEMP
# undef HAVE_SETBIT
@@ -389,15 +390,13 @@ typedef unsigned smalluint;
# undef HAVE_NET_ETHERNET_H
#endif
-#if defined(__FreeBSD__)
-# undef HAVE_STRCHRNUL
-#endif
-
+/* These BSD-derived OSes share many similarities */
#if (defined __digital__ && defined __unix__) \
|| defined __APPLE__ \
|| defined __FreeBSD__ || defined __OpenBSD__ || defined __NetBSD__
# undef HAVE_CLEARENV
# undef HAVE_FDATASYNC
+# undef HAVE_GETLINE
# undef HAVE_MNTENT_H
# undef HAVE_PTSNAME_R
# undef HAVE_SYS_STATFS_H
@@ -407,13 +406,21 @@ typedef unsigned smalluint;
# undef HAVE_DPRINTF
#endif
+#if defined(__FreeBSD__)
+# undef HAVE_STRCHRNUL
+#endif
+
+#if defined(__NetBSD__)
+# define HAVE_GETLINE 1 /* Recent NetBSD versions have getline() */
+#endif
+
#if defined(__digital__) && defined(__unix__)
# undef HAVE_STPCPY
-# undef HAVE_STRVERSCMP
#endif
#if defined(ANDROID)
# undef HAVE_DPRINTF
+# undef HAVE_GETLINE
# undef HAVE_STPCPY
# undef HAVE_STRCHRNUL
# undef HAVE_STRVERSCMP
@@ -472,6 +479,7 @@ extern int vasprintf(char **string_ptr, const char *format, va_list p) FAST_FUNC
#endif
#ifndef HAVE_GETLINE
+#include <stdio.h> /* for FILE */
extern ssize_t getline(char **lineptr, size_t *n, FILE *stream) FAST_FUNC;
#endif