Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Newer
Older
100644 378 lines (313 sloc) 13.455 kb
471d389 autoconf the makefiles.
steve authored
1 #
2 # This source code is free software; you can redistribute it
3 # and/or modify it in source code form under the terms of the GNU
4 # Library General Public License as published by the Free Software
5 # Foundation; either version 2 of the License, or (at your option)
f7d62b9 whoops, wrong copyright notice.
steve authored
6 # any later version.
471d389 autoconf the makefiles.
steve authored
7 #
8 # This program is distributed in the hope that it will be useful,
9 # but WITHOUT ANY WARRANTY; without even the implied warranty of
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 # GNU Library General Public License for more details.
12 #
13 # You should have received a copy of the GNU Library General Public
14 # License along with this program; if not, write to the Free
15 # Software Foundation, Inc.,
16 # 59 Temple Place - Suite 330
17 # Boston, MA 02111-1307, USA
18 #
19 SHELL = /bin/sh
20
90a4dde Stephen Williams Keep source code version information in version files.
authored
21 # The interesting make targets are:
527f5c4 Stephen Williams The -V flag gets version information from all parts.
authored
22 #
90a4dde Stephen Williams Keep source code version information in version files.
authored
23 # make version
24 # Force the version_tag.h file to be rebuilt. Otherwise, it will only
25 # be built if it is missing.
527f5c4 Stephen Williams The -V flag gets version information from all parts.
authored
26 #
90a4dde Stephen Williams Keep source code version information in version files.
authored
27 # make all
28 # make install
527f5c4 Stephen Williams The -V flag gets version information from all parts.
authored
29 #
90a4dde Stephen Williams Keep source code version information in version files.
authored
30 # The "suffix" is used as an installation suffix. It modifies certain
4bc90f7 Stephen Williams Create support for the --enable-suffix configuration option.
authored
31 # key install paths/files such that a build and install of Icarus Verilog
32 # with the same $(prefix) but a different $(suffix) will not interfere.
ec49f10 Stephen Williams Revert bad merge from vhdl branch
authored
33 # The normal configuration leaves suffix empty
4bc90f7 Stephen Williams Create support for the --enable-suffix configuration option.
authored
34 suffix = @install_suffix@
35
471d389 autoconf the makefiles.
steve authored
36 prefix = @prefix@
37 exec_prefix = @exec_prefix@
38 srcdir = @srcdir@
5ec91ec Stephen Williams Add datarootdir to makefiles
authored
39 datarootdir = @datarootdir@
471d389 autoconf the makefiles.
steve authored
40
8cf1fd1 Stephen Williams Introduce shell of vhdlpp program.
authored
41 SUBDIRS = ivlpp vhdlpp vvp vpi libveriuser cadpli tgt-null tgt-stub tgt-vvp \
96dab23 Cary R. Start adding vlog95 (1364-1995) back end.
caryr authored
42 tgt-vhdl tgt-vlog95 driver
6909737 Cary R. Some more generic fixes for building in a remote directory
caryr authored
43 # Only run distclean for these directories.
26ee14c Cary R. Clean up Makefile.in files.
caryr authored
44 NOTUSED = tgt-fpga tgt-pal tgt-verilog
cb65ee5 Add the vvp engine to cvs.
steve authored
45
145133b Cary R. Minor rework of how driver-vpi is supported.
caryr authored
46 ifeq (@MINGW32@,yes)
47 SUBDIRS += driver-vpi
48 else
49 NOTUSED += driver-vpi
50 endif
51
6909737 Cary R. Some more generic fixes for building in a remote directory
caryr authored
52 # To get the version headers to build correctly we only want to look
53 # for C++ files in the source directory. All other files will require
e67dcf5 Cary R. Add a vpath for the local lexor_keyword.cc
caryr authored
54 # an explicit $(srcdir). The one exception to this is if we need to
55 # rebuild the lexor_keyword.cc file. If we do, then we want to use the
56 # local version instead of the one is $(srcdir).
57 vpath lexor_keyword.cc .
6bf7e88 Cary R. Fix build of ivl with files in libmisc and vhdlpp check issues.
caryr authored
58 vpath %.cc $(srcdir)/libmisc
6909737 Cary R. Some more generic fixes for building in a remote directory
caryr authored
59 vpath %.cc $(srcdir)
471d389 autoconf the makefiles.
steve authored
60
197ed46 configure bindir and libdir
steve authored
61 bindir = @bindir@
62 libdir = @libdir@
4bc90f7 Stephen Williams Create support for the --enable-suffix configuration option.
authored
63 # This is actually the directory where we install our own header files.
64 # It is a little different from the generic includedir.
5660e0e Stephen Williams Install header files in includedir/iverilog
authored
65 includedir = @includedir@/iverilog$(suffix)
c594dce Add new iverilog-vpi man page.
steve authored
66 mandir = @mandir@
471d389 autoconf the makefiles.
steve authored
67
566aad9 Start stub for loadable targets.
steve authored
68 dllib=@DLLIB@
69
471d389 autoconf the makefiles.
steve authored
70 CC = @CC@
966e29d Stephen Williams Unify the version stamp in the version_*.h header files.
authored
71 HOSTCC = @CC@
471d389 autoconf the makefiles.
steve authored
72 CXX = @CXX@
73 INSTALL = @INSTALL@
e6bd088 Compile time problems with vpi_user.h
steve authored
74 INSTALL_SCRIPT = @INSTALL_SCRIPT@
471d389 autoconf the makefiles.
steve authored
75 INSTALL_PROGRAM = @INSTALL_PROGRAM@
76 INSTALL_DATA = @INSTALL_DATA@
357a0ff Detect bison and flex in configure.in
steve authored
77 LEX = @LEX@
78 YACC = @YACC@
b26bdd3 Cary R. MinGW fixes (development)
caryr authored
79 MAN = @MAN@
80 PS2PDF = @PS2PDF@
81 GIT = @GIT@
471d389 autoconf the makefiles.
steve authored
82
be44214 Cary R. Add cppcheck target to the Makefile
caryr authored
83 ifeq (@srcdir@,.)
ab8f623 Stephen Williams Add file/line information to entities and ports
authored
84 INCLUDE_PATH = -I. -Ilibmisc
be44214 Cary R. Add cppcheck target to the Makefile
caryr authored
85 else
ab8f623 Stephen Williams Add file/line information to entities and ports
authored
86 INCLUDE_PATH = -I. -Ilibmisc -I$(srcdir) -I$(srcdir)/libmisc
be44214 Cary R. Add cppcheck target to the Makefile
caryr authored
87 endif
88
89 CPPFLAGS = @DEFS@ $(INCLUDE_PATH) @CPPFLAGS@
bb5ca97 Cary R. Fix some -Wextra warnings and some other bug fixes/enhancements.
caryr authored
90 CFLAGS = @WARNING_FLAGS@ @CFLAGS@
91 CXXFLAGS = @WARNING_FLAGS@ @WARNING_FLAGS_CXX@ @CXXFLAGS@
3154f07 compile libvpi.a with PIC flags (Dan McMahill)
steve authored
92 PICFLAGS = @PICFLAG@
8188c4c Makefile cleanup.
steve authored
93 LDFLAGS = @rdynamic@ @LDFLAGS@
471d389 autoconf the makefiles.
steve authored
94
ab8f623 Stephen Williams Add file/line information to entities and ports
authored
95 # Source files in the libmisc directory
96 M = LineInfo.o StringHeap.o
97
be44214 Cary R. Add cppcheck target to the Makefile
caryr authored
98 TT = t-dll.o t-dll-api.o t-dll-expr.o t-dll-proc.o t-dll-analog.o
99 FF = cprop.o nodangle.o synth.o synth2.o syn-rules.o
100
101 O = main.o async.o design_dump.o discipline.o dup_expr.o elaborate.o \
b89ab1f martinwhitaker Cleanup after parameter expression rework.
martinwhitaker authored
102 elab_expr.o elaborate_analog.o elab_lval.o elab_net.o \
be44214 Cary R. Add cppcheck target to the Makefile
caryr authored
103 elab_scope.o elab_sig.o elab_sig_analog.o emit.o eval.o eval_attrib.o \
104 eval_tree.o expr_synth.o functor.o lexor.o lexor_keyword.o link_const.o \
105 load_module.o netlist.o netmisc.o net_analog.o net_assign.o net_design.o \
5b5a6b0 Stephen Williams Test type correctness during elaboration.
authored
106 netenum.o net_event.o net_expr.o net_func.o net_link.o net_modulo.o \
107 net_nex_input.o net_nex_output.o net_proc.o net_scope.o net_tran.o \
108 net_udp.o pad_to_width.o parse.o parse_misc.o pform.o pform_analog.o \
312b4da martinwhitaker Expression width rework.
martinwhitaker authored
109 pform_disciplines.o pform_dump.o pform_types.o \
be44214 Cary R. Add cppcheck target to the Makefile
caryr authored
110 symbol_search.o sync.o sys_funcs.o verinum.o verireal.o target.o \
ab8f623 Stephen Williams Add file/line information to entities and ports
authored
111 Attrib.o HName.o Module.o PDelays.o PEvent.o PExpr.o PGate.o \
be44214 Cary R. Add cppcheck target to the Makefile
caryr authored
112 PGenerate.o PScope.o PSpec.o PTask.o PUdp.o PFunction.o PWire.o \
ab8f623 Stephen Williams Add file/line information to entities and ports
authored
113 Statement.o AStatement.o $M $(FF) $(TT)
be44214 Cary R. Add cppcheck target to the Makefile
caryr authored
114
2e60a18 Stephen Williams Make all should build the iverilog-vpi.man file.
authored
115 all: dep config.h _pli_types.h version_tag.h ivl@EXEEXT@ version.exe iverilog-vpi.man
d098db0 Jared Casper Base Makefile improvements.
jaredcasper authored
116 $(foreach dir,$(SUBDIRS),$(MAKE) -C $(dir) $@ && ) true
471d389 autoconf the makefiles.
steve authored
117
176e6d0 Add install of examples for Windows.
steve authored
118 # In the windows world, the installer will need a dosify program to
119 # dosify text files.
b26bdd3 Cary R. MinGW fixes (development)
caryr authored
120 ifeq (@MINGW32@,yes)
be44214 Cary R. Add cppcheck target to the Makefile
caryr authored
121 all: dosify.exe
8abe0d7 Cary R. Make MinGW compile using a remote build directory.
caryr authored
122 dosify.exe: $(srcdir)/dosify.c
123 $(CC) -o dosify.exe $(srcdir)/dosify.c
176e6d0 Add install of examples for Windows.
steve authored
124 endif
125
431228e make check target (PR#3)
steve authored
126 # This rule rules the compiler in the trivial hello.vl program to make
127 # sure the basics were compiled properly.
128 check: all
d098db0 Jared Casper Base Makefile improvements.
jaredcasper authored
129 $(foreach dir,$(SUBDIRS),$(MAKE) -C $(dir) $@ && ) true
0a630b6 Fix make check for pristine sources.
steve authored
130 test -r check.conf || cp $(srcdir)/check.conf .
19e8a92 Fix make check to support -tconf configuration method.
steve authored
131 driver/iverilog -B. -BPivlpp -tcheck -ocheck.vvp $(srcdir)/examples/hello.vl
0f0cadd Cary R. Add suffix support for windows (both MinGW and Cygwin).
caryr authored
132 ifeq (@WIN32@,yes)
133 ifeq (@install_suffix@,)
54206ef Make sure to use local system.vpi.
steve authored
134 vvp/vvp -M- -M./vpi ./check.vvp | grep 'Hello, World'
0f0cadd Cary R. Add suffix support for windows (both MinGW and Cygwin).
caryr authored
135 else
136 # On Windows if we have a suffix we must run the vvp part of
137 # the test with a suffix since it was built/linked that way.
138 ln vvp/vvp.exe vvp/vvp$(suffix).exe
139 vvp/vvp$(suffix) -M- -M./vpi ./check.vvp | grep 'Hello, World'
140 rm vvp/vvp$(suffix).exe
141 endif
142 else
143 vvp/vvp -M- -M./vpi ./check.vvp | grep 'Hello, World'
144 endif
431228e make check target (PR#3)
steve authored
145
471d389 autoconf the makefiles.
steve authored
146 clean:
d098db0 Jared Casper Base Makefile improvements.
jaredcasper authored
147 $(foreach dir,$(SUBDIRS),$(MAKE) -C $(dir) $@ && ) true
cf2f99e Cary R. Cleanup Makefile clean targets.
caryr authored
148 rm -f *.o parse.cc parse.h lexor.cc
966e29d Stephen Williams Unify the version stamp in the version_*.h header files.
authored
149 rm -f ivl.exp iverilog-vpi.man iverilog-vpi.pdf iverilog-vpi.ps parse.output
3fd80b0 Administrative/Makefile fixes, mostly for windows. (Cary R.)
steve authored
150 rm -f syn-rules.output dosify.exe ivl@EXEEXT@ check.vvp
cf2f99e Cary R. Cleanup Makefile clean targets.
caryr authored
151 rm -f lexor_keyword.cc libivl.a libvpi.a iverilog-vpi syn-rules.cc
3fd80b0 Administrative/Makefile fixes, mostly for windows. (Cary R.)
steve authored
152 rm -rf dep
05a3929 Cary R. Remove version.exe with a -f to avoid a warning.
caryr authored
153 rm -f version.exe
471d389 autoconf the makefiles.
steve authored
154
8bad04a cannonical make targets, and strip on install.
steve authored
155 distclean: clean
d098db0 Jared Casper Base Makefile improvements.
jaredcasper authored
156 $(foreach dir,$(SUBDIRS),$(MAKE) -C $(dir) $@ && ) true
c167b3a Jared Casper Still more build system cleanup.
jaredcasper authored
157 $(foreach dir,$(NOTUSED),$(MAKE) -C $(dir) $@ && ) true
158 rm -f Makefile config.status config.log config.cache
159 rm -f stamp-config-h config.h
160 rm -f stamp-_pli_types-h _pli_types.h
6909737 Cary R. Some more generic fixes for building in a remote directory
caryr authored
161 ifneq (@srcdir@,.)
cb3eb49 Cary R. Remove the last version.h references
caryr authored
162 rm -f version_tag.h check.conf
6909737 Cary R. Some more generic fixes for building in a remote directory
caryr authored
163 rmdir $(SUBDIRS) $(NOTUSED)
164 endif
cf2f99e Cary R. Cleanup Makefile clean targets.
caryr authored
165 rm -rf autom4te.cache
8bad04a cannonical make targets, and strip on install.
steve authored
166
be44214 Cary R. Add cppcheck target to the Makefile
caryr authored
167 cppcheck: $(O:.o=.cc) $(srcdir)/dosify.c $(srcdir)/version.c
912f82b Cary R. Add suppression for some cppheck problems.
caryr authored
168 cppcheck --enable=all -f --suppressions $(srcdir)/cppcheck.sup \
169 $(INCLUDE_PATH) $^
471d389 autoconf the makefiles.
steve authored
170
be44214 Cary R. Add cppcheck target to the Makefile
caryr authored
171 cppcheck-all:
172 $(foreach dir,$(SUBDIRS),$(MAKE) -C $(dir) cppcheck && ) true
173 $(foreach dir,$(NOTUSED),$(MAKE) -C $(dir) cppcheck && ) true
225ca1e Cary R. Change iterators to use prefix ++ since it is more efficient.
caryr authored
174 $(MAKE) cppcheck
471d389 autoconf the makefiles.
steve authored
175
f1e2f37 Cary R. Fix MinGW make distclean and add <file>.in dependencies.
caryr authored
176 Makefile: $(srcdir)/Makefile.in config.status
177 ./config.status --file=$@
178
be44214 Cary R. Add cppcheck target to the Makefile
caryr authored
179 dep:
180 mkdir dep
181
7ead2aa Jared Casper More build system tweaks, fixing pr2881797.
jaredcasper authored
182 stamp-config-h: $(srcdir)/config.h.in config.status
183 @rm -f $@
184 ./config.status config.h
185 config.h: stamp-config-h
f1e2f37 Cary R. Fix MinGW make distclean and add <file>.in dependencies.
caryr authored
186
7ead2aa Jared Casper More build system tweaks, fixing pr2881797.
jaredcasper authored
187 stamp-_pli_types-h: $(srcdir)/_pli_types.h.in config.status
188 @rm -f $@
189 ./config.status _pli_types.h
190 _pli_types.h: stamp-_pli_types-h
471d389 autoconf the makefiles.
steve authored
191
c167b3a Jared Casper Still more build system cleanup.
jaredcasper authored
192 $(srcdir)/configure: $(srcdir)/configure.in $(srcdir)/aclocal.m4
d098db0 Jared Casper Base Makefile improvements.
jaredcasper authored
193 cd $(srcdir) && autoconf
194
195 config.status: $(srcdir)/configure
196 ./config.status --recheck
7ead2aa Jared Casper More build system tweaks, fixing pr2881797.
jaredcasper authored
197 ./config.status
b62f094 Add the verilog.sh script.
steve authored
198
de8c725 Mingw32 support (Venkat Iyer)
steve authored
199 ifeq (@WIN32@,yes)
3e4eb17 Another go at getting link of ivl.exe right.
steve authored
200 # Under Windows (mingw) I need to make the ivl.exe in two steps.
201 # The first step makes an ivl.exe that dlltool can use to make an
202 # export and import library, and the last link makes a, ivl.exe
203 # that really exports the things that the import library imports.
6bf7e88 Cary R. Fix build of ivl with files in libmisc and vhdlpp check issues.
caryr authored
204 ivl@EXEEXT@: $O $(srcdir)/ivl.def
e4ae832 Clean up spurious trailing white space.
steve authored
205 $(CXX) -o ivl@EXEEXT@ $O $(dllib) @EXTRALIBS@
43e8a08 Tell make to find ivl.def and vvp.def in srcdir.
J Varshney authored
206 dlltool --dllname ivl@EXEEXT@ --def $(srcdir)/ivl.def \
90ae464 Makefile patches to support target loading under cygwin.
steve authored
207 --output-lib libivl.a --output-exp ivl.exp
3fd80b0 Administrative/Makefile fixes, mostly for windows. (Cary R.)
steve authored
208 $(CXX) $(LDFLAGS) -o ivl@EXEEXT@ ivl.exp $O $(dllib) @EXTRALIBS@
90ae464 Makefile patches to support target loading under cygwin.
steve authored
209 else
b34a451 Cygwin port changes from Venkat
steve authored
210 ivl@EXEEXT@: $O
8188c4c Makefile cleanup.
steve authored
211 $(CXX) $(LDFLAGS) -o ivl@EXEEXT@ $O $(dllib)
a0ed5e9 Separate out the lookup_sys_func table, for eventual
steve authored
212 endif
c0d51dd Add the iverilog driver program.
steve authored
213
145133b Cary R. Minor rework of how driver-vpi is supported.
caryr authored
214 ifeq (@MINGW32@,no)
be44214 Cary R. Add cppcheck target to the Makefile
caryr authored
215 all: iverilog-vpi
9e223b9 Clean up rules for iverilog-vpi vs driver-vpi.
steve authored
216
6909737 Cary R. Some more generic fixes for building in a remote directory
caryr authored
217 iverilog-vpi: $(srcdir)/iverilog-vpi.sh Makefile
dddaa0e More configure information in iverilog-vpi.
steve authored
218 sed -e 's;@SHARED@;@shared@;' -e 's;@PIC@;@PICFLAG@;' \
4bc90f7 Stephen Williams Create support for the --enable-suffix configuration option.
authored
219 -e 's;@SUFFIX@;$(suffix);' \
3fd80b0 Administrative/Makefile fixes, mostly for windows. (Cary R.)
steve authored
220 -e 's;@IVCC@;$(CC);' \
221 -e 's;@IVCXX@;$(CXX);' \
bb5ca97 Cary R. Fix some -Wextra warnings and some other bug fixes/enhancements.
caryr authored
222 -e 's;@IVCFLAGS@;$(CFLAGS);' \
223 -e 's;@IVCXXFLAGS@;$(CXXFLAGS);' \
4bc90f7 Stephen Williams Create support for the --enable-suffix configuration option.
authored
224 -e 's;@INCLUDEDIR@;$(includedir);' \
bb87859 Support 32bit compile on AMD64 systems.
steve authored
225 -e 's;@LIBDIR@;@libdir@;' $< > $@
1893e7c Add the iverilog-vpi command.
steve authored
226 chmod +x $@
227 endif
228
966e29d Stephen Williams Unify the version stamp in the version_*.h header files.
authored
229 version.exe: $(srcdir)/version.c $(srcdir)/version_base.h version_tag.h
2aa627d Cary R. Update all Makefile.in files to support OpenSolaris
caryr authored
230 $(HOSTCC) @WARNING_FLAGS@ -o version.exe -I. -I$(srcdir) $(srcdir)/version.c
966e29d Stephen Williams Unify the version stamp in the version_*.h header files.
authored
231
26ab32a Stephen Williams Add explicit dependencies on generated header files.
authored
232 %.o: %.cc config.h
2aa627d Cary R. Update all Makefile.in files to support OpenSolaris
caryr authored
233 $(CXX) $(CPPFLAGS) $(CXXFLAGS) @DEPENDENCY_FLAG@ -c $< -o $*.o
471d389 autoconf the makefiles.
steve authored
234 mv $*.d dep/$*.d
235
26ab32a Stephen Williams Add explicit dependencies on generated header files.
authored
236 # Here are some explicit dependencies needed to get things going.
237 main.o: main.cc version_tag.h
471d389 autoconf the makefiles.
steve authored
238
ff53b60 Remove excess *.d dependencies for parse.d
steve authored
239 lexor.o: lexor.cc parse.h
471d389 autoconf the makefiles.
steve authored
240
ff53b60 Remove excess *.d dependencies for parse.d
steve authored
241 parse.o: parse.cc
430d7b2 Add lexical support for real numbers.
steve authored
242
e98aad1 Cleaner rule for parse.h and parse.cc
steve authored
243 parse.cc parse.h: $(srcdir)/parse.y
357a0ff Detect bison and flex in configure.in
steve authored
244 $(YACC) --verbose -t -p VL -d -o parse.cc $(srcdir)/parse.y
7e7735c Get rid of spurious parse.cc.h error messages.
steve authored
245 mv parse.cc.h parse.h 2>/dev/null || mv parse.hh parse.h
471d389 autoconf the makefiles.
steve authored
246
3c9902d Use yacc based synthesizer.
steve authored
247 syn-rules.cc: $(srcdir)/syn-rules.y
357a0ff Detect bison and flex in configure.in
steve authored
248 $(YACC) --verbose -p syn_ -o syn-rules.cc $(srcdir)/syn-rules.y
3c9902d Use yacc based synthesizer.
steve authored
249
59e85dc Support build in different directory.
steve authored
250 lexor.cc: $(srcdir)/lexor.lex
357a0ff Detect bison and flex in configure.in
steve authored
251 $(LEX) -PVL -s -olexor.cc $(srcdir)/lexor.lex
471d389 autoconf the makefiles.
steve authored
252
fd95cff remember to uninstall _pli_types.h
steve authored
253 lexor_keyword.o: lexor_keyword.cc parse.h
6eef545 Support localparam.
steve authored
254
6909737 Cary R. Some more generic fixes for building in a remote directory
caryr authored
255 lexor_keyword.cc: $(srcdir)/lexor_keyword.gperf
fad5e36 Stephen Williams Add yet more key characters to the gperf command.
authored
256 gperf -o -i 7 -C -k 1-4,6,9,$$ -L ANSI-C -H keyword_hash -N check_identifier -t $(srcdir)/lexor_keyword.gperf > lexor_keyword.cc || (rm -f lexor_keyword.cc ; false)
6eef545 Support localparam.
steve authored
257
966e29d Stephen Williams Unify the version stamp in the version_*.h header files.
authored
258 iverilog-vpi.man: $(srcdir)/iverilog-vpi.man.in version.exe
259 ./version.exe `head -1 $(srcdir)/iverilog-vpi.man.in`'\n' > $@
a720b23 Stephen Williams More portable use of tail.
authored
260 tail -n +2 $(srcdir)/iverilog-vpi.man.in >> $@
966e29d Stephen Williams Unify the version stamp in the version_*.h header files.
authored
261
262 iverilog-vpi.ps: iverilog-vpi.man
ec49f10 Stephen Williams Revert bad merge from vhdl branch
authored
263 $(MAN) -t ./iverilog-vpi.man > iverilog-vpi.ps
c594dce Add new iverilog-vpi man page.
steve authored
264
265 iverilog-vpi.pdf: iverilog-vpi.ps
b26bdd3 Cary R. MinGW fixes (development)
caryr authored
266 $(PS2PDF) iverilog-vpi.ps iverilog-vpi.pdf
c594dce Add new iverilog-vpi man page.
steve authored
267
bfb3323 Revise handling of version.h to avoid build problems.
J Varshney authored
268 # For VERSION_TAG in driver/main.c, first try git-describe, then look for a
cb3eb49 Cary R. Remove the last version.h references
caryr authored
269 # version_tag.h file in the source tree (included in snapshots and releases),
270 # and finally use nothing.
90a4dde Stephen Williams Keep source code version information in version files.
authored
271
d74f2fe Larry Doolittle Don't duplicate Makefile shell code
ldoolitt authored
272 # "true" and "false" in the next few lines are Unix shell command names
b26bdd3 Cary R. MinGW fixes (development)
caryr authored
273 ifeq ($(GIT),none)
d74f2fe Larry Doolittle Don't duplicate Makefile shell code
ldoolitt authored
274 GIT_PRESENT = false
b26bdd3 Cary R. MinGW fixes (development)
caryr authored
275 else
d74f2fe Larry Doolittle Don't duplicate Makefile shell code
ldoolitt authored
276 GIT_PRESENT = true
277 endif
90a4dde Stephen Williams Keep source code version information in version files.
authored
278 version_tag.h version:
d74f2fe Larry Doolittle Don't duplicate Makefile shell code
ldoolitt authored
279 @if $(GIT_PRESENT) && test -d $(srcdir)/.git; then \
bfb3323 Revise handling of version.h to avoid build problems.
J Varshney authored
280 echo "Using git-describe for VERSION_TAG"; \
b26bdd3 Cary R. MinGW fixes (development)
caryr authored
281 tmp=`$(GIT) --git-dir $(srcdir)/.git describe \
844447b Stephen Williams More reliably handle make install from read-only directory
authored
282 | sed -e 's;\(.*\);#define VERSION_TAG "\1";'`; \
90a4dde Stephen Williams Keep source code version information in version files.
authored
283 echo "$$tmp" | diff - version_tag.h > /dev/null 2>&1 || echo "$$tmp" > version_tag.h || exit 1; \
284 elif test -r $(srcdir)/version_tag.h; then \
285 echo "Using $(srcdir)/version_tag.h for VERSION_TAG"; \
286 diff $(srcdir)/version_tag.h version_tag.h > /dev/null 2>&1 || cp $(srcdir)/version_tag.h version_tag.h; \
bfb3323 Revise handling of version.h to avoid build problems.
J Varshney authored
287 else \
288 echo "Using empty VERSION_TAG"; \
90a4dde Stephen Williams Keep source code version information in version files.
authored
289 echo '#define VERSION_TAG ""' > version_tag.h; \
bfb3323 Revise handling of version.h to avoid build problems.
J Varshney authored
290 fi
ad3a73f Append last git tag and abbreviated commit-id to version string.
J Varshney authored
291
b26bdd3 Cary R. MinGW fixes (development)
caryr authored
292 ifeq (@MINGW32@,yes)
293 ifeq ($(MAN),none)
4bc90f7 Stephen Williams Create support for the --enable-suffix configuration option.
authored
294 INSTALL_DOC = $(mandir)/man1/iverilog-vpi$(suffix).1
b26bdd3 Cary R. MinGW fixes (development)
caryr authored
295 else
296 ifeq ($(PS2PDF),none)
4bc90f7 Stephen Williams Create support for the --enable-suffix configuration option.
authored
297 INSTALL_DOC = $(mandir)/man1/iverilog-vpi$(suffix).1
b26bdd3 Cary R. MinGW fixes (development)
caryr authored
298 else
4bc90f7 Stephen Williams Create support for the --enable-suffix configuration option.
authored
299 INSTALL_DOC = $(prefix)/iverilog-vpi$(suffix).pdf $(mandir)/man1/iverilog-vpi$(suffix).1
feee406 Makefile cleanups to better support concurrent make.
steve authored
300 all: dep iverilog-vpi.pdf
b26bdd3 Cary R. MinGW fixes (development)
caryr authored
301 endif
302 endif
303 INSTALL_DOCDIR = $(mandir)/man1
c594dce Add new iverilog-vpi man page.
steve authored
304 else
4bc90f7 Stephen Williams Create support for the --enable-suffix configuration option.
authored
305 INSTALL_DOC = $(mandir)/man1/iverilog-vpi$(suffix).1
c594dce Add new iverilog-vpi man page.
steve authored
306 INSTALL_DOCDIR = $(mandir)/man1
307 endif
308
ec0e35b Treat cygwin like Unix for build purposes.
steve authored
309 ifeq (@MINGW32@,yes)
4bc90f7 Stephen Williams Create support for the --enable-suffix configuration option.
authored
310 WIN32_INSTALL =
1893e7c Add the iverilog-vpi command.
steve authored
311 else
4bc90f7 Stephen Williams Create support for the --enable-suffix configuration option.
authored
312 WIN32_INSTALL = $(bindir)/iverilog-vpi$(suffix)
176e6d0 Add install of examples for Windows.
steve authored
313 endif
6eef545 Support localparam.
steve authored
314
6a0cbc5 Stephen Williams VPI access to atom2 types.
authored
315 install: all installdirs $(libdir)/ivl$(suffix)/ivl@EXEEXT@ $(libdir)/ivl$(suffix)/include/constants.vams $(libdir)/ivl$(suffix)/include/disciplines.vams $(includedir)/ivl_target.h $(includedir)/_pli_types.h $(includedir)/sv_vpi_user.h $(includedir)/vpi_user.h $(includedir)/acc_user.h $(includedir)/veriuser.h $(WIN32_INSTALL) $(INSTALL_DOC)
d098db0 Jared Casper Base Makefile improvements.
jaredcasper authored
316 $(foreach dir,$(SUBDIRS),$(MAKE) -C $(dir) $@ && ) true
c0d51dd Add the iverilog driver program.
steve authored
317
4bc90f7 Stephen Williams Create support for the --enable-suffix configuration option.
authored
318 $(bindir)/iverilog-vpi$(suffix): ./iverilog-vpi
99a5d4c Stephen Williams Update mkinstalldirs to handle paths with spaces.
authored
319 $(INSTALL_SCRIPT) ./iverilog-vpi "$(DESTDIR)$(bindir)/iverilog-vpi$(suffix)"
1893e7c Add the iverilog-vpi command.
steve authored
320
4bc90f7 Stephen Williams Create support for the --enable-suffix configuration option.
authored
321 $(libdir)/ivl$(suffix)/ivl@EXEEXT@: ./ivl@EXEEXT@
99a5d4c Stephen Williams Update mkinstalldirs to handle paths with spaces.
authored
322 $(INSTALL_PROGRAM) ./ivl@EXEEXT@ "$(DESTDIR)$(libdir)/ivl$(suffix)/ivl@EXEEXT@"
471d389 autoconf the makefiles.
steve authored
323
4bc90f7 Stephen Williams Create support for the --enable-suffix configuration option.
authored
324 $(libdir)/ivl$(suffix)/include/constants.vams: $(srcdir)/constants.vams
99a5d4c Stephen Williams Update mkinstalldirs to handle paths with spaces.
authored
325 $(INSTALL_DATA) $(srcdir)/constants.vams "$(DESTDIR)$(libdir)/ivl$(suffix)/include/constants.vams"
f5263c9 Stephen Williams Add the va_math module and constants.vams include file.
authored
326
4bc90f7 Stephen Williams Create support for the --enable-suffix configuration option.
authored
327 $(libdir)/ivl$(suffix)/include/disciplines.vams: $(srcdir)/disciplines.vams
99a5d4c Stephen Williams Update mkinstalldirs to handle paths with spaces.
authored
328 $(INSTALL_DATA) $(srcdir)/disciplines.vams "$(DESTDIR)$(libdir)/ivl$(suffix)/include/disciplines.vams"
cde87ed Stephen Williams Add disciplines.vams and enough syntax to parse it.
authored
329
d0fc6d5 Add ivl_target support for logic gates, and
steve authored
330 $(includedir)/ivl_target.h: $(srcdir)/ivl_target.h
99a5d4c Stephen Williams Update mkinstalldirs to handle paths with spaces.
authored
331 $(INSTALL_DATA) $(srcdir)/ivl_target.h "$(DESTDIR)$(includedir)/ivl_target.h"
d0fc6d5 Add ivl_target support for logic gates, and
steve authored
332
0b538ce The _pli_types.h header file is generated, not copied from srcdir.
steve authored
333 $(includedir)/_pli_types.h: _pli_types.h
99a5d4c Stephen Williams Update mkinstalldirs to handle paths with spaces.
authored
334 $(INSTALL_DATA) $< "$(DESTDIR)$(includedir)/_pli_types.h"
d3de1d9 Add at least minimal implementations for several
steve authored
335
6a0cbc5 Stephen Williams VPI access to atom2 types.
authored
336 $(includedir)/sv_vpi_user.h: $(srcdir)/sv_vpi_user.h
337 $(INSTALL_DATA) $(srcdir)/sv_vpi_user.h "$(DESTDIR)$(includedir)/sv_vpi_user.h"
338
32f3881 Rearrange VPI support libraries.
steve authored
339 $(includedir)/vpi_user.h: $(srcdir)/vpi_user.h
99a5d4c Stephen Williams Update mkinstalldirs to handle paths with spaces.
authored
340 $(INSTALL_DATA) $(srcdir)/vpi_user.h "$(DESTDIR)$(includedir)/vpi_user.h"
32f3881 Rearrange VPI support libraries.
steve authored
341
6511fc6 Add the acc_user.h header file.
steve authored
342 $(includedir)/acc_user.h: $(srcdir)/acc_user.h
99a5d4c Stephen Williams Update mkinstalldirs to handle paths with spaces.
authored
343 $(INSTALL_DATA) $(srcdir)/acc_user.h "$(DESTDIR)$(includedir)/acc_user.h"
6511fc6 Add the acc_user.h header file.
steve authored
344
ca9abaf Start the libveriuser library.
steve authored
345 $(includedir)/veriuser.h: $(srcdir)/veriuser.h
99a5d4c Stephen Williams Update mkinstalldirs to handle paths with spaces.
authored
346 $(INSTALL_DATA) $(srcdir)/veriuser.h "$(DESTDIR)$(includedir)/veriuser.h"
ca9abaf Start the libveriuser library.
steve authored
347
966e29d Stephen Williams Unify the version stamp in the version_*.h header files.
authored
348 $(mandir)/man1/iverilog-vpi$(suffix).1: iverilog-vpi.man
349 $(INSTALL_DATA) iverilog-vpi.man "$(DESTDIR)$(mandir)/man1/iverilog-vpi$(suffix).1"
176e6d0 Add install of examples for Windows.
steve authored
350
4bc90f7 Stephen Williams Create support for the --enable-suffix configuration option.
authored
351 $(prefix)/iverilog-vpi$(suffix).pdf: iverilog-vpi.pdf
99a5d4c Stephen Williams Update mkinstalldirs to handle paths with spaces.
authored
352 $(INSTALL_DATA) iverilog-vpi.pdf "$(DESTDIR)$(prefix)/iverilog-vpi$(suffix).pdf"
5c07a29 Install sqrt-virtex.v under Windows.
steve authored
353
176e6d0 Add install of examples for Windows.
steve authored
354
99a5d4c Stephen Williams Update mkinstalldirs to handle paths with spaces.
authored
355 installdirs: $(srcdir)/mkinstalldirs
356 $(srcdir)/mkinstalldirs "$(DESTDIR)$(bindir)" \
357 "$(DESTDIR)$(includedir)" \
358 "$(DESTDIR)$(libdir)/ivl$(suffix)" \
359 "$(DESTDIR)$(libdir)/ivl$(suffix)/include" \
360 "$(DESTDIR)$(mandir)" \
361 "$(DESTDIR)$(mandir)/man1"
176e6d0 Add install of examples for Windows.
steve authored
362
471d389 autoconf the makefiles.
steve authored
363 uninstall:
d098db0 Jared Casper Base Makefile improvements.
jaredcasper authored
364 $(foreach dir,$(SUBDIRS),$(MAKE) -C $(dir) $@ && ) true
456fffa Stephen Williams Remove last vestiges of XNF.
authored
365 for f in ivl@EXEEXT@ include/constants.vams include/disciplines.vams; \
99a5d4c Stephen Williams Update mkinstalldirs to handle paths with spaces.
authored
366 do rm -f "$(DESTDIR)$(libdir)/ivl$(suffix)/$$f"; done
367 -rmdir "$(DESTDIR)$(libdir)/ivl$(suffix)/include"
368 -rmdir "$(DESTDIR)$(libdir)/ivl$(suffix)"
4bc90f7 Stephen Williams Create support for the --enable-suffix configuration option.
authored
369 for f in verilog$(suffix) iverilog-vpi$(suffix) gverilog$(suffix)@EXEEXT@; \
99a5d4c Stephen Williams Update mkinstalldirs to handle paths with spaces.
authored
370 do rm -f "$(DESTDIR)$(bindir)/$$f"; done
90de390 Minor tweaks to iterated rules,
steve authored
371 for f in ivl_target.h vpi_user.h _pli_types.h acc_user.h veriuser.h; \
99a5d4c Stephen Williams Update mkinstalldirs to handle paths with spaces.
authored
372 do rm -f "$(DESTDIR)$(includedir)/$$f"; done
373 -test X$(suffix) = X || rmdir "$(DESTDIR)/$(includedir)"
374 rm -f "$(DESTDIR)$(mandir)/man1/iverilog-vpi$(suffix).1" "$(DESTDIR)$(prefix)/iverilog-vpi$(suffix).pdf"
471d389 autoconf the makefiles.
steve authored
375
376
377 -include $(patsubst %.o, dep/%.d, $O)
Something went wrong with that request. Please try again.