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

static const struct xlat evdev_ev[] = {
#if defined(EV_SYN) || (defined(HAVE_DECL_EV_SYN) && HAVE_DECL_EV_SYN)
 XLAT(EV_SYN),
#endif
#if defined(EV_KEY) || (defined(HAVE_DECL_EV_KEY) && HAVE_DECL_EV_KEY)
 XLAT(EV_KEY),
#endif
#if defined(EV_REL) || (defined(HAVE_DECL_EV_REL) && HAVE_DECL_EV_REL)
 XLAT(EV_REL),
#endif
#if defined(EV_ABS) || (defined(HAVE_DECL_EV_ABS) && HAVE_DECL_EV_ABS)
 XLAT(EV_ABS),
#endif
#if defined(EV_MSC) || (defined(HAVE_DECL_EV_MSC) && HAVE_DECL_EV_MSC)
 XLAT(EV_MSC),
#endif
#if defined(EV_SW) || (defined(HAVE_DECL_EV_SW) && HAVE_DECL_EV_SW)
 XLAT(EV_SW),
#endif
#if defined(EV_LED) || (defined(HAVE_DECL_EV_LED) && HAVE_DECL_EV_LED)
 XLAT(EV_LED),
#endif
#if defined(EV_SND) || (defined(HAVE_DECL_EV_SND) && HAVE_DECL_EV_SND)
 XLAT(EV_SND),
#endif
#if defined(EV_REP) || (defined(HAVE_DECL_EV_REP) && HAVE_DECL_EV_REP)
 XLAT(EV_REP),
#endif
#if defined(EV_FF) || (defined(HAVE_DECL_EV_FF) && HAVE_DECL_EV_FF)
 XLAT(EV_FF),
#endif
#if defined(EV_PWR) || (defined(HAVE_DECL_EV_PWR) && HAVE_DECL_EV_PWR)
 XLAT(EV_PWR),
#endif
#if defined(EV_FF_STATUS) || (defined(HAVE_DECL_EV_FF_STATUS) && HAVE_DECL_EV_FF_STATUS)
 XLAT(EV_FF_STATUS),
#endif
 XLAT_END
};
