1570af302Sopenharmony_ci#define _BSD_SOURCE
2570af302Sopenharmony_ci#include <stdlib.h>
3570af302Sopenharmony_ci
4570af302Sopenharmony_citypedef int (*cmpfun)(const void *, const void *);
5570af302Sopenharmony_ci
6570af302Sopenharmony_cistatic int wrapper_cmp(const void *v1, const void *v2, void *cmp)
7570af302Sopenharmony_ci{
8570af302Sopenharmony_ci	return ((cmpfun)cmp)(v1, v2);
9570af302Sopenharmony_ci}
10570af302Sopenharmony_ci
11570af302Sopenharmony_civoid qsort(void *base, size_t nel, size_t width, cmpfun cmp)
12570af302Sopenharmony_ci{
13570af302Sopenharmony_ci	__qsort_r(base, nel, width, wrapper_cmp, (void *)cmp);
14570af302Sopenharmony_ci}
15