There is no easy solution as described on first comment in bug report,
and some code (like busybox) assumes facilitynames existance when
SYSLOG_NAMES is defined (so we can't just remove it as suggested in
comment #2).
So use the easier solution and guard it with __USE_MISC.
#define LOG_PRI(p) ((p) & LOG_PRIMASK)
#define LOG_MAKEPRI(fac, pri) ((fac) | (pri))
-#ifdef SYSLOG_NAMES
+#if defined SYSLOG_NAMES && defined __USE_MISC
#define INTERNAL_NOPRI 0x10 /* the "no priority" priority */
/* mark "facility" */
#define INTERNAL_MARK LOG_MAKEPRI(LOG_NFACILITIES << 3, 0)
/* facility of pri */
#define LOG_FAC(p) (((p) & LOG_FACMASK) >> 3)
-#ifdef SYSLOG_NAMES
+#if defined SYSLOG_NAMES && defined __USE_MISC
CODE facilitynames[] =
{
{ "auth", LOG_AUTH },