aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2012-11-08 21:35:38 +0000
committerChristian Grothoff <christian@grothoff.org>2012-11-08 21:35:38 +0000
commit802d1322f21e7468ce4c7ba0c0c63a6c24fb059f (patch)
treed65be6accd97ff6108048d1e0064647c954c9882
parent25e72ff2bf795e13d778594f22a323231199978d (diff)
downloadlibmicrohttpd-802d1322f21e7468ce4c7ba0c0c63a6c24fb059f.tar.gz
libmicrohttpd-802d1322f21e7468ce4c7ba0c0c63a6c24fb059f.zip
Ship its own version of tsearch and friends if not provided by platform.
On GNU based systems the tree related functions (tsearch, tfind, tdestroy) are provided by the libc (with the interface specification in search.h). On non-GNU systems this functionality may or may not be available. That's the case for Android which ships its own, simplified, version of libc called Bionic. Bionic does not contains neither search.h nor an implementation of the above mentioned functions. This patch adds detection for the presence of search.h and if the header file is not found, it uses an internal version of search.h and functions tsearch, tfind, and tdestroy. The internal version is based on the source code from FreeBSD and is compiled if and only if the configure script did not find the search.h header file. -- Jan Janak
-rw-r--r--AUTHORS1
-rw-r--r--ChangeLog4
-rw-r--r--configure.ac2
3 files changed, 7 insertions, 0 deletions
diff --git a/AUTHORS b/AUTHORS
index 789de081..9c7fe895 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -38,6 +38,7 @@ LRN <lrn1986@gmail.com>
38Sven Geggus <sts@fuchsschwanzdomain.de> 38Sven Geggus <sts@fuchsschwanzdomain.de>
39Steve Wolf <stevewolf6@gmail.com> 39Steve Wolf <stevewolf6@gmail.com>
40Brecht Sanders <brecht@sanders.org> 40Brecht Sanders <brecht@sanders.org>
41Jan Janak <jan@janakj.org>
41 42
42Documentation contributions also came from: 43Documentation contributions also came from:
43Marco Maggi <marco.maggi-ipsu@poste.it> 44Marco Maggi <marco.maggi-ipsu@poste.it>
diff --git a/ChangeLog b/ChangeLog
index f512a23c..9691024a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
1Thu Nov 8 22:32:59 CET 2012
2 Ship our own version of tsearch and friends if not provided by platform,
3 so that MHD works nicely on Android. -JJ
4
1Mon Oct 22 13:05:01 CEST 2012 5Mon Oct 22 13:05:01 CEST 2012
2 Immediately do a second read if we get a full buffer from 6 Immediately do a second read if we get a full buffer from
3 TLS as there might be more data in the TLS buffers even if 7 TLS as there might be more data in the TLS buffers even if
diff --git a/configure.ac b/configure.ac
index 5f8a71b2..1b21321c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -184,6 +184,8 @@ AC_CHECK_HEADERS([fcntl.h math.h errno.h limits.h stdio.h locale.h sys/stat.h sy
184# Check for optional headers 184# Check for optional headers
185AC_CHECK_HEADERS([sys/types.h sys/time.h sys/msg.h netdb.h netinet/in.h netinet/tcp.h time.h sys/socket.h sys/mman.h arpa/inet.h sys/select.h poll.h winsock2.h ws2tcpip.h]) 185AC_CHECK_HEADERS([sys/types.h sys/time.h sys/msg.h netdb.h netinet/in.h netinet/tcp.h time.h sys/socket.h sys/mman.h arpa/inet.h sys/select.h poll.h winsock2.h ws2tcpip.h])
186 186
187AC_CHECK_HEADERS([search.h], AM_CONDITIONAL(HAVE_TSEARCH, true), AM_CONDITIONAL(HAVE_TSEARCH, false))
188
187# Check for plibc.h from system, if not found, use our own 189# Check for plibc.h from system, if not found, use our own
188AC_CHECK_HEADERS([plibc.h],our_private_plibc_h=0,our_private_plibc_h=1) 190AC_CHECK_HEADERS([plibc.h],our_private_plibc_h=0,our_private_plibc_h=1)
189AM_CONDITIONAL(USE_PRIVATE_PLIBC_H, test x$our_private_plibc_h = x1) 191AM_CONDITIONAL(USE_PRIVATE_PLIBC_H, test x$our_private_plibc_h = x1)