provides warning on missing flask packages, does not generate html on missing packages

This commit is contained in:
Jesse Cirimelli-Low 2018-10-18 07:21:03 -07:00
parent ab6afb7ca8
commit b9990609bf
3 changed files with 20 additions and 8 deletions

View File

@ -100,9 +100,18 @@ def check_versions():
minor_required = 5
if not (major_python_version == major_required and minor_python_version >= minor_required):
debug.error("Python {0}.{1} or greater is required.".format(major_required,minor_required),-1)
# FIXME: Check versions of other tools here??
# or, this could be done in each module (e.g. verify, characterizer, etc.)
global OPTS
try:
import flask_table
OPTS.datasheet_gen = 1
except:
debug.warning("flask_table is not installed. HTML datasheet will not be generated")
OPTS.datasheet_gen = 0
def init_openram(config_file, is_unit_test=True):
"""Initialize the technology, paths, simulators, etc."""

View File

@ -40,7 +40,9 @@ import verify
from sram import sram
from sram_config import sram_config
#from parser import *
output_extensions = ["sp","v","lib","html"]
output_extensions = ["sp","v","lib"]
if OPTS.datasheet_gen:
output_extensions.append("html")
if not OPTS.netlist_only:
output_extensions.extend(["gds","lef"])
output_files = ["{0}.{1}".format(OPTS.output_name,x) for x in output_extensions]

View File

@ -109,12 +109,13 @@ class sram():
print_time("LEF", datetime.datetime.now(), start_time)
# Write the datasheet
start_time = datetime.datetime.now()
from datasheet_gen import datasheet_gen
dname = OPTS.output_path + self.s.name + ".html"
print("Datasheet: writing to {0}".format(dname))
datasheet_gen.datasheet_write(dname)
print_time("Datasheet", datetime.datetime.now(), start_time)
if OPTS.datasheet_gen:
start_time = datetime.datetime.now()
from datasheet_gen import datasheet_gen
dname = OPTS.output_path + self.s.name + ".html"
print("Datasheet: writing to {0}".format(dname))
datasheet_gen.datasheet_write(dname)
print_time("Datasheet", datetime.datetime.now(), start_time)
# Write a verilog model
start_time = datetime.datetime.now()