Skip to content

Commit b09ba2a

Browse files
committed
---
yaml --- r: 212285 b: refs/heads/auto c: 0335a94 h: refs/heads/master i: 212283: f2dacac v: v3
1 parent 5b1ba20 commit b09ba2a

File tree

103 files changed

+1358
-2435
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

103 files changed

+1358
-2435
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ refs/tags/release-0.3: b5f0d0f648d9a6153664837026ba1be43d3e2503
1010
refs/tags/release-0.3.1: 495bae036dfe5ec6ceafd3312b4dca48741e845b
1111
refs/tags/release-0.4: e828ea2080499553b97dfe33b3f4d472b4562ad7
1212
refs/tags/release-0.5: 7e3bcfbf21278251ee936ad53e92e9b719702d73
13-
refs/heads/auto: 776f87ef9eb3343df3f412262bd8ac9ef3e0f332
13+
refs/heads/auto: 0335a94a6803b83f3ec91391aea5473c9846bb18
1414
refs/heads/servo: af82457af293e2a842ba6b7759b70288da276167
1515
refs/tags/release-0.6: b4ebcfa1812664df5e142f0134a5faea3918544c
1616
refs/tags/0.1: b19db808c2793fe2976759b85a355c3ad8c8b336

branches/auto/AUTHORS.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -338,7 +338,7 @@ Hajime Morrita <[email protected]>
338338
Hanno Braun <[email protected]>
339339
Harry Marr <[email protected]>
340340
341-
Heejong Ahn <[email protected]>
341+
Heejong Ahn <[email protected]
342342
Henrik Schopmans <[email protected]>
343343
Herman J. Radtke III <[email protected]>
344344
HeroesGrave <[email protected]>

branches/auto/configure

Lines changed: 23 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -565,7 +565,7 @@ opt rpath 0 "build rpaths into rustc itself"
565565
# This is used by the automation to produce single-target nightlies
566566
opt dist-host-only 0 "only install bins for the host architecture"
567567
opt inject-std-version 1 "inject the current compiler version of libstd into programs"
568-
opt llvm-version-check 1 "check if the LLVM version is supported, build anyway"
568+
opt llvm-version-check 1 "don't check if the LLVM version is supported, build anyway"
569569

570570
# Optimization and debugging options. These may be overridden by the release channel, etc.
571571
opt_nosave optimize 1 "build optimized rust code"
@@ -582,7 +582,6 @@ valopt sysconfdir "/etc" "install system configuration files"
582582
valopt datadir "${CFG_PREFIX}/share" "install data"
583583
valopt infodir "${CFG_PREFIX}/share/info" "install additional info"
584584
valopt llvm-root "" "set LLVM root"
585-
valopt python "" "set path to python"
586585
valopt jemalloc-root "" "set directory where libjemalloc_pic.a is located"
587586
valopt build "${DEFAULT_BUILD}" "GNUs ./configure syntax LLVM build triple"
588587
valopt android-cross-path "/opt/ndk_standalone" "Android NDK standalone path"
@@ -594,7 +593,6 @@ valopt musl-root "/usr/local" "MUSL root installation directory"
594593
opt_nosave manage-submodules 1 "let the build manage the git submodules"
595594
opt_nosave clang 0 "prefer clang to gcc for building the runtime"
596595
opt_nosave jemalloc 1 "build liballoc with jemalloc"
597-
opt elf-tls 1 "elf thread local storage on platforms where supported"
598596

599597
valopt_nosave prefix "/usr/local" "set installation prefix"
600598
valopt_nosave local-rust-root "/usr/local" "set prefix for local rust binary"
@@ -696,9 +694,7 @@ putvar CFG_BOOTSTRAP_KEY
696694
step_msg "looking for build programs"
697695

698696
probe_need CFG_CURLORWGET curl wget
699-
if [ -z "$CFG_PYTHON_PROVIDED" ]; then
700-
probe_need CFG_PYTHON python2.7 python2.6 python2 python
701-
fi
697+
probe_need CFG_PYTHON python2.7 python2.6 python2 python
702698

703699
python_version=$($CFG_PYTHON -V 2>&1)
704700
if [ $(echo $python_version | grep -c '^Python 2\.[4567]') -ne 1 ]; then
@@ -852,6 +848,13 @@ then
852848
putvar CFG_LOCAL_RUST_ROOT
853849
fi
854850

