perf: fix strerror_r override detection, apparently part of tools/ relies on non...
[openwrt.git] / package / devel / perf / musl-include / string.h
diff --git a/package/devel/perf/musl-include/string.h b/package/devel/perf/musl-include/string.h
new file mode 100644 (file)
index 0000000..65dc2f1
--- /dev/null
@@ -0,0 +1,18 @@
+#ifndef __MUSL_COMPAT_STRING_H
+#define __MUSL_COMPAT_STRING_H
+
+#include_next <string.h>
+
+/* Change XSI compliant version into GNU extension hackery */
+static inline char *
+gnu_strerror_r(int err, char *buf, size_t buflen)
+{
+       if (strerror_r(err, buf, buflen))
+               return NULL;
+       return buf;
+}
+#ifdef _GNU_SOURCE
+#define strerror_r gnu_strerror_r
+#endif
+
+#endif