From 74e5beab9dbeb0e893754b8c21679527b5b7e178 Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Thu, 24 Nov 2005 10:22:46 +0000 Subject: Doug Kaufman's set of patches to make curl build fine on DJGPP again using configure. --- CHANGES | 7 +++++++ RELEASE-NOTES | 3 ++- configure.ac | 15 +++++++++++++-- lib/setup.h | 3 +++ lib/transfer.c | 2 +- src/setup.h | 2 ++ 6 files changed, 28 insertions(+), 4 deletions(-) diff --git a/CHANGES b/CHANGES index 60c71921e..d162878a8 100644 --- a/CHANGES +++ b/CHANGES @@ -8,6 +8,13 @@ +Daniel (24 November 2005) +- Doug Kaufman provided a set of patches to make curl build fine on DJGPP + again using configure. + +- Yang Tse provided a whole series of patches to clear up compiler warnings on + MSVC 6. + Daniel (17 November 2005) - I extended a patch from David Shaw to make libcurl _always_ provide an error string in the given error buffer to address the flaw mention on 21 sep 2005. diff --git a/RELEASE-NOTES b/RELEASE-NOTES index eecf78aaf..b5ebd07ea 100644 --- a/RELEASE-NOTES +++ b/RELEASE-NOTES @@ -19,6 +19,7 @@ This release includes the following changes: This release includes the following bugfixes: + o builds fine on DJGPP o CURLOPT_ERRORBUFFER is now always filled in on errors o curl outputs error on bad --limit-rate units o fixed libcurl's use of poll() on cygwin @@ -52,6 +53,6 @@ advice from friends like these: Dave Dribin, Bradford Bruce, Temprimus, Ofer, Dima Barsky, Amol Pattekar, Jaz Fresh, tommink[at]post.pl, Gisle Vanem, Nis Jorgensen, Vilmos Nebehaj, Dmitry Bartsevich, David Lang, Eugene Kotlyarov, Jan Kunder, Yang Tse, - Quagmire, Albert Chin, David Shaw + Quagmire, Albert Chin, David Shaw, Doug Kaufman Thanks! (and sorry if I forgot to mention someone) diff --git a/configure.ac b/configure.ac index 629f0ba28..1bd616ef0 100644 --- a/configure.ac +++ b/configure.ac @@ -1504,6 +1504,13 @@ dnl Checks for library functions. dnl AC_PROG_GCC_TRADITIONAL AC_TYPE_SIGNAL dnl AC_FUNC_VPRINTF +case $host in + *msdosdjgpp) + ac_cv_func_pipe=no + skipcheck_pipe=yes + AC_MSG_NOTICE([skip check for pipe on msdosdjgpp]) + ;; +esac AC_CHECK_FUNCS( strtoll \ socket \ select \ @@ -1541,7 +1548,8 @@ AC_CHECK_FUNCS( strtoll \ dnl if found [], dnl if not found, $ac_func is the name we check for - func="$ac_func" +func="$ac_func" +if test "skipcheck_$func" != "yes"; then AC_MSG_CHECKING([deeper for $func]) AC_TRY_LINK( [], [ $func ();], @@ -1551,7 +1559,7 @@ dnl if not found, $ac_func is the name we check for AC_DEFINE_UNQUOTED($def, 1, [If you have $func]), AC_MSG_RESULT(but still no) ) - +fi ) dnl For some reason, the check above doesn't properly detect select() with @@ -1589,6 +1597,9 @@ AC_CHECK_DECL(basename, , #ifdef HAVE_LIBGEN_H #include #endif +#ifdef HAVE_UNISTD_H +#include +#endif ) AC_MSG_CHECKING([if we are Mac OS X (to disable poll)]) diff --git a/lib/setup.h b/lib/setup.h index bebe4e85a..2c74f5118 100644 --- a/lib/setup.h +++ b/lib/setup.h @@ -200,6 +200,7 @@ typedef unsigned char bool; #define sread(x,y,z) read_s(x,y,z) #define swrite(x,y,z) write_s(x,y,z) #define select(n,r,w,x,t) select_s(n,r,w,x,t) +#define ioctl(x,y,z) ioctlsocket(x,y,(char *)(z)) #define IOCTL_3_ARGS #include #ifdef word @@ -229,7 +230,9 @@ typedef unsigned char bool; #endif #define DIR_CHAR "/" +#ifndef DOT_CHAR #define DOT_CHAR "." +#endif #ifdef DJGPP #undef DOT_CHAR diff --git a/lib/transfer.c b/lib/transfer.c index 11a8f8463..f84594a9e 100644 --- a/lib/transfer.c +++ b/lib/transfer.c @@ -214,7 +214,7 @@ CURLcode Curl_readrewind(struct connectdata *conn) if(data->set.ioctl) { curlioerr err; - err = data->set.ioctl(data, CURLIOCMD_RESTARTREAD, + err = (data->set.ioctl) (data, CURLIOCMD_RESTARTREAD, data->set.ioctl_client); infof(data, "the ioctl callback returned %d\n", (int)err); diff --git a/src/setup.h b/src/setup.h index 7bc3cb17f..01823157c 100644 --- a/src/setup.h +++ b/src/setup.h @@ -103,7 +103,9 @@ int fileno( FILE *stream); #ifdef word #undef word #endif +#ifndef HAVE_LIMITS_H #define HAVE_LIMITS_H /* we have limits.h */ +#endif #define DIR_CHAR "/" #define DOT_CHAR "_" #else -- cgit v1.2.3