mhd_check_func.m4: fixed macro

Previously macro failed with comma-delimited and quoted parameters
This commit is contained in:
Evgeny Grin (Karlson2k)
2022-04-03 20:17:42 +03:00
parent d39a3da584
commit 203f6b604e
+10 -10
View File
@@ -48,19 +48,19 @@
AC_DEFUN([MHD_CHECK_FUNC],[dnl
AC_PREREQ([2.64])dnl for AS_VAR_IF, m4_ifblank, m4_ifnblank
m4_ifblank(m4_translit($1,[()],[ ]), [m4_fatal([First macro argument must not be empty])])dnl
m4_ifblank($3, [m4_fatal([Third macro argument must not be empty])])dnl
m4_bmatch(m4_normalize($1), [\s],dnl
m4_ifblank(m4_translit([$1],[()],[ ]), [m4_fatal([First macro argument must not be empty])])dnl
m4_ifblank([$3], [m4_fatal([Third macro argument must not be empty])])dnl
m4_bmatch(m4_normalize([$1]), [\s],dnl
[m4_fatal([First macro argument must not contain whitespaces])])dnl
m4_if(m4_index($3, m4_normalize(m4_translit($1,[()],[ ]))), [-1], dnl
[m4_fatal([CHECK_CODE parameter (third macro argument) does not contain ']m4_normalize($1)[' token])])dnl
AS_VAR_PUSHDEF([cv_Var], [mhd_cv_func_]m4_bpatsubst(m4_normalize(m4_translit($1,[()],[ ])),[[^a-zA-Z0-9]],[_]))dnl
m4_if(m4_index([$3], m4_normalize(m4_translit([$1],[()],[ ]))), [-1], dnl
[m4_fatal([CHECK_CODE parameter (third macro argument) does not contain ']m4_normalize([$1])[' token])])dnl
AS_VAR_PUSHDEF([cv_Var], [mhd_cv_func_]m4_bpatsubst(_mhd_norm_expd(m4_translit([$1],[()],[ ])),[[^a-zA-Z0-9]],[_]))dnl
dnl
AC_CACHE_CHECK([for function $1], [cv_Var],
AC_CACHE_CHECK([for function $1], cv_Var,
[dnl
m4_ifnblank([$6],[dnl
mhd_check_func_SAVE_LIBS="$LIBS"
LIBS="$LIBS m4_normalize([$6])"
LIBS="$LIBS _mhd_norm_expd([$6])"
])dnl
AC_LINK_IFELSE(
[AC_LANG_PROGRAM([m4_default_nblank([$2],[AC_INCLUDES_DEFAULT])], [$3]) ],
@@ -71,8 +71,8 @@ AC_DEFUN([MHD_CHECK_FUNC],[dnl
])dnl
])
AS_VAR_IF([cv_Var], ["yes"],
[AC_DEFINE([[HAVE_]]m4_bpatsubst(m4_toupper(m4_normalize(m4_translit($1,[()],[ ]))),[[^A-Z0-9]],[_]),
[1], [Define to 1 if you have the `]m4_normalize(m4_translit($1,[()],[ ]))[' function.])
[AC_DEFINE([[HAVE_]]m4_bpatsubst(m4_toupper(_mhd_norm_expd(m4_translit([$1],[()],[ ]))),[[^A-Z0-9]],[_]),
[1], [Define to 1 if you have the ']_mhd_norm_expd(m4_translit([$1],[()],[ ]))[' function.])
m4_n([$4])dnl
], [$5])
AS_VAR_POPDEF([cv_Var])dnl