|
1 | 1 | # Macros that test various C library quirks
|
2 |
| -# $Header: /cvsroot/pgsql/config/c-library.m4,v 1.10 2001/12/20 21:23:05 momjian Exp $ |
| 2 | +# $Header: /cvsroot/pgsql/config/c-library.m4,v 1.11 2002/02/23 04:17:45 petere Exp $ |
3 | 3 |
|
4 | 4 |
|
5 | 5 | # PGAC_VAR_INT_TIMEZONE
|
@@ -196,3 +196,34 @@ if test x"$pgac_cv_header_strings_both" = x"yes"; then
|
196 | 196 | AC_DEFINE([STRING_H_WITH_STRINGS_H],1,
|
197 | 197 | [Define if string.h and strings.h may both be included])
|
198 | 198 | fi])
|
| 199 | + |
| 200 | + |
| 201 | +# PGAC_CHECK_MEMBER(AGGREGATE.MEMBER, |
| 202 | +# [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND], |
| 203 | +# [INCLUDES]) |
| 204 | +# ----------------------------------------------------------- |
| 205 | + |
| 206 | +AC_DEFUN([PGAC_CHECK_MEMBER], |
| 207 | +[changequote(<<,>>)dnl |
| 208 | +dnl The name to #define. |
| 209 | +define(<<pgac_define_name>>,translit(HAVE_$1,[a-z .*],[A-Z__P]))dnl |
| 210 | +dnl The cache variable name. |
| 211 | +define(<<pgac_cache_name>>,translit(pgac_cv_member_$1,[ .*],[__p]))dnl |
| 212 | +changequote([,])dnl |
| 213 | +AC_CACHE_CHECK([for$1],[pgac_cache_name], |
| 214 | +[AC_TRY_COMPILE([$4], |
| 215 | +[static]patsubst([$1],[\..*])[ pgac_var; |
| 216 | +if (pgac_var.]patsubst([$1],[^[^.]*\.])[) |
| 217 | +return 0;], |
| 218 | +[pgac_cache_name=yes], |
| 219 | +[pgac_cache_name=no])]) |
| 220 | +
|
| 221 | +if test x"[$]pgac_cache_name" = x"yes"; then |
| 222 | +AC_DEFINE_UNQUOTED(pgac_define_name) |
| 223 | +$2 |
| 224 | +else |
| 225 | +ifelse([$3],[],:,[$3]) |
| 226 | +fi |
| 227 | +undefine([pgac_define_name])[]dnl |
| 228 | +undefine([pgac_cache_name])[]dnl |
| 229 | +]) |