sorry. It is a macro.
so, would it be better to check for the macro
as suggested by Tom or go with this patch
$ diff -r configure.in configure.in.new
918a919
> AC_MSG_CHECKING([for getaddrinfo])
920c921,926
< AC_REPLACE_FUNCS([getaddrinfo])
---
> AC_TRY_LINK([#include <netdb.h> #include <assert.h>],
> [char (*f)();f=getaddrinfo;],
> ac_cv_func_getaddrinfo=yes, ac_cv_func_getaddrinfo=no)
> if test x"$ac_cv_func_getaddrinfo" = xyes; then
> AC_DEFINE(HAVE_GETADDRINFO,1,[Define if you have the getaddrinfo function])
> fi
923a930
> AC_MSG_RESULT([$ac_cv_func_getaddrinfo])
I guess, instead of adding seperate code for macro checking as suggested by Tom, this might serve dual purpose.
Thanks,
Rajesh R
--
This space intentionally left non-blank.
-----Original Message-----
From: Martijn van Oosterhout [mailto:kleptog@svana.org]
Sent: Tuesday, January 24, 2006 2:46 PM
To: R, Rajesh (STSD)
Cc: Tom Lane; pgsql-hackers@postgresql.org; pgsql-general@postgresql.org
Subject: Re: [HACKERS] [GENERAL] [PATCH] Better way to check for getaddrinfo function.
On Tue, Jan 24, 2006 at 02:33:13PM +0530, R, Rajesh (STSD) wrote:
> Its not a macro.
> I meant that the code generated by AC_REPLACE_FUNCS([getaddrinfo]) by
> configure.in for "configure"
> does not have "#include <netdb.h>". Hence function is not
> detected(unresolved getaddrinfo).
> Hence I thought AC_TRY_LINK could give test program instead of
> AC_REPLACE_FUNCS taking one.
But if it isn't a macro, why do you need the header file? In C it's perfectly legal to declare the symbol yourself and try to link and it should work *unless* it's normally a macro.
We're still missing some necessary understanding here...
Have a nice day,
--
Martijn van Oosterhout <kleptog@svana.org> http://svana.org/kleptog/
> Patent. n. Genius is 5% inspiration and 95% perspiration. A patent is
> a tool for doing 5% of the work and then sitting around waiting for
> someone else to do the other 95% so you can sue them.