Update configure.ac to test libraries for getaddrinfo, strcasestr, memmem, strlcpy, strtoumax, setenv, unsetenv, and mkdtemp. The default compilers on FreeBSD 4.9-SECURITY and FreeBSD 6.2-RELEASE-p4 do not generate warnings for missing prototypes unless `-Wall' is used. This behavior renders the results of AC_CHECK_FUNC() void on these platforms. The test AC_SEARCH_LIBS() verifies a function is valid by linking to symbol within the system libraries. Signed-off-by: David M. Syzdek <david.syzdek@xxxxxxxxxxxxx> --- configure.ac | 57 ++++++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 40 insertions(+), 17 deletions(-) diff --git a/configure.ac b/configure.ac index 7c2856e..d3b8bc3 100644 --- a/configure.ac +++ b/configure.ac @@ -293,9 +293,11 @@ AC_SUBST(NO_SOCKADDR_STORAGE) # # Define NO_IPV6 if you lack IPv6 support and getaddrinfo(). AC_CHECK_TYPE([struct addrinfo],[ - AC_CHECK_FUNC([getaddrinfo], - [NO_IPV6=], - [NO_IPV6=YesPlease]) + AC_CHECK_FUNC([getaddrinfo],[ + AC_SEARCH_LIBS([getaddrinfo],, + [NO_IPV6=], + [NO_IPV6=YesPlease]) + ],[NO_IPV6=YesPlease]) ],[NO_IPV6=YesPlease],[ #include <sys/types.h> #include <sys/socket.h> @@ -387,44 +389,65 @@ AC_SUBST(SNPRINTF_RETURNS_BOGUS) AC_MSG_NOTICE([CHECKS for library functions]) # # Define NO_STRCASESTR if you don't have strcasestr. -AC_CHECK_FUNC(strcasestr, -[NO_STRCASESTR=], +AC_CHECK_FUNC(strcasestr,[ + AC_SEARCH_LIBS(strcasestr,, + [NO_STRCASESTR=], + [NO_STRCASESTR=YesPlease]) +], [NO_STRCASESTR=YesPlease]) AC_SUBST(NO_STRCASESTR) # # Define NO_MEMMEM if you don't have memmem. -AC_CHECK_FUNC(memmem, -[NO_MEMMEM=], +AC_CHECK_FUNC(memmem,[ + AC_SEARCH_LIBS(memmem,, + [NO_MEMMEM=], + [NO_MEMMEM=YesPlease]) +], [NO_MEMMEM=YesPlease]) AC_SUBST(NO_MEMMEM) # # Define NO_STRLCPY if you don't have strlcpy. -AC_CHECK_FUNC(strlcpy, -[NO_STRLCPY=], +AC_CHECK_FUNC(strlcpy,[ + AC_SEARCH_LIBS(strlcpy,, + [NO_STRLCPY=], + [NO_STRLCPY=YesPlease]) +], [NO_STRLCPY=YesPlease]) AC_SUBST(NO_STRLCPY) # # Define NO_STRTOUMAX if you don't have strtoumax in the C library. -AC_CHECK_FUNC(strtoumax, -[NO_STRTOUMAX=], +AC_CHECK_FUNC(strtoumax,[ + AC_SEARCH_LIBS(strtoumax,, + [NO_STRTOUMAX=], + [NO_STRTOUMAX=YesPlease]) +], [NO_STRTOUMAX=YesPlease]) AC_SUBST(NO_STRTOUMAX) # # Define NO_SETENV if you don't have setenv in the C library. -AC_CHECK_FUNC(setenv, -[NO_SETENV=], +AC_CHECK_FUNC(setenv,[ + AC_SEARCH_LIBS(setenv,, + [NO_SETENV=], + [NO_SETENV=YesPlease]) +], [NO_SETENV=YesPlease]) AC_SUBST(NO_SETENV) # # Define NO_UNSETENV if you don't have unsetenv in the C library. -AC_CHECK_FUNC(unsetenv, -[NO_UNSETENV=], +AC_CHECK_FUNC(unsetenv,[ + AC_SEARCH_LIBS(unsetenv,, + [NO_UNSETENV=], + [NO_UNSETENV=YesPlease]) +], [NO_UNSETENV=YesPlease]) AC_SUBST(NO_UNSETENV) # # Define NO_MKDTEMP if you don't have mkdtemp in the C library. -AC_CHECK_FUNC(mkdtemp, -[NO_MKDTEMP=], +AC_CHECK_FUNC(mkdtemp,[ + AC_SEARCH_LIBS(mkdtemp,, + [NO_MKDTEMP=], + [NO_MKDTEMP=YesPlease]) +], [NO_MKDTEMP=YesPlease]) AC_SUBST(NO_MKDTEMP) # -- 1.6.0.2.GIT -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html