mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-22 14:55:26 +00:00
support a fast-make mode that avoids globbing into llvm and libuv
This commit is contained in:
parent
8e55d3130a
commit
5fc2e9e9ab
1
configure
vendored
1
configure
vendored
@ -262,6 +262,7 @@ opt docs 1 "build documentation"
|
|||||||
opt optimize 1 "build optimized rust code"
|
opt optimize 1 "build optimized rust code"
|
||||||
opt optimize-cxx 1 "build optimized C++ code"
|
opt optimize-cxx 1 "build optimized C++ code"
|
||||||
opt optimize-llvm 1 "build optimized LLVM"
|
opt optimize-llvm 1 "build optimized LLVM"
|
||||||
|
opt fast-make 0 "use .gitmodules as timestamp for submodule deps"
|
||||||
opt manage-submodules 1 "let the build manage the git submodules"
|
opt manage-submodules 1 "let the build manage the git submodules"
|
||||||
opt mingw-cross 0 "cross-compile for win32 using mingw"
|
opt mingw-cross 0 "cross-compile for win32 using mingw"
|
||||||
opt clang 0 "prefer clang to gcc for building the runtime"
|
opt clang 0 "prefer clang to gcc for building the runtime"
|
||||||
|
@ -1,3 +1,7 @@
|
|||||||
|
|
||||||
|
ifdef CFG_ENABLE_FAST_MAKE
|
||||||
|
LLVM_DEPS := $(S)/.gitmodules
|
||||||
|
else
|
||||||
# Recursive wildcard function
|
# Recursive wildcard function
|
||||||
# http://blog.jgc.org/2011/07/gnu-make-recursive-wildcard-function.html
|
# http://blog.jgc.org/2011/07/gnu-make-recursive-wildcard-function.html
|
||||||
rwildcard=$(foreach d,$(wildcard $1*),$(call rwildcard,$d/,$2) \
|
rwildcard=$(foreach d,$(wildcard $1*),$(call rwildcard,$d/,$2) \
|
||||||
@ -5,6 +9,7 @@ rwildcard=$(foreach d,$(wildcard $1*),$(call rwildcard,$d/,$2) \
|
|||||||
|
|
||||||
# This is just a rough approximation of LLVM deps
|
# This is just a rough approximation of LLVM deps
|
||||||
LLVM_DEPS=$(call rwildcard,$(CFG_LLVM_SRC_DIR),*cpp *hpp)
|
LLVM_DEPS=$(call rwildcard,$(CFG_LLVM_SRC_DIR),*cpp *hpp)
|
||||||
|
endif
|
||||||
|
|
||||||
define DEF_LLVM_RULES
|
define DEF_LLVM_RULES
|
||||||
|
|
||||||
|
9
mk/rt.mk
9
mk/rt.mk
@ -158,11 +158,18 @@ rt/$(1)/$(CFG_RUNTIME): $$(RUNTIME_OBJS_$(1)) $$(MKFILE_DEPS) \
|
|||||||
# FIXME: For some reason libuv's makefiles can't figure out the correct definition
|
# FIXME: For some reason libuv's makefiles can't figure out the correct definition
|
||||||
# of CC on the mingw I'm using, so we are explicitly using gcc. Also, we
|
# of CC on the mingw I'm using, so we are explicitly using gcc. Also, we
|
||||||
# have to list environment variables first on windows... mysterious
|
# have to list environment variables first on windows... mysterious
|
||||||
$$(LIBUV_LIB_$(1)): $$(wildcard \
|
|
||||||
|
ifdef CFG_ENABLE_FAST_MAKE
|
||||||
|
LIBUV_DEPS := $$(S)/.gitmodules
|
||||||
|
else
|
||||||
|
LIBUV_DEPS := $$(wildcard \
|
||||||
$$(S)src/libuv/* \
|
$$(S)src/libuv/* \
|
||||||
$$(S)src/libuv/*/* \
|
$$(S)src/libuv/*/* \
|
||||||
$$(S)src/libuv/*/*/* \
|
$$(S)src/libuv/*/*/* \
|
||||||
$$(S)src/libuv/*/*/*/*)
|
$$(S)src/libuv/*/*/*/*)
|
||||||
|
endif
|
||||||
|
|
||||||
|
$$(LIBUV_LIB_$(1)): $$(LIBUV_DEPS)
|
||||||
$$(Q)$$(MAKE) -C $$(S)mk/libuv/$$(LIBUV_ARCH_$(1))/$$(LIBUV_OSTYPE_$(1)) \
|
$$(Q)$$(MAKE) -C $$(S)mk/libuv/$$(LIBUV_ARCH_$(1))/$$(LIBUV_OSTYPE_$(1)) \
|
||||||
CFLAGS="$$(LIBUV_FLAGS_$$(HOST_$(1)))" \
|
CFLAGS="$$(LIBUV_FLAGS_$$(HOST_$(1)))" \
|
||||||
LDFLAGS="$$(LIBUV_FLAGS_$$(HOST_$(1)))" \
|
LDFLAGS="$$(LIBUV_FLAGS_$$(HOST_$(1)))" \
|
||||||
|
Loading…
Reference in New Issue
Block a user