Skip to content

Commit 03426a9

Browse files
committed
---
yaml --- r: 277679 b: refs/heads/try c: f7e1421 h: refs/heads/master i: 277677: fe1ed3a 277675: 8298301 277671: fa98e57 277663: b4b1f12
1 parent d78c9eb commit 03426a9

File tree

703 files changed

+7350
-11105
lines changed

Some content is hidden

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

703 files changed

+7350
-11105
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
refs/heads/master: 6dbb0e86aec11050480beb76eade6fb805010ba7
33
refs/heads/snap-stage3: 235d77457d80b549dad3ac36d94f235208a1eafb
4-
refs/heads/try: 936b32a514b73c1d3dfcbd9d17818f9f18bf4883
4+
refs/heads/try: f7e1421debb5bc32f60f6d7d50fc356db16800e7
55
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
66
refs/tags/release-0.2: c870d2dffb391e14efb05aa27898f1f6333a9596
77
refs/tags/release-0.3: b5f0d0f648d9a6153664837026ba1be43d3e2503

branches/try/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ Read ["Installing Rust"] from [The Book].
1616

1717
1. Make sure you have installed the dependencies:
1818

19-
* `g++` 4.7 or later or `clang++` 3.x
19+
* `g++` 4.7 or `clang++` 3.x
2020
* `python` 2.7 (but not 3.x)
2121
* GNU `make` 3.81 or later
2222
* `curl`

branches/try/configure

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1453,19 +1453,6 @@ then
14531453
cd ${CFG_BUILD_DIR}
14541454
fi
14551455

1456-
# Do a sanity check that the submodule source exists. Because GitHub
1457-
# automatically publishes broken tarballs that can't be disabled, and
1458-
# people download them and try to use them.
1459-
if [ ! -e "${CFG_SRC_DIR}/src/liblibc" ]; then
1460-
err "some submodules are missing. Is this a broken tarball?
1461-
1462-
If you downloaded this tarball from the GitHub release pages at
1463-
https://github.com/rust-lang/rust/releases,
1464-
then please delete it and instead download the source from
1465-
https://www.rust-lang.org/downloads.html"
1466-
1467-
fi
1468-
14691456
# Configure llvm, only if necessary
14701457
step_msg "looking at LLVM"
14711458
CFG_LLVM_SRC_DIR=${CFG_SRC_DIR}src/llvm/

branches/try/mk/cfg/i586-pc-windows-msvc.mk

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
11
# i586-pc-windows-msvc configuration
2-
CC_i586-pc-windows-msvc=$(CFG_MSVC_CL_i386)
3-
LINK_i586-pc-windows-msvc=$(CFG_MSVC_LINK_i386)
4-
CXX_i586-pc-windows-msvc=$(CFG_MSVC_CL_i386)
5-
CPP_i586-pc-windows-msvc=$(CFG_MSVC_CL_i386)
6-
AR_i586-pc-windows-msvc=$(CFG_MSVC_LIB_i386)
2+
CC_i586-pc-windows-msvc="$(CFG_MSVC_CL_i386)" -nologo
3+
LINK_i586-pc-windows-msvc="$(CFG_MSVC_LINK_i386)" -nologo
4+
CXX_i586-pc-windows-msvc="$(CFG_MSVC_CL_i386)" -nologo
5+
CPP_i586-pc-windows-msvc="$(CFG_MSVC_CL_i386)" -nologo
6+
AR_i586-pc-windows-msvc="$(CFG_MSVC_LIB_i386)" -nologo
77
CFG_LIB_NAME_i586-pc-windows-msvc=$(1).dll
88
CFG_STATIC_LIB_NAME_i586-pc-windows-msvc=$(1).lib
99
CFG_LIB_GLOB_i586-pc-windows-msvc=$(1)-*.{dll,lib}
1010
CFG_LIB_DSYM_GLOB_i586-pc-windows-msvc=$(1)-*.dylib.dSYM
1111
CFG_JEMALLOC_CFLAGS_i586-pc-windows-msvc :=
12-
CFG_GCCISH_CFLAGS_i586-pc-windows-msvc := -MD -arch:IA32 -nologo
13-
CFG_GCCISH_CXXFLAGS_i586-pc-windows-msvc := -MD -arch:IA32 -nologo
12+
CFG_GCCISH_CFLAGS_i586-pc-windows-msvc := -MD -arch:IA32
13+
CFG_GCCISH_CXXFLAGS_i586-pc-windows-msvc := -MD -arch:IA32
1414
CFG_GCCISH_LINK_FLAGS_i586-pc-windows-msvc :=
1515
CFG_GCCISH_DEF_FLAG_i586-pc-windows-msvc :=
1616
CFG_LLC_FLAGS_i586-pc-windows-msvc :=

