The way to specify them is through the following
environment variables:
$KLAYOUT_LEF_FORMAT - LEF suffixes (default: "*.lef *.LEF *.lef.gz *.LEF.gz")
$KLAYOUT_DEF_FORMAT - DEF suffixes (default: "*.def *.DEF *.def.gz *.DEF.gz")
The string is a space-separated list of simple
match pattern. Only "*.xyz"-style pattern are allowed
currently.
Most tools and functions now allow to explicitly
specify a format for input and output. On input,
the format is usually detected, but for some
cases, this is not possible (e.g. DEF). So you can
specify the format attached to the file name in
square brackets:
e.g. file.defok[def]
"def" is the intended suffix, "defok" is the given one.
On output, the same is possible, specifically in strmxor
and strmclip:
strmxor a.gds b.gds out.xor[oas]
The solution is to introduce a new object, the layout handle.
A layout handle is a reference counting pointer to a layout.
It can be obtained from a cell view and stored somewhere.
If the cell view is closed, the layout will still exists
as long as a layout handle exists. A layout handle can be
used in LayoutView#show_layout in addition to the Layout
object to re-open a layout that existed in a closed view.
This patch moves a lock inside the thread finishing
code such that a race condition of the finish sequence
and a random restart of the threads becomes impossible.
This problem has been observed while randomly zooming
with multiple drawing threads present. It's hard to
reproduce.
Problem was pushing of the results into the cell hierarchy
somehow lead to thread stalling. Likely due to bbox invalidation
and related effects. Solution is to store the results of
the operations inside the context structure (along with the
propagation information) and push it to the layout later in
a single step.
* It's possible to specify the fill cell origin now
(this is the point where the first cell's lower left is placed)
* margin is taken into account when no step vectors are specified
* "No exclude" is default
1. The script API "map_file" attribute has been changed
to accept and supply nil (for no file), a string (for
a file, empty is equivalent to "no file") and a list
for multiple files which are merged. The split at "+"
or "," has been dropped.
2. The strm* tools option ("--lefdef-map") has been changed
to allow multiple occurances instead of split at "+" or ",".