Use of _XOPEN_SOURCE is quite dangerous.
# OS
lldp_CHECK_OS
-
-# Additional OS dependents compiler flags. If they cause problem, we
-# can enable them for some OS only.
-AX_CFLAGS_GCC_OPTION([-D_GNU_SOURCE]) dnl GNU systems (asprintf, ...)
-AX_CFLAGS_GCC_OPTION([-D__EXTENSIONS__]) dnl Solaris (CMSG_*)
-AX_CFLAGS_GCC_OPTION([-D_XPG4_2]) dnl Solaris (CMSG_*)
-AX_CFLAGS_GCC_OPTION([-D_XOPEN_SOURCE=500]) dnl HP-UX
-AX_CFLAGS_GCC_OPTION([-D_XOPEN_SOURCE_EXTENDED]) dnl HP-UX
+lldp_CFLAGS_OS
AC_CACHE_SAVE
fi
AC_MSG_RESULT([yes ($os)])
])
+
+# Enable some additional CFLAGS depending on the OS
+AC_DEFUN([lldp_CFLAGS_OS], [
+ # Most of what we want can be enabled nowadays with _GNU_SOURCE
+ AX_CFLAGS_GCC_OPTION([-D_GNU_SOURCE]) dnl GNU systems (asprintf, ...)
+
+ case $host_os in
+ solaris*)
+ AX_CFLAGS_GCC_OPTION([-D__EXTENSIONS__]) dnl (CMSG_*)
+ AX_CFLAGS_GCC_OPTION([-D_XPG4_2]) dnl (CMSG_*)
+ ;;
+ hpux*)
+ AX_CFLAGS_GCC_OPTION([-D_XOPEN_SOURCE=500]) dnl HP-UX
+ AX_CFLAGS_GCC_OPTION([-D_XOPEN_SOURCE_EXTENDED]) dnl HP-UX
+ ;;
+ esac
+])