#
# /emx/src/lib/gcc/makefile
#
.INCLUDE: /emx/src/lib/lib0.mak

.PHONY: clean default dstlib lib_386 libgcc libgcc-p

.SOURCE.c: ..
.SOURCE.h: ..
.SOURCE.s: ..

.SOURCE.c: ../$(CPU)
.SOURCE.s: ../$(CPU)

LIBGCC=$(L)$(LIBNAME).a

.c.o:
	$(GCC) -DEMX -DHAVE_ATEXIT -c $<

default: libgcc

libgcc: lib_$(CPU)
libgcc-p: lib_p_$(CPU)

lib_386 .SETDIR=st_386:
	$(MAKE) -f ../makefile dstlib LIBNAME=gcc $(PASSDOWN) MT_CCFLAGS=

lib_p_386 .SETDIR=st_p_386:
	$(MAKE) -f ../makefile dstlib LIBNAME=gcc_p $(PASSDOWN) MT_CCFLAGS=-pg

dstlib: $(LIBGCC)

clean:
	-del st_$(CPU)\*.o $(DELOPT)
	-del st_p_$(CPU)\*.o $(DELOPT)

bb.o: bb.c
bounds.o: bounds.c
delete.o: delete.c
exceptio.o: exceptio.c
main.o: main.c $(I)stdlib.h
new.o: new.c
probe.o: probe.s $(ASM386H)
purevirt.o: purevirt.c $(I)unistd.h $(I)io.h
setnewha.o: setnewha.c
vdelete.o: vdelete.c
vnew.o: vnew.c

udivsi3.o: udivsi3.s $(ASM386H)
divsi3.o: divsi3.s $(ASM386H)
fixdfsi.o: fixdfsi.s $(ASM386H)
fixudfdi.o: fixudfdi.s $(ASM386H)
fixudfsi.o: fixudfsi.c
fixusfdi.o: fixusfdi.s $(ASM386H)
fixuxfdi.o: fixuxfdi.s $(ASM386H)
muldi3.o: muldi3.s $(ASM386H)
cmpdi2.o: cmpdi2.s $(ASM386H)
ucmpdi2.o: ucmpdi2.s $(ASM386H)
lldiv.o: lldiv.c $(I)stdlib.h
ulldiv.o: ulldiv.s $(ASM386H)
divdi3.o: divdi3.c $(I)stdlib.h
moddi3.o: moddi3.c $(I)stdlib.h
udivdi3.o: udivdi3.c $(I)stdlib.h
umoddi3.o: umoddi3.c $(I)stdlib.h

$(LIBGCC): bb.o bounds.o delete.o exceptio.o main.o new.o probe.o purevirt.o \
    setnewha.o vdelete.o vnew.o \
    udivsi3.o divsi3.o \
    fixdfsi.o fixudfdi.o fixudfsi.o fixusfdi.o fixuxfdi.o \
    muldi3.o udivdi3.o divdi3.o moddi3.o umoddi3.o cmpdi2.o ucmpdi2.o \
    lldiv.o ulldiv.o
	$(AR) r $(LIBGCC) *.o
