Invoke rustc only once for multiple crate types