2 # Add a pre-defined macro function to $PSI_MACROS.
4 cat >>$PSI_MACROS <<<"$1"
7 dnl PSI_MACRO(macro, decl args, action-if-true)
9 AC_CHECK_DECL(PSI_VAR_NAME($1)$2, [
11 macro_type="PSI_VAR_TYPE($1)"
12 macro_name="PSI_VAR_NAME($1)"
28 macro_call="(m4_map_args_sep([PSI_VAR_NAME(], [)], [, ], m4_bregexp($2, [(\(.*\))], [\1])))"
31 ifelse(PSI_VAR_TYPE($1), [void], [
32 macro_body="$macro_name$macro_call;"
34 macro_body="return $macro_name$macro_call;"
36 psi_add_macro "$macro_type _psi_redir_$macro_name$macro_decl { $macro_body }"
37 PSI_REDIR($macro_name, _psi_redir_$macro_name)
41 dnl PSI_EXTVAR(type var)
42 AC_DEFUN(PSI_EXTVAR, [PSI_MACRO($1)])