branches/try/mk/cfg/i686-pc-windows-msvc.mk

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
11
# i686-pc-windows-msvc configuration
2-
CC_i686-pc-windows-msvc=$(CFG_MSVC_CL_i386)
3-
LINK_i686-pc-windows-msvc=$(CFG_MSVC_LINK_i386)
4-
CXX_i686-pc-windows-msvc=$(CFG_MSVC_CL_i386)
5-
CPP_i686-pc-windows-msvc=$(CFG_MSVC_CL_i386)
6-
AR_i686-pc-windows-msvc=$(CFG_MSVC_LIB_i386)
2+
CC_i686-pc-windows-msvc="$(CFG_MSVC_CL_i386)" -nologo
3+
LINK_i686-pc-windows-msvc="$(CFG_MSVC_LINK_i386)" -nologo
4+
CXX_i686-pc-windows-msvc="$(CFG_MSVC_CL_i386)" -nologo
5+
CPP_i686-pc-windows-msvc="$(CFG_MSVC_CL_i386)" -nologo
6+
AR_i686-pc-windows-msvc="$(CFG_MSVC_LIB_i386)" -nologo
77
CFG_LIB_NAME_i686-pc-windows-msvc=$(1).dll
88
CFG_STATIC_LIB_NAME_i686-pc-windows-msvc=$(1).lib
99
CFG_LIB_GLOB_i686-pc-windows-msvc=$(1)-*.{dll,lib}
1010
CFG_LIB_DSYM_GLOB_i686-pc-windows-msvc=$(1)-*.dylib.dSYM
1111
CFG_JEMALLOC_CFLAGS_i686-pc-windows-msvc :=
12-
CFG_GCCISH_CFLAGS_i686-pc-windows-msvc := -MD -nologo
13-
CFG_GCCISH_CXXFLAGS_i686-pc-windows-msvc := -MD -nologo
12+
CFG_GCCISH_CFLAGS_i686-pc-windows-msvc := -MD
13+
CFG_GCCISH_CXXFLAGS_i686-pc-windows-msvc := -MD
1414
CFG_GCCISH_LINK_FLAGS_i686-pc-windows-msvc :=
1515
CFG_GCCISH_DEF_FLAG_i686-pc-windows-msvc :=
1616
CFG_LLC_FLAGS_i686-pc-windows-msvc :=

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

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
11
# x86_64-pc-windows-msvc configuration
2-
CC_x86_64-pc-windows-msvc=$(CFG_MSVC_CL_x86_64)
3-
LINK_x86_64-pc-windows-msvc=$(CFG_MSVC_LINK_x86_64)
4-
CXX_x86_64-pc-windows-msvc=$(CFG_MSVC_CL_x86_64)
5-
CPP_x86_64-pc-windows-msvc=$(CFG_MSVC_CL_x86_64)
6-
AR_x86_64-pc-windows-msvc=$(CFG_MSVC_LIB_x86_64)
2+
CC_x86_64-pc-windows-msvc="$(CFG_MSVC_CL_x86_64)" -nologo
3+
LINK_x86_64-pc-windows-msvc="$(CFG_MSVC_LINK_x86_64)" -nologo
4+
CXX_x86_64-pc-windows-msvc="$(CFG_MSVC_CL_x86_64)" -nologo
5+
CPP_x86_64-pc-windows-msvc="$(CFG_MSVC_CL_x86_64)" -nologo
6+
AR_x86_64-pc-windows-msvc="$(CFG_MSVC_LIB_x86_64)" -nologo
77
CFG_LIB_NAME_x86_64-pc-windows-msvc=$(1).dll
88
CFG_STATIC_LIB_NAME_x86_64-pc-windows-msvc=$(1).lib
99
CFG_LIB_GLOB_x86_64-pc-windows-msvc=$(1)-*.{dll,lib}
1010
CFG_LIB_DSYM_GLOB_x86_64-pc-windows-msvc=$(1)-*.dylib.dSYM
1111
CFG_JEMALLOC_CFLAGS_x86_64-pc-windows-msvc :=
12-
CFG_GCCISH_CFLAGS_x86_64-pc-windows-msvc := -MD -nologo
13-
CFG_GCCISH_CXXFLAGS_x86_64-pc-windows-msvc := -MD -nologo
12+
CFG_GCCISH_CFLAGS_x86_64-pc-windows-msvc := -MD
13+
CFG_GCCISH_CXXFLAGS_x86_64-pc-windows-msvc := -MD
1414
CFG_GCCISH_LINK_FLAGS_x86_64-pc-windows-msvc :=
1515
CFG_GCCISH_DEF_FLAG_x86_64-pc-windows-msvc :=
1616
CFG_LLC_FLAGS_x86_64-pc-windows-msvc :=

