Commit a9445efc authored by Paweł Szostek's avatar Paweł Szostek Committed by Tomasz Wlostowski

Ultimate no-modelsim-bug solution

Conflicts:

	hdlmake
	src/flow.py
	src/srcfile.py
parent f6147b13
...@@ -22,9 +22,15 @@ ...@@ -22,9 +22,15 @@
import xml.dom.minidom as xml import xml.dom.minidom as xml
import msg as p import msg as p
import global_mod
xmlimpl = xml.getDOMImplementation() xmlimpl = xml.getDOMImplementation()
ISE_STANDARD_LIBS = ['ieee','ieee_proposed','iSE','simprims','std',
'synopsys','unimacro','unisim', 'XilinxCoreLib']
QUARTUS_STANDARD_LIBS = ['altera', 'altera_mf', 'lpm', 'ieee', 'std']
MODELSIM_STANDARD_LIBS = ['ieee', 'std']
class ISEProjectProperty: class ISEProjectProperty:
def __init__(self, name, value, is_default = False): def __init__(self, name, value, is_default = False):
self.name = name self.name = name
...@@ -271,6 +277,7 @@ class ISEProject: ...@@ -271,6 +277,7 @@ class ISEProject:
top_element.appendChild(version) top_element.appendChild(version)
class ModelsiminiReader(object): class ModelsiminiReader(object):
def __init__(self, path = None): def __init__(self, path = None):
if path == None: if path == None:
path = self.modelsim_ini_dir() + "/modelsim.ini" path = self.modelsim_ini_dir() + "/modelsim.ini"
......
...@@ -21,6 +21,8 @@ ...@@ -21,6 +21,8 @@
from dep_solver import IDependable from dep_solver import IDependable
import os import os
import msg as p import msg as p
import global_mod
import flow
class File(object): class File(object):
def __init__(self, path): def __init__(self, path):
...@@ -127,10 +129,18 @@ class VHDLFile(SourceFile): ...@@ -127,10 +129,18 @@ class VHDLFile(SourceFile):
non-standard library a tuple (lib, file) is returned in a list. non-standard library a tuple (lib, file) is returned in a list.
""" """
import re if global_mod.top_module.action == "simulation":
from flow import ModelsiminiReader try:
std_libs = ModelsiminiReader().get_libraries() std_libs = flow.ModelsiminiReader().get_libraries()
except RuntimeError:
std_libs = flow.MODELSIM_STANDARD_LIBS
elif global_mod.top_module.action == "synthesis":
if global_mod.top_module.target == "xilinx":
std_libs = flow.ISE_STANDARD_LIBS
elif global_mod.top_module.target == "altera":
std_libs = flow.MODELSIM_STANDARD_LIBS
import re
f = open(self.path, "r") f = open(self.path, "r")
try: try:
text = f.readlines() text = f.readlines()
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment