Add support for FreeBSD
The FreeBSD build is similar to the generic Unix build, with
a couple differences in the available functions.
FreeBSD needs certain flags defined for all the correct symbol
declarations to be visible (__BSD_VISIBLE, __XOPEN_SOURCE=600)
To keep the diff small, a new DE_OS_* macro for FreeBSD was not
made, since FreeBSD only differs from DE_OS_UNIX in a few places.
Where it differs the __FreeBSD__ macro is used, since there is
no good way to tell unices apart with the DE_OS_* macros.
Change-Id: I58fe857c898e9735762ffddb1fdd8e893460322f