V0.9: back port some cross compile changes

This commit is contained in:
Cary R 2012-08-13 18:09:00 -07:00
parent 0a518c1786
commit 34bb00144f
9 changed files with 27 additions and 19 deletions

View File

@ -69,6 +69,7 @@ dllib=@DLLIB@
CC = @CC@
HOSTCC = @CC@
CXX = @CXX@
DLLTOOL = @DLLTOOL@
INSTALL = @INSTALL@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
@ -92,7 +93,7 @@ all: dep config.h _pli_types.h version_tag.h ivl@EXEEXT@ version.exe iverilog-vp
ifeq (@MINGW32@,yes)
all: dep dosify.exe
dosify.exe: $(srcdir)/dosify.c
$(CC) -o dosify.exe $(srcdir)/dosify.c
$(HOSTCC) -o dosify.exe $(srcdir)/dosify.c
endif
# This rule rules the compiler in the trivial hello.vl program to make
@ -184,8 +185,8 @@ ifeq (@WIN32@,yes)
# that really exports the things that the import library imports.
ivl@EXEEXT@: $O $(srcdir)/ivl.def
$(CXX) -o ivl@EXEEXT@ $O $(dllib) @EXTRALIBS@
dlltool --dllname ivl@EXEEXT@ --def $(srcdir)/ivl.def \
--output-lib libivl.a --output-exp ivl.exp
$(DLLTOOL) --dllname ivl@EXEEXT@ --def $(srcdir)/ivl.def \
--output-lib libivl.a --output-exp ivl.exp
$(CXX) $(LDFLAGS) -o ivl@EXEEXT@ ivl.exp $O $(dllib) @EXTRALIBS@
else
ivl@EXEEXT@: $O

View File

@ -41,8 +41,6 @@ CPPFLAGS = -I$(srcdir) -I$(srcdir)/.. -I.. @CPPFLAGS@ @DEFS@ @PICFLAG@
CFLAGS = @WARNING_FLAGS@ @CFLAGS@
LDFLAGS = @LDFLAGS@
SHARED = @shared@
all:
all: dep cadpli.vpl $(ALL32)
@ -68,7 +66,7 @@ ifeq (@MINGW32@,yes)
endif
cadpli.vpl: $O ../vvp/libvpi.a ../libveriuser/libveriuser.o
$(CC) @shared@ -o $@ $O ../libveriuser/libveriuser.o $(SYSTEM_VPI_LDFLAGS)
$(CC) @shared@ $(LDFLAGS) -o $@ $O ../libveriuser/libveriuser.o $(SYSTEM_VPI_LDFLAGS)
clean:
rm -rf *.o dep cadpli.vpl

View File

@ -20,7 +20,11 @@ AC_PREREQ([2.60])
AC_PROG_CC_C99
AC_PROG_CXX
AC_PROG_RANLIB
AC_CHECK_TOOL(LD, ld, true)
AC_CHECK_TOOL(AR, ar, true)
AC_CHECK_TOOL(DLLTOOL, dlltool, true)
AC_CHECK_TOOL(STRIP, strip, true)
AC_CHECK_TOOL(WINDRES, windres, true)
AC_CHECK_PROGS(XGPERF,gperf,none)
AC_CHECK_PROGS(MAN,man,none)
AC_CHECK_PROGS(PS2PDF,ps2pdf,none)

View File

@ -37,6 +37,7 @@ mandir = @mandir@
dllib=@DLLIB@
CC = @CC@
WINDRES = @WINDRES@
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@
@ -79,7 +80,7 @@ res.rc: $(srcdir)/res.rc.in ../version.exe
$(srcdir)/res.rc.in > $@
res.o: res.rc
windres -i res.rc -o res.o
$(WINDRES) -i res.rc -o res.o
#
install: all installdirs $(bindir)/iverilog-vpi$(suffix)@EXEEXT@

View File

@ -60,7 +60,7 @@ O = main.o lexor.o
ivlpp@EXEEXT@: $O
$(CC) $(LDFLAGS) $O -o ivlpp@EXEEXT@ @EXTRALIBS@
lexor.c: lexor.lex
lexor.c: $(srcdir)/lexor.lex
$(LEX) -t $< > $@
install: all installdirs $(libdir)/ivl$(suffix)/ivlpp@EXEEXT@

View File

