One would think that when you develop an Operating System, one of your objectives is to get it supported by as many software as you can, or at least you care. One of the things you might be trying is to make the developers of those software so that they can take care of that for you.
Unfortunately seems like FreeBSD people have not my same idea of how the thing has to be done. A simple way to check this is by looking at the nspr problem I found yesterday.
I got an emerge -e world running on Defiant after 6.2 update, and the only package to fail because of the update was dev-util/nspr. Why? Because a function was added in 6.2 series (getprotoname_r) that before was replaced by an in-line copy. The patch is trivial, and I submitted it upstream in Mozilla bug #354305 .
Now, just as an informative check, I wanted to look what ports did to that package, and gone on devel/nspr page … a similar patch to the one I’ve submitted already was present in the port since July! Version 4.6.1 of nspr. And never sent upstream.
By the way, this is yet another case where autotools beats the preprocessor tests: just AC_CHECK_FUNCS([getprocbyname_r]) and you’ll be fine.