branches/try/mk/crates.mk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,7 @@ DEPS_rustc_trans := arena flate getopts graphviz libc rustc rustc_back rustc_mir
120120
log syntax serialize rustc_llvm rustc_platform_intrinsics \
121121
rustc_const_math rustc_const_eval rustc_incremental
122122
DEPS_rustc_incremental := rbml rustc serialize rustc_data_structures
123-
DEPS_rustc_save_analysis := rustc log syntax serialize
123+
DEPS_rustc_save_analysis := rustc log syntax
124124
DEPS_rustc_typeck := rustc syntax rustc_platform_intrinsics rustc_const_math \
125125
rustc_const_eval
126126

branches/try/mk/ctags.mk

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,14 +15,21 @@
1515

1616
.PHONY: TAGS.emacs TAGS.vi
1717

18-
CTAGS_LOCATIONS=$(wildcard ${CFG_SRC_DIR}src/lib*)
18+
CTAGS_RUSTC_LOCATIONS=$(patsubst ${CFG_SRC_DIR}src/lib%test,, \
19+
$(wildcard ${CFG_SRC_DIR}src/lib*)) ${CFG_SRC_DIR}src/libtest
1920
CTAGS_LOCATIONS=$(patsubst ${CFG_SRC_DIR}src/librust%,, \
2021
$(patsubst ${CFG_SRC_DIR}src/lib%test,, \
2122
$(wildcard ${CFG_SRC_DIR}src/lib*))) ${CFG_SRC_DIR}src/libtest
22-
CTAGS_OPTS=--options="${CFG_SRC_DIR}src/etc/ctags.rust" --languages=Rust --recurse ${CTAGS_LOCATIONS}
23+
CTAGS_OPTS=--options="${CFG_SRC_DIR}src/etc/ctags.rust" --languages=Rust --recurse
24+
25+
TAGS.rustc.emacs:
26+
ctags -e -f $@ ${CTAGS_OPTS} ${CTAGS_RUSTC_LOCATIONS}
2327

2428
TAGS.emacs:
25-
ctags -e -f $@ ${CTAGS_OPTS}
29+
ctags -e -f $@ ${CTAGS_OPTS} ${CTAGS_LOCATIONS}
30+
31+
TAGS.rustc.vi:
32+
ctags -f $@ ${CTAGS_OPTS} ${CTAGS_RUSTC_LOCATIONS}
2633

2734
TAGS.vi:
28-
ctags -f $@ ${CTAGS_OPTS}
35+
ctags -f $@ ${CTAGS_OPTS} ${CTAGS_LOCATIONS}

branches/try/mk/debuggers.mk

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -41,13 +41,10 @@ DEBUGGER_BIN_SCRIPTS_LLDB_ABS=\
4141

4242

