This one is used to call getaddrinfo() to resolve IPv6 host names.
# USE_LIBCRYPT : enable crypted passwords using -lcrypt
# USE_CRYPT_H : set it if your system requires including crypt.h
# USE_VSYSCALL : enable vsyscall on Linux x86, bypassing libc
+# USE_GETADDRINFO : use getaddrinfo() to resolve IPv6 host names.
#
# Options can be forced by specifying "USE_xxx=1" or can be disabled by using
# "USE_xxx=" (empty string).
else
ifeq ($(TARGET),solaris)
# This is for Solaris 8
+ # We also enable getaddrinfo() which works since solaris 8.
USE_POLL = implicit
TARGET_CFLAGS = -fomit-frame-pointer -DFD_SETSIZE=65536 -D_REENTRANT
TARGET_LDFLAGS = -lnsl -lsocket
USE_TPROXY = implicit
USE_LIBCRYPT = implicit
USE_CRYPT_H = implicit
+ USE_GETADDRINFO = implicit
else
ifeq ($(TARGET),freebsd)
# This is for FreeBSD
BUILD_OPTIONS += $(call ignore_implicit,USE_CRYPT_H)
endif
+ifneq ($(USE_GETADDRINFO),)
+OPTIONS_CFLAGS += -DUSE_GETADDRINFO
+BUILD_OPTIONS += $(call ignore_implicit,USE_GETADDRINFO)
+endif
+
ifneq ($(USE_POLL),)
OPTIONS_CFLAGS += -DENABLE_POLL
OPTIONS_OBJS += src/ev_poll.o
# set some defines when needed.
# Known ones are -DENABLE_POLL
# - use -DTPROXY to compile with transparent proxy support.
+# - use -DUSE_GETADDRINFO to use of getaddrinfo() to resolve IPv6 host names
DEFINE = -DTPROXY
# May be changed to patch PAGE_SIZE on every platform when using dlmalloc
# set some defines when needed.
# Known ones are -DENABLE_POLL
# - use -DTPROXY to compile with transparent proxy support.
+# - use -DUSE_GETADDRINFO to use of getaddrinfo() to resolve IPv6 host names
DEFINE = -DTPROXY
# May be changed to patch PAGE_SIZE on every platform when using dlmalloc
Warning! group references on Solaris seem broken. Use static-pcre whenever
possible.
+Recent systems can resolve IPv6 host names using getaddrinfo(). This primitive
+is not present in all libcs and does not work in all of them either. Support in
+glibc was broken before 2.3. Some embedded libs may not properly work either,
+thus, support is disabled by default, meaning that some host names which only
+resolve as IPv6 addresses will not resolve and configs might emit an error
+during parsing. If you know that your OS libc has reliable support for
+getaddrinfo(), you can add USE_GETADDRINFO=1 on the make command line to enable
+it. This is the recommended option for most Linux distro packagers since it's
+working fine on all recent mainstream distros. It is automatically enabled on
+Solaris 8 and above, as it's known to work.
+
By default, the DEBUG variable is set to '-g' to enable debug symbols. It is
not wise to disable it on uncommon systems, because it's often the only way to
get a complete core when you need one. Otherwise, you can set DEBUG to '-s' to