Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

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