Skip to content

Commit 2e281a9

Browse files
committed
---
yaml --- r: 146394 b: refs/heads/try2 c: 4910b7a h: refs/heads/master v: v3
1 parent 427c8d6 commit 2e281a9

Some content is hidden

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

74 files changed

+1707
-1310
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ refs/heads/snap-stage3: 78a7676898d9f80ab540c6df5d4c9ce35bb50463
55
refs/heads/try: 519addf6277dbafccbb4159db4b710c37eaa2ec5
66
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
77
refs/heads/ndm: f3868061cd7988080c30d6d5bf352a5a5fe2460b
8-
refs/heads/try2: e58270219fcb40e342d3f51ef140574960b21a67
8+
refs/heads/try2: 4910b7ac28a8c489672573696e81ef6c8d54d1b3
99
refs/heads/dist-snap: ba4081a5a8573875fed17545846f6f6902c8ba8d
1010
refs/tags/release-0.2: c870d2dffb391e14efb05aa27898f1f6333a9596
1111
refs/tags/release-0.3: b5f0d0f648d9a6153664837026ba1be43d3e2503

branches/try2/Makefile.in

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -249,12 +249,12 @@ endef
249249
# by $(2) with a space character prefix, which invalidates the
250250
# construction $(1)$(2).
251251
define CHECK_FOR_OLD_GLOB_MATCHES_EXCEPT
252-
$(Q)MATCHES="$(filter-out %$(3),$(wildcard $(1)/$(2)))"; if [ -n "$$MATCHES" ] ; then echo "Warning: there are previous" \'$(2)\' "libraries:" $$MATCHES; fi
252+
$(Q)MATCHES="$(filter-out %$(3),$(wildcard $(1)/$(2)))"; if [ -n "$$MATCHES" ] ; then echo "warning: there are previous" \'$(2)\' "libraries:" $$MATCHES; fi
253253
endef
254254

255255
# Same interface as above, but deletes rather than just listing the files.
256256
define REMOVE_ALL_OLD_GLOB_MATCHES_EXCEPT
257-
$(Q)MATCHES="$(filter-out %$(3),$(wildcard $(1)/$(2)))"; if [ -n "$$MATCHES" ] ; then echo "Warning: removing previous" \'$(2)\' "libraries:" $$MATCHES; rm $$MATCHES ; fi
257+
$(Q)MATCHES="$(filter-out %$(3),$(wildcard $(1)/$(2)))"; if [ -n "$$MATCHES" ] ; then echo "warning: removing previous" \'$(2)\' "libraries:" $$MATCHES; rm $$MATCHES ; fi
258258
endef
259259

260260
# We use a different strategy for LIST_ALL_OLD_GLOB_MATCHES_EXCEPT
@@ -265,7 +265,7 @@ endef
265265
# be run at the outset of a command list in a rule.)
266266
ifdef VERBOSE
267267
define LIST_ALL_OLD_GLOB_MATCHES_EXCEPT
268-
@echo "Info: now are following matches for" '$(2)' "libraries:"
268+
@echo "info: now are following matches for" '$(2)' "libraries:"
269269
@( cd $(1) && ( ls $(2) 2>/dev/null || true ) | grep -v $(3) || true )
270270
endef
271271
else
@@ -625,10 +625,10 @@ config.stamp: $(S)configure $(S)Makefile.in $(S)src/snapshots.txt
625625
# new definitions), make sure definitions always precede their uses,
626626
# especially for the dependency lists of recipes.
627627

628+
include $(CFG_SRC_DIR)mk/rt.mk
628629
include $(CFG_SRC_DIR)mk/target.mk
629630
include $(CFG_SRC_DIR)mk/host.mk
630631
include $(CFG_SRC_DIR)mk/stage0.mk
631-
include $(CFG_SRC_DIR)mk/rt.mk
632632
include $(CFG_SRC_DIR)mk/rustllvm.mk
633633
include $(CFG_SRC_DIR)mk/tools.mk
634634
include $(CFG_SRC_DIR)mk/docs.mk
@@ -677,12 +677,6 @@ ifneq ($(findstring clean,$(MAKECMDGOALS)),)
677677
endif
678678

