sysctl() on *BSD takes a "const int *name", whereas sysctl() on macOS
it takes an "int *name". So our configure check and sysctl() detection on
macOS currently fails:
/usr/include/sys/sysctl.h:759:9: note: candidate function not viable:
no known conversion from 'const int [2]' to 'int *' for 1st argument
int sysctl(int *, u_int, void *, size_t *, void *, size_t);
The simplest change seems to be to change the param to a "int *name", which will work during configure on macOS and *BSD systems.
For consistency I've changed both calls, but note that macOS doesn't
have KERN_ARND, so that check will always fail regardless. We can revert/add
documentation if preferred.