From: Peter W. <pet...@wo...> - 2002-04-09 20:04:14
|
Hi, On Tue, Apr 09, 2002 at 07:06:02PM +0100, Will Newton wrote: > On Tuesday 09 Apr 2002 3:03 pm, Peter Wood wrote: > > > Why is the file ffcall/avcall/avcall-i386.c not used? I've compiled > > with it and it (seemingly) works fine (Gnu/Linux x86). Why does Clisp > > do the hairy cpp|grep|sed x.S -> x.s thing?? > > In an attempt to work on a wide array of broken compilers and assemblers most > probably. It really is a bit of a mess in there, but I am definitely not > volunteering to clean it up. :) > It's one of those "change one line, then check it builds on 30 different > architectures" jobs. > This is definitely true, but the Makefile already deals with the '30 architectures' and I am only (tentatively) suggesting that the rule for avcall-i386.lo be changed, not the rules for sparc, mips, m68k, etc: avcall-i386.lo : $(srcdir)/avcall-i386.c $(LIBTOOL_COMPILE) $(CC) $(CFLAGS) -c $(srcdir)/avcall-i386.c (instead of) #avcall-i386.lo : avcall-i386.s # $(LIBTOOL_COMPILE) $(CC) -x none -c avcall-i386.s # #avcall-i386.s : $(srcdir)/avcall-i386-macro.S # $(CPP) $(ASPFLAGS) $(srcdir)/avcall-i386-macro.S | grep -v '^ *#line' | grep -v '^#ident' | grep -v '^#' | sed -e 's,% ,%,g' -e 's,% ,%,g' -e 's,\. ,.,g ' > avcall-i386.s So we wouldn't have to worry about the 30 architectures, 'just' the few os's that run on i386, apart from linux which seems fine. Another advantage to using the .c file is you can follow Clisp into avcall on gdb - well, you can do it with the .s file too, but assembler is ... assembler. I don't suppose it really matters, and there _may_ be something wrong with compiling with the c file that I don't know about. Regards, Peter |