Re: [AD] compilation problem

[ Thread Index | Date Index | More lists.liballeg.org/allegro-developers Archives ]


On Sun, Aug 27, 2000 at 01:54:10AM +0100, Laurence Withers wrote:
> In reply to George Foot (George Foot <gfoot@xxxxxxxxxx>):
> >I think we should remove the asterisk -- I think I deliberately left out 
> >that patch originally.  Without the asterisk the new assembler gives 
> >warnings, but with it the old one gives errors.
> 
> But then we cannot compile with WARNMODE set to 1 - which is not
> necessary, but is ideal. Also, upgrading to recent versions of tools is
> recommended. Is there anyway to detect the assembler version, and alter
> the macro accordingly?

We can test it in the same way we check for mmx support.  Use a
makefile rule like this:

    lcalltest:
    ifdef CROSSCOMPILE
        echo '#define LCALL(x) lcall x' > obj/djgpp/lcall.def
        echo 'lcall *foo' > obj/djgpp/lcalltst.s
        gcc -c obj/djgpp/lcalltst.s -o obj/djgpp/lcalltst.o
        echo '#define LCALL(x) lcall *x' > obj/djgpp/lcall.def
        rm obj/djgpp/lcalltst.*
    else
        echo #define LCALL(x) lcall x > obj/djgpp/lcall.def
        echo lcall *foo > obj/djgpp/lcalltst.s
        gcc -c obj/djgpp/lcalltst.s -o obj/djgpp/lcalltst.o
        echo #define LCALL(x) lcall *x > obj/djgpp/lcall.def
        del obj\djgpp\lcalltst.*
    endif

    obj/djgpp/lcall.def:
        echo Testing assembler lcall syntax...
        -$(MAKE) lcalltest

Then gripfnc.s just does a #include "lcall.def", and the faulty
line is replaced with:

    #define GRIP_CALL             LCALL(GLOBL(GRIP_Thunk) + 8)

George

-- 
Random project update:
09/05/2000: Libnet 0.10.8 uploaded -- a few bugfixes
        http://www.canvaslink.com/libnet/  (try changes-0.10.8.txt)



Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/