mirror of https://github.com/YosysHQ/yosys.git
Make Verific extensions optional
This commit is contained in:
parent
75a4cdfc8a
commit
b59c427348
7
Makefile
7
Makefile
|
@ -18,6 +18,7 @@ ENABLE_READLINE := 1
|
||||||
ENABLE_EDITLINE := 0
|
ENABLE_EDITLINE := 0
|
||||||
ENABLE_GHDL := 0
|
ENABLE_GHDL := 0
|
||||||
ENABLE_VERIFIC := 0
|
ENABLE_VERIFIC := 0
|
||||||
|
DISABLE_VERIFIC_EXTENSIONS := 0
|
||||||
ENABLE_COVER := 1
|
ENABLE_COVER := 1
|
||||||
ENABLE_LIBYOSYS := 0
|
ENABLE_LIBYOSYS := 0
|
||||||
ENABLE_PROTOBUF := 0
|
ENABLE_PROTOBUF := 0
|
||||||
|
@ -498,7 +499,11 @@ endif
|
||||||
|
|
||||||
ifeq ($(ENABLE_VERIFIC),1)
|
ifeq ($(ENABLE_VERIFIC),1)
|
||||||
VERIFIC_DIR ?= /usr/local/src/verific_lib
|
VERIFIC_DIR ?= /usr/local/src/verific_lib
|
||||||
VERIFIC_COMPONENTS ?= verilog vhdl database util containers hier_tree extensions
|
VERIFIC_COMPONENTS ?= verilog vhdl database util containers hier_tree
|
||||||
|
ifneq ($(DISABLE_VERIFIC_EXTENSIONS),1)
|
||||||
|
VERIFIC_COMPONENTS += extensions
|
||||||
|
CXXFLAGS += -DYOSYSHQ_VERIFIC_EXTENSIONS
|
||||||
|
endif
|
||||||
CXXFLAGS += $(patsubst %,-I$(VERIFIC_DIR)/%,$(VERIFIC_COMPONENTS)) -DYOSYS_ENABLE_VERIFIC
|
CXXFLAGS += $(patsubst %,-I$(VERIFIC_DIR)/%,$(VERIFIC_COMPONENTS)) -DYOSYS_ENABLE_VERIFIC
|
||||||
ifeq ($(OS), Darwin)
|
ifeq ($(OS), Darwin)
|
||||||
LDLIBS += $(patsubst %,$(VERIFIC_DIR)/%/*-mac.a,$(VERIFIC_COMPONENTS)) -lz
|
LDLIBS += $(patsubst %,$(VERIFIC_DIR)/%/*-mac.a,$(VERIFIC_COMPONENTS)) -lz
|
||||||
|
|
|
@ -50,7 +50,9 @@ USING_YOSYS_NAMESPACE
|
||||||
#include "VhdlUnits.h"
|
#include "VhdlUnits.h"
|
||||||
#include "VeriLibrary.h"
|
#include "VeriLibrary.h"
|
||||||
|
|
||||||
|
#ifdef YOSYSHQ_VERIFIC_EXTENSIONS
|
||||||
#include "InitialAssertions.h"
|
#include "InitialAssertions.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifndef YOSYSHQ_VERIFIC_API_VERSION
|
#ifndef YOSYSHQ_VERIFIC_API_VERSION
|
||||||
# error "Only YosysHQ flavored Verific is supported. Please contact office@yosyshq.com for commercial support for Yosys+Verific."
|
# error "Only YosysHQ flavored Verific is supported. Please contact office@yosyshq.com for commercial support for Yosys+Verific."
|
||||||
|
@ -1961,7 +1963,9 @@ void verific_import(Design *design, const std::map<std::string,std::string> &par
|
||||||
for (const auto &i : parameters)
|
for (const auto &i : parameters)
|
||||||
verific_params.Insert(i.first.c_str(), i.second.c_str());
|
verific_params.Insert(i.first.c_str(), i.second.c_str());
|
||||||
|
|
||||||
|
#ifdef YOSYSHQ_VERIFIC_EXTENSIONS
|
||||||
InitialAssertions::Rewrite("work", &verific_params);
|
InitialAssertions::Rewrite("work", &verific_params);
|
||||||
|
#endif
|
||||||
|
|
||||||
if (top.empty()) {
|
if (top.empty()) {
|
||||||
netlists = hier_tree::ElaborateAll(&veri_libs, &vhdl_libs, &verific_params);
|
netlists = hier_tree::ElaborateAll(&veri_libs, &vhdl_libs, &verific_params);
|
||||||
|
@ -2847,8 +2851,9 @@ struct VerificPass : public Pass {
|
||||||
|
|
||||||
std::set<std::string> top_mod_names;
|
std::set<std::string> top_mod_names;
|
||||||
|
|
||||||
|
#ifdef YOSYSHQ_VERIFIC_EXTENSIONS
|
||||||
InitialAssertions::Rewrite(work, ¶meters);
|
InitialAssertions::Rewrite(work, ¶meters);
|
||||||
|
#endif
|
||||||
if (mode_all)
|
if (mode_all)
|
||||||
{
|
{
|
||||||
log("Running hier_tree::ElaborateAll().\n");
|
log("Running hier_tree::ElaborateAll().\n");
|
||||||
|
|
Loading…
Reference in New Issue