• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1dnl
2dnl Networking stuff for CUPS.
3dnl
4dnl Copyright © 2020-2024 by OpenPrinting.
5dnl Copyright © 2007-2016 by Apple Inc.
6dnl Copyright © 1997-2005 by Easy Software Products, all rights reserved.
7dnl
8dnl Licensed under Apache License v2.0.  See the file "LICENSE" for more
9dnl information.
10dnl
11
12AC_CHECK_HEADER([resolv.h], [
13    AC_DEFINE([HAVE_RESOLV_H], [1], [Have the <resolv.h> header?])
14], [
15], [
16    #include <sys/socket.h>
17    #include <netinet/in.h>
18    #include <arpa/inet.h>
19    #include <netinet/in_systm.h>
20    #include <netinet/ip.h>
21])
22AC_SEARCH_LIBS([socket], [socket])
23AC_SEARCH_LIBS([gethostbyaddr], [nsl])
24AC_SEARCH_LIBS([getifaddrs], [nsl], [
25    AC_DEFINE([HAVE_GETIFADDRS], [1], [Have the getifaddrs function?])
26])
27AC_SEARCH_LIBS([hstrerror], [nsl socket resolv], [
28    AC_DEFINE([HAVE_HSTRERROR], [1], [Have the hstrerror function?])
29])
30AC_SEARCH_LIBS([rresvport_af], [nsl], [
31    AC_DEFINE([HAVE_RRESVPORT_AF], [1], [Have the rresvport_af function?])
32])
33AC_SEARCH_LIBS([__res_init], [resolv bind], [
34    AC_DEFINE([HAVE_RES_INIT], [1], [Have res_init function?])
35], [
36    AC_SEARCH_LIBS([res_9_init], [resolv bind], [
37        AC_DEFINE([HAVE_RES_INIT], [1], [Have res_init function?])
38    ], [
39	AC_SEARCH_LIBS([res_init], [resolv bind], [
40	    AC_DEFINE([HAVE_RES_INIT], [1], [Have res_init function?])
41	])
42    ])
43])
44
45AC_SEARCH_LIBS([getaddrinfo], [nsl], [
46    AC_DEFINE([HAVE_GETADDRINFO], [1], [Have the getaddrinfo function?])
47])
48AC_SEARCH_LIBS([getnameinfo], [nsl], [
49    AC_DEFINE([HAVE_GETNAMEINFO], [1], [Have the getnameinfo function?])
50])
51
52AC_CHECK_MEMBER([struct sockaddr.sa_len],,, [#include <sys/socket.h>])
53AC_CHECK_HEADER([sys/sockio.h], [
54    AC_DEFINE([HAVE_SYS_SOCKIO_H], [1], [Have <sys/sockio.h> header?])
55])
56
57dnl Domain socket support...
58CUPS_DEFAULT_DOMAINSOCKET=""
59
60AC_ARG_WITH([domainsocket], AS_HELP_STRING([--with-domainsocket], [set unix domain socket name]), [
61    default_domainsocket="$withval"
62], [
63    default_domainsocket=""
64])
65
66AS_IF([test x$enable_domainsocket != xno -a x$default_domainsocket != xno], [
67    AS_IF([test "x$default_domainsocket" = x], [
68        AS_CASE(["$host_os_name"], [darwin*], [
69	    # Darwin and macOS do their own thing...
70	    CUPS_DEFAULT_DOMAINSOCKET="$localstatedir/run/cupsd"
71	], [*], [
72	    # All others use FHS standard...
73	    CUPS_DEFAULT_DOMAINSOCKET="$CUPS_STATEDIR/cups.sock"
74	])
75    ], [
76	CUPS_DEFAULT_DOMAINSOCKET="$default_domainsocket"
77    ])
78
79    CUPS_LISTEN_DOMAINSOCKET="Listen $CUPS_DEFAULT_DOMAINSOCKET"
80
81    AC_DEFINE_UNQUOTED([CUPS_DEFAULT_DOMAINSOCKET], ["$CUPS_DEFAULT_DOMAINSOCKET"], [Domain socket path.])
82], [
83    CUPS_LISTEN_DOMAINSOCKET=""
84])
85
86AC_SUBST([CUPS_DEFAULT_DOMAINSOCKET])
87AC_SUBST([CUPS_LISTEN_DOMAINSOCKET])
88