4343
## ALL ##
44-
DEBUGGER_RUSTLIB_ETC_SCRIPTS_ALL=gdb_load_rust_pretty_printers.py \
45-
gdb_rust_pretty_printing.py \
46-
lldb_rust_formatters.py \
47-
debugger_pretty_printers_common.py
48-
DEBUGGER_RUSTLIB_ETC_SCRIPTS_ALL_ABS=\
49-
$(foreach script,$(DEBUGGER_RUSTLIB_ETC_SCRIPTS_ALL), \
50-
$(CFG_SRC_DIR)src/etc/$(script))
44+
DEBUGGER_RUSTLIB_ETC_SCRIPTS_ALL=$(DEBUGGER_RUSTLIB_ETC_SCRIPTS_GDB) \
45+
$(DEBUGGER_RUSTLIB_ETC_SCRIPTS_LLDB)
46+
DEBUGGER_RUSTLIB_ETC_SCRIPTS_ALL_ABS=$(DEBUGGER_RUSTLIB_ETC_SCRIPTS_GDB_ABS) \
47+
$(DEBUGGER_RUSTLIB_ETC_SCRIPTS_LLDB_ABS)
5148
DEBUGGER_BIN_SCRIPTS_ALL=$(DEBUGGER_BIN_SCRIPTS_GDB) \
5249
$(DEBUGGER_BIN_SCRIPTS_LLDB)
5350
DEBUGGER_BIN_SCRIPTS_ALL_ABS=$(DEBUGGER_BIN_SCRIPTS_GDB_ABS) \

branches/try/mk/main.mk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -390,7 +390,7 @@ endif
390390
# This 'function' will determine which debugger scripts to copy based on a
391391
# target triple. See debuggers.mk for more information.
392392
TRIPLE_TO_DEBUGGER_SCRIPT_SETTING=\
393-
$(if $(findstring windows-msvc,$(1)),none,all)
393+
$(if $(findstring windows,$(1)),none,$(if $(findstring darwin,$(1)),lldb,gdb))
394394

395395
STAGES = 0 1 2 3
396396

branches/try/mk/platform.mk

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@ define CC_MACROS
148148
CFG_CC_INCLUDE_$(1)=-I $$(1)
149149
ifeq ($$(findstring msvc,$(1)),msvc)
150150
CFG_CC_OUTPUT_$(1)=-Fo:$$(1)
151-
CFG_CREATE_ARCHIVE_$(1)='$$(AR_$(1))' -OUT:$$(1)
151+
CFG_CREATE_ARCHIVE_$(1)=$$(AR_$(1)) -OUT:$$(1)
152152
else
153153
CFG_CC_OUTPUT_$(1)=-o $$(1)
154154
CFG_CREATE_ARCHIVE_$(1)=$$(AR_$(1)) crus $$(1)
@@ -187,7 +187,7 @@ define CFG_MAKE_TOOLCHAIN
187187
endif
188188
endif
189189

190-
CFG_COMPILE_C_$(1) = '$$(CC_$(1))' \
190+
CFG_COMPILE_C_$(1) = $$(CC_$(1)) \
191191
$$(CFLAGS) \
192192
$$(CFG_GCCISH_CFLAGS) \
193193
$$(CFG_GCCISH_CFLAGS_$(1)) \
@@ -198,7 +198,7 @@ define CFG_MAKE_TOOLCHAIN
198198
$$(CFG_GCCISH_LINK_FLAGS_$(1)) \
199199
$$(CFG_GCCISH_DEF_FLAG_$(1))$$(3) $$(2) \
200200
$$(call CFG_INSTALL_NAME_$(1),$$(4))
201-
CFG_COMPILE_CXX_$(1) = '$$(CXX_$(1))' \
201+
CFG_COMPILE_CXX_$(1) = $$(CXX_$(1)) \
202202
$$(CXXFLAGS) \
203203
$$(CFG_GCCISH_CFLAGS) \
204204
$$(CFG_GCCISH_CXXFLAGS) \

branches/try/mk/tests.mk

