fix undefined macros in musl musl does not define glibc-specific macros, so use a simple version of the macro when it is not defined. This is very inefficient, however, but copying the code from glibc is not really possible because it is LGPL while libselinux in Public Domain, and we want to avoid license propagation, so this macro is completely written from scratch, and non-optimal. Signed-off-by: "Yann E. MORIN" diff -durN libselinux-2.1.13.orig/src/booleans.c libselinux-2.1.13/src/booleans.c --- libselinux-2.1.13.orig/src/booleans.c 2013-02-06 02:43:22.000000000 +0100 +++ libselinux-2.1.13/src/booleans.c 2015-07-26 20:40:41.311801914 +0200 @@ -62,6 +62,14 @@ goto bad; } +/* Simple (but inefficient) version of _D_ALLOC_NAMLEN when + * building with a C library that misses it (e.g. musl). + * Note: glibc does a strlen on (d)->d_name, so assume it is safe. + */ +#ifndef _D_ALLOC_NAMLEN +#define _D_ALLOC_NAMLEN(d) (strlen((d)->d_name)+1) +#endif + for (i = 0; i < *len; i++) { n[i] = (char *)malloc(_D_ALLOC_NAMLEN(namelist[i])); if (!n[i]) {