Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 63e6b9a0 authored by Jesper Nilsson's avatar Jesper Nilsson
Browse files

CRIS v10: Update rescue Kbuild makefile.

- Remove old specific targets, use more generic ones instead.
- Use if_changed to avoid creating new images when no change.
  Removes a lot of cruft.
- Use EXTRA_CFLAGS instead of CFLAGS.
parent 1333a694
Loading
Loading
Loading
Loading
+19 −37
Original line number Diff line number Diff line
#
# Makefile for rescue code
# Makefile for rescue (bootstrap) code
#
target = $(target_rescue_dir)
src    = $(src_rescue_dir)

CC = gcc-cris -mlinux $(LINUXINCLUDE)
CFLAGS = -O2
EXTRA_CFLAGS = -O2
AFLAGS = -traditional
LD = gcc-cris -mlinux -nostdlib
LDFLAGS = -T $(obj)/rescue.ld
OBJCOPY = objcopy-cris
OBJCOPYFLAGS = -O binary --remove-section=.bss
obj-$(CONFIG_ETRAX_AXISFLASHMAP) = head.o
OBJECT := $(obj)/head.o

all: $(target)/rescue.bin $(target)/testrescue.bin $(target)/kimagerescue.bin
targets := rescue.o rescue.bin

$(target)/rescue.bin: $(target) $(target)/head.o
	$(LD) -T $(src)/rescue.ld -o $(target)/rescue.o $(target)/head.o
	$(OBJCOPY) $(OBJCOPYFLAGS) $(target)/rescue.o $(target)/rescue.bin
# Place a copy in top-level build directory
	cp -p $(target)/rescue.bin $(objtree)
$(obj)/rescue.o: $(OBJECT) FORCE
	$(call if_changed,ld)

$(target)/testrescue.bin: $(target) $(target)/testrescue.o
	$(OBJCOPY) $(OBJCOPYFLAGS) $(target)/testrescue.o tr.bin
$(obj)/rescue.bin: $(obj)/rescue.o FORCE
	$(call if_changed,objcopy)
	cp -p $(obj)/rescue.bin $(objtree)

$(obj)/testrescue.bin: $(obj)/testrescue.o
	$(OBJCOPY) $(OBJCOPYFLAGS) $(obj)/testrescue.o tr.bin
# Pad it to 784 bytes
	dd if=/dev/zero of=tmp2423 bs=1 count=784
	cat tr.bin tmp2423 >testrescue_tmp.bin
	dd if=testrescue_tmp.bin of=$(target)/testrescue.bin bs=1 count=784
	dd if=testrescue_tmp.bin of=$(obj)/testrescue.bin bs=1 count=784
	rm tr.bin tmp2423 testrescue_tmp.bin

$(target)/kimagerescue.bin: $(target) $(target)/kimagerescue.o
	$(OBJCOPY) $(OBJCOPYFLAGS) $(target)/kimagerescue.o ktr.bin
$(obj)/kimagerescue.bin: $(obj)/kimagerescue.o
	$(OBJCOPY) $(OBJCOPYFLAGS) $(obj)/kimagerescue.o ktr.bin
# Pad it to 784 bytes, that's what the rescue loader expects
	dd if=/dev/zero of=tmp2423 bs=1 count=784
	cat ktr.bin tmp2423 >kimagerescue_tmp.bin
	dd if=kimagerescue_tmp.bin of=$(target)/kimagerescue.bin bs=1 count=784
	dd if=kimagerescue_tmp.bin of=$(obj)/kimagerescue.bin bs=1 count=784
	rm ktr.bin tmp2423 kimagerescue_tmp.bin

$(target):
	mkdir -p $(target)

$(target)/head.o: $(src)/head.S
	$(CC) -D__ASSEMBLY__ -traditional -c $< -o $*.o

$(target)/testrescue.o: $(src)/testrescue.S
	$(CC) -D__ASSEMBLY__ -traditional -c $< -o $*.o

$(target)/kimagerescue.o: $(src)/kimagerescue.S
	$(CC) -D__ASSEMBLY__ -traditional -c $< -o $*.o

clean:
	rm -f $(target)/*.o $(target)/*.bin

fastdep:

modules:

modules-install: