mirror of
https://github.com/YosysHQ/yosys
synced 2026-05-25 11:26:22 +00:00
Update CI scripts for CMake
This commit is contained in:
parent
cad5353a2a
commit
ba6083da16
30 changed files with 315 additions and 327 deletions
|
|
@ -1,7 +1,3 @@
|
|||
ifneq ($(wildcard ../Makefile.conf),)
|
||||
include ../Makefile.conf
|
||||
endif
|
||||
|
||||
OVERRIDE_MAIN=1
|
||||
include ./common.mk
|
||||
|
||||
|
|
@ -125,3 +121,16 @@ clean:
|
|||
@rm -f ./tools/cmp_tbdata
|
||||
@rm -f $(addsuffix /Makefile,$(MK_TEST_DIRS))
|
||||
@find . -name '*.result' -type f -exec rm -f {} +
|
||||
|
||||
.PHONY: coverage
|
||||
coverage:
|
||||
@echo "Creating coverage HTML"
|
||||
@$(YOSYS) -qp 'help; help -all'
|
||||
@rm -rf $(COVERAGE_HTML)
|
||||
@llvm-profdata merge -sparse $(COVERAGE_DIR)/coverage_*.profraw -o $(COVERAGE_DIR)/yosys.profdata
|
||||
@llvm-cov show $(YOSYS) -instr-profile=$(COVERAGE_DIR)/yosys.profdata -format=html -output-dir=$(COVERAGE_HTML) --compilation-dir=$(SRC_DIR) --ignore-filename-regex='(^|.*/)libs/.*|/usr/include/.*|$(subst /,\/,$(VERIFIC_DIR))/.*'
|
||||
|
||||
.PHONY: clean_coverage
|
||||
clean_coverage:
|
||||
@echo "Clean coverage"
|
||||
@rm -rf $(COVERAGE_DIR)
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
ROOT_DIR := $(abspath $(dir $(lastword $(MAKEFILE_LIST))))
|
||||
BUILD_DIR ?= $(ROOT_DIR)/..
|
||||
BUILD_DIR ?= $(realpath $(ROOT_DIR)/../build)
|
||||
SRC_DIR := $(realpath $(ROOT_DIR)/..)
|
||||
|
||||
SBY ?= sby
|
||||
YOSYS ?= $(BUILD_DIR)/yosys
|
||||
|
|
@ -8,13 +9,20 @@ YOSYS_FILTERLIB ?= $(BUILD_DIR)/yosys-filterlib
|
|||
YOSYS_CONFIG ?= $(BUILD_DIR)/yosys-config
|
||||
YOSYS_SMTBMC ?= $(BUILD_DIR)/yosys-smtbmc
|
||||
YOSYS_MAX_THREADS ?= 4
|
||||
COVERAGE_DIR ?= $(realpath $(ROOT_DIR)/..)/coverage
|
||||
COVERAGE_HTML ?= $(realpath $(ROOT_DIR)/..)/coverage_html
|
||||
LLVM_PROFILE_FILE ?= $(COVERAGE_DIR)/coverage_%p.profraw
|
||||
VERIFIC_DIR ?= /usr/local/src/verific_lib
|
||||
|
||||
export BUILD_DIR
|
||||
export YOSYS
|
||||
export YOSYS_CONFIG
|
||||
export YOSYS_SMTBMC
|
||||
export ABC
|
||||
export SBY
|
||||
export YOSYS_MAX_THREADS
|
||||
export LLVM_PROFILE_FILE
|
||||
export LLVM_PROFILE_FILE_BUFFER_SIZE=0
|
||||
|
||||
all:
|
||||
|
||||
|
|
|
|||
|
|
@ -7,6 +7,6 @@ chmod +x "$DIR/ezcmdline_dummy_solver"
|
|||
CXXFLAGS=$(${YOSYS_CONFIG} --cxxflags)
|
||||
DATDIR=$(${YOSYS_CONFIG} --datdir)
|
||||
DATDIR=${DATDIR//\//\\\/}
|
||||
CXXFLAGS=${CXXFLAGS//$DATDIR/..\/..\/share}
|
||||
CXXFLAGS=${CXXFLAGS//$DATDIR/$BUILD_DIR/share}
|
||||
${YOSYS_CONFIG} --exec --cxx ${CXXFLAGS} -I"$BASEDIR" --ldflags -shared -o "$DIR/ezcmdline_plugin.so" "$DIR/ezcmdline_plugin.cc"
|
||||
${YOSYS} -m "$DIR/ezcmdline_plugin.so" -p "ezcmdline_test -cmd $DIR/ezcmdline_dummy_solver" | grep -q "ezcmdline_test passed!"
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ rm -rf plugin_search
|
|||
CXXFLAGS=$(${YOSYS_CONFIG} --cxxflags)
|
||||
DATDIR=$(${YOSYS_CONFIG} --datdir)
|
||||
DATDIR=${DATDIR//\//\\\/}
|
||||
CXXFLAGS=${CXXFLAGS//$DATDIR/..\/..\/share}
|
||||
CXXFLAGS=${CXXFLAGS//$DATDIR/$BUILD_DIR/share}
|
||||
${YOSYS_CONFIG} --exec --cxx ${CXXFLAGS} --ldflags -shared -o plugin.so plugin.cc
|
||||
${YOSYS} -m ./plugin.so -p "test" | grep -q "Plugin test passed!"
|
||||
mkdir -p plugin_search
|
||||
|
|
|
|||
|
|
@ -122,7 +122,7 @@ def vcdextract(signals, on_change, file, output, limit=None):
|
|||
print(*values[:len(signals)], file=output)
|
||||
|
||||
|
||||
share = Path(__file__).parent / ".." / ".." / "share"
|
||||
share = Path(os.environ.get("BUILD_DIR", "../..")) / "share"
|
||||
|
||||
simlibs = [str(share / "simlib.v"), str(share / "simcells.v")]
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue