refdes_renum: warn of possible number clash with non-conforming values
[geda-gaf/whiteaudio.git] / docs / wiki / geda-icarus_vpi_mp.html
blob76e1cf13f397f5430c514612c82df1dea34d98c9
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3 <html>
4 <head>
5 <title></title>
6 <link rel="stylesheet" media="screen" type="text/css" href="./style.css" />
7 <link rel="stylesheet" media="screen" type="text/css" href="./design.css" />
8 <link rel="stylesheet" media="print" type="text/css" href="./print.css" />
10 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
11 </head>
12 <body>
15 <h1 class="sectionedit766"><a name="compile_front_end_for_vpi_modules_man-page" id="compile_front_end_for_vpi_modules_man-page">Compile front end for VPI modules man-page</a></h1>
16 <div class="level1">
17 <pre class="code">iverilog-vpi(1) $Date: 2004/10/04 01:10:53 $ iverilog-vpi(1)
21 NAME
22 iverilog-vpi - Compile front end for VPI modules
25 SYNOPSIS
26 iverilog-vpi [--name=name] sourcefile...
29 DESCRIPTION
30 iverilog-vpi is a tool to simplify the compilation of VPI modules for
31 use with Icarus Verilog. It takes on the command line a list of C or
32 C++ source files, and generates as output a linked VPI module. See the
33 vvp(1) man page for a description of how the linked module is loaded by
34 a simulation.
36 The output is named after the first source file. For example, if the
37 first source file is named foo.c, the output becomes foo.vpi.
40 OPTIONS
41 iverilog-vpi accepts the following options:
43 -llibrary
44 Include the named library in the link of the VPI module. This
45 allows VPI modules to further reference external libraries.
48 --name=name
49 Normally, the output VPI module will be named after the first
50 source file passed to the command. This flag sets the name
51 (without the .vpi suffix) of the output vpi module.
54 --install-dir
55 This flag causes the program to print the install directory for
56 VPI modules, then exit. It is a convenience for makefiles or
57 automated plug-in installers.
60 PC-ONLY OPTIONS
61 The PC port of iverilog-vpi includes two special flags needed to sup-
62 port the more intractable development environment. These flags help the
63 program locate parts that it needs.
66 -mingw=path
67 Tell the program the root of the Mingw compiler tool suite. The
68 vvp runtime is compiled with this compiler, and this is the
69 compiler that iverilog-vpi expects to use to compile your
70 source code. This is normally not needed, and if you do use it,
71 it is only needed once. The compiler will save the path in the
72 registry for use later.
75 -ivl=path
76 Set for the use during compilation the root if the Icarus Ver-
77 ilog install. This is the place where you installed Icarus Ver-
78 ilog when you ran the installer. This flag is also only needed
79 once, and the path is stored in the registry for future use.
82 UNIX-ONLY OPTIONS
83 The UNIX version of iverilog-vpi includes additional flags to let Make-
84 file gurus peek at the configuration of the iverilog installation.
85 This way, Makefiles can be written that handle complex VPI builds
86 natively, and without hard-coding values that depend on the system and
87 installation. If used at all, these options must be used one at a
88 time, and without any other options or directives.
91 --cflags
92 Print the compiler flags (CFLAGS or CXXFLAGS) needed to compile
93 source code destined for a VPI module.
96 --ldflags
97 Print the linker flags (LDFLAGS) needed to link a VPI module.
100 --ldlibs
101 Print the libraries (LDLIBS) needed to link a VPI module.
104 -m32 On 64bit systems that support it (and support vvp32) this flag
105 requests a 32bit vpi binary instead of the default 64bit
106 binary.
109 Example GNU makefile that takes advantage of these flags:
111 CFLAGS = -Wall -O $(CFLAGS_$@)
112 VPI_CFLAGS := $(shell iverilog-vpi --cflags)
113 CFLAGS_messagev.o = $(VPI_CFLAGS)
114 CFLAGS_fifo.o = $(VPI_CFLAGS)
115 messagev.o fifo.o: transport.h
116 messagev.vpi: messagev.o fifo.o
117 iverilog-vpi $^
120 AUTHOR
121 Steve Williams (steve@icarus.com)
124 SEE ALSO
125 iverilog(1), vvp(1), &lt;http://www.icarus.com/eda/verilog/&gt;,
126 &lt;http://www.mingw.org&gt;,
129 COPYRIGHT
130 Copyright © 2002 Stephen Williams
132 This document can be freely redistributed according to the terms of the
133 GNU General Public License version 2.0
137 Version $Date: 2004/10/04 01:10:53 $ iverilog-vpi(1)</pre>
139 </div>
140 </body>
141 </html>