1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77
|
NUT-specific autoconf macros
----------------------------
The following NUT-specific autoconf macros are defined in the `m4/`
directory.
*NUT_TYPE_SOCKLEN_T*::
*NUT_TYPE_UINT8_T*::
*NUT_TYPE_UINT16_T*::
Check for the corresponding type in the system header files, and
`#define` a replacement if necessary.
*NUT_CHECK_LIBGD*::
*NUT_CHECK_LIBNEON*::
*NUT_CHECK_LIBNETSNMP*::
*NUT_CHECK_LIBPOWERMAN*::
*NUT_CHECK_LIBOPENSSL*::
*NUT_CHECK_LIBNSS*::
*NUT_CHECK_LIBUSB*::
*NUT_CHECK_LIBWRAP*::
*et al*::
Determine the compiler flags for the corresponding library. On
success, set `nut_have_libxxx="yes"` and set `LIBXXX_CFLAGS` and
`LIBXXX_LDFLAGS`. On failure, set `nut_have_libxxx="no"`. This macro
can be run multiple times, but will do the checking only once.
Here "xxx" should of course be replaced by the respective library name.
+
The checks for each library grow organically to compensate for
various bugs in the libraries, pkg-config, etc. This is why we have
a separate macro for each library.
*NUT_CHECK_IPV6*::
Check for various features required to compile the IPv6 support.
Define a preprocessor symbol for each individual feature
(`HAVE_GETADDRINFO`, `HAVE_FREEADDRINFO`, `HAVE_STRUCT_ADDRINFO`,
`HAVE_SOCKADDR_STORAGE`, `SOCKADDR_IN6`, `IN6_ADDR`,
`HAVE_IN6_IS_ADDR_V4MAPPED`, `HAVE_AI_ADDRCONFIG`).
+
Also set the shell variable `nut_have_ipv6=yes` if all the required
features are present. Set `nut_have_ipv6=no` otherwise.
*NUT_CHECK_OS*::
Check for the exact system name and type.
This was only used in the past to determine the packaging rule to be
used through the `OS_NAME` variable, but may be useful for other purposes
in the future.
*NUT_REPORT_FEATURE(FEATURE, VALUE, VARIABLE, DESCRIPTION)*::
Schedule a line for the end-of-configuration feature summary. The
'FEATURE' is a descriptive string such that the sentence "Checking
whether to FEATURE" makes sense, and 'VALUE' describes the decision
taken (typically 'yes' or 'no'). The feature is also reported to the
terminal.
+
Also use 'VARIABLE' and 'DESCRIPTION' for defining `AM_CONDITIONAL` and
`AC_DEFINE` (only if `VALUE = "yes"`).
The 'VARIABLE' is of the form `WITH_<NAME>`.
*NUT_REPORT(FEATURE, VALUE)*::
Schedule a line for the end-of-configuration feature summary, without
printing anything to the terminal immediately.
*NUT_PRINT_FEATURE_REPORT*::
Print out a list of the features that have been reported by
previous `NUT_REPORT_FEATURE` macro calls.
*NUT_ARG_WITH(FEATURE, DESCRIPTION, DEFAULT)*::
Declare a simple `--with-FEATURE` option with the given 'DESCRIPTION'
and 'DEFAULT'. Sets the variable `nut_with_FEATURE`.
|