iverilog/Makefile.in

167 lines
4.6 KiB
Makefile
Raw Normal View History

1999-04-25 23:54:33 +02:00
#
# This source code is free software; you can redistribute it
# and/or modify it in source code form under the terms of the GNU
# Library General Public License as published by the Free Software
# Foundation; either version 2 of the License, or (at your option)
# any later version. In order to redistribute the software in
# binary form, you will need a Picture Elements Binary Software
# License.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Library General Public License for more details.
#
# You should have received a copy of the GNU Library General Public
# License along with this program; if not, write to the Free
# Software Foundation, Inc.,
# 59 Temple Place - Suite 330
# Boston, MA 02111-1307, USA
#
#ident "$Id: Makefile.in,v 1.59 2000/07/07 04:53:53 steve Exp $"
1999-04-25 23:54:33 +02:00
#
#
SHELL = /bin/sh
2000-04-26 22:53:21 +02:00
VERSION = 0.3PRE
1999-04-25 23:54:33 +02:00
prefix = @prefix@
exec_prefix = @exec_prefix@
srcdir = @srcdir@
VPATH = $(srcdir)
bindir = $(exec_prefix)/bin
libdir = $(exec_prefix)/lib
1999-09-01 00:34:25 +02:00
mandir = @mandir@
1999-04-25 23:54:33 +02:00
includedir = $(prefix)/include
CC = @CC@
CXX = @CXX@
INSTALL = @INSTALL@
2000-01-24 00:54:36 +01:00
INSTALL_SCRIPT = @INSTALL_SCRIPT@
1999-04-25 23:54:33 +02:00
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@
STRIP = @STRIP@
1999-04-25 23:54:33 +02:00
CPPFLAGS = @CPPFLAGS@ @DEFS@
1999-10-23 01:58:13 +02:00
CXXFLAGS = @CXXFLAGS@ -I$(srcdir)
1999-04-25 23:54:33 +02:00
LDFLAGS = @LDFLAGS@
2000-05-12 07:23:15 +02:00
all: ivl verilog iverilog
1999-10-23 01:58:13 +02:00
cd vpi ; $(MAKE) all
cd vvm ; $(MAKE) all
cd ivlpp ; $(MAKE) all
1999-04-25 23:54:33 +02:00
clean:
rm -f *.o parse.cc parse.cc.output parse.h dep/*.d lexor.cc verilog
1999-10-23 01:58:13 +02:00
cd vpi ; $(MAKE) clean
cd vvm ; $(MAKE) clean
cd ivlpp ; $(MAKE) clean
1999-04-25 23:54:33 +02:00
distclean: clean
rm -f vpi/Makefile
rm -f vvm/Makefile
rm -f ivlpp/Makefile
rm -f config.status config.cache config.log
rm -f Makefile
1999-04-25 23:54:33 +02:00
TT = t-null.o t-verilog.o t-vvm.o t-xnf.o
2000-05-13 22:55:47 +02:00
FF = nodangle.o propinit.o synth.o syn-rules.o xnfio.o
1999-04-25 23:54:33 +02:00
1999-11-27 20:07:57 +01:00
O = main.o cprop.o design_dump.o dup_expr.o elaborate.o elab_expr.o \
elab_net.o elab_pexpr.o elab_scope.o elab_sig.o emit.o eval.o eval_tree.o \
expr_synth.o functor.o lexor.o lexor_keyword.o link_const.o \
mangle.o netlist.o \
net_design.o net_event.o net_force.o net_link.o net_proc.o net_scope.o \
net_udp.o \
pad_to_width.o \
1999-09-29 02:42:50 +02:00
parse.o parse_misc.o pform.o pform_dump.o \
set_width.o \
2000-04-28 18:50:53 +02:00
verinum.o verireal.o target.o targets.o util.o Module.o PDelays.o PEvent.o \
2000-04-01 21:31:57 +02:00
PExpr.o PGate.o \
PTask.o PFunction.o PWire.o Statement.o \
1999-07-03 04:12:51 +02:00
$(FF) $(TT)
1999-04-25 23:54:33 +02:00
Makefile: Makefile.in config.status
./config.status
1999-08-17 17:57:43 +02:00
# Make the actual verilog program from the script template. This
# simply invloves editing the substitution strings in the script into
# the configured copy.
tmp1 = bindir
tmp2 = libdir
tmp3 = includedir
tmp4 = CXX
1999-08-17 17:57:43 +02:00
verilog: $(srcdir)/verilog.sh
sed -e 's;@$(tmp1)@;@bindir@;' \
-e 's;@$(tmp2)@;@libdir@;' \
-e 's;@$(tmp3)@;@includedir@;' \
-e 's;@dllib@;@DLLIB@;' \
-e 's;@$(tmp4)@;@CXX@;' < $< > $@
1999-08-17 17:57:43 +02:00
1999-04-25 23:54:33 +02:00
ivl: $O
$(CXX) $(CXXFLAGS) -o ivl $O
2000-04-21 08:41:02 +02:00
iverilog: iverilog.c
2000-05-02 01:55:22 +02:00
$(CC) $(CPPFLAGS) -o iverilog -DCXX='"@CXX@"' -DIVL_ROOT='"@libdir@/ivl"' -DIVL_INC='"@includedir@"' -DIVL_LIB='"@libdir@"' -DDLLIB='"@DLLIB@"' iverilog.c
2000-04-21 08:41:02 +02:00
1999-04-25 23:54:33 +02:00
%.o dep/%.d: %.cc
1999-04-26 04:45:08 +02:00
@[ -d dep ] || mkdir dep
1999-11-29 18:02:21 +01:00
$(CXX) $(CPPFLAGS) $(CXXFLAGS) -MD -c $< -o $*.o
1999-04-25 23:54:33 +02:00
mv $*.d dep/$*.d
lexor.o dep/lexor.d: lexor.cc parse.h
1999-06-15 04:50:02 +02:00
parse.o dep/parse.d: parse.cc
1999-10-23 01:58:13 +02:00
parse.h parse.cc: $(srcdir)/parse.y
bison --verbose -t -p VL -d $(srcdir)/parse.y -o parse.cc
1999-04-25 23:54:33 +02:00
mv parse.cc.h parse.h
2000-05-13 22:55:47 +02:00
syn-rules.cc: $(srcdir)/syn-rules.y
bison --verbose -p syn_ -o syn-rules.cc $(srcdir)/syn-rules.y
1999-10-23 01:58:13 +02:00
lexor.cc: $(srcdir)/lexor.lex
flex -PVL -s -olexor.cc $(srcdir)/lexor.lex
1999-04-25 23:54:33 +02:00
2000-03-12 18:09:40 +01:00
lexor_keyword.o dep/lexor_keyword.d: lexor_keyword.cc
lexor_keyword.cc: lexor_keyword.gperf
gperf -o -i 7 -C -k 1-3,$$ -L ANSI-C -H keyword_hash -N check_identifier -t lexor_keyword.gperf > lexor_keyword.cc
2000-03-12 18:09:40 +01:00
2000-06-16 20:59:49 +02:00
install: all installdirs $(bindir)/iverilog $(libdir)/ivl/ivl $(mandir)/man1/iverilog.1
1999-10-23 01:58:13 +02:00
cd vpi ; $(MAKE) install
cd vvm ; $(MAKE) install
cd ivlpp ; $(MAKE) install
1999-04-25 23:54:33 +02:00
2000-04-21 08:41:02 +02:00
$(bindir)/iverilog: ./iverilog
$(INSTALL_PROGRAM) ./iverilog $(bindir)/iverilog
$(STRIP) $(bindir)/iverilog
2000-04-21 08:41:02 +02:00
$(libdir)/ivl/ivl: ./ivl
$(INSTALL_PROGRAM) ./ivl $(libdir)/ivl/ivl
$(STRIP) $(libdir)/ivl/ivl
1999-04-25 23:54:33 +02:00
2000-04-26 22:53:21 +02:00
$(mandir)/man1/iverilog.1: $(srcdir)/iverilog.man
$(INSTALL_DATA) $(srcdir)/iverilog.man $(mandir)/man1/iverilog.1
1999-04-25 23:54:33 +02:00
installdirs: mkinstalldirs
2000-01-09 18:43:28 +01:00
$(srcdir)/mkinstalldirs $(bindir) $(libdir)/ivl $(mandir)/man1
1999-04-25 23:54:33 +02:00
uninstall:
rm -f $(libdir)/ivl/ivl
1999-08-17 17:57:43 +02:00
rm -f $(bindir)/verilog
2000-04-21 08:41:02 +02:00
rm -f $(bindir)/gverilog
rm -f $(bindir)/iverilog
1999-09-01 00:34:25 +02:00
rm -f $(mandir)/man1/verilog.1
2000-04-26 22:53:21 +02:00
rm -f $(mandir)/man1/iverilog.1
1999-10-23 01:58:13 +02:00
cd vpi ; $(MAKE) uninstall
cd vvm ; $(MAKE) uninstall
cd ivlpp ; $(MAKE) uninstall
1999-04-25 23:54:33 +02:00
-include $(patsubst %.o, dep/%.d, $O)