iverilog/vhdlpp
Martin Whitaker 5a9a4c4f94 Fix makefile rules for header files generated by bison.
bison 3.4.1 writes the header file before the c++ file. Our makefile
rules make the header files depend on the c++ files, so we need to
fix the timestamps accordingly.

(cherry picked from commit 5bb6c7f53a)
2019-06-02 19:56:42 +01:00
..
Makefile.in Fix makefile rules for header files generated by bison. 2019-06-02 19:56:42 +01:00
README.txt
architec.cc
architec.h
architec_debug.cc
architec_elaborate.cc vhdlpp: Removed conversion of '*_edge(sig)' to 'always begin..end @(*edge sig)'. 2015-06-24 23:53:33 +02:00
architec_emit.cc
compiler.cc
compiler.h
debug.cc
entity.cc
entity.h
entity_elaborate.cc
entity_emit.cc
entity_stream.cc
expression.cc A VHDL ExpAttribute() can share the base so don't just delete them 2015-12-13 19:02:26 -08:00
expression.h Undo redefinition of unique_ptr at end of header files. 2018-12-13 19:16:30 +00:00
expression_debug.cc
expression_elaborate.cc Spelling fixes 2015-08-17 11:34:58 -07:00
expression_emit.cc vhdlpp: NOT is translated to either ~(...) or !(...) depending on the argument type. 2015-06-24 23:53:32 +02:00
expression_evaluate.cc
expression_stream.cc
ivl_assert.h
lexor.lex Update flex destroy to work for version 2.6 and greater 2017-11-16 19:17:50 -08:00
lexor_keyword.gperf
library.cc
library.h
main.cc Spelling fixes 2015-08-17 11:34:58 -07:00
package.cc
package.h
package_emit.cc
parse.y VHDL-10: fix a compile warning and add some missing newlines 2015-12-19 10:50:42 -08:00
parse_api.h
parse_misc.cc
parse_misc.h
parse_types.h
parse_wrap.h
scope.cc vhdlpp: ExpName::probe_type() checks Subprogram parameters. 2015-06-24 23:53:33 +02:00
scope.h Spelling fixes 2015-08-17 11:34:58 -07:00
sequential.cc vhdlpp: Procedure calls. 2015-06-24 23:53:32 +02:00
sequential.h vhdlpp: Procedure calls. 2015-06-24 23:53:32 +02:00
sequential_debug.cc
sequential_elaborate.cc vhdlpp: Procedure calls. 2015-06-24 23:53:32 +02:00
sequential_emit.cc vhdlpp: Procedure calls. 2015-06-24 23:53:32 +02:00
std_funcs.cc Don't allow non-vectorable arguments to $signed/$unsigned. 2018-05-14 22:26:36 +01:00
std_funcs.h
std_types.cc vhdlpp: ScopeBase::is_enum_name checks enums from standard libraries. 2015-06-24 23:53:32 +02:00
std_types.h vhdlpp: ScopeBase::is_enum_name checks enums from standard libraries. 2015-06-24 23:53:32 +02:00
subprogram.cc vhdlpp: Procedure calls. 2015-06-24 23:53:32 +02:00
subprogram.h
subprogram_emit.cc vhdlpp: Procedure calls. 2015-06-24 23:53:32 +02:00
vhdlint.cc
vhdlint.h
vhdlnum.h
vhdlpp_config.h.in
vhdlreal.cc
vhdlreal.h
vsignal.cc
vsignal.h
vtype.cc
vtype.h vhdlpp: VType::type_match() checks definitions provided by VTypeDef. 2015-06-24 23:53:33 +02:00
vtype_elaborate.cc
vtype_emit.cc vhdlpp: Fixed a problem with types defined as an array of arrays. 2015-08-09 16:43:04 +02:00
vtype_match.cc vhdlpp: VType::type_match() checks definitions provided by VTypeDef. 2015-06-24 23:53:33 +02:00
vtype_stream.cc

README.txt

vhdlpp COMMAND LINE FLAGS:

-D <token>
  Debug flags. The token can be:

  * yydebug | no-yydebug

  * entities=<path>

-L <path>
  Library path. Add the directory name to the front of the library
  search path. The library search path is initially empty.

-V
  Display version on stdout

-v
  Verbose: Display version on stderr, and enable verbose messages to
  stderr.

-w <path>
  Work path. This is the directory where the working directory is.


LIBRARY FORMAT:

The vhdlpp program stores libraries as directory that contain
packages. The name of the directory (in lower case) is the name of the
library as used on the "import" statement. Within that library, there
are packages in files named <foo>.pkg. For example:

    <directory>/...
       sample/...
         test1.pkg
	 test2.pkg
       bar/...
         test3.pkg

Use the "+vhdl-libdir+<directory>" record in a config file to tell
Icarus Verilog that <directory> is a place to look for libraries. Then
in your VHDL code, access packages like this:

    library sample;
    library bar;
    use sample.test1.all;
    use bar.test3.all;

The *.pkg files are just VHDL code containing only the package with
the same name. When Icarus Verilog encounters the "use <lib>.<name>.*;"
statement, it looks for the <name>.pkg file in the <lib> library and
parses that file to get the package header declared therein.