expand let marshal's parameters
[m6w6/ext-psi] / m4 / psi_macro.m4
index 0ce6f84ac15b5dce19b0af3abf12398bce2bc613..b3ee9882ebb7d8fda758b79a2b1cee9e69d98ccc 100644 (file)
@@ -1,3 +1,11 @@
+# psi_add_macro(macro)
+# Add a pre-defined macro function to $PSI_MACROS.
+psi_add_macro() {
+       cat >>$PSI_MACROS <<EOF
+$1
+EOF
+}
+
 dnl PSI_MACRO(macro, decl args, action-if-true)
 AC_DEFUN(PSI_MACRO, [
        AC_CHECK_DECL(PSI_VAR_NAME($1)$2, [
@@ -27,9 +35,8 @@ AC_DEFUN(PSI_MACRO, [
                ], [
                        macro_body="return $macro_name$macro_call;"
                ])
-               psi_macro="$macro_type psi_macro_$macro_name$macro_decl { $macro_body }"
-               PSI_MACROS="$PSI_MACROS $psi_macro"
-               PSI_REDIR($macro_name, psi_macro_$macro_name)
+               psi_add_macro "$macro_type _psi_redir_$macro_name$macro_decl { $macro_body }"
+               PSI_REDIR($macro_name, _psi_redir_$macro_name)
        ], [], PSI_INCLUDES)
 ])