# Makefile for Armbob 4.0     G.C.Wraith 2021

OFILE1=o.extra o.bob o.bobdbg o.bobint o.bobfcn o.bobmem
OFILE2=o.bobcom o.bobscn o.riscos o.stdlibhack  o.throw o.real
OFILE3=o.cpp o.define o.lex o.ifdef o.comment
OFILES=$(OFILE1) $(OFILE2) $(OFILE3)
CC=cc

ARMstuff= -arch 7 -Otime
# ARMstuff= -arch 3 -Otime

CFLAGS=-c $(ARMstuff) -I@ -wadfnv -DRISCOS

.SUFFIXES: .o .c .s

bob:       $(OFILES)
           link -o bob -v  -s symbs -via linkfile C:o.stubs
           squeeze bob

.c.o:;	$(CC) $(CFLAGS) -o $@ c.$*
.s.o:;  objasm -to $@ -from s.$*

o.bob:         c.bob h.bob
               cc $(CFLAGS) c.bob
o.bobdbg:      c.bobdbg h.bob
               cc $(CFLAGS) c.bobdbg
o.bobint:       c.bobint h.bob
               cc $(CFLAGS) c.bobint
o.bobfcn:      c.bobfcn h.bob
               cc $(CFLAGS) c.bobfcn
o.bobmem:       c.bobmem h.bob
                cc $(CFLAGS) c.bobmem
o.bobcom:      c.bobcom h.bob h.bobcom
               cc $(CFLAGS) c.bobcom
o.bobscn:      c.bobscn h.bob h.bobcom
               cc $(CFLAGS) c.bobscn
o.riscos:      c.riscos h.bob
               cc $(CFLAGS) c.riscos
o.stdlibhack:  c.stdlibhack
               cc $(CFLAGS) c.stdlibhack
o.throw:       c.throw
               cc $(CFLAGS) c.throw
o.real:        c.real h.bob
               cc $(CFLAGS) c.real

o.comment: c.comment h.lex
           cc $(CFLAGS) c.comment
o.cpp: c.cpp h.define h.ifdef
         cc $(CFLAGS) c.cpp
o.define: c.define h.define h.lex
         cc $(CFLAGS) c.define
o.ifdef: c.ifdef h.ifdef
         cc $(CFLAGS) c.ifdef
o.lex: c.lex h.lex
         cc $(CFLAGS) c.lex
