# glibc: fix inconsistency of mips ABI mapping · gitcafe/zig

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

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

Visibility: public

Requested revision: 5b6d26e97bb97d79782f3c77b02a997e361a1497

Requested commit: 5b6d26e97bb97d79782f3c77b02a997e361a1497

Commit: 5b6d26e97bb97d79782f3c77b02a997e361a1497

Tree: 5f969f672bcdd9c1a10b62fa5428401184587484

Author: Andrew Kelley

Committer: Andrew Kelley

## Message

```
glibc: fix inconsistency of mips ABI mapping

Before this commit, glibc headers did the following mapping:

 * (zig) mipsel-linux-gnu      => (glibc) mipsel-linux-gnu
 * (zig) mipsel-linux-gnu-soft => (glibc) (none)
 * (zig) mips-linux-gnu        => (glibc) mips-linux-gnu
 * (zig) mips-linux-gnu-soft   => (glibc) (none)

While the glibc ABI stubs used the (zig) gnueabi and gnueabihf ABIs,
and the stage2 available_libcs array listed:

 * (zig) mipsel-linux-gnu
 * (zig) mips-linux-gnu

The problem is the mismatch between the ABI component of the headers and
the stubs.

This commit makes the following clarifications:

 * (zig) mips-linux-gnueabi     means soft-float
 * (zig) mipsel-linux-gnueabi   means soft-float
 * (zig) mips-linux-gnueabihf   means hard-float
 * (zig) mipsel-linux-gnueabihf means hard-float

Consequently, the glibc headers now do this mapping:

 * (zig) mips-linux-gnueabihf   => (glibc) mips-linux-gnu
 * (zig) mipsel-linux-gnueabihf => (glibc) mipsel-linux-gnu
 * (zig) mips-linux-gnueabi     => (glibc) mips-linux-gnu-soft
 * (zig) mipsel-linux-gnueabi   => (glibc) mipsel-linux-gnu-soft

The glibc ABI stubs are unchanged, and the stage2 available_libcs
array's 2 entries are modified and it gains 2 more:

 * (zig) mipsel-linux-gnueabi
 * (zig) mipsel-linux-gnueabihf
 * (zig) mips-linux-gnueabi
 * (zig) mips-linux-gnueabihf

Now everything is consistent. Zig no longer recognizes a `mips-linux-gnu`
triple; one must use `mips-linux-gnueabi` (soft float) or
`mips-linux-gnueabihf` (hard float).

```

## Parents

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

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