mirror of
https://github.com/rust-lang/rust
synced 2024-10-04 15:50:51 +00:00
Tie the LLVM build into ours
This commit is contained in:
parent
bd67c70163
commit
26bb6716ef
16
configure
vendored
16
configure
vendored
|
@ -414,8 +414,8 @@ putvar CFG_LLVM_LDFLAGS
|
|||
putvar CFG_LLVM_LIBS
|
||||
putvar CFG_LLVM_TRIPLE
|
||||
|
||||
CFG_LLVM_BUILD_DIR=llvm/build
|
||||
CFG_LLVM_INST_DIR=llvm/install
|
||||
LLVM_BUILD_DIR=llvm/build
|
||||
LLVM_INST_DIR=llvm/install
|
||||
|
||||
step_msg "making directories"
|
||||
|
||||
|
@ -497,12 +497,18 @@ msg
|
|||
|
||||
|
||||
# Configure llvm. Here we go...
|
||||
step_msg "configure: LLVM"
|
||||
step_msg "configuring LLVM"
|
||||
|
||||
CFG_LLVM_SRC_DIR=${CFG_SRC_DIR}/src/llvm
|
||||
CFG_LLVM_BUILD_DIR=${CFG_BUILD_DIR}/${LLVM_BUILD_DIR}
|
||||
CFG_LLVM_INST_DIR=${CFG_BUILD_DIR}/${LLVM_INST_DIR}
|
||||
|
||||
LLVM_TARGETS="--enable-targets=x86,x86_64"
|
||||
LLVM_DISABLE="--disable-docs"
|
||||
LLVM_PREFIX="--prefix=${CFG_LLVM_INST_DIR}"
|
||||
LLVM_BUILD="--build=${CFG_HOST_TRIPLE}"
|
||||
LLVM_HOST="--host=${CFG_HOST_TRIPLE}"
|
||||
LLVM_TARGET="--target=${CFG_HOST_TRIPLE}"
|
||||
|
||||
LLVM_CXX_32="g++ -m32"
|
||||
LLVM_CC_32="gcc -m32"
|
||||
|
@ -523,6 +529,8 @@ CFLAGS=$LLVM_CFLAGS
|
|||
CXXFLAGS=$LLVM_CXXFLAGS
|
||||
LDFLAGS=$LLVM_LDFLAGS
|
||||
|
||||
LLVM_FLAGS="$LLVM_TARGETS $LLVM_DISABLE $LLVM_PREFIX $LLVM_BUILD $LLVM_HOST $LLVM_TARGET"
|
||||
|
||||
export CXX
|
||||
export CC
|
||||
export CFLAGS
|
||||
|
@ -531,7 +539,7 @@ export LDFLAGS
|
|||
|
||||
cd $CFG_LLVM_BUILD_DIR
|
||||
# FIXME: This won't work if CFG_SRC_DIR is absolute
|
||||
${CFG_BUILD_DIR}/${CFG_LLVM_SRC_DIR}/configure $LLVM_TARGETS $LLVM_DISABLE
|
||||
${CFG_BUILD_DIR}/${CFG_LLVM_SRC_DIR}/configure $LLVM_FLAGS
|
||||
cd $CFG_BUILD_DIR
|
||||
|
||||
putvar CFG_LLVM_SRC_DIR
|
||||
|
|
|
@ -0,0 +1,5 @@
|
|||
.PHONY: $(CFG_LLVM_INST_DIR)/bin/llc
|
||||
|
||||
$(CFG_LLVM_INST_DIR)/bin/llc:
|
||||
@$(call E, make: llvm)
|
||||
$(Q)make install -C $(CFG_LLVM_BUILD_DIR)
|
|
@ -26,10 +26,9 @@ rustllvm/$(1)/$(CFG_RUSTLLVM): $$(RUSTLLVM_OBJS_OBJS_$(1)) \
|
|||
$$(CFG_GCCISH_POST_LIB_FLAGS) \
|
||||
$$(CFG_LLVM_LDFLAGS),$$(RUSTLLVM_DEF_$(1)),$$(CFG_RUSTLLVM))
|
||||
|
||||
rustllvm/$(1)/%.o: rustllvm/%.cpp $$(MKFILES)
|
||||
rustllvm/$(1)/%.o: rustllvm/%.cpp $$(MKFILES) $$(CFG_LLVM_INST_DIR)/bin/llc
|
||||
@$$(call E, compile: $$@)
|
||||
$$(Q)$$(call CFG_COMPILE_C_$(1), $$@, $$(CFG_LLVM_CXXFLAGS) $$(RUSTLLVM_INCS_$(1))) $$<
|
||||
|
||||
endef
|
||||
|
||||
# Instantiate template for all stages
|
||||
|
|
Loading…
Reference in a new issue