rust/src
bors 483fc715c6 Auto merge of #32239 - alexcrichton:fix-cross-to-freebsd, r=brson
rustbuild: Fix cross compiling to FreeBSD

This commit fixes our support for cross compiling a compiler to run on FreeBSD.
Over the weekend I managed to get a cross compiler from Linux to FreeBSD [1]
which I hope to soon use to start producing FreeBSD nightly compilers. With the
`make dist` support added in #32237 we should be able to produce standard
rustc/rust-std packages for FreeBSD through a new slave with this cross compiler.

Currently, however, we don't "Just Work" when cross compiling FreeBSD and a
number of changes were required (part of this PR). They include:

* A few build fixes were needed in LLVM. Our own branch has been rebased on the
  actual 3.8 release and I applied one extra commit [2] which contains two fixes:

  1. The LLVM CMake build system passes the `-Wl,-z,defs` flag on many
     platforms, but *not* when `CMAKE_SYSTEM_NAME` is "FreeBSD". Unfortunately
     this doesn't take into account when we're cross compiling, and as predicted
     the build will fail if `-Wl,-z,defs` is passed (see [3] for more info). To
     fix this we test `TARGET_TRIPLE` instead of the `CMAKE_SYSTEM_NAME` which
     is what we're compiling for which fixes the problem.
  2. The `PATH_MAX` constant is apparently defined in a different location than
     many other Unix systems, so a file which required this just needed some
     help to keep compiling.

* Support for compiling compiler-rt with CMake has been added to rustbuild. It
  looks like it just emulates Linux in what it compiles as it didn't seem to
  naturally produce anything else... At least the architecture is right, so
  seems good for now at least!