679679
ifneq ($(findstring install,$(MAKECMDGOALS)),)
680-
ifdef DESTDIR
681-
CFG_INFO := $(info cfg: setting CFG_PREFIX via DESTDIR, $(DESTDIR)/$(CFG_PREFIX))
682-
CFG_PREFIX:=$(DESTDIR)/$(CFG_PREFIX)
683-
export CFG_PREFIX
684-
endif
685-
686680
CFG_INFO := $(info cfg: including install rules)
687681
include $(CFG_SRC_DIR)mk/install.mk
688682
endif

branches/try2/configure

Lines changed: 11 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -400,11 +400,6 @@ valopt infodir "${CFG_PREFIX}/share/info" "install additional info"
400400
valopt mandir "${CFG_PREFIX}/share/man" "install man pages in PATH"
401401
valopt libdir "${CFG_PREFIX}/lib" "install libraries"
402402

403-
#Deprecated opts to keep compatibility
404-
valopt build-triple "${DEFAULT_BUILD}" "LLVM build triple"
405-
valopt host-triples "${CFG_BUILD}" "LLVM host triples"
406-
valopt target-triples "${CFG_HOST}" "LLVM target triples"
407-
408403
# Validate Options
409404
step_msg "validating $CFG_SELF args"
410405
validate_opt
@@ -468,12 +463,14 @@ then
468463
# extract the first 2 version fields, ignore everything else
469464
sed 's/pandoc \([0-9]*\)\.\([0-9]*\).*/\1 \2/')
470465

466+
MIN_PV_MAJOR="1"
467+
MIN_PV_MINOR="9"
471468
# these patterns are shell globs, *not* regexps
472469
PV_MAJOR=${PV_MAJOR_MINOR% *}
473470
PV_MINOR=${PV_MAJOR_MINOR#* }
474-
if [ "$PV_MAJOR" -lt "1" ] || [ "$PV_MINOR" -lt "8" ]
471+
if [ "$PV_MAJOR" -lt "$MIN_PV_MAJOR" ] || [ "$PV_MINOR" -lt "$MIN_PV_MINOR" ]
475472
then
476-
step_msg "pandoc $PV_MAJOR.$PV_MINOR is too old. disabling"
473+
step_msg "pandoc $PV_MAJOR.$PV_MINOR is too old. Need at least $MIN_PV_MAJOR.$MIN_PV_MINOR. Disabling"
477474
BAD_PANDOC=1
478475
fi
479476
fi
@@ -601,7 +598,6 @@ then
601598
fi
602599

603600
# a little post-processing of various config values
604-
605601
CFG_PREFIX=${CFG_PREFIX%/}
606602
CFG_MANDIR=${CFG_MANDIR%/}
607603
CFG_HOST="$(echo $CFG_HOST | tr ',' ' ')"
@@ -616,26 +612,6 @@ do
616612
done
617613
CFG_TARGET=$V_TEMP
618614

619-
# copy host-triples to target-triples so that hosts are a subset of targets
620-
# XXX: remove deprecated variables here
621-
V_TEMP=""
622-
for i in $CFG_HOST_TRIPLES $CFG_TARGET_TRIPLES;
623-
do
624-
echo "$V_TEMP" | grep -qF $i || V_TEMP="$V_TEMP${V_TEMP:+ }$i"
625-
done
626-
CFG_TARGET_TRIPLES=$V_TEMP
627-
628-
# XXX: Support for deprecated syntax, should be dropped.
629-
if [ ! -z "$CFG_BUILD_TRIPLE" ]; then
630-
CFG_BUILD=${CFG_BUILD_TRIPLE}
631-
fi
632-
if [ ! -z "$CFG_HOST_TRIPLES" ]; then
633-
CFG_HOST=${CFG_HOST_TRIPLES}
634-
fi
635-
if [ ! -z "$CFG_TARGET_TRIPLES" ]; then
636-
CFG_TARGET=${CFG_TARGET_TRIPLES}
637-
fi
638-
639615
# check target-specific tool-chains
640616
for i in $CFG_TARGET
641617
do
@@ -670,6 +646,13 @@ do
670646
fi
671647
;;
672648

649+
arm-apple-darwin)
650+
if [ $CFG_OSTYPE != apple-darwin ]
651+
then
652+
err "The iOS target is only supported on Mac OS X"
653+
fi
654+
;;
655+
673656
*)
674657
;;
675658
esac