@ -31,6 +31,9 @@ libdir = @libdir@
includedir = $(prefix)/include
CC = @CC@
RANLIB = @RANLIB@
AR = @AR@
LD = @LD@
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@
@ -38,7 +41,6 @@ INSTALL_DATA = @INSTALL_DATA@
CPPFLAGS = -I. -I.. -I$(srcdir) -I$(srcdir)/.. @CPPFLAGS@ @DEFS@ @PICFLAG@
CFLAGS = @WARNING_FLAGS@ @CFLAGS@
LDFLAGS = @LDFLAGS@
RANLIB = @RANLIB@
A = a_close.o a_compare_handles.o a_configure.o a_fetch_argc.o \
a_fetch_argv.o a_fetch_dir.o a_fetch_fullname.o a_fetch_location.o \
@ -72,7 +74,7 @@ libveriuser.o: $O
libveriuser.a: libveriuser.o
rm -f $@
ar cvq $@ libveriuser.o
$(AR) cvq $@ libveriuser.o
$(RANLIB) $@
dep:

View File

@ -86,12 +86,12 @@ endif
system.vpi: $O ../vvp/libvpi.a
$(CC) @shared@ -o $@ $O -L../vvp $(LDFLAGS) -lvpi $(SYSTEM_VPI_LDFLAGS)
sys_readmem_lex.c: sys_readmem_lex.lex
sys_readmem_lex.c: $(srcdir)/sys_readmem_lex.lex
$(LEX) -Preadmem -t $< > $@
sdf_lexor.o: sdf_lexor.c sdf_parse.h
sdf_lexor.c: sdf_lexor.lex
sdf_lexor.c: $(srcdir)/sdf_lexor.lex
$(LEX) -Psdf -t $< > $@
# Build this in two steps to avoid parallel build issues (see pr3462585)

View File

@ -35,11 +35,13 @@ includedir = @includedir@
CC = @CC@
HOSTCC = @CC@
CXX = @CXX@
DLLTOOL = @DLLTOOL@
AR = @AR@
RANLIB = @RANLIB@
INSTALL = @INSTALL@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@
RANLIB = @RANLIB@
LEX = @LEX@
YACC = @YACC@
MAN = @MAN@
@ -102,7 +104,7 @@ ifeq (@WIN32@,yes)
# executable to build the library.
vvp@EXEEXT@ libvpi.a: $O $(srcdir)/vvp.def
$(CXX) -o vvp$(suffix)@EXEEXT@ $(LDFLAGS) $O $(dllib) $(LIBS)
dlltool --dllname vvp$(suffix)@EXEEXT@ --def $(srcdir)/vvp.def \
$(DLLTOOL) --dllname vvp$(suffix)@EXEEXT@ --def $(srcdir)/vvp.def \
--output-lib libvpi.a --output-exp vvp.exp
rm -f vvp$(suffix)@EXEEXT@
$(CXX) $(LDFLAGS) -o vvp@EXEEXT@ vvp.exp $(LDFLAGS) $O $(dllib) $(LIBS)
@ -110,7 +112,7 @@ else
libvpi.a: libvpi.c
$(CC) -c $(srcdir)/libvpi.c
rm -f libvpi.a
ar cqv libvpi.a libvpi.o
$(AR) cqv libvpi.a libvpi.o
$(RANLIB) libvpi.a
vvp@EXEEXT@: $O
@ -129,9 +131,9 @@ dep:
mv $*.d dep/$*.d
tables.cc: $(srcdir)/draw_tt.c
$(HOSTCC) @WARNING_FLAGS@ -o draw_tt $(srcdir)/draw_tt.c
./draw_tt > tables.cc
rm draw_tt@EXEEXT@
$(HOSTCC) @WARNING_FLAGS@ -o draw_tt.exe $(srcdir)/draw_tt.c
./draw_tt.exe > tables.cc
rm draw_tt.exe
lexor.o: lexor.cc parse.h

View File

@ -32,7 +32,7 @@ typedef shl_t ivl_dll_t;
#endif
#if defined(__MINGW32__)
inline ivl_dll_t ivl_dlopen(const char *name, bool global_flag)
inline ivl_dll_t ivl_dlopen(const char *name, bool)
{
static char full_name[4096];
unsigned long length = GetFullPathName(name, sizeof(full_name),