Lines changed: 72 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -450,7 +450,6 @@ CODEGEN_RS := $(call rwildcard,$(S)src/test/codegen/,*.rs)
450450
CODEGEN_CC := $(call rwildcard,$(S)src/test/codegen/,*.cc)
451451
CODEGEN_UNITS_RS := $(call rwildcard,$(S)src/test/codegen-units/,*.rs)
452452
INCREMENTAL_RS := $(call rwildcard,$(S)src/test/incremental/,*.rs)
453-
RMAKE_RS := $(wildcard $(S)src/test/run-make/*/Makefile)
454453
RUSTDOCCK_RS := $(call rwildcard,$(S)src/test/rustdoc/,*.rs)
455454

456455
RPASS_TESTS := $(RPASS_RS)
@@ -467,7 +466,6 @@ DEBUGINFO_LLDB_TESTS := $(DEBUGINFO_LLDB_RS)
467466
CODEGEN_TESTS := $(CODEGEN_RS) $(CODEGEN_CC)
468467
CODEGEN_UNITS_TESTS := $(CODEGEN_UNITS_RS)
469468
INCREMENTAL_TESTS := $(INCREMENTAL_RS)
470-
RMAKE_TESTS := $(RMAKE_RS)
471469
RUSTDOCCK_TESTS := $(RUSTDOCCK_RS)
472470

473471
CTEST_SRC_BASE_rpass = run-pass
@@ -535,11 +533,6 @@ CTEST_BUILD_BASE_incremental = incremental
535533
CTEST_MODE_incremental = incremental
536534
CTEST_RUNTOOL_incremental = $(CTEST_RUNTOOL)
537535

538-
CTEST_SRC_BASE_rmake = run-make
539-
CTEST_BUILD_BASE_rmake = run-make
540-
CTEST_MODE_rmake = run-make
541-
CTEST_RUNTOOL_rmake = $(CTEST_RUNTOOL)
542-
543536
CTEST_SRC_BASE_rustdocck = rustdoc
544537
CTEST_BUILD_BASE_rustdocck = rustdoc
545538
CTEST_MODE_rustdocck = rustdoc
@@ -616,12 +609,13 @@ ifdef CFG_ENABLE_DEBUGINFO_TESTS
616609
CTEST_RUSTC_FLAGS += -g
617610
endif
618611

619-
CTEST_COMMON_ARGS$(1)-T-$(2)-H-$(3) = \
612+
CTEST_COMMON_ARGS$(1)-T-$(2)-H-$(3) := \
620613
--compile-lib-path $$(HLIB$(1)_H_$(3)) \
621614
--run-lib-path $$(TLIB$(1)_T_$(2)_H_$(3)) \
622615
--rustc-path $$(HBIN$(1)_H_$(3))/rustc$$(X_$(3)) \
623616
--rustdoc-path $$(HBIN$(1)_H_$(3))/rustdoc$$(X_$(3)) \
624617
--llvm-filecheck $(CFG_LLVM_INST_DIR_$(CFG_BUILD))/bin/FileCheck \
618+
--aux-base $$(S)src/test/auxiliary/ \
625619
--stage-id stage$(1)-$(2) \
626620
--target $(2) \
627621
--host $(3) \
@@ -635,11 +629,6 @@ CTEST_COMMON_ARGS$(1)-T-$(2)-H-$(3) = \
635629
--host-rustcflags "$(RUSTC_FLAGS_$(3)) $$(CTEST_RUSTC_FLAGS) -L $$(RT_OUTPUT_DIR_$(3))" \
636630
--lldb-python-dir=$(CFG_LLDB_PYTHON_DIR) \
637631
--target-rustcflags "$(RUSTC_FLAGS_$(2)) $$(CTEST_RUSTC_FLAGS) -L $$(RT_OUTPUT_DIR_$(2))" \
638-
--cc '$$(CC_$(2))' \
639-
--cxx '$$(CXX_$(2))' \
640-
--cflags "$$(CFG_GCCISH_CFLAGS_$(2))" \
641-
--llvm-components "$$(LLVM_ALL_COMPONENTS_$(2))" \
642-
--llvm-cxxflags "$$(LLVM_CXXFLAGS_$(2))" \
643632
$$(CTEST_TESTARGS)
644633

645634
ifdef CFG_VALGRIND_RPASS
@@ -669,9 +658,6 @@ CTEST_DEPS_debuginfo-lldb_$(1)-T-$(2)-H-$(3) = $$(DEBUGINFO_LLDB_TESTS) \
669658
CTEST_DEPS_codegen_$(1)-T-$(2)-H-$(3) = $$(CODEGEN_TESTS)
670659
CTEST_DEPS_codegen-units_$(1)-T-$(2)-H-$(3) = $$(CODEGEN_UNITS_TESTS)
671660
CTEST_DEPS_incremental_$(1)-T-$(2)-H-$(3) = $$(INCREMENTAL_TESTS)
672-
CTEST_DEPS_rmake_$(1)-T-$(2)-H-$(3) = $$(RMAKE_TESTS) \
673-
$$(CSREQ$(1)_T_$(3)_H_$(3)) $$(SREQ$(1)_T_$(2)_H_$(3))
674-
675661
CTEST_DEPS_rustdocck_$(1)-T-$(2)-H-$(3) = $$(RUSTDOCCK_TESTS) \
676662
$$(HBIN$(1)_H_$(3))/rustdoc$$(X_$(3)) \
677663
$(S)src/etc/htmldocck.py
@@ -685,7 +671,7 @@ $(foreach host,$(CFG_HOST), \
685671

686672
define DEF_RUN_COMPILETEST
687673

688-
CTEST_ARGS$(1)-T-$(2)-H-$(3)-$(4) = \
674+
CTEST_ARGS$(1)-T-$(2)-H-$(3)-$(4) := \
689675
$$(CTEST_COMMON_ARGS$(1)-T-$(2)-H-$(3)) \
690676
--src-base $$(S)src/test/$$(CTEST_SRC_BASE_$(4))/ \
691677
--build-base $(3)/test/$$(CTEST_BUILD_BASE_$(4))/ \
@@ -716,10 +702,6 @@ endif
716702
endif
717703

718704
ifeq ($$(CTEST_DONT_RUN_$(1)-T-$(2)-H-$(3)-$(4)),)
719-
$$(call TEST_OK_FILE,$(1),$(2),$(3),$(4)): \
720-
export INCLUDE := $$(CFG_MSVC_INCLUDE_PATH_$$(HOST_$(3)))
721-
$$(call TEST_OK_FILE,$(1),$(2),$(3),$(4)): \
722-
export LIB := $$(CFG_MSVC_LIB_PATH_$$(HOST_$(3)))
723705
$$(call TEST_OK_FILE,$(1),$(2),$(3),$(4)): \
724706
$$(TEST_SREQ$(1)_T_$(2)_H_$(3)) \
725707
$$(CTEST_DEPS_$(4)_$(1)-T-$(2)-H-$(3))
@@ -742,8 +724,7 @@ endif
742724
endef
743725

744726
CTEST_NAMES = rpass rpass-valgrind rpass-full rfail-full cfail-full rfail cfail pfail \
745-
debuginfo-gdb debuginfo-lldb codegen codegen-units rustdocck incremental \
746-
rmake
727+
debuginfo-gdb debuginfo-lldb codegen codegen-units rustdocck incremental
747728

748729
$(foreach host,$(CFG_HOST), \
749730
$(eval $(foreach target,$(CFG_TARGET), \
@@ -778,7 +759,7 @@ $(foreach host,$(CFG_HOST), \
778759

779760
define DEF_RUN_PRETTY_TEST
780761

781-
PRETTY_ARGS$(1)-T-$(2)-H-$(3)-$(4) = \
762+
PRETTY_ARGS$(1)-T-$(2)-H-$(3)-$(4) := \
782763
$$(CTEST_COMMON_ARGS$(1)-T-$(2)-H-$(3)) \
783764
--src-base $$(S)src/test/$$(PRETTY_DIRNAME_$(4))/ \
784765
--build-base $(3)/test/$$(PRETTY_DIRNAME_$(4))/ \
@@ -1028,3 +1009,70 @@ endef
10281009

10291010
$(foreach crate,$(TEST_CRATES), \
10301011
$(eval $(call DEF_CHECK_CRATE,$(crate))))
1012+
1013+
######################################################################
1014+
# RMAKE rules
1015+
######################################################################
1016+
1017+
RMAKE_TESTS := $(shell ls -d $(S)src/test/run-make/*/)
1018+
RMAKE_TESTS := $(RMAKE_TESTS:$(S)src/test/run-make/%/=%)
1019+
1020+
define DEF_RMAKE_FOR_T_H
1021+
# $(1) the stage
1022+
# $(2) target triple
1023+
# $(3) host triple
1024+
1025+
1026+
ifeq ($(2)$(3),$$(CFG_BUILD)$$(CFG_BUILD))
1027+
check-stage$(1)-T-$(2)-H-$(3)-rmake-exec: \
1028+
$$(call TEST_OK_FILE,$(1),$(2),$(3),rmake)
1029+
1030+
$$(call TEST_OK_FILE,$(1),$(2),$(3),rmake): \
1031+
$$(RMAKE_TESTS:%=$(3)/test/run-make/%-$(1)-T-$(2)-H-$(3).ok)
1032+
@touch $$@
1033+
1034+
$(3)/test/run-make/%-$(1)-T-$(2)-H-$(3).ok: \
1035+
export INCLUDE := $$(CFG_MSVC_INCLUDE_PATH_$$(HOST_$(3)))
1036+
$(3)/test/run-make/%-$(1)-T-$(2)-H-$(3).ok: \
1037+
export LIB := $$(CFG_MSVC_LIB_PATH_$$(HOST_$(3)))
1038+
$(3)/test/run-make/%-$(1)-T-$(2)-H-$(3).ok: \
1039+
export MSVC_LIB := "$$(CFG_MSVC_LIB_$$(HOST_$(3)))"
1040+
$(3)/test/run-make/%-$(1)-T-$(2)-H-$(3).ok: \
1041+
$(S)src/test/run-make/%/Makefile \
1042+
$$(CSREQ$(1)_T_$(2)_H_$(3))
1043+
@rm -rf $(3)/test/run-make/$$*
1044+
@mkdir -p $(3)/test/run-make/$$*
1045+
$$(Q)touch $$@.start_time
1046+
$$(Q)$$(CFG_PYTHON) $(S)src/etc/maketest.py $$(dir $$<) \
1047+
$$(MAKE) \
1048+
$$(HBIN$(1)_H_$(3))/rustc$$(X_$(3)) \
1049+
$(3)/test/run-make/$$* \
1050+
'$$(CC_$(3))' \
1051+
"$$(CFG_GCCISH_CFLAGS_$(3))" \
1052+
$$(HBIN$(1)_H_$(3))/rustdoc$$(X_$(3)) \
1053+
"$$(TESTNAME)" \
1054+
$$(LD_LIBRARY_PATH_ENV_NAME$(1)_T_$(2)_H_$(3)) \
1055+
"$$(LD_LIBRARY_PATH_ENV_HOSTDIR$(1)_T_$(2)_H_$(3))" \
1056+
"$$(LD_LIBRARY_PATH_ENV_TARGETDIR$(1)_T_$(2)_H_$(3))" \
1057+
$(1) \
1058+
$$(S) \
1059+
$(3) \
1060+
"$$(LLVM_LIBDIR_RUSTFLAGS_$(3))" \
1061+
"$$(LLVM_ALL_COMPONENTS_$(3))" \
1062+
"$$(LLVM_CXXFLAGS_$(3))" \
1063+
'$$(CXX_$(3))'
1064+
@touch -r $$@.start_time $$@ && rm $$@.start_time
1065+
else
1066+
# FIXME #11094 - The above rule doesn't work right for multiple targets
1067+
check-stage$(1)-T-$(2)-H-$(3)-rmake-exec:
1068+
@true
1069+
1070+
endif
1071+
1072+
1073+
endef
1074+
1075+
$(foreach stage,$(STAGES), \
1076+
$(foreach target,$(CFG_TARGET), \
1077+
$(foreach host,$(CFG_HOST), \
1078+
$(eval $(call DEF_RMAKE_FOR_T_H,$(stage),$(target),$(host))))))

0 commit comments

Comments
 (0)