diff --git a/src/test/run-make-fulldeps/coverage-reports-base/Makefile b/src/test/run-make-fulldeps/coverage-reports-base/Makefile index b175768e19962..1e2aa056e4008 100644 --- a/src/test/run-make-fulldeps/coverage-reports-base/Makefile +++ b/src/test/run-make-fulldeps/coverage-reports-base/Makefile @@ -13,15 +13,13 @@ BASEDIR=../coverage-reports-base SOURCEDIR=../coverage -ifeq ($(UNAME),Darwin) -# FIXME(richkadel): It appears that --debug is not available on MacOS even when not running -# under CI. -NO_LLVM_ASSERTIONS=1 -endif - # The `llvm-cov show` flag `--debug`, used to generate the `counters` output files, is only enabled -# if LLVM assertions are enabled. Some CI builds disable debug assertions. -ifndef NO_LLVM_ASSERTIONS +# if LLVM assertions are enabled. Requires Rust config `llvm/optimize` and not +# `llvm/release_debuginfo`. Note that some CI builds disable debug assertions (by setting +# `NO_LLVM_ASSERTIONS=1`), so it is not OK to fail the test, but `bless`ed test results cannot be +# generated without debug assertions. +LLVM_COV_DEBUG := $(shell "$(LLVM_BIN_DIR)"/llvm-cov show --debug 2>&1 | grep -q "Unknown command line argument '--debug'"; echo $$?) +ifeq ($(LLVM_COV_DEBUG), 1) DEBUG_FLAG=--debug endif diff --git a/src/test/run-make-fulldeps/coverage-spanview-base/Makefile b/src/test/run-make-fulldeps/coverage-spanview-base/Makefile index fb9f5215fe8ee..03ef04776a03b 100644 --- a/src/test/run-make-fulldeps/coverage-spanview-base/Makefile +++ b/src/test/run-make-fulldeps/coverage-spanview-base/Makefile @@ -9,9 +9,20 @@ BASEDIR=../coverage-spanview-base SOURCEDIR=../coverage -ifeq ($(UNAME),Darwin) -SED_HAS_ISSUES=1 -endif +define SPANVIEW_HEADER + + +endef +export SPANVIEW_HEADER all: $(patsubst $(SOURCEDIR)/%.rs,%,$(wildcard $(SOURCEDIR)/*.rs)) @@ -33,31 +44,12 @@ endif -Zdump-mir-spanview \ -Zdump-mir-dir="$(TMPDIR)"/mir_dump.$@ -ifdef SED_HAS_ISSUES - # FIXME(richkadel): MacOS's default sed has some significant limitations. Until I've come up - # with a better workaround, I'm disabling this test for MacOS. - # - # For future reference, see if `gsed` is available as an alternative. - which gsed || echo "no gsed" -else - for path in "$(TMPDIR)"/mir_dump.$@/*; do \ - echo $$path; \ file="$$(basename "$$path")"; \ - echo $$file; \ urlescaped="$$("$(PYTHON)" $(BASEDIR)/escape_url.py $$file)" || exit $$?; \ - echo $$urlescaped; \ - sed -i -e '1a\ -' "$$path"; \ + printf "$$SPANVIEW_HEADER\n" "$@" "$$urlescaped" > "$$path".modified; \ + tail -n +2 "$$path" >> "$$path".modified; \ + mv "$$path".modified "$$path"; \ done && true # for/done ends in non-zero status ifdef RUSTC_BLESS_TEST @@ -70,5 +62,3 @@ else cp "$(TMPDIR)"/mir_dump.$@/*InstrumentCoverage.0.html "$(TMPDIR)"/actual_mir_dump.$@/ $(DIFF) -r expected_mir_dump.$@/ "$(TMPDIR)"/actual_mir_dump.$@/ endif - -endif