There are no standard that says that __WORDSIZE should be defined or
in what include file. So in case its not defined we fallback to a
POSIX compliant way to determine wordsize.
This fixes build with 64 bit musl libc.
See https://tvheadend.org/issues/1983
#include <string.h>
#include <assert.h>
#include <unistd.h>
+#include <limits.h>
#if ENABLE_LOCKOWNER
#include <sys/syscall.h>
#endif
#endif /* ENABLE_QSORT_R */
/* printing */
+#ifndef __WORDSIZE
+# if ULONG_MAX == 0xffffffffffffffff
+# define __WORDSIZE 64
+# elif ULONG_MAX == 0xffffffff
+# define __WORDSIZE 32
+# endif /* ULONG_MAX */
+#endif /* __WORDSIZE */
+
# if __WORDSIZE == 64
#define PRIsword_t PRId64
#define PRIuword_t PRIu64