851+
# Force freebsd to build with clang; gcc doesn't like us there
852+
if [ $CFG_OSTYPE = unknown-freebsd ]
853+
then
854+
step_msg "on FreeBSD, forcing use of clang"
855+
CFG_ENABLE_CLANG=1
856+
fi
857+
855858
# Force bitrig to build with clang; gcc doesn't like us there
856859
if [ $CFG_OSTYPE = unknown-bitrig ]
857860
then
@@ -969,8 +972,8 @@ fi
969972

970973
if [ ! -z "$CFG_ENABLE_CLANG" ]
971974
then
972-
case "$CC" in
973-
(''|*clang)
975+
if [ -z "$CC" ] || [[ $CC == *clang ]]
976+
then
974977
CFG_CLANG_VERSION=$($CFG_CC \
975978
--version \
976979
| grep version \
@@ -990,11 +993,9 @@ then
990993
err "bad CLANG version: $CFG_CLANG_VERSION, need >=3.0svn"
991994
;;
992995
esac
993-
;;
994-
(*)
996+
else
995997
msg "skipping CFG_ENABLE_CLANG version check; provided CC=$CC"
996-
;;
997-
esac
998+
fi
998999
fi
9991000

10001001
if [ ! -z "$CFG_ENABLE_CCACHE" ]
@@ -1307,12 +1308,6 @@ CFG_LLVM_SRC_DIR=${CFG_SRC_DIR}src/llvm/
13071308
for t in $CFG_HOST
13081309
do
13091310
do_reconfigure=1
1310-
is_msvc=0
1311-
case "$t" in
1312-
(*-msvc)
1313-
is_msvc=1
1314-
;;
1315-
esac
13161311

13171312
if [ -z $CFG_LLVM_ROOT ]
13181313
then
@@ -1332,13 +1327,7 @@ do
13321327
LLVM_ASSERTION_OPTS="--disable-assertions"
13331328
else
13341329
LLVM_ASSERTION_OPTS="--enable-assertions"
1335-
1336-
# Apparently even if we request assertions be enabled for MSVC,
1337-
# LLVM's CMake build system ignore this and outputs in `Release`
1338-
# anyway.
1339-
if [ ${is_msvc} -eq 0 ]; then
1340-
LLVM_INST_DIR=${LLVM_INST_DIR}+Asserts
1341-
fi
1330+
LLVM_INST_DIR=${LLVM_INST_DIR}+Asserts
13421331
fi
13431332
else
13441333
msg "not reconfiguring LLVM, external LLVM root"
@@ -1368,7 +1357,14 @@ do
13681357
done
13691358
fi
13701359

1371-
if [ ${do_reconfigure} -ne 0 ] && [ ${is_msvc} -ne 0 ]
1360+
use_cmake=0
1361+
case "$t" in
1362+
(*-msvc)
1363+
use_cmake=1
1364+
;;
1365+
esac
1366+
1367+
if [ ${do_reconfigure} -ne 0 ] && [ ${use_cmake} -ne 0 ]
13721368
then
13731369
msg "configuring LLVM for $t with cmake"
13741370

@@ -1393,7 +1389,7 @@ do
13931389
need_ok "LLVM cmake configure failed"
13941390
fi
13951391

1396-
if [ ${do_reconfigure} -ne 0 ] && [ ${is_msvc} -eq 0 ]
1392+
if [ ${do_reconfigure} -ne 0 ] && [ ${use_cmake} -eq 0 ]
13971393
then
13981394
# LLVM's configure doesn't recognize the new Windows triples yet
13991395
gnu_t=$(to_gnu_triple $t)

branches/auto/mk/cfg/x86_64-pc-windows-msvc.mk

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -80,8 +80,3 @@ CUSTOM_DEPS_rustc_llvm_T_x86_64-pc-windows-msvc += \
8080
x86_64-pc-windows-msvc/rt/rustc_llvm.def: $(S)src/etc/mklldef.py \
8181
$(S)src/librustc_llvm/lib.rs
8282
$(CFG_PYTHON) $^ $@ rustc_llvm-$(CFG_FILENAME_EXTRA)
83-
84-
# All windows nightiles are currently a GNU triple, so this MSVC triple is not
85-
# bootstrapping from itself. This is relevant during stage0, and other parts of
86-
# the build system take this into account.
87-
BOOTSTRAP_FROM_x86_64-pc-windows-msvc := x86_64-pc-windows-gnu

branches/auto/mk/crates.mk

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,3 @@ TOOL_INPUTS_$(1) := $$(call rwildcard,$$(dir $$(TOOL_SOURCE_$(1))),*.rs)
150150
endef
151151

152152
$(foreach crate,$(TOOLS),$(eval $(call RUST_TOOL,$(crate))))
153-
154-
ifdef CFG_DISABLE_ELF_TLS
155-
RUSTFLAGS_std := --cfg no_elf_tls
156-
endif

branches/auto/mk/debuggers.mk

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,7 @@
1515

1616
## GDB ##
1717
DEBUGGER_RUSTLIB_ETC_SCRIPTS_GDB=gdb_load_rust_pretty_printers.py \
18-
gdb_rust_pretty_printing.py \
19-
debugger_pretty_printers_common.py
18+
gdb_rust_pretty_printing.py
2019
DEBUGGER_RUSTLIB_ETC_SCRIPTS_GDB_ABS=\
2120
$(foreach script,$(DEBUGGER_RUSTLIB_ETC_SCRIPTS_GDB), \
2221
$(CFG_SRC_DIR)src/etc/$(script))
@@ -28,8 +27,7 @@ DEBUGGER_BIN_SCRIPTS_GDB_ABS=\
2827

2928

3029
## LLDB ##
31-
DEBUGGER_RUSTLIB_ETC_SCRIPTS_LLDB=lldb_rust_formatters.py \
32-
debugger_pretty_printers_common.py
30+
DEBUGGER_RUSTLIB_ETC_SCRIPTS_LLDB=lldb_rust_formatters.py
3331
DEBUGGER_RUSTLIB_ETC_SCRIPTS_LLDB_ABS=\
3432
$(foreach script,$(DEBUGGER_RUSTLIB_ETC_SCRIPTS_LLDB), \
3533
$(CFG_SRC_DIR)src/etc/$(script))

branches/auto/mk/docs.mk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -265,7 +265,7 @@ endef
265265
$(foreach crate,$(CRATES),$(eval $(call DEF_LIB_DOC,$(crate))))
266266

267267
COMPILER_DOC_TARGETS := $(CRATES:%=doc/%/index.html)
268-
ifdef CFG_ENABLE_COMPILER_DOCS
268+
ifdef CFG_COMPILER_DOCS
269269
DOC_TARGETS += $(COMPILER_DOC_TARGETS)
270270
else
271271
DOC_TARGETS += $(DOC_CRATES:%=doc/%/index.html)

branches/auto/mk/main.mk

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,9 @@ ifneq ($(wildcard $(subst $(SPACE),\$(SPACE),$(CFG_GIT_DIR))),)
7474
endif
7575
endif
7676

77+
CFG_BUILD_DATE = $(shell date +%F)
78+
CFG_VERSION += (built $(CFG_BUILD_DATE))
79+
7780
# Windows exe's need numeric versions - don't use anything but
7881
# numbers and dots here
7982
CFG_VERSION_WIN = $(CFG_RELEASE_NUM)
@@ -127,7 +130,9 @@ CFG_JEMALLOC_FLAGS += $(JEMALLOC_FLAGS)
127130

128131
ifdef CFG_ENABLE_DEBUG_ASSERTIONS
129132
$(info cfg: enabling debug assertions (CFG_ENABLE_DEBUG_ASSERTIONS))
130-
CFG_RUSTC_FLAGS += -C debug-assertions=on
133+
CFG_RUSTC_FLAGS += --cfg debug -C debug-assertions=on
134+
else
135+
CFG_RUSTC_FLAGS += --cfg ndebug
131136
endif
132137

133138
ifdef CFG_ENABLE_DEBUGINFO
@@ -329,6 +334,7 @@ endif
329334
ifdef CFG_VER_HASH
330335
export CFG_VER_HASH
331336
endif
337+
export CFG_BUILD_DATE
332338
export CFG_VERSION
333339
export CFG_VERSION_WIN
334340
export CFG_RELEASE

branches/auto/mk/target.mk

Lines changed: 0 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -181,42 +181,3 @@ $(foreach host,$(CFG_HOST), \
181181
$(foreach stage,$(STAGES), \
182182
$(foreach tool,$(TOOLS), \
183183
$(eval $(call TARGET_TOOL,$(stage),$(target),$(host),$(tool)))))))
184-
185-
# We have some triples which are bootstrapped from other triples, and this means
186-
# that we need to fixup some of the native tools that a triple depends on.
187-
#
188-
# For example, MSVC requires the llvm-ar.exe executable to manage archives, but
189-
# it bootstraps from the GNU Windows triple. This means that the compiler will
190-
# add this directory to PATH when executing new processes:
191-
#
192-
# $SYSROOT/rustlib/x86_64-pc-windows-gnu/bin
193-
#
194-
# Unfortunately, however, the GNU triple is not known about in stage0, so the
195-
# tools are actually located in:
196-
#
197-
# $SYSROOT/rustlib/x86_64-pc-windows-msvc/bin
198-
#
199-
# To remedy this problem, the rules below copy all native tool dependencies into
200-
# the bootstrap triple's location in stage 0 so the bootstrap compiler can find
201-
# the right sets of tools. Later stages (1+) will have the right host triple for
202-
# the compiler, so there's no need to worry there.
203-
#
204-
# $(1) - stage
205-
# $(2) - triple that's being used as host/target
206-
# $(3) - triple snapshot is built for
207-
# $(4) - crate
208-
# $(5) - tool
209-
define MOVE_TOOLS_TO_SNAPSHOT_HOST_DIR
210-
ifneq (,$(3))
211-
$$(TLIB$(1)_T_$(2)_H_$(2))/stamp.$(4): $$(HLIB$(1)_H_$(2))/rustlib/$(3)/bin/$(5)
212-
213-
$$(HLIB$(1)_H_$(2))/rustlib/$(3)/bin/$(5): $$(TBIN$(1)_T_$(2)_H_$(2))/$(5)
214-
mkdir -p $$(@D)
215-
cp $$< $$@
216-
endif
217-
endef
218-
219-
$(foreach target,$(CFG_TARGET), \
220-
$(foreach crate,$(CRATES), \
221-
$(foreach tool,$(NATIVE_TOOL_DEPS_$(crate)_T_$(target)), \
222-
$(eval $(call MOVE_TOOLS_TO_SNAPSHOT_HOST_DIR,0,$(target),$(BOOTSTRAP_FROM_$(target)),$(crate),$(tool))))))

