# breaking changes to the way targets work in zig · gitcafe/zig

[View on GitCafe](https://git.cafe/gitcafe/zig/commit/ade10387a583351fe597b58c4c9ceb97d959adf5)

Repository: [gitcafe/zig](https://git.cafe/gitcafe/zig)

Visibility: public

Requested revision: ade10387a583351fe597b58c4c9ceb97d959adf5

Requested commit: ade10387a583351fe597b58c4c9ceb97d959adf5

Commit: ade10387a583351fe597b58c4c9ceb97d959adf5

Tree: 5e508bc243ec6e65c1d2a11908d7e28bcf0b8c48

Author: Andrew Kelley

Committer: Andrew Kelley

## Message

```
breaking changes to the way targets work in zig

 * CLI: `-target [name]` instead of `--target-*` args.
   This matches clang's API.
 * `builtin.Environ` renamed to `builtin.Abi`
   - likewise `builtin.environ` renamed to `builtin.abi`
 * stop hiding the concept of sub-arch. closes #1526
 * `zig targets` only shows available targets. closes #438
 * include all targets in readme, even those that don't
   print with `zig targets` but note they are Tier 4
 * refactor target.cpp and make the naming conventions
   more consistent
 * introduce the concept of a "default C ABI" for a given
   OS/Arch combo. As a rule of thumb, if the system compiler
   is clang or gcc then the default C ABI is the gnu ABI.

```

## Parents

- [1ec1097bd389b9af1b3e40d9edbc4c1c0b65f6a1](https://git.cafe/gitcafe/zig/commit/1ec1097bd389b9af1b3e40d9edbc4c1c0b65f6a1?format=markdown)

[Source at this commit](https://git.cafe/gitcafe/zig/tree/ade10387a583351fe597b58c4c9ceb97d959adf5?format=markdown)