branches/try2/doc/rust.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -568,6 +568,7 @@ This requirement most often affects name-designator pairs when they occur at the
568568
* `log_syntax!` : print out the arguments at compile time
569569
* `trace_macros!` : supply `true` or `false` to enable or disable macro expansion logging
570570
* `stringify!` : turn the identifier argument into a string literal
571+
* `concat!` : concatenates a comma-separated list of literals
571572
* `concat_idents!` : create a new identifier by concatenating the arguments
572573

573574
# Crates and source files

branches/try2/mk/install.mk

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -18,24 +18,24 @@
1818
# $(2) is the destination directory
1919
# $(3) is the filename/libname-glob
2020
ifdef VERBOSE
21-
INSTALL = install -m755 $(1)/$(3) $(2)/$(3)
21+
INSTALL = install -m755 $(1)/$(3) $(DESTDIR)$(2)/$(3)
2222
else
23-
INSTALL = $(Q)$(call E, install: $(2)/$(3)) && install -m755 $(1)/$(3) $(2)/$(3)
23+
INSTALL = $(Q)$(call E, install: $(DESTDIR)$(2)/$(3)) && install -m755 $(1)/$(3) $(DESTDIR)$(2)/$(3)
2424
endif
2525

2626
# For MK_INSTALL_DIR
2727
# $(1) is the directory to create
28-
MK_INSTALL_DIR = (umask 022 && mkdir -p $(1))
28+
MK_INSTALL_DIR = (umask 022 && mkdir -p $(DESTDIR)$(1))
2929

3030
# For INSTALL_LIB,
3131
# Target-specific $(LIB_SOURCE_DIR) is the source directory
3232
# Target-specific $(LIB_DESTIN_DIR) is the destination directory
3333
# $(1) is the filename/libname-glob
3434
ifdef VERBOSE
35-
DO_INSTALL_LIB = install -m644 `ls -drt1 $(LIB_SOURCE_DIR)/$(1) | tail -1` $(LIB_DESTIN_DIR)/
35+
DO_INSTALL_LIB = install -m644 `ls -drt1 $(LIB_SOURCE_DIR)/$(1) | tail -1` $(DESTDIR)$(LIB_DESTIN_DIR)/
3636
else
37-
DO_INSTALL_LIB = $(Q)$(call E, install_lib: $(LIB_DESTIN_DIR)/$(1)) && \
38-
install -m644 `ls -drt1 $(LIB_SOURCE_DIR)/$(1) | tail -1` $(LIB_DESTIN_DIR)/
37+
DO_INSTALL_LIB = $(Q)$(call E, install_lib: $(DESTDIR)$(LIB_DESTIN_DIR)/$(1)) && \
38+
install -m644 `ls -drt1 $(LIB_SOURCE_DIR)/$(1) | tail -1` $(DESTDIR)$(LIB_DESTIN_DIR)/
3939
endif
4040

4141
# Target-specific $(LIB_SOURCE_DIR) is the source directory
@@ -50,7 +50,7 @@ define INSTALL_LIB
5050
MATCHES="$(filter-out %$(notdir $(lastword $(wildcard $(LIB_SOURCE_DIR)/$(1)))),\
5151
$(wildcard $(LIB_DESTIN_DIR)/$(1)))"; \
5252
if [ -n "$$MATCHES" ]; then \
53-
echo "Warning, one or libraries matching Rust library '$(1)'" && \
53+
echo "warning: one or libraries matching Rust library '$(1)'" && \
5454
echo " (other than '$$LIB_NAME' itself) already present" && \
5555
echo " at destination $(LIB_DESTIN_DIR):" && \
5656
echo $$MATCHES ; \
@@ -152,9 +152,9 @@ install-host: $(CSREQ$(ISTAGE)_T_$(CFG_BUILD_)_H_$(CFG_BUILD_))
152152
$(Q)$(call INSTALL_LIB,$(LIBRUSTDOC_GLOB_$(CFG_BUILD)))
153153
$(Q)$(call INSTALL,$(HL),$(PHL),$(CFG_RUNTIME_$(CFG_BUILD)))
154154
$(Q)$(call INSTALL,$(HL),$(PHL),$(CFG_RUSTLLVM_$(CFG_BUILD)))
155-
$(Q)$(call INSTALL,$(S)/man, $(CFG_MANDIR)/man1,rustc.1)
156-
$(Q)$(call INSTALL,$(S)/man, $(CFG_MANDIR)/man1,rustdoc.1)
157-
$(Q)$(call INSTALL,$(S)/man, $(CFG_MANDIR)/man1,rustpkg.1)
155+
$(Q)$(call INSTALL,$(S)/man,$(CFG_MANDIR)/man1,rustc.1)
156+
$(Q)$(call INSTALL,$(S)/man,$(CFG_MANDIR)/man1,rustdoc.1)
157+
$(Q)$(call INSTALL,$(S)/man,$(CFG_MANDIR)/man1,rustpkg.1)
158158

