Uplift *.dSYM
Fixed #4490.
The solution is based on #4570. Simply adding `.dSYM` into `add_target_specific_suffixes` will cause cargo trying to actually run that `.dSYM` folder, so I've upgraded the `linkable` boolean into a 3-value enum `TargetFileType`, to tell `cargo run` and `cargo test` to avoid these debug symbol files.
(I haven't checked if it can solve #4056, don't wanna mess with Spotlight 😝)