VirtualBox

source: kBuild/trunk/src/grep/m4/socketlib.m4

Last change on this file was 3529, checked in by bird, 3 years ago

Imported grep 3.7 from grep-3.7.tar.gz (sha256: c22b0cf2d4f6bbe599c902387e8058990e1eee99aef333a203829e5fd3dbb342), applying minimal auto-props.

  • Property svn:eol-style set to LF
File size: 3.1 KB
Line 
1# socketlib.m4 serial 3
2dnl Copyright (C) 2008-2021 Free Software Foundation, Inc.
3dnl This file is free software; the Free Software Foundation
4dnl gives unlimited permission to copy and/or distribute it,
5dnl with or without modifications, as long as this notice is preserved.
6
7dnl gl_SOCKETLIB
8dnl Determines the library to use for socket functions.
9dnl Sets and AC_SUBSTs LIBSOCKET.
10
11AC_DEFUN([gl_SOCKETLIB],
12[
13 gl_PREREQ_SYS_H_WINSOCK2 dnl for HAVE_WINSOCK2_H
14 LIBSOCKET=
15 if test $HAVE_WINSOCK2_H = 1; then
16 dnl Native Windows API (not Cygwin).
17 dnl If the function WSAStartup exists (declared in <winsock2.h> and
18 dnl defined through -lws2_32), we need to call it.
19 AC_CACHE_CHECK([for WSAStartup],
20 [gl_cv_func_wsastartup], [
21 gl_save_LIBS="$LIBS"
22 LIBS="$LIBS -lws2_32"
23 AC_LINK_IFELSE(
24 [AC_LANG_PROGRAM([[
25#ifdef HAVE_WINSOCK2_H
26# include <winsock2.h>
27#endif]], [[
28 WORD wVersionRequested = MAKEWORD(1, 1);
29 WSADATA wsaData;
30 int err = WSAStartup(wVersionRequested, &wsaData);
31 WSACleanup ();
32 ]])
33 ],
34 [gl_cv_func_wsastartup=yes],
35 [gl_cv_func_wsastartup=no])
36 LIBS="$gl_save_LIBS"
37 ])
38 if test "$gl_cv_func_wsastartup" = "yes"; then
39 AC_DEFINE([WINDOWS_SOCKETS], [1], [Define if WSAStartup is needed.])
40 LIBSOCKET='-lws2_32'
41 fi
42 else
43 dnl Unix API.
44 dnl Solaris has most socket functions in libsocket.
45 dnl Haiku has most socket functions in libnetwork.
46 dnl BeOS has most socket functions in libnet.
47 dnl On HP-UX, do NOT link with libxnet, because in 64-bit mode this would
48 dnl break code (e.g. in libraries) that invokes accept(), getpeername(),
49 dnl getsockname(), getsockopt(), or recvfrom() with a 32-bit addrlen. See
50 dnl "man xopen_networking" for details.
51 AC_CACHE_CHECK([for library containing setsockopt], [gl_cv_lib_socket], [
52 gl_cv_lib_socket=
53 AC_LINK_IFELSE([AC_LANG_PROGRAM([[extern
54#ifdef __cplusplus
55"C"
56#endif
57char setsockopt();]], [[setsockopt();]])],
58 [],
59 [gl_save_LIBS="$LIBS"
60 LIBS="$gl_save_LIBS -lsocket"
61 AC_LINK_IFELSE([AC_LANG_PROGRAM([[extern
62#ifdef __cplusplus
63"C"
64#endif
65char setsockopt();]], [[setsockopt();]])],
66 [gl_cv_lib_socket="-lsocket"])
67 if test -z "$gl_cv_lib_socket"; then
68 LIBS="$gl_save_LIBS -lnetwork"
69 AC_LINK_IFELSE([AC_LANG_PROGRAM([[extern
70#ifdef __cplusplus
71"C"
72#endif
73char setsockopt();]], [[setsockopt();]])],
74 [gl_cv_lib_socket="-lnetwork"])
75 if test -z "$gl_cv_lib_socket"; then
76 LIBS="$gl_save_LIBS -lnet"
77 AC_LINK_IFELSE([AC_LANG_PROGRAM([[extern
78#ifdef __cplusplus
79"C"
80#endif
81char setsockopt();]], [[setsockopt();]])],
82 [gl_cv_lib_socket="-lnet"])
83 fi
84 fi
85 LIBS="$gl_save_LIBS"
86 ])
87 if test -z "$gl_cv_lib_socket"; then
88 gl_cv_lib_socket="none needed"
89 fi
90 ])
91 if test "$gl_cv_lib_socket" != "none needed"; then
92 LIBSOCKET="$gl_cv_lib_socket"
93 fi
94 fi
95 AC_SUBST([LIBSOCKET])
96])
Note: See TracBrowser for help on using the repository browser.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette