Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Newer
Older
100644 170 lines (135 sloc) 4.899 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)
6 # any later version. In order to redistribute the software in
7 # binary form, you will need a Picture Elements Binary Software
8 # License.
9 #
10 # This program is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 # GNU Library General Public License for more details.
14 #
15 # You should have received a copy of the GNU Library General Public
16 # License along with this program; if not, write to the Free
17 # Software Foundation, Inc.,
18 # 59 Temple Place - Suite 330
19 # Boston, MA 02111-1307, USA
20 #
566aad9 Start stub for loadable targets.
steve authored
21 #ident "$Id: Makefile.in,v 1.62 2000/08/12 16:34:37 steve Exp $"
471d389 autoconf the makefiles.
steve authored
22 #
23 #
24 SHELL = /bin/sh
25
1412eb2 iverilog man page.
steve authored
26 VERSION = 0.3PRE
471d389 autoconf the makefiles.
steve authored
27
28 prefix = @prefix@
29 exec_prefix = @exec_prefix@
30 srcdir = @srcdir@
31
32 VPATH = $(srcdir)
33
34 bindir = $(exec_prefix)/bin
35 libdir = $(exec_prefix)/lib
1c11c86 man page for the verilog front end.
steve authored
36 mandir = @mandir@
471d389 autoconf the makefiles.
steve authored
37 includedir = $(prefix)/include
38
566aad9 Start stub for loadable targets.
steve authored
39 dllib=@DLLIB@
40 rdynamic=@rdynamic@
41
471d389 autoconf the makefiles.
steve authored
42 CC = @CC@
43 CXX = @CXX@
44 INSTALL = @INSTALL@
e6bd088 Compile time problems with vpi_user.h
steve authored
45 INSTALL_SCRIPT = @INSTALL_SCRIPT@
471d389 autoconf the makefiles.
steve authored
46 INSTALL_PROGRAM = @INSTALL_PROGRAM@
47 INSTALL_DATA = @INSTALL_DATA@
8bad04a cannonical make targets, and strip on install.
steve authored
48 STRIP = @STRIP@
471d389 autoconf the makefiles.
steve authored
49
50 CPPFLAGS = @CPPFLAGS@ @DEFS@
59e85dc Support build in different directory.
steve authored
51 CXXFLAGS = @CXXFLAGS@ -I$(srcdir)
471d389 autoconf the makefiles.
steve authored
52 LDFLAGS = @LDFLAGS@
53
b44abcd Get rid of gverilog source.
steve authored
54 all: ivl verilog iverilog
59e85dc Support build in different directory.
steve authored
55 cd vpi ; $(MAKE) all
56 cd vvm ; $(MAKE) all
57 cd ivlpp ; $(MAKE) all
471d389 autoconf the makefiles.
steve authored
58
59 clean:
79ca317 Better handle failures to build lexor_keyword.cc
steve authored
60 rm -f *.o parse.cc parse.cc.output parse.h dep/*.d lexor.cc lexor_keyword.cc verilog iverilog
59e85dc Support build in different directory.
steve authored
61 cd vpi ; $(MAKE) clean
62 cd vvm ; $(MAKE) clean
63 cd ivlpp ; $(MAKE) clean
471d389 autoconf the makefiles.
steve authored
64
8bad04a cannonical make targets, and strip on install.
steve authored
65 distclean: clean
66 rm -f vpi/Makefile
67 rm -f vvm/Makefile
68 rm -f ivlpp/Makefile
69 rm -f config.status config.cache config.log
70 rm -f Makefile
71
566aad9 Start stub for loadable targets.
steve authored
72 TT = t-dll.o t-null.o t-verilog.o t-vvm.o t-xnf.o
42e4ff4 Move inital value handling from NetNet to Nexus
steve authored
73 FF = nodangle.o synth.o syn-rules.o xnfio.o
471d389 autoconf the makefiles.
steve authored
74
4cfa3e4 Support the creation of scopes.
steve authored
75 O = main.o cprop.o design_dump.o dup_expr.o elaborate.o elab_expr.o \
1db70a0 Move signal elaboration to a seperate pass.
steve authored
76 elab_net.o elab_pexpr.o elab_scope.o elab_sig.o emit.o eval.o eval_tree.o \
2094a2f Catch some simple identity compareoptimizations.
steve authored
77 expr_synth.o functor.o lexor.o lexor_keyword.o link_const.o \
78 mangle.o netlist.o \
18eb349 Add support for non-constant delays in delay statements,
steve authored
79 net_design.o net_event.o net_force.o net_link.o net_proc.o net_scope.o \
80 net_udp.o \
30e8289 Simulate named event trigger and waits.
steve authored
81 pad_to_width.o \
0fb4ba7 Allow expanding of additive operators.
steve authored
82 parse.o parse_misc.o pform.o pform_dump.o \
1c41f8e Move set_width methods into a single file,
steve authored
83 set_width.o \
08e9a11 Catch memory word parameters to tasks.
steve authored
84 verinum.o verireal.o target.o targets.o util.o Module.o PDelays.o PEvent.o \
2dd010d Named events as far as the pform.
steve authored
85 PExpr.o PGate.o \
e0a988b Add functions up to elaboration (Ed Carter)
steve authored
86 PTask.o PFunction.o PWire.o Statement.o \
3ff6912 Elaborate user defined tasks.
steve authored
87 $(FF) $(TT)
471d389 autoconf the makefiles.
steve authored
88
89 Makefile: Makefile.in config.status
90 ./config.status
91
b62f094 Add the verilog.sh script.
steve authored
92 # Make the actual verilog program from the script template. This
93 # simply invloves editing the substitution strings in the script into
94 # the configured copy.
95 tmp1 = bindir
96 tmp2 = libdir
a4143f8 autoconf the verilog script to run anywhere.
steve authored
97 tmp3 = includedir
98 tmp4 = CXX
b62f094 Add the verilog.sh script.
steve authored
99 verilog: $(srcdir)/verilog.sh
a4143f8 autoconf the verilog script to run anywhere.
steve authored
100 sed -e 's;@$(tmp1)@;@bindir@;' \
101 -e 's;@$(tmp2)@;@libdir@;' \
102 -e 's;@$(tmp3)@;@includedir@;' \
ce0b97a Fix up compiling with configured -ldl switch.
steve authored
103 -e 's;@dllib@;@DLLIB@;' \
a4143f8 autoconf the verilog script to run anywhere.
steve authored
104 -e 's;@$(tmp4)@;@CXX@;' < $< > $@
b62f094 Add the verilog.sh script.
steve authored
105
471d389 autoconf the makefiles.
steve authored
106 ivl: $O
566aad9 Start stub for loadable targets.
steve authored
107 $(CXX) $(CXXFLAGS) $(rdynamic) -o ivl $O $(dllib)
471d389 autoconf the makefiles.
steve authored
108
c0d51dd Add the iverilog driver program.
steve authored
109 iverilog: iverilog.c
566aad9 Start stub for loadable targets.
steve authored
110 $(CC) $(CPPFLAGS) -o iverilog -DCXX='"@CXX@"' -DIVL_ROOT='"@libdir@/ivl"' -DIVL_INC='"@includedir@"' -DIVL_LIB='"@libdir@"' -DRDYNAMIC=\"$(rdynamic)\" -DDLLIB='"@DLLIB@"' iverilog.c
c0d51dd Add the iverilog driver program.
steve authored
111
471d389 autoconf the makefiles.
steve authored
112 %.o dep/%.d: %.cc
f01cbc6 Remember to make the dep directory.
steve authored
113 @[ -d dep ] || mkdir dep
68a7ce3 include getopt if present.
steve authored
114 $(CXX) $(CPPFLAGS) $(CXXFLAGS) -MD -c $< -o $*.o
471d389 autoconf the makefiles.
steve authored
115 mv $*.d dep/$*.d
116
117
118 lexor.o dep/lexor.d: lexor.cc parse.h
119
430d7b2 Add lexical support for real numbers.
steve authored
120 parse.o dep/parse.d: parse.cc
121
59e85dc Support build in different directory.
steve authored
122 parse.h parse.cc: $(srcdir)/parse.y
123 bison --verbose -t -p VL -d $(srcdir)/parse.y -o parse.cc
471d389 autoconf the makefiles.
steve authored
124 mv parse.cc.h parse.h
125
3c9902d Use yacc based synthesizer.
steve authored
126 syn-rules.cc: $(srcdir)/syn-rules.y
127 bison --verbose -p syn_ -o syn-rules.cc $(srcdir)/syn-rules.y
128
59e85dc Support build in different directory.
steve authored
129 lexor.cc: $(srcdir)/lexor.lex
130 flex -PVL -s -olexor.cc $(srcdir)/lexor.lex
471d389 autoconf the makefiles.
steve authored
131
6eef545 Support localparam.
steve authored
132 lexor_keyword.o dep/lexor_keyword.d: lexor_keyword.cc
133
134 lexor_keyword.cc: lexor_keyword.gperf
79ca317 Better handle failures to build lexor_keyword.cc
steve authored
135 gperf -o -i 7 -C -k 1-3,$$ -L ANSI-C -H keyword_hash -N check_identifier -t lexor_keyword.gperf > lexor_keyword.cc || (rm -f lexor_keyword.cc ; false)
6eef545 Support localparam.
steve authored
136
137
bec4a20 Do not install bin/verilog.
steve authored
138 install: all installdirs $(bindir)/iverilog $(libdir)/ivl/ivl $(mandir)/man1/iverilog.1
59e85dc Support build in different directory.
steve authored
139 cd vpi ; $(MAKE) install
140 cd vvm ; $(MAKE) install
141 cd ivlpp ; $(MAKE) install
471d389 autoconf the makefiles.
steve authored
142
c0d51dd Add the iverilog driver program.
steve authored
143 $(bindir)/iverilog: ./iverilog
144 $(INSTALL_PROGRAM) ./iverilog $(bindir)/iverilog
f95b082 More features of ivl available through iverilog.
steve authored
145 $(STRIP) $(bindir)/iverilog
c0d51dd Add the iverilog driver program.
steve authored
146
4c27422 Move ivl and ivlpp to the lib directory.
steve authored
147 $(libdir)/ivl/ivl: ./ivl
148 $(INSTALL_PROGRAM) ./ivl $(libdir)/ivl/ivl
149 $(STRIP) $(libdir)/ivl/ivl
471d389 autoconf the makefiles.
steve authored
150
1412eb2 iverilog man page.
steve authored
151 $(mandir)/man1/iverilog.1: $(srcdir)/iverilog.man
152 $(INSTALL_DATA) $(srcdir)/iverilog.man $(mandir)/man1/iverilog.1
153
471d389 autoconf the makefiles.
steve authored
154 installdirs: mkinstalldirs
bed47a4 Make the library install directory.
steve authored
155 $(srcdir)/mkinstalldirs $(bindir) $(libdir)/ivl $(mandir)/man1
471d389 autoconf the makefiles.
steve authored
156
157 uninstall:
4c27422 Move ivl and ivlpp to the lib directory.
steve authored
158 rm -f $(libdir)/ivl/ivl
b62f094 Add the verilog.sh script.
steve authored
159 rm -f $(bindir)/verilog
c0d51dd Add the iverilog driver program.
steve authored
160 rm -f $(bindir)/gverilog
161 rm -f $(bindir)/iverilog
1c11c86 man page for the verilog front end.
steve authored
162 rm -f $(mandir)/man1/verilog.1
1412eb2 iverilog man page.
steve authored
163 rm -f $(mandir)/man1/iverilog.1
59e85dc Support build in different directory.
steve authored
164 cd vpi ; $(MAKE) uninstall
165 cd vvm ; $(MAKE) uninstall
166 cd ivlpp ; $(MAKE) uninstall
471d389 autoconf the makefiles.
steve authored
167
168
169 -include $(patsubst %.o, dep/%.d, $O)
Something went wrong with that request. Please try again.