[1]: https://github.com/alexcrichton/port-of-rust/blob/master/prebuilt/freebsd/Dockerfile
[2]: be89e4b5
[3]: https://bugs.webkit.org/show_bug.cgi?id=138420
2016-03-15 03:21:40 -07:00
..
bootstrap Auto merge of #32239 - alexcrichton:fix-cross-to-freebsd, r=brson 2016-03-15 03:21:40 -07:00
build_helper Add a Cargo-based build system 2016-02-11 10:42:28 -08:00
compiler-rt@b6087e82ba
compiletest Clean up cloning logic in compiletest.rs. 2016-03-14 14:43:16 -04:00
doc Rollup merge of #32218 - cantino:minor_book_typo_fixes, r=steveklabnik 2016-03-13 19:33:27 +05:30
driver
etc Define AVX blend intrinsics 2016-03-13 15:04:14 +01:00
grammar Fix whitespace alignment 2015-12-24 21:39:38 -05:00
jemalloc@aab1c0a0e0 std: Update jemalloc again to the 4.* track 2016-03-04 09:49:39 -08:00
liballoc alloc: Add unstable issue for FnBox APIs 2016-03-11 22:09:58 -08:00
liballoc_jemalloc rustbuild: fix cross compilation of libstd to i686-unknown-linux-musl 2016-03-06 08:19:51 -05:00
liballoc_system bootstrap: Add a bunch of Cargo.toml files 2016-02-11 11:12:32 -08:00
libarena std: Clean out deprecated APIs 2016-03-12 12:31:13 -08:00
libbacktrace Minor spelling fixes 2016-02-09 11:52:39 -05:00
libcollections Call str::to_owned in String::from and uninline it 2016-03-13 09:36:02 +01:00
libcollectionstest std: Clean out deprecated APIs 2016-03-12 12:31:13 -08:00
libcore std: Clean out deprecated APIs 2016-03-12 12:31:13 -08:00
libcoretest std: Clean out deprecated APIs 2016-03-12 12:31:13 -08:00
libflate std: Clean out deprecated APIs 2016-03-12 12:31:13 -08:00
libfmt_macros bootstrap: Add a bunch of Cargo.toml files 2016-02-11 11:12:32 -08:00
libgetopts mk: Distribute fewer TARGET_CRATES 2016-03-07 13:05:12 -08:00
libgraphviz bootstrap: Add a bunch of Cargo.toml files 2016-02-11 11:12:32 -08:00
liblibc@2278a54955 std: Don't spawn threads in wait_with_output 2016-03-09 10:12:36 -08:00
liblog bootstrap: Add a bunch of Cargo.toml files 2016-02-11 11:12:32 -08:00
librand std: Clean out deprecated APIs 2016-03-12 12:31:13 -08:00
librbml Use .copy_from_slice() where applicable 2016-02-26 14:51:38 +01:00
librustc Auto merge of #30652 - aturon:specialization, r=nikomatsakis 2016-03-14 17:55:41 -07:00
librustc_back std: Clean out deprecated APIs 2016-03-12 12:31:13 -08:00
librustc_bitflags rustbuild: Sync some Cargo.toml/lib.rs dependencies 2016-02-21 09:49:13 -08:00
librustc_borrowck Move projection_mode to InferContext rather than SelectionContext to reduce chance of bugs 2016-03-14 15:05:13 -07:00
librustc_const_eval rustbuild 2016-03-14 09:29:18 +01:00
librustc_data_structures Move specialization graph walks to iterators; make associated type 2016-03-14 15:04:40 -07:00
librustc_driver Auto merge of #30652 - aturon:specialization, r=nikomatsakis 2016-03-14 17:55:41 -07:00
librustc_front Add pretty printer output for default 2016-03-14 15:05:16 -07:00
librustc_lint Move projection_mode to InferContext rather than SelectionContext to reduce chance of bugs 2016-03-14 15:05:13 -07:00
librustc_llvm rustbuild: Fix 32-bit Windows build 2016-03-14 14:56:48 -07:00
librustc_metadata Fixes after a rebase 2016-03-14 15:05:14 -07:00
librustc_mir Fixes after rebase 2016-03-14 15:05:15 -07:00
librustc_passes Move projection_mode to InferContext rather than SelectionContext to reduce chance of bugs 2016-03-14 15:05:13 -07:00
librustc_platform_intrinsics Regenerate x86 platform intrinsics 2016-03-13 15:09:46 +01:00
librustc_plugin Auto merge of #31916 - nagisa:mir-passmgr-2, r=arielb1 2016-03-13 05:33:28 -07:00
librustc_privacy Auto merge of #31710 - eddyb:reify, r=nikomatsakis 2016-03-09 20:16:20 -08:00
librustc_resolve Auto merge of #32227 - jseyfried:fix_import_resolution_bug, r=alexcrichton 2016-03-13 12:24:42 -07:00
librustc_trans Fixes after rebase 2016-03-14 15:05:15 -07:00
librustc_typeck Adjust error code 2016-03-14 15:05:15 -07:00
librustc_unicode Auto merge of #32133 - alexcrichton:linkchecker, r=brson 2016-03-11 04:38:04 -08:00
librustdoc Auto merge of #32169 - mitaa:anon-tip, r=nrc 2016-03-14 14:44:55 -07:00
libserialize Remove unnecessary explicit lifetime bounds. 2016-02-18 08:37:10 -05:00
libstd Auto merge of #32211 - achanda:ipv6-global, r=alexcrichton 2016-03-13 16:53:09 -07:00
libsyntax Add pretty printer output for default 2016-03-14 15:05:16 -07:00
libsyntax_ext Add default as contextual keyword, and parse it for impl items. 2016-03-14 15:04:33 -07:00
libterm rustbuild: Sync some Cargo.toml/lib.rs dependencies 2016-02-21 09:49:13 -08:00
libtest mk: Distribute fewer TARGET_CRATES 2016-03-07 13:05:12 -08:00
llvm@be89e4b532 rustbuild: Fix cross compiling to FreeBSD 2016-03-14 15:07:36 -07:00
rt Abort on stack overflow instead of re-raising SIGSEGV 2016-02-05 20:41:18 -05:00
rtstartup Register new snapshots 2015-12-21 09:26:21 -08:00
rust-installer@c37d3747da
rustc rustbuild: Refactor stage arguments away 2016-03-14 14:56:49 -07:00
rustllvm rustbuild: Fix cross compiling to FreeBSD 2016-03-14 15:07:36 -07:00
test Auto merge of #30652 - aturon:specialization, r=nikomatsakis 2016-03-14 17:55:41 -07:00
tools linkchecker: Fix path checks on Windows 2016-03-14 14:56:49 -07:00
nightlies.txt rustbuild: Refactor stage arguments away 2016-03-14 14:56:49 -07:00
snapshots.txt Fix. FreeBSD snapshot 2016-03-12 22:02:39 -08:00