This changes the buildlink3.mk files to use an include guard for the
recursive include. The use of BUILDLINK_DEPTH, BUILDLINK_DEPENDS,
BUILDLINK_PACKAGES and BUILDLINK_ORDER is handled by a single new
variable BUILDLINK_TREE. Each buildlink3.mk file adds a pair of
enter/exit marker, which can be used to reconstruct the tree and
to determine first level includes. Avoiding := for large variables
(BUILDLINK_ORDER) speeds up parse time as += has linear complexity.
The include guard reduces system time by avoiding reading files over and
over again. For complex packages this reduces both %user and %sys time to
half of the former time.
Release Notes for Icarus Verilog 0.8.7
none (but see below for other releases since the last version in pkgsrc)
Release Notes for Icarus Verilog 0.8.6
This is a bug fix update of the 0.8 stable version of Icarus
Verilog. The v0.8 series tries to remain as stable as possible while
still fixing bugs that are safe to fix.
Preprocessor:
* Fix parse/preprocess of C-style comments in surpressed ifdef
blocks.
* Support leading underscore in preprocessor names.
Compilation/elaboration issues:
* Support min:typ:max expressions in more places.
* Fix handling of @* non-input nets.
* Do not support system functions in continuous assignments.
* Do not support converting vectors to real.
* Do not support constant real valued expressions.
Run-time ussues:
* Fix comparison of negative numbers that happen to be equal.
* Fix bad execution of certain expressions caused by code generator
bad lookaside handling.
* Proper error message for invalid bit selects.
* Implement $printtimescale system task.
Compiler build issues:
* Compile OK evel if libbzip2 is not installed, but do not support
LXT2 in that case.
Release Notes for Icarus Verilog 0.8.5
This is mostly a bug-fix release for the 0.8 stable branch.
* Fix assertions from unary operators with certain operand widths.
* Fix incorrect comparison results when in certain cases comparing two
signed negative integers.
* Latch synthesis has been added to the core synthesizer
* Add nand gate support to the edif code generator
* Minor compile time errors/warnings
* Improved messages from the configure script
Release Notes for Icarus Verilog 0.8.4
This is a bug-fix release for the 0.8 stable branch. The 0.8 stable
branch updates do not include significant new features (they go into
the devel branch instead) nor fixes that are deemed to drastic to
include in a stable tool.
- Various source code portability problems have been fixed. The 0.8 no
longer compiles on many modern systems.
- Various bug reports have been put to rest with this release. Some
parser errors have been fixed (including a few regressions from
0.8.3) and a few new syntaxes added.
- A variety of systhesis bug fixes and enhancements are included in
0.8.4. Currently, synthesis is only actively supported in the 0.8
branch, and the 0.8.4 is the most complete.
version (1.4.0) are listed below.
-------------------------
Changes in this release only (since v1.4.0):
Carlos Nieves Onega (1):
* Fix missing %s in two strings.
Patrick Bernaud (1):
* Fix memory leak in gschem.
Peter Clifton (2):
* Fix verilog and VHDL netlist backends
* Add libgeda/po/POTFILES.skip for intl/plural.c
Peter TB Brett (1):
* Don't crash on zero snap grid spacing [2026598]
Werner Hoch (4):
* Fix drawing artefact in rubbernet drawing code
* update the pinnumbers if a slot attribute is deleted
* o_delete_text(): only call o_attrib_slot_update() for COMPLEX
objects.
* libgeda: fixed EOL handling for mixed windows/linux usage
-------------------------
Changes in this release only (since v1.4.1):
Ales Hvezda (2):
* Fixed up all icon-theme-installer files to work with non-bash
* Bumped the revision on libgeda's shared library and updated
versions.
Carlos Nieves Onega (1):
* Changed shell from bash to sh in icon-theme-installer
Dan McMahill (1):
* Avoid insecure temp file usage.
Peter Clifton (3):
* gattrib: Don't special-case ignore components with "graphical"
attribute.
* gattrib: Don't crash if we can't find data in the sheet. Bug
#2214739
* Calculate bounds of new object when copying an embedded complex.
Werner Hoch (1):
* libgeda: changed object adding flag for embeded symbols [#1692626]
-------------------------
Changes in this release only (since v1.4.2):
Patrick Bernaud (1):
* Enable promotion of attributes when adding a component from guile.
Peter Clifton (7):
* gschem: Ensure we invalidate the region of text's origin marker
* gnetlist: Fixup systemc backend
* gschem: Don't add invalid attributes to the multiattrib dialog list
* gschem: Check for self-connecting COMPLEX before deleting. Fix
#1912859
* gschem: Remove stretched object from stretch list if we delete it
* o_move_end_rubberband(): Rework creating connectivity lists. Fix
#2017356
* gschlas: Fix segfault opening file
Peter TB Brett (1):
* Validate calls to scm_c_eval_string(). [2105219]
Werner Hoch (1):
* gschem: redraw empty preview on configure events [#2159047]
========================================================================
Release Notes for gerbv-2.2.0
========================================================================
The following is a summary off the changes which went into gerbv-2.2.0.
For a complete list of changes, refer to ChangeLog.
- libgerbv: fixed a bug in the min/max calculation.
- libgerbv: improved the ability to parse drill files with
user specified formats.
- libgerbv: Compile with -no-undefined to make it easier to build
windows DLL's.
- configure: Improve detection of tools when cross-compiling.
- libgerbv: Improved example programs.
- gerbv: Changed desktop categories to be more consistent with
the rest of gEDA.
- common: Fixed compilation with SunPRO compilers
- libgerbv: Fixed calculation of pick and place bounding box
- gerbv: Added a rendering benchmark
- gerbv: Various rendering speed improvements
- common: Made an install be relocatable. This is always needed
for proper win32 operation and helps in some cases
on other operating systems. As part of this, improve
how init.scm is located at startup.
- gerbv: Improved the project file load/save dialog.
========================================================================
Release Notes for PCB snapshot 20081128
========================================================================
This release represents over 70 commits and as such this summary
clearly is not complete. See the ChangeLog file for the complete list
of changes.
- Minor bug fixes in RS274-X output.
- Bug fixes in postscript output
- DRC checks for annular ring on pads only uses the mininum annular ring
drc setting instead of also checking minimum copper width.
- Fix postscript output for zero length lines.
- Improve the 'save before closing' dialogs.
- Fixed bugs where objects attached to the cursor vanish sometimes.
- Various minor code portability improvements.
- Enabled additional gcc warnings (when using gcc)
- Allow outline layers to have only arcs.
- Added "Ben Mode" png output which provides a simulated "photograph"
of the board. Very nice for publications.
- Fix poly clearance around rotated pads.
- Fix the batch HID which had bit rotted a little.
- Display net names hierarchically.
- Various speed improvements in the GTK HID.
- Various speed improvements in the autorouter.
- Minor improvements to the windows port.
- Other various bug fixes.
Don't call pkg_info to get the installed Emacs version; always use the
version matching EMACS_TYPE set by users. Be DEPENDS to it. This should
address pkg/37146 by Aleksey Cheusov.
While here convert some emacs lisp packages to user-destdir.
* Added ability to select objects, with the option of deleting or viewing
basic properties of the objects
* Split off the core functionality of gerbv into a library (libgerbv) to
allow developers to quickly write software using Gerber
parsing/editing/exporting/rendering functionality. Full DOxygen
documentation has also been created to facilitate developers wishing to use
libgerbv.
* Added export to RS274X and Excellon functionality, allowing gerbv to
translate files between formats. The RS274X export function can also be
used to "clean" troublesome files to a more compatible format.
* Added the ability to override the Excellon format "guessing", allowing
non-standard drill files to be correctly rendered
* Greatly expanded the command line functionality, including the ability to
panelize boards into a single one through the command line
* Added "Aperture usage" tab to Gerber reports. This allows the user to
see how often each aperture is used in all visible layers of his project.
Several notable bugs were squished in release 2.1.0:
* Fixed bug when exporting several layers to SVG/PDF/PS, which caused
corrupted output and/or crashes
* Fixed several Windows-only problems related to parsing and rendering
* Fixed rendering bug when using polygon objects within step and repeat
blocks
* Improved RS-274X export output format to work with certain Gerber viewing
software
patches to add it). Drop pax from the default USE_TOOLS list.
Make bsdtar the default for those places that wanted gtar to extract
long links etc, as bsdtar can be built of the tree.
- assume that Python 2.4 and 2.5 are compatible and allow checking for
fallout.
- remove PYTHON_VERSIONS_COMPATIBLE that are obsoleted by the 2.3+
default. Modify the others to deal with the removals.
Also, do not install calcCAP or calcRL. These two tools seem to give
results of questionable accuracy (see the sourceforge bug tracker
for the upstream sources) and also don't build with gcc-4 anyway.
Bump pkgrevision.
Many updates including
- 100% of RS274-X is now supported
- cairo rendering which among other things gives printing to a printer, pdf,
png, ps, or svg.
- gnome/kde desktop integration
- added a regression test suite
- lots of rework of the gui.
All in all this is a major overhaul.
========================================================================
Release Notes for PCB snapshot 20080202
========================================================================
This release represents over 180 commits and as such this summary
clearly is not complete. See the ChangeLog file for the complete list
of changes.
- Added a footprin preview in the library window
- Added gnome/kde desktop integration files (app and mime icons, and
.desktop file)
- Added i18n support
- Updated dbus support
- Fix a number of GCC 4 compiler warnings
- Make the gtk gui more robust against malformed menu resource files
- Added checking for duplicate hot key definitions in the menu resource
file in the gtk gui.
- Improved support for building on win32.
- Removed automake/autoconf generated files from cvs
- Fixed some parallel make bugs
- Fixed some scrolling/panning bugs in the gtk gui.
- Added the ability to load edif netlists
- Closed a number of bugs in the sourceforge tracker
- Fix a bg in the x-y output files where the y values were mirrored and offset
- Add XRENDER support to the lesstif HID to support layer transparency
- Fix some polygon dicer bugs
- Fix a handful of bugs in the png export HID
- Avoid vias snapping to pins and moving elements snapping to their own
pins/pads
- Fix a number of undo bugs
- Fix printer calibration
- Add global puller
- Various improvements to the postscript export HID
- Improve all the GetXY prompts in the menu resource files
- Improved the pin/via report
- Improved pin/pad vs grid snapping
- Various footprint improvements
o fixed some drill sizes
o fixed some silk sizes
o Added a handful of QFP family footprints
o Converted the QFP family to the hi-res format
- Several other bug fixes
Release notes for the gEDA/gaf 1.4.0.20080127 stable snapshot
Summary
__________________________________________________________________
This is the third major stable release of gEDA/gaf. It rolls up the
various feature additions, code cleanup, and bug fixes that have
occurred over the past five months. Major highlights include:
* Many usability improvements to the various programs
* Optional support for desktop integration (GNOME and KDE)
* Many improvements to component library handling (internals and
component selection dialog)
* libgeda is now internationalized
* Many language translation updates to gschem and gattrib
* Improved error handling throughout all the programs
* Fixes to the spice-sdb backend to support slotting
* Rendering improvements and speedups in gschem
* A bunch of new tests in gsymcheck to catch a few common errors
* Improved support for running under MinGW
* Lots and lots of code cleanup and improvements throughout all the
programs
* The usual slew of bugs and quirks fixed
NOTE: This is a stable snapshot and should be packaged up by
distribution package maintainers.
Changes
__________________________________________________________________
Changes in this release only (since v1.3.1):
Peter Clifton
* Fix typo in Dutch translation
* Fix use after free corruption when consolidating nets
* Invalidate component cache when updating symbols. [#1880211]
* Only call gdk_window_invalidate_rect() when drawing to a GdkWindow.
Werner Hoch
* gsymcheck: improved the pintype check, added test case
* Added new pintype test symbol and output to EXTRA_DIST
* gsymcheck: test for misplaced attributes
* gsymcheck: moved obsolete and forbidden attribute checks
* fixed error handling bug in run_source_command() [#1869941]
* forward status messages from the library command to the log
* fixed two symbols with missplaced pin attribute errors
* detach missplaced symbol attributes
* fixed symbol with invalid pintype attribute
* Update the pinnumbers when updating a symbol with slots
* Updated German translation of gschem
Ales Hvezda
* Updated documentation from the official wiki website
* Changed Edit/Undo and Add/Bus hotkeys
* Fixed reversed VDD/VSS nets in this hex schmitt trigger
* Fix a crash when running a script that calls (gschem-image ...)
Bernd Jendrissek
* Update Afrikaans translation to fix spelling error.
Bert Timmerman
* libgeda Dutch translation updates
For all the other changes from last development series (1.3.x):
* [1]gaf-1.3.0 Release Notes
* [2]gaf-1.3.1 Release Notes
Notes/Bugs/Errata/Known Issues/Last Minute Issues
__________________________________________________________________
* Many thanks to everybody who contributed to this snapshot and
previous development snapshots.
* Updates to this stable snapshot (1.4.x series) will occur if people
find issues.
* The next major stable snapshot (1.6.x) will probably happen in the
middle of this year.
* Please submit all bugs to the [3]bug tracker.
This release represents a point release incorporating a few patches made
against the 1.0.X source over the last 1 1/2 years. Specific updates
include:
* Incorporate changes from Joost Witteveen to support extended
%SR% commands.
* Fix endless loop bug when gerbv encountered an unknown
% code. Patch from Joost Witteveen.
* Fixed initial scale setting for %MOMM% Gerber files.
Patch from Joost Witteveen.
* Fixed format for small drillfiles. Patch from Trevor Blackwell.
* Fix setting of the initial window size when the screen
is larger than the display. Patch from David Carr.
Most of the previous pkgsrc patches have been incorporated upstream (yay!).
New in 20060606
- ??
New in 20051222
- full-height vertical scrollbar appears if the total height of all
panels becomes larger than the window.
- new panel type "jumbo" stays larger even when things get crowded
- most deprecated guile calls removed. Guile 1.6 or later is now required.
New in 20050928
- ALPHA RELEASE: may crash. do not rely on for production use.
- handling of multi-sweep datafiles
- vertical scrollbars on label/measure area in each wavepanel make handling
large numbers of waveforms easier.
New in 20031202
- Got docstring extraction from C source to .txt files in doc directory working again
- applied submitted patch that cleans up warnings from gcc3 about multiline text strings in C code
New in 20030917
- bugfixes to make the new print/plot stuff work better
- path to working gnu graph found by configure is passed to scheme code
then automatically generate a PLIST that says "${PKGNAME} has no files".
* If PLIST_SRC and GENERATE_PLIST are not set in a package Makefile,
and no PLIST files exist, then fail during the package build with
PKG_FAIL_REASON.
* Remove "intentionally empty" PLISTs again.
Now, the easy way to say that a package installs no files is to just
add the following to the package Makefile:
PLIST_SRC= # empty
that directly manipulate empty PLISTs.
Modify plist/plist.mk so that if the PLIST files are missing and no
GENERATE_PLIST is defined, then the package fails to build.
There are a large number of changes in this update. Many bugs have been fixed,
VCD writing has been improved, the build system has migrated to a fully
autoconf/automake system from a partial gnu system.
The code written as part of the 2007 Google summer of code has been incorporated
which allows waveform reloading and provides the framework for further enhancements.
For the complete set of changes, see CHANGELOG.TXT in the distribution file.
========================================================================
Release Notes for PCB snapshot 20070912
========================================================================
This release represents nearly 200 commits and as such this summary
clearly is not complete. See the ChangeLog file for the complete list
of changes.
- Many many bug fixes. Too many to list.
- Added keystone, C&K, Nichicon, and Optek footprint libraries
- Add attribute editor to the GTK HID
- Add a fileselect() function to the HID spec
- Fix ps output with drill helper on
- Add a visual indicater when elements are locked
- Corrections to the manual
- BOM can export in mm as well as mil
- Fix a ps output bug with arcs
- Fix some memory leaks found with Coverity
- Added autoconf test for buggy versions of m4
- Fixed some footprint drill sizes
- Add user customizable menus for the gtk HID. The gtk HID now is capable
of reading the same format menu resource files as the lesstif HID.
This represents significant rework of the menu code and menu callback code.
- Added Center() action
- Store the file format in the .pcb file. This will let pcb know when
presented with a file which is too new. The code for checking the format
was present in the prior snapshot.
- Fix DRC checking of square pads to square pads
- Added window panning/cursor warping
- Add the ability to directly load a footprint from a file as if it were
a complete layout.
- Add a Popup() action
of an emulated operating system. Instead of proliferating things like
SUSE_VERSION_REQD, NETBSD_VERSION_REQD, SOLARIS_VERSION_REQD, etc., a
package can say:
EMUL_REQD= suse>=9.1 netbsd>=2.0 solaris>=10
all in one, succinct line.
binary-only packages that require binary "emulation" on the native
operating system. Please see pkgsrc/mk/emulator/README for more
details.
* Teach the plist framework to automatically use any existing
PLIST.${EMUL_PLATFORM} as part of the default PLIST_SRC definition.
* Convert all of the binary-only packages in pkgsrc to use the
emulator framework. Most of them have been tested to install and
deinstall correctly. This involves the following cleanup actions:
* Remove use of custom PLIST code and use PLIST.${EMUL_PLATFORM}
more consistently.
* Simplify packages by using default INSTALL and DEINSTALL scripts
instead of custom INSTALL/DEINSTALL code.
* Remove "SUSE_COMPAT32" and "PKG_OPTIONS.suse" from pkgsrc.
Packages only need to state exactly which emulations they support,
and the framework handles any i386-on-x86_64 or sparc-on-sparc64
uses.
* Remove "USE_NATIVE_LINUX" from pkgsrc. The framework will
automatically detect when the package is installing on Linux.
Specific changes to packages include:
* Bump the PKGREVISIONs for all of the suse100* and suse91* packages
due to changes in the +INSTALL/+DEINSTALL scripts used in all
of the packages.
* Remove pkgsrc/emulators/suse_linux, which is unused by any
packages.
* cad/lc -- remove custom code to create the distinfo file for
all supported platforms; just use "emul-fetch" and "emul-distinfo"
instead.
* lang/Cg-compiler -- install the shared libraries under ${EMULDIR}
instead of ${PREFIX}/lib so that compiled programs will find
the shared libraries.
* mail/thunderbird-bin-nightly -- update to latest binary
distributions for supported platforms.
* multimedia/ns-flash -- update Linux version to 9.0.48 as the
older version is no longer available for interactive fetch.
* security/uvscan -- set LD_LIBRARY_PATH explicitly so that
it's not necessary to install library symlinks into
${EMULDIR}/usr/local/lib.
* www/firefox-bin-flash -- update Linux version to 9.0.48 as the
older version is no longer available for interactive fetch.
Release notes for the gEDA/gaf 20070526 snapshot
Changes
_________________________________________________________________
libgeda/gschem
* libgeda's shared library version is now 29:0:0.
* Added "recently used files" File menu option. Now you can open up
files you used recently (and if you have a gafrc your components
should be found too) and open those files up in a new gschem
window. (Ivan Stankovic)
* Merge of the noscreen branch (many changes). This branch removed
all cached screen coordinates. Now all calculations are done in
world coordinates and should yield some drawing improvements. End
users should not notice any difference (other than the slight
speed up). (Peter Clifton)
* Many improvements to the "Write image..." dialog box in gschem.
gschem can now export any image that gtk+ (gdk-pixbuf
specifically) can write (png, jpg, ico, bmp, etc...). Libgd is no
longer an optional dependency and cannot be used with
libgeda/gschem. (Carlos Nieves Onega)
* Improved the auto placing mechanism. One improvement (amongst
others) is in the cases of: if the attribute overlap with pins
(including pinnumbers), or the pin connection direction where a
net is supposed to be drawn, then the attributes are moved
automatically. (Carlos Nieves Onega)
* A few improvements to the component place selector including
adding ok button to hide the component insert dialog box).
(Various)
* Added items (links to the wiki and FAQ) to the gschem help menu.
(Peter Brett)
* Fixed a nasty bug that was causing random crashes with keymaps
that did not have a valid keyval/keysym. (Peter Clifton)
* Fixed the drawing of dotted arcs/circles when the dot spacing is
too small to render. (Peter Clifton)
* Fixed component selector filter to be case insensitive. (Carlos
Nieves Onega)
* Added PageUp and PageDown hotkeys to change pages in gschem.
(Peter Brett)
* Fixed the ordering of buttons in all gtk dialog boxes to be
correct (based on what gtk+/gnome/desktop conventions). (Carlos
Nieves Onega)
* Added %%Orientation to DSC block in postscript output. (Mike
Jarabek)
* Fixed color printing of select objects (should not output the
selected color). (Peter Clifton)
* Added hotkeys to decrease and increase the snap grid spacing.
(Carlos Nieves Onega and Peter Brett)
* Improved keymap filling routines (Werner Hoch and Patrick Bernaud)
* Fixed a couple of small memory leaks. (Ales Hvezda)
* The usual slew of bug fixes by many individuals.
* A bunch of code cleanup/fixes by various individuals.
* Various language translations updated by various individuals.
gnetlist
* New gnetlist backends written: Calay and Osmond. (John Doty)
* Moved the loading of scheme files using the "-l" command line
before the schematics are loaded (this allows the scheme code to
modify the various search paths).
* Various improvements to the spice-sdb backend including the
treatment of slotted parts (so that pins are emitted in pinseq
order). (Stuart Brorson)
* Added and improved a bunch of regression tests. The vast majority
of these tests are now run during make distcheck. (Stuart Brorson
and Ales Hvezda)
* A few bugs fixed. (Various)
gattrib
* Added doxygen generated docs. (Stuart Brorson)
* A bunch of bugs fixed. (Stuart Brorson and Peter Clifton)
docs
* Removed the html version of the gsch2pcb tutorial. Instead, the
gsch2pcb tutorial is now part of the wiki thanks to several
individuals (Patrick Doyle and Bogdan Petrisor).
* Updated the wiki snapshot to the latest web wiki version. (Ales
Hvezda)
* Misc improvements to various wiki scripts. (Ales Hvezda)
symbols
* Added greek mu character. (Carlos Nieves Onega)
* Added upper case greek omega character. (Jens Persson)
gsymcheck
* No significant changes.
utils
* Added refdes_renum test suite. (Dan McMahill and Stuart Brorson)
* Incorporated --gentle into refdes_renum which doesn't overwrite
refdes'es already numbered. (Stuart Brorson)
* Moved gschemdoc to the gschem package. Bunch of improvements to
the gschemdoc script related to finding local/remote
documentation. (Carlos Nieves Onega)
examples
* Fixed automake infrastructure to install 2N3904 model for the
TwoStageAmp example. (Stuart Brorson)
For more a detailed changes, please look in the appropriate ChangeLogs
in the source tarballs.
adms is a code generator that converts electrical compact device models
specified in high-level description language into ready-to-compile c code
for the API of spice simulators. Based on transformations specified in
xml language adms transforms Verilog-AMS code into other target languages.
* Dinotrace 9.3c 1/2/2007
*** Add signed decimal radix. [by Uwe Bonnes]
*** Builds now take place in "obj_dir" to keep them distinct from sources.
**** Fix VCD files with 10 or 100 femtosecond resolution.
**** Fix dinotrace.el complaint about bad verilog-mode.el version.
[Joseph Holtgrefe]
**** Fix core dump when no fonts are available. [Dmitri Belimov]
* Dinotrace 9.3b 3/13/2006
*** Fix line number incrementing in Verilog errors. [Uwe Bonnes]
* Dinotrace 9.3a 6/13/2005
*** Fix too small buttons under openmotif.
*** Fix missing keyboard accelerators under openmotif.
* Dinotrace 9.2b 5/03/2005
*** The default extension for Verilog dumps is now .vcd instead of .dmp.
**** Fix traces containing only real numbers. [Vitor Antunes]
**** Fix segfault when doing signal adds. [Guy Hutchinson]
* Dinotrace 9.3c 1/2/2007
*** Add signed decimal radix. [by Uwe Bonnes]
*** Builds now take place in "obj_dir" to keep them distinct from sources.
**** Fix VCD files with 10 or 100 femtosecond resolution.
**** Fix dinotrace.el complaint about bad verilog-mode.el version.
[Joseph Holtgrefe]
**** Fix core dump when no fonts are available. [Dmitri Belimov]
* Dinotrace 9.3b 3/13/2006
*** Fix line number incrementing in Verilog errors. [Uwe Bonnes]
* Dinotrace 9.3a 6/13/2005
*** Fix too small buttons under openmotif.
*** Fix missing keyboard accelerators under openmotif.
* Dinotrace 9.2b 5/03/2005
*** The default extension for Verilog dumps is now .vcd instead of .dmp.
**** Fix traces containing only real numbers. [Vitor Antunes]
**** Fix segfault when doing signal adds. [Guy Hutchinson]
Nelma is a (command line) tool for numerically calculating various
electrical properties of printed circuit boards or similar objects
composed of conductors and dielectrics (however code is optimized for
circuit board-like geometry).
It is currently capable of calculating capacitances between objects -
nets on a PCB. It returns a spice-compatible description of an
equivalent circuit of stray capacitances that can be for example used
for more accurate circuit simulation. Alternatively it can also
produce field data that can be plotted for example with Gnuplot.
Support for calculating resistances existed for a while but was later
removed because it didn't receive much testing.
Nelma is available under the GNU General Public License version 2.
Release Notes for Icarus Verilog Snapshot 20070227
* Fix some problems with specify block parsing. Detect some cases that
are parsed but not properly implemented yet and issue warnings or
errors. Also fixed a few problems with inertial delay model timing.
* Detect is some cases Verilog source errors that can be better
reported to users. This includes more specific error messages for
certain syntax errors.
* Fix problems with overridden continuous assignments.
* Hide bool types from logic type as far as VPI is concerned, for the
sake of compatibility.
* Fix a variety of code generator expression lifetime bugs that caused
obscure (and wrong) output results in behavioral code.
* iverilog-vpi uses the compiler selected at build time.
* Rework handling of strings to handle escape sequences properly.
* Fix some handling of real values in some expression types.
* Get padding of sized, unsigned numbers when x or z are involved.
* Many, many more misc. bug fixes.
* Add an assert mechinism that improves usefulness of bug reports by
reporting source file line numbers when available.
* Compile fixes, using inttypes.h instead of stdint for portability.
* Various spelling fixes.
LC is simulation tool for the analysis of the electromagnetic
properties of electrical interconnects. The full three-dimensional
circuit is modeled, so all interactions are automatically included in
the solution. The model can be excited by numerous types of waveforms,
and the transient response measured using common values such as
voltage and current. Circuit parameters such as inductance,
capacitance, and impedance can be derived from the transient response,
and frequency-domain results such as S-parameters can also be
calculated. Far field radiation patterns can be obtained.
LC is primarily an electromagnetic simulation and uses the
Finite-Difference Time-Domain (FD-TD) technique. FD-TD is a full wave
explicit solution of Maxwell's equations in three dimensions. In FD-TD,
the rectangular volume enclosing the model is discretized into a large
number of small cells, which may be uniformly-sized, or may vary in size
within the simulation space. The dielectric, permeable, lossy, and
conducting material properties of each cell are incorporated into the
field updates, which are performed iteratively in small time steps.
An interface between the electromagnetic simulation and the circuit
simulation program SPICE is available within LC. This allows the user
to add arbitrary SPICE circuits, such as drivers and loads, into the
interconnect model. The interconnect performance is calculated using
FD-TD while the lumped-element circuits are evaluated by SPICE.
Release Note for Icarus Verilog Snapshot 20070123
Handling of arrays has been rewritten to allow support for net
arrays. This caused ivl_target API changes, as well as elaboration and
vvp run time changes. There may be bits of the old method lingering in
the source code.
Improve support for constant power (**) expressions, and other
constant exppressions that are passed to functions/tasks.
Improve elaboration of for-loop increment expressions. There were some
bugs there that are not fixed.
Fix argument width calculations for shift operations.
Constant ector expressions can have real constants. Handle this at run
time where needed.
Fix some bad lookaside optimizations for assignments to l-value part
selects.
last snapshot. A highly abbreviated list is:
libgeda:
- fixes to postscript output
- fixes to arc handling
- added some functions for embedding and deembedding symbols
- many changes to the internal data structure.
- fix a bug which could cause missing connectivity on a bus
- improvements to attribute handling
- fix a bunch of compiler warnings.
- various other bug fixes
gschem:
- improvements and bug fixes to the autonumber code
- improvements to the various file selection dialogs
- improvements to attribute handling
- improvements to the internal data structure
- various other bug fixes
gnetlist:
- fixes for guile-1.8
- update the gsch2pcb backend to allow running or never running m4 for pcb
footprints.
- changed "package" to "refdes" in the BOM/BOM2 backends
- added a drc2 regression test
- bugfix in the allegro backend
- other misc fixes
symbols:
- added 4 missing characters to complete the hungarian character set
- add greek mu
gsymcheck:
- man page improvements
gattrib:
- enhanced sorting functions
- various bug fixes
utils:
- add an option to gsch2pcb to let the user prevent m4 from ever being run
when looking for pcb footprints.
- let gsch2pcb look both for "name" and "name.fp" when looking for a footprint
called "name".
- use some configure options to set the default gsch2pcb footprint search paths
rather than hardcoding them.
- added a gnet_hier_verilog.sh script to do non-flattened verilog netlisting
- added options to gschlas to embed or de-embed all symbols in a schematic
========================================================================
Release Notes for PCB snapshot 20070208
========================================================================
- Add polygon clipping code. This is a big change to how polygons are handled.
The new code now removes islands and correctly identifies open circuits caused
by a trace fully cutting through a polygon. In addition, the RS-274-X output
is now simpler and works with some board houses that use older non-conforming
sofware. Different styles for thermal reliefs are also now supported as part
of the polygon clipper code.
- Add support for plugins
- Many improvements to the autorouter.
- Various improvements to the trace optimizer.
- Add a fontmode for editing pcb fonts
- Add progress() hook to HID structure
- Fix a bug with non-functional windows on some window managers commonly
found on OS-X
- Add support for controlling pcb via dbus
- Fix various bugs which would cause a crash
- Add --scale for postscript scaling
- Intercept window manager delete events with the GTK gui
- Scan the .pcb file for a FileVersion value. This is not written out yet
but will be in future versions.
- Warn if non-manhattan lines are trying to become pads.
- Allow no-solder paste pads to support fiducials
- Report in mm or mils as selected by user
- Allow reordering of layers
- add some more QFN packages
- fix building with sun studio c compiler
- Made a pcb installation be relocatable.
- Convert the m4 libraries to newlib libraries as part of building a distfile.
The m4 libraries are still considered the sources and as such are still
distributed but this eliminates the need for m4 at runtime for footprints.
- Got rid of the pcb wrapper script around pcb-bin.
- Remove some old footprints of questionable naming, accuracy, or usefulness.
- Get the autosave/backup code working on all GUI's
- Fix some drill size rounding in the reports
- Changed the backup file name to be derived from the .pcb file name
- Added a command line option for DrawGrid
- Fix logic for adding new ratlines
- Fix gtk grid when board is flipped
- Add "find" and "rip-up" buttons to the netlist window
- Draw plated holes when exporting
- Fix some bugs when converting selection to element
- Fix build on cygwin
- Enhance the win32/build_pcb script used to generate a non-cygwin windows
installer.
- Make pcb work under non-cygwin windows
SimPy 1.8 is a major release with new capabilities, improved documentation
and bug fixes. It is fully backwards compatible with previous versions.
From SimPy 1.8 on, the obsolete Python version 2.2 is no longer supported.
Some of the changes and improvements are:
* New compound yield statements, supporting time-out or event-based
reneging in 'get' and 'put' operations on Store and Level resources.
* yield get on a Store resource can now have a filter function which
selects which and how many items (e.g. "3 parcels weighing less than
3 pounds") should be retrieved.
* The Manual has been thoroughly edited, restructured and rewritten
with a view to greater clarity and readability. It is provided in both
HTML and PDF format.
* The Cheatsheet has been completely rewritten in a tabular format and
reduced to just a few pages. The goal was to turn it into a concise
desktop reference of SimPy commands. The Cheatsheet is provided in both
XLS (MS Excel spreadsheet) and PDF format.
SimPy 1.7.1 is a minor (maintenance) release which fixes a few bugs
in 1.7. The SimPy 1.7.1 API is identical to that of version 1.7.
SimPy 1.7 is fully compatible with version 1.6.1. This major release brings
significant new capabilities for the SimPy modeller and thus a broader
field of applicability to SimPy. It is now very easy to implement models
for scenarios involving:
* producer/consumer relationships between processes,
* multi-process cooperations,
* multi-resource requests, and
* consumable resources.
Error: An integer constant expression is required within the array subscript operator.
VS: ----------------------------------------------------------------------
INSTALLATION_DIRS, as well as all occurrences of ${PREFIX}/man with
${PREFIX}/${PKGMANDIR}.
Fixes PR 35265, although I did not use the patch provided therein.
packages with the modular Xorg equivalent. Those are falling back
to the old location by default, so this commmit doesn't change
dependencies.
graphics/xpm ==> x11/libXpm
fonts/Xft2 ==> x11/libXft
x11/Xfixes ==> x11/libXfixes
x11/xcursor ==> x11/libXcursor
x11/Xrender ==> x11/libXrender
x11/Xrandr ==> libXrandr
There have been many updates and minor versions between the last packaged
version and this one. These updates have included many bug fixes including
several bugs which would cause a crash, bugs in the generated netlists,
and others.
Release notes for the gEDA/gaf 20061020 snapshot
Changes
_________________________________________________________________
libgeda/gschem
libgeda and gschem no longer use libgdgeda (which was a gEDA specific
hack to the libgd library). gEDA/gaf now wants to use the original
GD library. (Wojciech Kazubski and Carlos Nieves Onega with
cleanup by others)
*
* gEDA/gaf now compiles out of the box on cygwin. (Cesar Strauss)
* Fixed bug #1553544: "New pages inadvertently created when adding
nets in gschem" (Peter Clifton)
* New component selection dialog box for gschem. This one is so much
better than the original one. Please test it out and submit
comments to the mailing lists. (Patrick Bernaud)
* The preview window is inside the file selectors again. The preview
window has been refactored and improved. (Patrick Bernaud)
* gschem now places a title block (or any component the user wants)
when a new page/window is created. This solves the common complain
that the initial zoom is way to far out. (Carlos Nieves Onega)
* Improvements to the new print dialog box: Make print settings
sticky for session. (Peter Brett)
* Fixed bug #1527465: Do a zoom extents for all pages when the main
window is maximized. (Carlos Nieves Onega and others)
* Fixed bug #1565433: Added the border in the gdk-pixbuf's image
output. (Carlos Nieves Onega)
* New dialog for user confirmation before closing a page or a
window. This is also a great improvement over the previous exit
confirm dialog box. (Patrick Bernaud)
* Various language translations updated.
* libgeda's shared library version is now 27:0:0.
* Many more bug fixes and code cleanups. (various people)
gnetlist
* Fixed PCB cursor related issues (Peter Clifton and Stuart
Brorson).
* Minor cleanup of gnet-PCB backend. (Thien-Thi Nguyen)
gattrib
* Made gattrib throw up GUI window warning user of no components or
attributes. (Stuart Brorson)
* File browsers in gattrib are now the same ones that gschem uses.
(Patrick Bernaud)
* The usual bug fixes and code cleanup. (various)
docs
* Updated the wiki snapshot to the latest web wiki version.
symbols
* linear/lm311-1.sym: Removed the GND false connection of the
symbol. (Ramakrishnan Muthukrishnan, John Luciani, and Carlos
Nieves Onega).
* Lots of off grid symbols cleaned up. (Werner Hoch)
gsymcheck
* Adds newline that is missing from the "Found Pintype=..." message
in s_check_pintype() in s_check.c. (Jeff Mallatt and Carlos Nieves
Onega)
* gsymcheck now counts the number of distinct pinnumbers specified
in all slotdef= attributes. Uses that number, plus the number of
net= pins, to compare with the "footprint size" when checking for
that warning. (Jeff Mallatt and Carlos Nieves Onega).
utils
* Applied patches for the cygwin port. Lots of various improvements
to make gschemdoc more Windows friendly (at least under cygwin).
(Cesar Strauss, Peter Brett, and Carlos Nieves Onega)
examples
* No significant changes
For more a detailed changes, please look in the appropriate ChangeLogs
in the source tarballs.
* 09/04/2006
Development release covered-20060904 made. This is primarily an enhanced language support release
containing support for the Verilog-2001 'generate' block and support for some SystemVerilog constructs.
All bug fixes from the stable release branch have also been included in this release as well. Some
updates to the GUI (to match changes made on the score command side). The following is a list of
changes made from the last development release
- Complete parsing/simulation support for generate blocks include generate for, if/else and
case constructs.
- Fixed bug in hierarchically referencing items within an array of instances.
- Added -g option to score command to allow the user to specify on either a global or modular
level which Verilog generation to consider for that design. This allows a block of logic written
with Verilog-1995 in mind to use names that would be keywords in Verilog-2001 or SystemVerilog,
as an example.
- Removed "manstyle" type documentation in user's guide as this tool is no longer used for this
project. This change should be transparent to the user, however.
- Fixed scoping/hierarchical referencing rules to match the Verilog LRM properly.
- Added parsing/handling support for SystemVerilog always_comb, always_ff and always_latch blocks.
- Added parsing support for 'unique' and 'priority' SystemVerilog keywords before if and case
statements (Covered doesn't need to do anything with them, however).
- Added parsing/handling support for 'do .. while' SystemVerilog loops.
- Added parsing/handling support for new SystemVerilog data types, including: byte, bit, logic,
char, shorting, int and longint.
- Added -rI option to the score command which allows the user to completely bypass the race
condition checking phase of the score command.
- Added -B global option which obfuscates all identifying names from Covered's output (for use
in providing debugging information to the developer's of Covered).
- Added parsing/handling support for operate-and-assign SystemVerilog operators, including:
+=, -=, *=, /=, %=, &=, |=, ^=, <<=, >>=, <<<=, >>>=, ++ and --. These can be used wherever
their counterparts can be used (including generate for loops).
- Added proper handling of Verilog-1995 delayed blocking assignments (i.e., "a = #5 b;" or
"a = @(posedge clk) c;"). Previously, the delay was being incorrectly ignored which could
have lead to infinite looping of always/forever blocks or could calculate incorrect coverage
information.
- Added parsing support for SystemVerilog .name and .* port lists.
- Added partial parsing/handling support for SystemVerilog 'typedef' usage. This should work for
enumerations but not other data types at this point.
- Added parsing/handling support for SystemVerilog 'enum' constructs. These should be fully
supported with the exception of their built-in '.first', '.last', '.next', '.prev', '.num' and
'.name' methods.
- Added full support of handling Verilog-1995 repeated delay blocking assignments (i.e.,
"a = repeat(5) @(posedge clk) b;". These were previously being treated as normal blocking
assignments.
- Added keyword highlighting support in GUI for Verilog-2001 and SystemVerilog keywords depending
on the -g value specified for a particular module.
- Added parsing support for SystemVerilog assertion, property and sequence blocks. These constructs
are ignored by the parser but should not cause a parsing error now.
- Added parsing support for SystemVerilog multi-dimensional arrays. These are ignored by the
parser but should not cause an error.
- Added full support for the SystemVerilog $root global space -- though limited testing has
been performed with this at this point.
- Added -s option to the report command to suppress the output for modules/instances that contain
no coverage information.
- Updated all user documentation to match changes made for this development release.
- Lots of new diagnostics added to regression suite to verify the majority of these changes.
There you have it. A lot of enhancements made for language support for Verilog-1995, Verilog-2001
and SystemVerilog. Some of the additions for SystemVerilog, especially typedefs and $root global
space, have not been fully verified to work and may still be a bit buggy, but everything else should
be expected to work as advertised. Please submit any bugs that you find. The next development
release should contain support for some more language enhancements, including full support for
typedef and enumeration usage, support for memories, multi-dimensional arrays, structs and unions.
I will also be looking at adding support for bitwise coverage information (for vectored calculations).
As always, have fun!
* 08/30/2006
Stable release covered-0.4.7 made. This release is mostly a bug fix release with two feature
additions. The new feature is the global -B option was performs name obfuscation on all identifying,
design-sensitive names from all output (with the exception of CDD file output). This option is
mostly useful as a way to share debugging information with the maintainer(s) of Covered without giving
away sensitive information. Additionally, the -rI score option was added to allow user's to completely
skip the race condition checking phase. This allows users to force Covered to consider all code for
coverage (if race condition checking is performed, all code considered to be potential race conditions
are automatically excluded from coverage consideration). User documentation has been updated for these
changes. The following lists the changes in this release.
- Fixed bug 1535412. Implicit event expressions (i.e., "always @*") now traverse named begin/end
blocks correctly to search for RHS variables.
- Fixed bugs related to segmentation faults and memory leak issues
- Fixed hierarchical reference search to match Verilog-1995 LRM
- Fixed bug 1538922. If -vcd or -lxt option was specified twice, an incorrect error message was
displayed to the user.
- Added -rI option to allow user's to bypass the race condition checking step in the score command.
- Fixed bug 1538920. Handling of any-edge triggered events (i.e., "@(b)") was incorrectly handled
by Covered. Additionally, fixed the event trigger operator (->) to work correctly with the new
changes.
- Fixed bug 1541944. Command options that require a value are now checked to make sure that a value
exists, and an appropriate error message is output if this is not achieved.
- Fixed bug 1542454. Command options that must only be allowed once on a command-line are now
checked and handled appropriately (caused a segmentation fault previously).
- Fixed bug 1544322. When an AND- or OR-type expression has either a left or right expression evaluate
to 0 or 1, respectively, Covered now outputs correct coverage information when the opposite expression
evaluates to an X or Z value, simultaneously.
- Fixed bug 1544325. Multi-variable expressions are now always output as such in report files.
- Fixed bug 1544169. Avoiding consideration of named begin/end block keywords in line coverage.
- Fixed bug 1546059. Covered now properly handles the removal of statement blocks that cannot be
considered for coverage which also contain parameters from another functional unit block.
- Fixed bug with connection of statements in a statement block.
- Updated documentation to match new features added in this release.
* 07/22/2006
Stable release covered-0.4.6 made. This release contains several bug fixes that are listed below.
- Fixed segmentation fault bug which occurs when a multi-bit select on the LHS contains any
expression besides static values.
- Fixed several memory leaks found with valgrind
- Fixed bug 1520159 - arrays of instances incorrectly always started at index 0.
- Fixed bug 1521598 having to do with reduction unary invert and logical not operators not
calculating correctly.
- Fixed bug in db_read when a functional unit is being merged to point to the used module.
- Fixed assertion in link.c such that no segmentation fault occurs if a string is not found
in a str_link list for deletion.
- Fixed bug pertaining to embedded concatenations within function/task parameter lists.
- Fixed bug pertaining to empty named begin-end blocks.
- Fixed bug in the db_read function that would cause Covered to flag an internal assertion
error if an error occurred while reading the CDD file and the global -D option was specified.
- Fixed upwards name referencing bug (1524705).
- Enhanced regression suite to verify that all of these bugs are properly fixed.
* 07/08/2006
Stable release covered-0.4.5 made. This release contains a bug fix to properly handle cases
where two or more signals are declared with a parameter in their range field (i.e., reg [FOO:0] a, b;)
This caused Covered to segfault due to attempting to free the same address twice. Bug 1518932.
Also contains a bug fix to properly remove statement blocks that contain case, casex or casez
expressions and unbindable expressions.
* 5/28/2006
Stable release covered-0.4.4 made. This release contains a bug fix to proper handle hierarchical
referencing of parameter values. This feature was technically not supported in the past but caused
an internal assertion error when this was performed. The feature is now fully supported.
* 4/21/2006
Stable release covered-0.4.3 made. This release contains a bug fix to the statement connection function that
caused segmentation faults during the score command. Also added support for big endian wires/regs. This
information was being ignored by the parser and, consequently, was not being handled correctly by Covered's
internal simulator, leading to incorrect coverage information. The lack of this support was also causing
an internal error in the memory allocation routine when scoring the dumpfile.
* 4/17/2006
Stable release covered-0.4.2 made. This release contains a bug fix that caused an assertion error in the
binding.c source file to occur. The reason for this assertion was a syntax error in the parser that caused
problems when more than one task call was made in a statement block. Also added support for multi-line
definitions (i.e., a '\' character used at the end of a definition line). This was missing but was not meant
to be missing.
* 4/4/2006
Stable release covered-0.4.1 made. This release contains one bug fix that causes an assertion error when
compiling designs that use a concatenation operation on the left-hand-side of assignment statements. If
you are experiencing this problem with the 0.4 release, it is recommended that you use this new release
instead.
* 3/29/2006
Stable release covered-0.4 made. In addition to all of the features, optimizations and bug fixes
that have gone into the development releases from the 0.3 stable release, the following features, updates
and bug fixes have been added.
- Fixed bug with a statement connection issue that causes lines of code to be not considered for
coverage that should have been.
- Fixed bug in report command where combinational expressions were not being output to match the original
Verilog code.
- Added CDD file viewer window to GUI to allow the user to see which CDD files are currently loaded/merged.
- Fixed bug in combinational logic verbose viewer which caused the window to resize dependent upon
the location of the cursor (this was an annoyance)
- Changed the output of simple combinational logic to change to unary combinational logic output if either
the left or the right expression was a constant value (eliminates unachievable combinational logic cases
from being output leading to more accurate coverage results).
- Removed combinational expressions that contain only constant values from being considered for coverage.
- Updated simple combinational logic output in reports to be as concise as possible for AND and OR type
expressions.
- Removed duplication of information in CDD files for race conditions.
- Fixed bug in GUI dealing with showing race conditions
- Fixing bug in GUI pertaining to the next/previous buttons in the combinational logic detail viewer. Previously,
clicking on one of these buttons would only advance you to the next uncovered line. Now it will advance
you to the next uncovered statement.
- Updated development, user and GUI documentation to reflect the above changes and to bring them up-to-date
with the rest of the tool.
Please see the ChangeLog file for all changes made from the 0.3 stable release to the 0.4 stable release.
Lots of enhancements, features, optimizations, bug fixes, performance improvements and documentation improvements
are contained in this stable release, making it very worth while for any Covered users to get their hands on
it.
* Release Notes for Icarus Verilog Snapshot 20061009
The Big news is support for delay path timing is specify blocks. This
includes delay paths and specparams. Back annotation of specify path
timings are not yet implemented.
The "-g" flag has been made a bit more general so that individual
compiler features can be turned on/off. This for example allows for
turning off specify block support and Icarus Verilog extensions, as
well as select language generation.
A variety of bug fixes have been included.
- Missing symbols on Windows fixed.
- mingw build instructions reworked.
- Fix internal handling of -D__ICARUS__ define
- Fix crash of driver when -M flag is used.
- Fix configure detection of host in some subdirectories.
- Handle non-constant delays of index non-blocking assignments.
- $scanf support for real values.
- Fix scheduling of RWsync vs. ROSync callbacks.
- Fix vpi_put_userdata return value.
The iverilog-vpi command now allows .cpp files to stand for C++
source.
** Release Notes for Icarus Verilog 0.8.3
This is a new release of the stable 0.8 branch. The changes from 0.8.2
are intended to be evolutionary, rather then revolutionary, to enhance
the stability of the branch.
Various simulator bugs have been fixed, including (but not limited to):
- Detect overrun of timescale vs. precision
- Handle more operators in constant expressions
- Various ivl crashes and panics fixed.
- Some performance bottlenecks have been fixed.
- Various tool compilation problems have been fixed.
Also, the internal synthesizer (for synthesis targets) has been
considerably improved. NOTE that the code generators have not been
improved to take advantage of all the changes here, so there is work
yet to be done.
The mingw build process for compiling in Windows has been reworked. It
is now possible (indeed preferable) to compile fully native Icarus
Verilog binaries on Windows with no Cygwin tools at all.