/* Generated by ./xlat/gen.sh from ./xlat/mctl_funcs.in; do not edit. */

static const struct xlat mctl_funcs[] = {
#if defined(MC_LOCK) || (defined(HAVE_DECL_MC_LOCK) && HAVE_DECL_MC_LOCK)
	XLAT(MC_LOCK),
#endif
#if defined(MC_LOCKAS) || (defined(HAVE_DECL_MC_LOCKAS) && HAVE_DECL_MC_LOCKAS)
	XLAT(MC_LOCKAS),
#endif
#if defined(MC_SYNC) || (defined(HAVE_DECL_MC_SYNC) && HAVE_DECL_MC_SYNC)
	XLAT(MC_SYNC),
#endif
#if defined(MC_UNLOCK) || (defined(HAVE_DECL_MC_UNLOCK) && HAVE_DECL_MC_UNLOCK)
	XLAT(MC_UNLOCK),
#endif
#if defined(MC_UNLOCKAS) || (defined(HAVE_DECL_MC_UNLOCKAS) && HAVE_DECL_MC_UNLOCKAS)
	XLAT(MC_UNLOCKAS),
#endif
	XLAT_END
};
