(CFACT-68) enable solaris compilation

This PR includes the following changes
- Disable add_platform_facts for solaris until CFACT 70 is completed
- Use `struct utsname` in place of `utsname` since in solaris sys/utsname.h, there is a global variable of the same name, which makes the typename illegal
- Use -lsocket when compiling solaris