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

static const struct xlat sigev_value[] = {
#if defined(SIGEV_SIGNAL) || (defined(HAVE_DECL_SIGEV_SIGNAL) && HAVE_DECL_SIGEV_SIGNAL)
	XLAT(SIGEV_SIGNAL),
#endif
#if defined(SIGEV_NONE) || (defined(HAVE_DECL_SIGEV_NONE) && HAVE_DECL_SIGEV_NONE)
	XLAT(SIGEV_NONE),
#endif
#if defined(SIGEV_THREAD) || (defined(HAVE_DECL_SIGEV_THREAD) && HAVE_DECL_SIGEV_THREAD)
	XLAT(SIGEV_THREAD),
#endif
#if defined(SIGEV_THREAD_ID) || (defined(HAVE_DECL_SIGEV_THREAD_ID) && HAVE_DECL_SIGEV_THREAD_ID)
	XLAT(SIGEV_THREAD_ID),
#endif
	XLAT_END
};
