When set target in config, cargo build all targets

I'm using cargo to cross-compile 'hello world' example

I see in cargo reference, I set target to armv7-unknown-linux-gnueabihf in .cargo/config

I think use cargo build will by default build the specified target (arm), but it built local(x86) and specified target (arm) altogather.

I want to know why it is?

My cargo version is cargo 0.26.0 (41480f5cc 2018-02-26)

Thanks