# Specify how to create the *.asm files

MOVE_ASM = moveHI15x.asm moveQI16x.asm moveSI46x.asm moveSI64n.asm \
	   moveHI48x.asm moveSI45x.asm moveSI47x.asm moveSI96x.asm \
	   moveDI96x.asm

$(MOVE_ASM): $(srcdir)/config/m88k/m88k-move.sh
	$(srcdir)/config/m88k/m88k-move.sh

LIB2FUNCS_EXTRA = $(MOVE_ASM)
LIBGCC1 = libgcc1.null
CROSS_LIBGCC1 = libgcc1.null

# In a coff environment, a link script is required for ctors and dtors.
m88kdgux.ld: $(srcdir)/config/m88k/dgux.ld
	rm -f m88kdgux.ld; cp $(srcdir)/config/m88k/dgux.ld ./m88kdgux.ld

# A bcs crtbegin.o is needed since bcs does not  
# increment the stack pointer in the init section as elf does 
bcscrtbegin.o:     crtstuff.c $(GCC_PASSES) $(CONFIG_H) gbl-ctors.h
	$(GCC_FOR_TARGET) $(GCC_CFLAGS) $(INCLUDES) -DCRT_BEGIN -DBCS \
	-finhibit-size-directive -fno-inline-functions \
	-g0 -c $(srcdir)/crtstuff.c -o bcscrtbegin.o 

# Build libgcc.a, crtbegin.o, and crtend.o as bcs objects
GCC_FOR_TARGET = PATH=/usr/sde/m88kbcs/usr/bin/:/usr/bin TARGET_BINARY_INTERFACE=m88kbcs ./xgcc -B./ -msvr3 -D_M88KBCS_TARGET -mno-ocs-debug-info
