提交 48a1f1b9 编写于 作者: B bors

Auto merge of #27139 - pnkfelix:allow-disable-debuginfo, r=dotdash

fix `configure`: allow both `--enable-debug` and `--disable-debuginfo` in one invocation.

This is my very local fix to allow one to be able to (1.) build `rustc` and (2.) run `make check` with internal debug-mode *assertions* turned on in the presence of bugs like  #26447 and #26484 (both of which are solely caused by debuginfo and thus can be sidestepped via `--disable-debuginfo`).

This partially addresses #24416 (namely, it addresses the papercut outlined in the description of that ticket).  But there are other issues mentioned in the comment thread that are not addressed here, so they should be separately addressed before closing that ticket, or separate bugs should be opened for them.
...@@ -323,6 +323,17 @@ envopt() { ...@@ -323,6 +323,17 @@ envopt() {
fi fi
} }
enable_if_not_disabled() {
local OP=$1
local UOP=$(echo $OP | tr '[:lower:]' '[:upper:]' | tr '\-' '\_')
local ENAB_V="CFG_ENABLE_$UOP"
local EXPLICITLY_DISABLED="CFG_DISABLE_${UOP}_PROVIDED"
eval VV=\$$EXPLICITLY_DISABLED
if [ -z "$VV" ]; then
eval $ENAB_V=1
fi
}
to_llvm_triple() { to_llvm_triple() {
case $1 in case $1 in
i686-w64-mingw32) echo i686-pc-windows-gnu ;; i686-w64-mingw32) echo i686-pc-windows-gnu ;;
...@@ -671,10 +682,12 @@ if [ -n "$CFG_ENABLE_DEBUG" ]; then ...@@ -671,10 +682,12 @@ if [ -n "$CFG_ENABLE_DEBUG" ]; then
CFG_DISABLE_OPTIMIZE=1 CFG_DISABLE_OPTIMIZE=1
CFG_DISABLE_OPTIMIZE_CXX=1 CFG_DISABLE_OPTIMIZE_CXX=1
fi fi
CFG_ENABLE_DEBUG_ASSERTIONS=1
CFG_ENABLE_DEBUG_JEMALLOC=1 # Set following variables to 1 unless setting already provided
CFG_ENABLE_DEBUGINFO=1 enable_if_not_disabled debug-assertions
CFG_ENABLE_LLVM_ASSERTIONS=1 enable_if_not_disabled debug-jemalloc
enable_if_not_disabled debuginfo
enable_if_not_disabled llvm-assertions
fi fi
# OK, now write the debugging options # OK, now write the debugging options
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册