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@ CC = @CC@
HOSTCC = @CC@ HOSTCC = @CC@
CXX = @CXX@ CXX = @CXX@
DLLTOOL = @DLLTOOL@
INSTALL = @INSTALL@ INSTALL = @INSTALL@
INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_PROGRAM = @INSTALL_PROGRAM@ 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) ifeq (@MINGW32@,yes)
all: dep dosify.exe all: dep dosify.exe
dosify.exe: $(srcdir)/dosify.c dosify.exe: $(srcdir)/dosify.c
$(CC) -o dosify.exe $(srcdir)/dosify.c $(HOSTCC) -o dosify.exe $(srcdir)/dosify.c
endif endif
# This rule rules the compiler in the trivial hello.vl program to make # 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. # that really exports the things that the import library imports.
ivl@EXEEXT@: $O $(srcdir)/ivl.def ivl@EXEEXT@: $O $(srcdir)/ivl.def
$(CXX) -o ivl@EXEEXT@ $O $(dllib) @EXTRALIBS@ $(CXX) -o ivl@EXEEXT@ $O $(dllib) @EXTRALIBS@
dlltool --dllname ivl@EXEEXT@ --def $(srcdir)/ivl.def \ $(DLLTOOL) --dllname ivl@EXEEXT@ --def $(srcdir)/ivl.def \
--output-lib libivl.a --output-exp ivl.exp --output-lib libivl.a --output-exp ivl.exp
$(CXX) $(LDFLAGS) -o ivl@EXEEXT@ ivl.exp $O $(dllib) @EXTRALIBS@ $(CXX) $(LDFLAGS) -o ivl@EXEEXT@ ivl.exp $O $(dllib) @EXTRALIBS@
else else
ivl@EXEEXT@: $O ivl@EXEEXT@: $O

View File

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

View File

@ -20,7 +20,11 @@ AC_PREREQ([2.60])
AC_PROG_CC_C99 AC_PROG_CC_C99
AC_PROG_CXX AC_PROG_CXX
AC_PROG_RANLIB 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(STRIP, strip, true)
AC_CHECK_TOOL(WINDRES, windres, true)
AC_CHECK_PROGS(XGPERF,gperf,none) AC_CHECK_PROGS(XGPERF,gperf,none)
AC_CHECK_PROGS(MAN,man,none) AC_CHECK_PROGS(MAN,man,none)
AC_CHECK_PROGS(PS2PDF,ps2pdf,none) AC_CHECK_PROGS(PS2PDF,ps2pdf,none)

View File

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

View File

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

View File

@ -31,6 +31,9 @@ libdir = @libdir@
includedir = $(prefix)/include includedir = $(prefix)/include
CC = @CC@ CC = @CC@
RANLIB = @RANLIB@
AR = @AR@
LD = @LD@
INSTALL = @INSTALL@ INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@ INSTALL_DATA = @INSTALL_DATA@
@ -38,7 +41,6 @@ INSTALL_DATA = @INSTALL_DATA@
CPPFLAGS = -I. -I.. -I$(srcdir) -I$(srcdir)/.. @CPPFLAGS@ @DEFS@ @PICFLAG@ CPPFLAGS = -I. -I.. -I$(srcdir) -I$(srcdir)/.. @CPPFLAGS@ @DEFS@ @PICFLAG@
CFLAGS = @WARNING_FLAGS@ @CFLAGS@ CFLAGS = @WARNING_FLAGS@ @CFLAGS@
LDFLAGS = @LDFLAGS@ LDFLAGS = @LDFLAGS@
RANLIB = @RANLIB@
A = a_close.o a_compare_handles.o a_configure.o a_fetch_argc.o \ 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 \ 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 libveriuser.a: libveriuser.o
rm -f $@ rm -f $@
ar cvq $@ libveriuser.o $(AR) cvq $@ libveriuser.o
$(RANLIB) $@ $(RANLIB) $@
dep: dep:

View File

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

View File

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

View File

@ -32,7 +32,7 @@ typedef shl_t ivl_dll_t;
#endif #endif
#if defined(__MINGW32__) #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]; static char full_name[4096];
unsigned long length = GetFullPathName(name, sizeof(full_name), unsigned long length = GetFullPathName(name, sizeof(full_name),