Allow #[linkage] on any statics not just foreign statics.

This is especially useful for declaring a static with external linkage in an executable. There isn't any way to do that currently since we mark everything in an executable as internal by default.

Also, a quick fix to have the no-compiler-rt target option respected when building staticlibs as well.
This allows `#[linkage]` on *any* item, right? I suppose it's ok behind a feature gate, but I'm not sure how much sense it makes to put this on a function, but who knows!