rust/mk/cfg
Timon Van Overveldt f7247d1071 Add ARM MUSL targets.
The targets are:
- `arm-unknown-linux-musleabi`
- `arm-unknown-linux-musleabihf`
- `armv7-unknown-linux-musleabihf`

These mirror the existing `gnueabi` targets.

All of these targets produce fully static binaries, similar to the
x86 MUSL targets.

For now these targets can only be used with `--rustbuild` builds, as
https://github.com/rust-lang/compiler-rt/pull/22 only made the
necessary compiler-rt changes in the CMake configs, not the plain
GNU Make configs.

I've tested these targets GCC 5.3.0 compiled again musl-1.1.12
(downloaded from http://musl.codu.org/). An example `./configure`
invocation is:

```
./configure \
    --enable-rustbuild
    --target=arm-unknown-linux-musleabi \
    --musl-root="$MUSL_ROOT"
```

where `MUSL_ROOT` points to the `arm-linux-musleabi` prefix.
Usually that path will be of the form
`/foobar/arm-linux-musleabi/arm-linux-musleabi`.

Usually the cross-compile toolchain will live under
`/foobar/arm-linux-musleabi/bin`. That path should either by added
to your `PATH` variable, or you should add a section to your
`config.toml` as follows:

```
[target.arm-unknown-linux-musleabi]
cc = "/foobar/arm-linux-musleabi/bin/arm-linux-musleabi-gcc"
cxx = "/foobar/arm-linux-musleabi/bin/arm-linux-musleabi-g++"
```

As a prerequisite you'll also have to put a cross-compiled static
`libunwind.a` library in `$MUSL_ROOT/lib`. This is similar to [how
the x86_64 MUSL targets are built]
(https://doc.rust-lang.org/book/advanced-linking.html).
2016-07-30 15:39:13 -05:00
..
aarch64-apple-ios.mk mk: Remove -Wall -Werror everywhere 2016-07-19 00:04:47 -07:00
aarch64-linux-android.mk Revert "mk: fix some undefined variable warnings" 2016-02-01 23:27:04 -08:00
aarch64-unknown-linux-gnu.mk
arm-linux-androideabi.mk
arm-unknown-linux-gnueabi.mk mk: Specify armv6 for gcc on arm-unknown-linux-* 2016-02-20 18:21:26 -08:00
arm-unknown-linux-gnueabihf.mk mk: Specify armv6 for gcc on arm-unknown-linux-* 2016-02-20 18:21:26 -08:00
arm-unknown-linux-musleabi.mk Add ARM MUSL targets. 2016-07-30 15:39:13 -05:00
arm-unknown-linux-musleabihf.mk Add ARM MUSL targets. 2016-07-30 15:39:13 -05:00
armv7-apple-ios.mk mk: Remove -Wall -Werror everywhere 2016-07-19 00:04:47 -07:00
armv7-linux-androideabi.mk Add armv7-linux-androideabi target. 2016-05-07 13:29:57 +03:00
armv7-unknown-linux-gnueabihf.mk Eradicate last vestiges of armv6 2016-02-22 08:25:29 +01:00
armv7-unknown-linux-musleabihf.mk Add ARM MUSL targets. 2016-07-30 15:39:13 -05:00
armv7s-apple-ios.mk mk: Remove -Wall -Werror everywhere 2016-07-19 00:04:47 -07:00
asmjs-unknown-emscripten.mk mk: Remove -Wall -Werror everywhere 2016-07-19 00:04:47 -07:00
i386-apple-ios.mk mk: Remove -Wall -Werror everywhere 2016-07-19 00:04:47 -07:00
i586-pc-windows-msvc.mk test: Move run-make tests into compiletest 2016-04-28 21:46:40 -07:00
i586-unknown-linux-gnu.mk mk: Remove -Wall -Werror everywhere 2016-07-19 00:04:47 -07:00
i686-apple-darwin.mk mk: Remove -Wall -Werror everywhere 2016-07-19 00:04:47 -07:00
i686-linux-android.mk
i686-pc-windows-gnu.mk mk: Remove -Wall -Werror everywhere 2016-07-19 00:04:47 -07:00
i686-pc-windows-msvc.mk test: Move run-make tests into compiletest 2016-04-28 21:46:40 -07:00
i686-unknown-freebsd.mk mk: Remove -Wall -Werror everywhere 2016-07-19 00:04:47 -07:00
i686-unknown-linux-gnu.mk mk: Remove -Wall -Werror everywhere 2016-07-19 00:04:47 -07:00
i686-unknown-linux-musl.mk mk: Remove -Wall -Werror everywhere 2016-07-19 00:04:47 -07:00
le32-unknown-nacl.mk Add PNaCl target info to the makefile target cfgs and initialize the PNaCl target 2015-12-19 00:26:53 -06:00
mips-unknown-linux-gnu.mk mk: Don't pass -msoft-float on mips-gnu 2016-07-15 13:46:09 -07:00
mips-unknown-linux-musl.mk rustc: set MIPS cpu/features in the compiler 2016-01-30 14:44:40 -05:00
mipsel-unknown-linux-gnu.mk rustc: Set MIPS cpu/features in the compiler 2016-01-29 23:44:46 -08:00
mipsel-unknown-linux-musl.mk rustc: set MIPS cpu/features in the compiler 2016-01-30 14:44:40 -05:00
powerpc64-unknown-linux-gnu.mk mk: Remove -Wall -Werror everywhere 2016-07-19 00:04:47 -07:00
powerpc64le-unknown-linux-gnu.mk mk: Remove -Wall -Werror everywhere 2016-07-19 00:04:47 -07:00
powerpc-unknown-linux-gnu.mk mk: Remove -Wall -Werror everywhere 2016-07-19 00:04:47 -07:00
x86_64-apple-darwin.mk mk: Remove -Wall -Werror everywhere 2016-07-19 00:04:47 -07:00
x86_64-apple-ios.mk mk: Remove -Wall -Werror everywhere 2016-07-19 00:04:47 -07:00
x86_64-pc-windows-gnu.mk mk: Remove -Wall -Werror everywhere 2016-07-19 00:04:47 -07:00
x86_64-pc-windows-msvc.mk test: Move run-make tests into compiletest 2016-04-28 21:46:40 -07:00
x86_64-rumprun-netbsd.mk mk: Remove -Wall -Werror everywhere 2016-07-19 00:04:47 -07:00
x86_64-sun-solaris.mk mk: Remove -Wall -Werror everywhere 2016-07-19 00:04:47 -07:00
x86_64-unknown-bitrig.mk mk: Remove -Wall -Werror everywhere 2016-07-19 00:04:47 -07:00
x86_64-unknown-dragonfly.mk mk: Remove -Wall -Werror everywhere 2016-07-19 00:04:47 -07:00
x86_64-unknown-freebsd.mk mk: Remove -Wall -Werror everywhere 2016-07-19 00:04:47 -07:00
x86_64-unknown-linux-gnu.mk mk: Remove -Wall -Werror everywhere 2016-07-19 00:04:47 -07:00
x86_64-unknown-linux-musl.mk mk: Remove -Wall -Werror everywhere 2016-07-19 00:04:47 -07:00
x86_64-unknown-netbsd.mk mk: Remove -Wall -Werror everywhere 2016-07-19 00:04:47 -07:00
x86_64-unknown-openbsd.mk mk: Remove -Wall -Werror everywhere 2016-07-19 00:04:47 -07:00