diff --git a/common/cdl2spi.py b/common/cdl2spi.py
index 8ed0eab..f597a90 100755
--- a/common/cdl2spi.py
+++ b/common/cdl2spi.py
@@ -231,7 +231,7 @@
     cdlModel=""
     for i in range(len(tok)-1, 0, -1):
         if not tok[i].startswith("$"):
-	    if '=' in tok[i]:
+            if '=' in tok[i]:
                 continue
             elif cdlModel == '':
                 cdlModel = tok[i]
diff --git a/common/foundry_install.py b/common/foundry_install.py
index a3d048b..bc1ba45 100755
--- a/common/foundry_install.py
+++ b/common/foundry_install.py
@@ -1255,6 +1255,39 @@
                         print('}', file=ofile)
                         print('load $topcell', file=ofile)
 
+                    else:
+                        # Use LEF files to set the port properties
+                        if have_lefanno or have_lef:
+                            if have_lefanno:
+                                lefdirname = 'lefanno'
+                            else:
+                                lefdirname = 'lef'
+
+                            # Find LEF file names in the source
+                            if ef_format:
+                                lefsrcdir = targetdir + lef_reflib + lefdirname
+                                lefsrclibdir = lefsrcdir + '/' + destlib
+                            else:
+                                lefsrcdir = targetdir + lef_reflib + destlib + '/' + lefdirname
+                                lefsrclibdir = lefsrcdir
+
+                            leffiles = os.listdir(lefsrclibdir)
+                            leffiles = list(item for item in leffiles if os.path.splitext(item)[1] == '.lef')
+                            for leffile in leffiles:
+                                print('lef read ' + lefsrclibdir + '/' + leffile, file=ofile)
+                     
+                        # Use CDL or SPICE netlists to set the port order
+                        if have_cdl or have_spice:
+                            if have_cdl:
+                                netdir = clibdir
+                            else:
+                                netdir = slibdir
+
+                            # Find CDL/SPICE file names in the source
+                            netfiles = os.listdir(netdir)
+                            for netfile in netfiles:
+                                print('readspice ' + netdir + '/' + netfile, file=ofile)
+
                     print('cellname delete \(UNNAMED\)', file=ofile)
                     print('writeall force', file=ofile)
 
