summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2005-11-24 10:22:46 +0000
committerDaniel Stenberg <daniel@haxx.se>2005-11-24 10:22:46 +0000
commit74e5beab9dbeb0e893754b8c21679527b5b7e178 (patch)
tree1fcd900435ec3ee95ba7ae0b0d0ed339ad1aacf1
parentb41765f4416b3bdd05694073ae58b8d5a003ec1b (diff)
downloadgnurl-74e5beab9dbeb0e893754b8c21679527b5b7e178.tar.gz
gnurl-74e5beab9dbeb0e893754b8c21679527b5b7e178.tar.bz2
gnurl-74e5beab9dbeb0e893754b8c21679527b5b7e178.zip
Doug Kaufman's set of patches to make curl build fine on DJGPP again using
configure.
-rw-r--r--CHANGES7
-rw-r--r--RELEASE-NOTES3
-rw-r--r--configure.ac15
-rw-r--r--lib/setup.h3
-rw-r--r--lib/transfer.c2
-rw-r--r--src/setup.h2
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 <libgen.h>
#endif
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#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 <tcp.h>
#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