netdb_h.m4 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. # netdb_h.m4 serial 15
  2. dnl Copyright (C) 2008-2023 Free Software Foundation, Inc.
  3. dnl This file is free software; the Free Software Foundation
  4. dnl gives unlimited permission to copy and/or distribute it,
  5. dnl with or without modifications, as long as this notice is preserved.
  6. AC_DEFUN_ONCE([gl_NETDB_H],
  7. [
  8. AC_REQUIRE([gl_NETDB_H_DEFAULTS])
  9. gl_CHECK_NEXT_HEADERS([netdb.h])
  10. if test $ac_cv_header_netdb_h = yes; then
  11. HAVE_NETDB_H=1
  12. else
  13. HAVE_NETDB_H=0
  14. fi
  15. AC_SUBST([HAVE_NETDB_H])
  16. dnl Check for declarations of anything we want to poison if the
  17. dnl corresponding gnulib module is not in use.
  18. gl_WARN_ON_USE_PREPARE([[#include <netdb.h>]],
  19. [getaddrinfo freeaddrinfo gai_strerror getnameinfo])
  20. ])
  21. # gl_NETDB_MODULE_INDICATOR([modulename])
  22. # sets the shell variable that indicates the presence of the given module
  23. # to a C preprocessor expression that will evaluate to 1.
  24. # This macro invocation must not occur in macros that are AC_REQUIREd.
  25. AC_DEFUN([gl_NETDB_MODULE_INDICATOR],
  26. [
  27. dnl Ensure to expand the default settings once only.
  28. gl_NETDB_H_REQUIRE_DEFAULTS
  29. gl_MODULE_INDICATOR_SET_VARIABLE([$1])
  30. dnl Define it also as a C macro, for the benefit of the unit tests.
  31. gl_MODULE_INDICATOR_FOR_TESTS([$1])
  32. ])
  33. # Initializes the default values for AC_SUBSTed shell variables.
  34. # This macro must not be AC_REQUIREd. It must only be invoked, and only
  35. # outside of macros or in macros that are not AC_REQUIREd.
  36. AC_DEFUN([gl_NETDB_H_REQUIRE_DEFAULTS],
  37. [
  38. m4_defun(GL_MODULE_INDICATOR_PREFIX[_NETDB_H_MODULE_INDICATOR_DEFAULTS], [
  39. gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_GETADDRINFO])
  40. ])
  41. m4_require(GL_MODULE_INDICATOR_PREFIX[_NETDB_H_MODULE_INDICATOR_DEFAULTS])
  42. AC_REQUIRE([gl_NETDB_H_DEFAULTS])
  43. ])
  44. AC_DEFUN([gl_NETDB_H_DEFAULTS],
  45. [
  46. dnl Assume proper GNU behavior unless another module says otherwise.
  47. HAVE_STRUCT_ADDRINFO=1; AC_SUBST([HAVE_STRUCT_ADDRINFO])
  48. HAVE_DECL_FREEADDRINFO=1; AC_SUBST([HAVE_DECL_FREEADDRINFO])
  49. HAVE_DECL_GAI_STRERROR=1; AC_SUBST([HAVE_DECL_GAI_STRERROR])
  50. HAVE_DECL_GETADDRINFO=1; AC_SUBST([HAVE_DECL_GETADDRINFO])
  51. HAVE_DECL_GETNAMEINFO=1; AC_SUBST([HAVE_DECL_GETNAMEINFO])
  52. REPLACE_GAI_STRERROR=0; AC_SUBST([REPLACE_GAI_STRERROR])
  53. REPLACE_GETADDRINFO=0; AC_SUBST([REPLACE_GETADDRINFO])
  54. ])