#include <sched.h>
#endif
-#ifdef HAVE_SYS_XATTR_H
+#if defined(HAVE_SYS_XATTR_H) && defined(__GLIBC__)
+#define USE_XATTRS
+#endif
+
+#ifdef USE_XATTRS
#include <sys/xattr.h>
#endif
}
#endif
-#ifdef HAVE_SYS_XATTR_H
+#ifdef USE_XATTRS
static int
try_getxattr(const char *path, const char *name,
return listxattr_common((const char *)(Py_uintptr_t)fd, wrap_flistxattr);
}
-#endif /* HAVE_SYS_XATTR_H */
+#endif /* USE_XATTRS */
static PyMethodDef posix_methods[] = {
{"access", posix_access, METH_VARARGS, posix_access__doc__},
#ifdef HAVE_MKFIFOAT
{"mkfifoat", posix_mkfifoat, METH_VARARGS, posix_mkfifoat__doc__},
#endif
-#ifdef HAVE_SYS_XATTR_H
+#ifdef USE_XATTRS
{"setxattr", posix_setxattr, METH_VARARGS, posix_setxattr__doc__},
{"lsetxattr", posix_lsetxattr, METH_VARARGS, posix_lsetxattr__doc__},
{"fsetxattr", posix_fsetxattr, METH_VARARGS, posix_fsetxattr__doc__},
#endif
#endif
-#ifdef HAVE_SYS_XATTR_H
+#ifdef USE_XATTRS
if (ins(d, "XATTR_CREATE", (long)XATTR_CREATE)) return -1;
if (ins(d, "XATTR_REPLACE", (long)XATTR_REPLACE)) return -1;
if (ins(d, "XATTR_SIZE_MAX", (long)XATTR_SIZE_MAX)) return -1;