159159
install-targets: $(INSTALL_TARGET_RULES)
160160

branches/try2/mk/platform.mk

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -193,6 +193,35 @@ CFG_LDPATH_i686-unknown-linux-gnu :=
193193
CFG_RUN_i686-unknown-linux-gnu=$(2)
194194
CFG_RUN_TARG_i686-unknown-linux-gnu=$(call CFG_RUN_i686-unknown-linux-gnu,,$(2))
195195

196+
# arm-apple-darwin configuration
197+
ifeq ($(CFG_OSTYPE),apple-darwin)
198+
CFG_IOS_SDK = $(shell xcrun --show-sdk-path -sdk iphoneos)
199+
CFG_IOS_FLAGS = -target arm-apple-darwin -isysroot $(CFG_IOS_SDK) -I $(CFG_IOS_SDK)/usr/include -I $(CFG_IOS_SDK)/usr/include/c++/4.2.1 -I /usr/include
200+
CC_arm-apple-darwin = $(shell xcrun -find -sdk iphoneos clang)
201+
CXX_arm-apple-darwin = $(shell xcrun -find -sdk iphoneos clang++)
202+
CPP_arm-apple-darwin = $(shell xcrun -find -sdk iphoneos clang++)
203+
AR_arm-apple-darwin = $(shell xcrun -find -sdk iphoneos ar)
204+
CFG_LIB_NAME_arm-apple-darwin = lib$(1).dylib
205+
CFG_LIB_GLOB_arm-apple-darwin = lib$(1)-*.dylib
206+
CFG_LIB_DSYM_GLOB_arm-apple-darwin = lib$(1)-*.dylib.dSYM
207+
CFG_GCCISH_CFLAGS_arm-apple-darwin := -Wall -Werror -g -fPIC $(CFG_IOS_FLAGS)
208+
CFG_GCCISH_CXXFLAGS_arm-apple-darwin := -fno-rtti $(CFG_IOS_FLAGS)
209+
CFG_GCCISH_LINK_FLAGS_arm-apple-darwin := -dynamiclib -lpthread -framework CoreServices -Wl,-no_compact_unwind
210+
CFG_GCCISH_DEF_FLAG_arm-apple-darwin := -Wl,-exported_symbols_list,
211+
CFG_GCCISH_PRE_LIB_FLAGS_arm-apple-darwin :=
212+
CFG_GCCISH_POST_LIB_FLAGS_arm-apple-darwin :=
213+
CFG_DEF_SUFFIX_arm-apple-darwin := .darwin.def
214+
CFG_INSTALL_NAME_arm-apple-darwin = -Wl,-install_name,@rpath/$(1)
215+
CFG_LIBUV_LINK_FLAGS_arm-apple-darwin =
216+
CFG_EXE_SUFFIX_arm-apple-darwin :=
217+
CFG_WINDOWSY_arm-apple-darwin :=
218+
CFG_UNIXY_arm-apple-darwin := 1
219+
CFG_PATH_MUNGE_arm-apple-darwin := true
220+
CFG_LDPATH_arm-apple-darwin :=
221+
CFG_RUN_arm-apple-darwin = $(2)
222+
CFG_RUN_TARG_arm-apple-darwin = $(call CFG_RUN_arm-apple-darwin,,$(2))
223+
endif
224+
196225
# x86_64-apple-darwin configuration
197226
CC_x86_64-apple-darwin=$(CC)
198227
CXX_x86_64-apple-darwin=$(CXX)

branches/try2/mk/rt.mk

Lines changed: 51 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -87,19 +87,11 @@ RUNTIME_CXXS_$(1)_$(2) := \
8787
rt/sync/rust_thread.cpp \
8888
rt/rust_builtin.cpp \
8989
rt/rust_upcall.cpp \
90-
rt/rust_uv.cpp \
9190
rt/miniz.cpp \
9291
rt/rust_android_dummy.cpp \
9392
rt/rust_test_helpers.cpp
9493

