@@ -235,6 +235,43 @@ AC_DEFUN([CURL_CHECK_NATIVE_WINDOWS], [
235
235
] )
236
236
237
237
238
+ dnl CURL_CHECK_HEADER_WINSOCK
239
+ dnl -------------------------------------------------
240
+ dnl Check for compilable and valid winsock.h header
241
+
242
+ AC_DEFUN ( [ CURL_CHECK_HEADER_WINSOCK] , [
243
+ AC_REQUIRE ( [ CURL_CHECK_HEADER_WINDOWS] ) dnl
244
+ AC_CACHE_CHECK ( [ for winsock.h] , [ curl_cv_header_winsock_h] , [
245
+ AC_COMPILE_IFELSE ( [
246
+ AC_LANG_PROGRAM ( [ [
247
+ #undef inline
248
+ #ifndef WIN32_LEAN_AND_MEAN
249
+ #define WIN32_LEAN_AND_MEAN
250
+ #endif
251
+ #include <windows.h>
252
+ #include <winsock.h>
253
+ ] ] ,[ [
254
+ #if defined(__CYGWIN__) || defined(__CEGCC__)
255
+ HAVE_WINSOCK_H shall not be defined.
256
+ #else
257
+ int dummy=WSACleanup();
258
+ #endif
259
+ ] ] )
260
+ ] ,[
261
+ curl_cv_header_winsock_h="yes"
262
+ ] ,[
263
+ curl_cv_header_winsock_h="no"
264
+ ] )
265
+ ] )
266
+ case "$curl_cv_header_winsock_h" in
267
+ yes)
268
+ AC_DEFINE_UNQUOTED ( HAVE_WINSOCK_H , 1 ,
269
+ [ Define to 1 if you have the winsock.h header file.] )
270
+ ;;
271
+ esac
272
+ ] )
273
+
274
+
238
275
dnl CURL_CHECK_HEADER_WINSOCK2
239
276
dnl -------------------------------------------------
240
277
dnl Check for compilable and valid winsock2.h header
@@ -1021,6 +1058,10 @@ AC_DEFUN([CURL_CHECK_FUNC_RECV], [
1021
1058
#include <windows.h>
1022
1059
#ifdef HAVE_WINSOCK2_H
1023
1060
#include <winsock2.h>
1061
+ #else
1062
+ #ifdef HAVE_WINSOCK_H
1063
+ #include <winsock.h>
1064
+ #endif
1024
1065
#endif
1025
1066
#else
1026
1067
#ifdef HAVE_PROTO_BSDSOCKET_H
@@ -1065,6 +1106,10 @@ struct Library *SocketBase = NULL;
1065
1106
#include <windows.h>
1066
1107
#ifdef HAVE_WINSOCK2_H
1067
1108
#include <winsock2.h>
1109
+ #else
1110
+ #ifdef HAVE_WINSOCK_H
1111
+ #include <winsock.h>
1112
+ #endif
1068
1113
#endif
1069
1114
#define RECVCALLCONV PASCAL
1070
1115
#else
@@ -1142,6 +1187,7 @@ dnl return value in SEND_TYPE_RETV, and also defining the
1142
1187
dnl type qualifier of second argument in SEND_QUAL_ARG2.
1143
1188
1144
1189
AC_DEFUN ( [ CURL_CHECK_FUNC_SEND] , [
1190
+ AC_REQUIRE ( [ CURL_CHECK_HEADER_WINSOCK] ) dnl
1145
1191
AC_REQUIRE ( [ CURL_CHECK_HEADER_WINSOCK2] ) dnl
1146
1192
AC_CHECK_HEADERS ( sys/types.h sys/socket.h )
1147
1193
#
@@ -1156,6 +1202,10 @@ AC_DEFUN([CURL_CHECK_FUNC_SEND], [
1156
1202
#include <windows.h>
1157
1203
#ifdef HAVE_WINSOCK2_H
1158
1204
#include <winsock2.h>
1205
+ #else
1206
+ #ifdef HAVE_WINSOCK_H
1207
+ #include <winsock.h>
1208
+ #endif
1159
1209
#endif
1160
1210
#else
1161
1211
#ifdef HAVE_PROTO_BSDSOCKET_H
@@ -1200,6 +1250,10 @@ struct Library *SocketBase = NULL;
1200
1250
#include <windows.h>
1201
1251
#ifdef HAVE_WINSOCK2_H
1202
1252
#include <winsock2.h>
1253
+ #else
1254
+ #ifdef HAVE_WINSOCK_H
1255
+ #include <winsock.h>
1256
+ #endif
1203
1257
#endif
1204
1258
#define SENDCALLCONV PASCAL
1205
1259
#else
@@ -1314,6 +1368,10 @@ AC_DEFUN([CURL_CHECK_MSG_NOSIGNAL], [
1314
1368
#include <windows.h>
1315
1369
#ifdef HAVE_WINSOCK2_H
1316
1370
#include <winsock2.h>
1371
+ #else
1372
+ #ifdef HAVE_WINSOCK_H
1373
+ #include <winsock.h>
1374
+ #endif
1317
1375
#endif
1318
1376
#else
1319
1377
#ifdef HAVE_PROTO_BSDSOCKET_H
@@ -1350,6 +1408,7 @@ dnl -------------------------------------------------
1350
1408
dnl Check for timeval struct
1351
1409
1352
1410
AC_DEFUN ( [ CURL_CHECK_STRUCT_TIMEVAL] , [
1411
+ AC_REQUIRE ( [ CURL_CHECK_HEADER_WINSOCK] ) dnl
1353
1412
AC_REQUIRE ( [ CURL_CHECK_HEADER_WINSOCK2] ) dnl
1354
1413
AC_CHECK_HEADERS ( sys/types.h sys/time.h sys/socket.h )
1355
1414
AC_CACHE_CHECK ( [ for struct timeval] , [ curl_cv_struct_timeval] , [
@@ -1363,6 +1422,10 @@ AC_DEFUN([CURL_CHECK_STRUCT_TIMEVAL], [
1363
1422
#include <windows.h>
1364
1423
#ifdef HAVE_WINSOCK2_H
1365
1424
#include <winsock2.h>
1425
+ #else
1426
+ #ifdef HAVE_WINSOCK_H
1427
+ #include <winsock.h>
1428
+ #endif
1366
1429
#endif
1367
1430
#endif
1368
1431
#ifdef HAVE_SYS_TYPES_H
@@ -1418,6 +1481,9 @@ AC_DEFUN([TYPE_IN_ADDR_T], [
1418
1481
#include <windows.h>
1419
1482
#ifdef HAVE_WINSOCK2_H
1420
1483
#include <winsock2.h>
1484
+ #else
1485
+ #ifdef HAVE_WINSOCK_H
1486
+ #include <winsock.h>
1421
1487
#endif
1422
1488
#endif
1423
1489
#else
@@ -1461,6 +1527,10 @@ AC_DEFUN([TYPE_IN_ADDR_T], [
1461
1527
#include <windows.h>
1462
1528
#ifdef HAVE_WINSOCK2_H
1463
1529
#include <winsock2.h>
1530
+ #else
1531
+ #ifdef HAVE_WINSOCK_H
1532
+ #include <winsock.h>
1533
+ #endif
1464
1534
#endif
1465
1535
#else
1466
1536
#ifdef HAVE_SYS_TYPES_H
@@ -1753,6 +1823,10 @@ AC_DEFUN([CURL_CHECK_FUNC_SELECT], [
1753
1823
#include <windows.h>
1754
1824
#ifdef HAVE_WINSOCK2_H
1755
1825
#include <winsock2.h>
1826
+ #else
1827
+ #ifdef HAVE_WINSOCK_H
1828
+ #include <winsock.h>
1829
+ #endif
1756
1830
#endif
1757
1831
#endif
1758
1832
#ifdef HAVE_SYS_TYPES_H
@@ -1807,6 +1881,10 @@ struct Library *SocketBase = NULL;
1807
1881
#include <windows.h>
1808
1882
#ifdef HAVE_WINSOCK2_H
1809
1883
#include <winsock2.h>
1884
+ #else
1885
+ #ifdef HAVE_WINSOCK_H
1886
+ #include <winsock.h>
1887
+ #endif
1810
1888
#endif
1811
1889
#define SELECTCALLCONV PASCAL
1812
1890
#endif
0 commit comments