Skip to content

Commit

Permalink
Merge branch 'master' into qflow-1.4
Browse files Browse the repository at this point in the history
  • Loading branch information
RTimothyEdwards committed Nov 16, 2023
2 parents db8057e + 9ac7c7c commit 88c7e7f
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 4 deletions.
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
1.4.100
1.4.101
26 changes: 23 additions & 3 deletions scripts/qflow_manager.py.in
Original file line number Diff line number Diff line change
Expand Up @@ -1353,16 +1353,33 @@ class QflowManager(ttk.Frame):
rclines = ifile.read().splitlines()

tech_loaded = False
sysdirs = []
for line in rclines:
if 'tech load' in line and not line.startswith('#'):
# The 'tech load' may depend on a 'path sys' line to specify
# the path of the tech file.
if 'path sys' in line and not line.startswith('#'):
for token in line.split():
if token.startswith('+'):
sysdirs.append(token.strip('+'))
elif 'tech load' in line and not line.startswith('#'):
# Confirm that this techfile gets found
print('Diagnostic: Found a tech load command in .magicrc')
tokens = line.split()
if len(tokens) > 2:
testtech = tokens[2]
if not testtech.endswith('.tech'):
testtech = testtech + '.tech'
if os.path.isfile(testtech):
tech_loaded = True
print('Diagnostic: tech load will be honored')
elif sysdirs != []:
for path in sysdirs:
if os.path.isfile(path + '/' + testtech):
tech_loaded = True
print('Diagnostic: tech load will be honored')
break
if tech_loaded == False:
print('Diagnostic: tech load not trusted')
else:
print('Diagnostic: tech load not trusted')

Expand All @@ -1374,7 +1391,10 @@ class QflowManager(ttk.Frame):
print('tech load ' + techfile + ' -noprompt', file=ofile)

for line in rclines:
if 'tech load' in line:
if 'path sys' in line:
if tech_loaded == True:
print(line, file=ofile)
elif 'tech load' in line:
if tech_loaded == True:
print(line, file=ofile)
else:
Expand All @@ -1392,7 +1412,7 @@ class QflowManager(ttk.Frame):
for gdsfile in gdsfiles:
print('gds read ' + gdsfile, file=ofile)
if laystate == 'gds2':
print('load gds_top', file=ofile)
print('load gds_top -silent', file=ofile)
print('gds read ' + self.project, file=ofile)
else:
if laystate == 'route1':
Expand Down

0 comments on commit 88c7e7f

Please sign in to comment.