From 8cf7b62933c2bad4697e107028594b6a7077d37f Mon Sep 17 00:00:00 2001 From: steve Date: Wed, 8 Oct 2003 23:17:39 +0000 Subject: [PATCH] Support both 32bit and 64bit system.vpi on AMD64. --- configure.in | 4 ++++ verilog.spec | 7 ++++--- vpi/Makefile.in | 41 +++++++++++++++++++++++++++++++++++------ 3 files changed, 43 insertions(+), 9 deletions(-) diff --git a/configure.in b/configure.in index 5d107828f..198060b6f 100644 --- a/configure.in +++ b/configure.in @@ -47,6 +47,10 @@ AC_SUBST(WIN32) AC_MSG_RESULT($WIN32) AC_SUBST(EXEEXT) +# vvp32 is by default disabled +#enable_vvp32=no +AC_SUBST(enable_vvp32) + AC_LANG_CPLUSPLUS diff --git a/verilog.spec b/verilog.spec index 8c0d96e31..e3a42f6f1 100644 --- a/verilog.spec +++ b/verilog.spec @@ -26,7 +26,7 @@ to the IEEE-1364 standard. %build %ifarch x86_64 -./configure --prefix=/usr libdir64='$(prefix)/lib64' vpidir1=vpi64 vpidir1=. +./configure --prefix=/usr libdir64='$(prefix)/lib64' vpidir1=vpi64 vpidir2=. --enable-vvp32 %else ./configure --prefix=/usr %endif @@ -54,16 +54,17 @@ make prefix=$RPM_BUILD_ROOT/usr install %attr(-,root,root) /usr/lib/ivl/fpga.tgt %attr(-,root,root) /usr/lib/ivl/iverilog.conf %ifarch x86_64 +%attr(-,root,root) /usr/bin/vvp32 %attr(-,root,root) /usr/lib/ivl/vpi64/system.vpi %attr(-,root,root) /usr/lib/ivl/vpi64/cadpli.vpl %attr(-,root,root) /usr/lib64/libvpi.a %attr(-,root,root) /usr/lib64/libveriuser.a %else -%attr(-,root,root) /usr/lib/ivl/system.vpi %attr(-,root,root) /usr/lib/ivl/cadpli.vpl -%attr(-,root,root) /usr/lib/libvpi.a %attr(-,root,root) /usr/lib/libveriuser.a %endif +%attr(-,root,root) /usr/lib/ivl/system.vpi +%attr(-,root,root) /usr/lib/libvpi.a %attr(-,root,root) /usr/include/ivl_target.h %attr(-,root,root) /usr/include/vpi_user.h %attr(-,root,root) /usr/include/acc_user.h diff --git a/vpi/Makefile.in b/vpi/Makefile.in index 6d9c9ab8d..dab4d9e0f 100644 --- a/vpi/Makefile.in +++ b/vpi/Makefile.in @@ -3,9 +3,7 @@ # 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. +# any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,7 +16,7 @@ # 59 Temple Place - Suite 330 # Boston, MA 02111-1307, USA # -#ident "$Id: Makefile.in,v 1.45 2003/10/02 21:30:40 steve Exp $" +#ident "$Id: Makefile.in,v 1.46 2003/10/08 23:17:39 steve Exp $" # # SHELL = /bin/sh @@ -50,7 +48,13 @@ CFLAGS = @CFLAGS@ LDFLAGS = @LDFLAGS@ STRIP = @STRIP@ -all: dep system.vpi +ifeq (@enable_vvp32@,yes) +ALL32 = all32 +INSTALL32 = install32 +UNINSTALL32 = uninistall32 +endif + +all: dep system.vpi $(ALL32) dep: mkdir dep @@ -79,6 +83,31 @@ system.vpi: $O ../vvp/libvpi.a sys_readmem_lex.c: sys_readmem_lex.lex flex -t -Preadmem $(srcdir)/sys_readmem_lex.lex > sys_readmem_lex.c +ifeq (@enable_vvp32@,yes) + +vpidir32 = $(libdir)/ivl/@vpidir2@ + +all32: bin32 bin32/system.vpi + +bin32: + mkdir bin32 + +bin32/%.o: %.c + $(CC) -m32 -Wall -I$(srcdir)/.. -I$(srcdir) -I.. $(CPPFLAGS) $(CFLAGS) -MD -c $< -o $@ + +bin32/system.vpi: $(addprefix bin32/,$O) + $(CC) -m32 @shared@ -o $@ $(addprefix bin32/,$O) -L../vvp/bin32 $(LDFLAGS) -lvpi $(SYSTEM_VPI_LDFLAGS) + +install32: all32 $(vpidir2)/system.vpi + +$(vpidir2)/system.vpi: bin32/system.vpi + $(INSTALL_PROGRAM) bin32/system.vpi $(vpidir2)/system.vpi + $(STRIP) $(strip_dynamic) $(vpidir2)/system.vpi + +uninstall32: + rm -f $(vpidir2)/system.vpi +endif + clean: rm -rf *.o sys_readmem_lex.c dep system.vpi @@ -94,7 +123,7 @@ $(vpidir)/system.vpi: ./system.vpi installdirs: ../mkinstalldirs $(srcdir)/../mkinstalldirs $(vpidir) -uninstall: +uninstall: $(UNINSTALL32) rm -f $(vpidir)/system.vpi