add a wip sparse port
add the patch to cdefs.h as well