95-
RUNTIME_CS_$(1)_$(2) := rt/sundown/src/autolink.c \
96-
rt/sundown/src/buffer.c \
97-
rt/sundown/src/stack.c \
98-
rt/sundown/src/markdown.c \
99-
rt/sundown/html/houdini_href_e.c \
100-
rt/sundown/html/houdini_html_e.c \
101-
rt/sundown/html/html_smartypants.c \
102-
rt/sundown/html/html.c
94+
RUNTIME_CS_$(1)_$(2) :=
10395

10496
RUNTIME_S_$(1)_$(2) := rt/arch/$$(HOST_$(1))/_context.S \
10597
rt/arch/$$(HOST_$(1))/record_sp.S
@@ -108,10 +100,7 @@ RT_BUILD_DIR_$(1)_$(2) := $$(RT_OUTPUT_DIR_$(1))/stage$(2)
108100

109101
RUNTIME_DEF_$(1)_$(2) := $$(RT_OUTPUT_DIR_$(1))/rustrt$$(CFG_DEF_SUFFIX_$(1))
110102
RUNTIME_INCS_$(1)_$(2) := -I $$(S)src/rt -I $$(S)src/rt/isaac -I $$(S)src/rt/uthash \
111-
-I $$(S)src/rt/arch/$$(HOST_$(1)) \
112-
-I $$(S)src/rt/sundown/src \
113-
-I $$(S)src/rt/sundown/html \
114-
-I $$(S)src/libuv/include
103+
-I $$(S)src/rt/arch/$$(HOST_$(1))
115104
RUNTIME_OBJS_$(1)_$(2) := $$(RUNTIME_CXXS_$(1)_$(2):rt/%.cpp=$$(RT_BUILD_DIR_$(1)_$(2))/%.o) \
116105
$$(RUNTIME_CS_$(1)_$(2):rt/%.c=$$(RT_BUILD_DIR_$(1)_$(2))/%.o) \
117106
$$(RUNTIME_S_$(1)_$(2):rt/%.S=$$(RT_BUILD_DIR_$(1)_$(2))/%.o)
@@ -140,10 +129,9 @@ $$(RT_BUILD_DIR_$(1)_$(2))/arch/$$(HOST_$(1))/libmorestack.a: $$(MORESTACK_OBJS_
140129
$$(Q)$(AR_$(1)) rcs $$@ $$^
141130

142131
$$(RT_BUILD_DIR_$(1)_$(2))/$(CFG_RUNTIME_$(1)): $$(RUNTIME_OBJS_$(1)_$(2)) $$(MKFILE_DEPS) \
143-
$$(RUNTIME_DEF_$(1)_$(2)) $$(LIBUV_LIB_$(1))
132+
$$(RUNTIME_DEF_$(1)_$(2))
144133
@$$(call E, link: $$@)
145134
$$(Q)$$(call CFG_LINK_CXX_$(1),$$@, $$(RUNTIME_OBJS_$(1)_$(2)) \
146-
$$(LIBUV_LIB_$(1)) \
147135
$$(CFG_LIBUV_LINK_FLAGS_$(1)),$$(RUNTIME_DEF_$(1)_$(2)),$$(CFG_RUNTIME_$(1)))
148136

149137
# These could go in rt.mk or rustllvm.mk, they're needed for both.
@@ -242,6 +230,54 @@ $$(LIBUV_LIB_$(1)): $$(LIBUV_DEPS) $$(LIBUV_MAKEFILE_$(1))
242230
NO_LOAD="$$(LIBUV_NO_LOAD)" \
243231
V=$$(VERBOSE)
244232
endif
233+
234+
# libuv support functionality (extra C/C++ that we need to use libuv)
235+
236+
UV_SUPPORT_NAME_$(1) := $$(call CFG_STATIC_LIB_NAME_$(1),uv_support)
237+
UV_SUPPORT_DIR_$(1) := $$(RT_OUTPUT_DIR_$(1))/uv_support
238+
UV_SUPPORT_LIB_$(1) := $$(UV_SUPPORT_DIR_$(1))/$$(UV_SUPPORT_NAME_$(1))
239+
UV_SUPPORT_CS_$(1) := rt/rust_uv.cpp
240+
UV_SUPPORT_OBJS_$(1) := $$(UV_SUPPORT_CS_$(1):rt/%.cpp=$$(UV_SUPPORT_DIR_$(1))/%.o)
241+
242+
$$(UV_SUPPORT_DIR_$(1))/%.o: rt/%.cpp
243+
@$$(call E, compile: $$@)
244+
@mkdir -p $$(@D)
245+
$$(Q)$$(call CFG_COMPILE_CXX_$(1), $$@, \
246+
-I $$(S)src/libuv/include \
247+
$$(RUNTIME_CFLAGS_$(1))) $$<
248+
249+
$$(UV_SUPPORT_LIB_$(1)): $$(UV_SUPPORT_OBJS_$(1))
250+
@$$(call E, link: $$@)
251+
$$(Q)$$(AR_$(1)) rcs $$@ $$^
252+
253+
# sundown markdown library (used by librustdoc)
254+
255+
SUNDOWN_NAME_$(1) := $$(call CFG_STATIC_LIB_NAME_$(1),sundown)
256+
SUNDOWN_DIR_$(1) := $$(RT_OUTPUT_DIR_$(1))/sundown
257+
SUNDOWN_LIB_$(1) := $$(SUNDOWN_DIR_$(1))/$$(SUNDOWN_NAME_$(1))
258+
259+
SUNDOWN_CS_$(1) := rt/sundown/src/autolink.c \
260+
rt/sundown/src/buffer.c \
261+
rt/sundown/src/stack.c \
262+
rt/sundown/src/markdown.c \
263+
rt/sundown/html/houdini_href_e.c \
264+
rt/sundown/html/houdini_html_e.c \
265+
rt/sundown/html/html_smartypants.c \
266+
rt/sundown/html/html.c
267+
268+
SUNDOWN_OBJS_$(1) := $$(SUNDOWN_CS_$(1):rt/%.c=$$(SUNDOWN_DIR_$(1))/%.o)
269+
270+
$$(SUNDOWN_DIR_$(1))/%.o: rt/%.c
271+
@$$(call E, compile: $$@)
272+
@mkdir -p $$(@D)
273+
$$(Q)$$(call CFG_COMPILE_C_$(1), $$@, \
274+
-I $$(S)src/rt/sundown/src -I $$(S)src/rt/sundown/html \
275+
$$(RUNTIME_CFLAGS_$(1))) $$<
276+
277+
$$(SUNDOWN_LIB_$(1)): $$(SUNDOWN_OBJS_$(1))
278+
@$$(call E, link: $$@)
279+
$$(Q)$$(AR_$(1)) rcs $$@ $$^
280+
245281
endef
246282

247283
# Instantiate template for all stages/targets

branches/try2/mk/stage0.mk

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -42,14 +42,14 @@ $(HLIB0_H_$(CFG_BUILD))/$(CFG_EXTRALIB_$(CFG_BUILD)): \
4242
| $(HLIB0_H_$(CFG_BUILD))/
4343
$(Q)touch $@
4444

45-
$(HLIB0_H_$(CFG_BUILD_TRIPLE))/$(CFG_LIBRUSTUV_$(CFG_BUILD)): \
46-
$(HBIN0_H_$(CFG_BUILD_TRIPLE))/rustc$(X_$(CFG_BUILD)) \
47-
| $(HLIB0_H_$(CFG_BUILD_TRIPLE))/
45+
$(HLIB0_H_$(CFG_BUILD))/$(CFG_LIBRUSTUV_$(CFG_BUILD)): \
46+
$(HBIN0_H_$(CFG_BUILD))/rustc$(X_$(CFG_BUILD)) \
47+
| $(HLIB0_H_$(CFG_BUILD))/
4848
$(Q)touch $@
4949

50-
$(HLIB0_H_$(CFG_BUILD_TRIPLE))/$(CFG_LIBRUSTC_$(CFG_BUILD)): \
51-
$(HBIN0_H_$(CFG_BUILD_TRIPLE))/rustc$(X_$(CFG_BUILD)) \
52-
| $(HLIB0_H_$(CFG_BUILD_TRIPLE))/
50+
$(HLIB0_H_$(CFG_BUILD))/$(CFG_LIBRUSTC_$(CFG_BUILD)): \
51+
$(HBIN0_H_$(CFG_BUILD))/rustc$(X_$(CFG_BUILD)) \
52+
| $(HLIB0_H_$(CFG_BUILD))/
5353
$(Q)touch $@
5454

5555
$(HLIB0_H_$(CFG_BUILD))/$(CFG_RUSTLLVM_$(CFG_BUILD)): \
@@ -124,5 +124,5 @@ endef
124124

125125
# Use stage1 to build other architectures: then you don't have to wait
126126
# for stage2, but you get the latest updates to the compiler source.
127-
$(foreach t,$(NON_BUILD_HOSTS), \
127+
$(foreach t,$(NON_BUILD_HOST), \
128128
$(eval $(call BOOTSTRAP_STAGE0,$(t),1,$(CFG_BUILD))))

branches/try2/mk/target.mk

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -77,10 +77,15 @@ $$(TLIB$(1)_T_$(2)_H_$(3))/$(CFG_LIBRUSTUV_$(2)): \
7777
$$(LIBRUSTUV_CRATE) $$(LIBRUSTUV_INPUTS) \
7878
$$(TLIB$(1)_T_$(2)_H_$(3))/$(CFG_STDLIB_$(2)) \
7979
$$(TSREQ$(1)_T_$(2)_H_$(3)) \
80+
$$(LIBUV_LIB_$(2)) \
81+
$$(UV_SUPPORT_LIB_$(2)) \
8082
| $$(TLIB$(1)_T_$(2)_H_$(3))/
8183
@$$(call E, compile_and_link: $$@)
8284
$$(call REMOVE_ALL_OLD_GLOB_MATCHES_EXCEPT,$$(dir $$@),$(LIBRUSTUV_GLOB_$(2)),$$(notdir $$@))
83-
$$(STAGE$(1)_T_$(2)_H_$(3)) $$(WFLAGS_ST$(1)) --out-dir $$(@D) $$< && touch $$@
85+
$$(STAGE$(1)_T_$(2)_H_$(3)) $$(WFLAGS_ST$(1)) \
86+
-L $$(UV_SUPPORT_DIR_$(2)) \
87+
-L $$(dir $$(LIBUV_LIB_$(2))) \
88+
--out-dir $$(@D) $$< && touch $$@
8489
$$(call LIST_ALL_OLD_GLOB_MATCHES_EXCEPT,$$(dir $$@),$(LIBRUSTUV_GLOB_$(2)),$$(notdir $$@))
8590

8691
$$(TLIB$(1)_T_$(2)_H_$(3))/$(CFG_LIBSYNTAX_$(3)): \
@@ -117,13 +122,16 @@ $$(TLIB$(1)_T_$(2)_H_$(3))/$(CFG_LIBRUSTC_$(3)): \
117122
$$(STAGE$(1)_T_$(2)_H_$(3)) $$(WFLAGS_ST$(1)) --out-dir $$(@D) $$< && touch $$@
118123
$$(call LIST_ALL_OLD_GLOB_MATCHES_EXCEPT,$$(dir $$@),$(LIBRUSTC_GLOB_$(2)),$$(notdir $$@))
119124

125+
# NOTE: after the next snapshot remove these '-L' flags
120126
$$(TBIN$(1)_T_$(2)_H_$(3))/rustc$$(X_$(3)): \
121127
$$(DRIVER_CRATE) \
122128
$$(TSREQ$(1)_T_$(2)_H_$(3)) \
123129
$$(TLIB$(1)_T_$(2)_H_$(3))/$(CFG_LIBRUSTC_$(3)) \
124130
| $$(TBIN$(1)_T_$(2)_H_$(3))/
125131
@$$(call E, compile_and_link: $$@)
126-
$$(STAGE$(1)_T_$(2)_H_$(3)) --cfg rustc -o $$@ $$<
132+
$$(STAGE$(1)_T_$(2)_H_$(3)) --cfg rustc -o $$@ $$< \
133+
-L $$(UV_SUPPORT_DIR_$(2)) \
134+
-L $$(dir $$(LIBUV_LIB_$(2)))
127135
ifdef CFG_ENABLE_PAX_FLAGS
128136
@$$(call E, apply PaX flags: $$@)
129137
@"$(CFG_PAXCTL)" -cm "$$@"

0 commit comments

Comments
 (0)