Fixed a few other things that might break linux builds.
Added missing interfaces to sys_public.h.
Added a few workarounds to differing compiler interfaces.
Replaced the fugly PACKED macro with a unified one that works for all
architectures.

Signed-off-by: ralph engels <ralphengels@gmail.com>