1# 2# Makefile for rescue code 3# 4target = $(target_rescue_dir) 5src = $(src_rescue_dir) 6 7CC = gcc-cris -mlinux $(LINUXINCLUDE) 8CFLAGS = -O2 9LD = gcc-cris -mlinux -nostdlib 10OBJCOPY = objcopy-cris 11OBJCOPYFLAGS = -O binary --remove-section=.bss 12 13all: $(target)/rescue.bin $(target)/testrescue.bin $(target)/kimagerescue.bin 14 15$(target)/rescue.bin: $(target) $(target)/head.o 16 $(LD) -T $(src)/rescue.ld -o $(target)/rescue.o $(target)/head.o 17 $(OBJCOPY) $(OBJCOPYFLAGS) $(target)/rescue.o $(target)/rescue.bin 18# Place a copy in top-level build directory 19 cp -p $(target)/rescue.bin $(objtree) 20 21$(target)/testrescue.bin: $(target) $(target)/testrescue.o 22 $(OBJCOPY) $(OBJCOPYFLAGS) $(target)/testrescue.o tr.bin 23# Pad it to 784 bytes 24 dd if=/dev/zero of=tmp2423 bs=1 count=784 25 cat tr.bin tmp2423 >testrescue_tmp.bin 26 dd if=testrescue_tmp.bin of=$(target)/testrescue.bin bs=1 count=784 27 rm tr.bin tmp2423 testrescue_tmp.bin 28 29$(target)/kimagerescue.bin: $(target) $(target)/kimagerescue.o 30 $(OBJCOPY) $(OBJCOPYFLAGS) $(target)/kimagerescue.o ktr.bin 31# Pad it to 784 bytes, that's what the rescue loader expects 32 dd if=/dev/zero of=tmp2423 bs=1 count=784 33 cat ktr.bin tmp2423 >kimagerescue_tmp.bin 34 dd if=kimagerescue_tmp.bin of=$(target)/kimagerescue.bin bs=1 count=784 35 rm ktr.bin tmp2423 kimagerescue_tmp.bin 36 37$(target): 38 mkdir -p $(target) 39 40$(target)/head.o: $(src)/head.S 41 $(CC) -D__ASSEMBLY__ -traditional -c $< -o $*.o 42 43$(target)/testrescue.o: $(src)/testrescue.S 44 $(CC) -D__ASSEMBLY__ -traditional -c $< -o $*.o 45 46$(target)/kimagerescue.o: $(src)/kimagerescue.S 47 $(CC) -D__ASSEMBLY__ -traditional -c $< -o $*.o 48 49clean: 50 rm -f $(target)/*.o $(target)/*.bin 51 52fastdep: 53 54modules: 55 56modules-install: 57