branches/auto/mk/tests.mk

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -172,24 +172,23 @@ check: check-sanitycheck cleantmptestlogs cleantestlibs all check-stage2 tidy
172172
$(Q)$(CFG_PYTHON) $(S)src/etc/check-summary.py tmp/*.log
173173

174174
# As above but don't bother running tidy.
175-
check-notidy: check-sanitycheck cleantmptestlogs cleantestlibs all check-stage2
175+
check-notidy: cleantmptestlogs cleantestlibs all check-stage2
176176
$(Q)$(CFG_PYTHON) $(S)src/etc/check-summary.py tmp/*.log
177177

178178
# A slightly smaller set of tests for smoke testing.
179-
check-lite: check-sanitycheck cleantestlibs cleantmptestlogs \
179+
check-lite: cleantestlibs cleantmptestlogs \
180180
$(foreach crate,$(TEST_TARGET_CRATES),check-stage2-$(crate)) \
181181
check-stage2-rpass check-stage2-rpass-valgrind \
182182
check-stage2-rfail check-stage2-cfail check-stage2-pfail check-stage2-rmake
183183
$(Q)$(CFG_PYTHON) $(S)src/etc/check-summary.py tmp/*.log
184184

185185
# Only check the 'reference' tests: rpass/cfail/rfail/rmake.
186-
check-ref: check-sanitycheck cleantestlibs cleantmptestlogs check-stage2-rpass \
187-
check-stage2-rpass-valgrind check-stage2-rfail check-stage2-cfail check-stage2-pfail \
188-
check-stage2-rmake
186+
check-ref: cleantestlibs cleantmptestlogs check-stage2-rpass check-stage2-rpass-valgrind \
187+
check-stage2-rfail check-stage2-cfail check-stage2-pfail check-stage2-rmake
189188
$(Q)$(CFG_PYTHON) $(S)src/etc/check-summary.py tmp/*.log
190189

191190
# Only check the docs.
192-
check-docs: check-sanitycheck cleantestlibs cleantmptestlogs check-stage2-docs
191+
check-docs: cleantestlibs cleantmptestlogs check-stage2-docs
193192
$(Q)$(CFG_PYTHON) $(S)src/etc/check-summary.py tmp/*.log
194193

195194
# Some less critical tests that are not prone to breakage.

branches/auto/src/compiletest/runtest.rs

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ use std::fmt;
2424
use std::fs::{self, File};
2525
use std::io::BufReader;
2626
use std::io::prelude::*;
27+
use std::iter::repeat;
2728
use std::net::TcpStream;
2829
use std::path::{Path, PathBuf};
2930
use std::process::{Command, Output, ExitStatus};
@@ -927,12 +928,12 @@ fn check_forbid_output(props: &TestProps,
927928
}
928929
}
929930

930-
fn check_expected_errors(expected_errors: Vec<errors::ExpectedError>,
931+
fn check_expected_errors(expected_errors: Vec<errors::ExpectedError> ,
931932
testfile: &Path,
932933
proc_res: &ProcRes) {
933934

934935
// true if we found the error in question
935-
let mut found_flags = vec![false; expected_errors.len()];
936+
let mut found_flags: Vec<_> = repeat(false).take(expected_errors.len()).collect();
936937

937938
if proc_res.status.success() {
938939
fatal("process did not return an error status");
@@ -953,10 +954,14 @@ fn check_expected_errors(expected_errors: Vec<errors::ExpectedError>,
953954
}
954955
}
955956

956-
// A multi-line error will have followup lines which start with a space
957-
// or open paren.
957+
// A multi-line error will have followup lines which will always
958+
// start with one of these strings.
958959
fn continuation( line: &str) -> bool {
959-
line.starts_with(" ") || line.starts_with("(")
960+
line.starts_with(" expected") ||
961+
line.starts_with(" found") ||
962+
// 1234
963+
// Should have 4 spaces: see issue 18946
964+
line.starts_with("(")
960965
}
961966

962967
// Scan and extract our error/warning messages,

branches/auto/src/doc/index.md

Lines changed: 7 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ series of small examples.
2525
If you need help with something, or just want to talk about Rust with others,
2626
there are a few places you can do that:
2727

28-
The Rust IRC channels on [irc.mozilla.org](irc://irc.mozilla.org/) are the
28+
The Rust IRC channels on [irc.mozilla.org](http://irc.mozilla.org/) are the
2929
fastest way to get help.
3030
[`#rust`](http://chat.mibbit.com/?server=irc.mozilla.org&channel=%23rust) is
3131
the general discussion channel, and you'll find people willing to help you with
@@ -40,15 +40,15 @@ There's also
4040
[`#rust-internals`](http://chat.mibbit.com/?server=irc.mozilla.org&channel=%23rust-internals), which is for discussion of the development of Rust itself.
4141

4242
You can also get help on [Stack
43-
Overflow](https://stackoverflow.com/questions/tagged/rust). Searching for your
43+
Overflow](http://stackoverflow.com/questions/tagged/rust). Searching for your
4444
problem might reveal someone who has asked it before!
4545

46-
There is an active [subreddit](https://reddit.com/r/rust) with lots of
46+
There is an active [subreddit](http://reddit.com/r/rust) with lots of
4747
discussion and news about Rust.
4848

49-
There is also a [user forum](https://users.rust-lang.org), for all
50-
user-oriented discussion, and a [developer
51-
forum](https://internals.rust-lang.org/), where the development of Rust
49+
There is also a [user forum](http://users.rust-lang.org), for all
50+
user-oriented discussion, and a [developer
51+
forum](http://internals.rust-lang.org/), where the development of Rust
5252
itself is discussed.
5353

5454
# Specification
@@ -61,7 +61,7 @@ the language in as much detail as possible is in [the reference](reference.html)
6161
Rust is still a young language, so there isn't a ton of tooling yet, but the
6262
tools we have are really nice.
6363

64-
[Cargo](https://crates.io) is Rust's package manager, and its website contains
64+
[Cargo](http://crates.io) is Rust's package manager, and its website contains
6565
lots of good documentation.
6666

6767
[`rustdoc`](book/documentation.html) is used to generate documentation for Rust code.
@@ -86,14 +86,3 @@ something if you know its name.
8686

8787
If you encounter an error while compiling your code you may be able to look it
8888
up in the [Rust Compiler Error Index](error-index.html).
89-
90-
# Community Translations
91-
92-
Several projects have been started to translate the documentation into other
93-
languages:
94-
95-
- [Russian](https://github.com/kgv/rust_book_ru)
96-
- [Korean](https://github.com/rust-kr/doc.rust-kr.org)
97-
- [Chinese](https://github.com/KaiserY/rust-book-chinese)
98-
- [Spanish](https://github.com/goyox86/elpr)
99-

0 commit comments

Comments
 (0)