Skip to content

Commit

Permalink
CRIS v32: Update boot compressed Kbuild makefile.
Browse files Browse the repository at this point in the history
- Remove old specific targets, use more generic ones instead.
- Use if_changed to avoid creating new images when no change.
- Use KBUILD_CFLAGS instead of CFLAGS.
  • Loading branch information
Jesper Nilsson committed Feb 8, 2008
1 parent 3d6f787 commit 28bf739
Showing 1 changed file with 17 additions and 28 deletions.
45 changes: 17 additions & 28 deletions arch/cris/arch-v32/boot/compressed/Makefile
Original file line number Diff line number Diff line change
@@ -1,41 +1,30 @@
#
# lx25/arch/cris/arch-v32/boot/compressed/Makefile
# arch/cris/arch-v32/boot/compressed/Makefile
#
# create a compressed vmlinux image from the original vmlinux files and romfs
#

target = $(target_compressed_dir)
src = $(src_compressed_dir)

CC = gcc-cris -mlinux -march=v32 $(LINUXINCLUDE)
CFLAGS = -O2
AFLAGS += -I $(srctree)/include/asm/mach/ -I $(srctree)/include/asm/arch
KBUILD_CFLAGS += -O2 -I $(srctree)/include/asm/mach/ -I $(srctree)/include/asm/arch
LD = gcc-cris -mlinux -march=v32 -nostdlib
LDFLAGS = -T $(obj)/decompress.ld
obj-y = head.o misc.o
OBJECTS = $(obj)/head.o $(obj)/misc.o
OBJCOPY = objcopy-cris
OBJCOPYFLAGS = -O binary --remove-section=.bss
OBJECTS = $(target)/head.o $(target)/misc.o

# files to compress
SYSTEM = $(objtree)/vmlinux.bin

all: vmlinuz

$(target)/decompress.bin: $(OBJECTS)
$(LD) -T $(src)/decompress.ld -o $(target)/decompress.o $(OBJECTS)
$(OBJCOPY) $(OBJCOPYFLAGS) $(target)/decompress.o $(target)/decompress.bin

$(objtree)/vmlinuz: $(target) piggy.img $(target)/decompress.bin
cat $(target)/decompress.bin piggy.img > $(objtree)/vmlinuz
rm -f piggy.img
cp $(objtree)/vmlinuz $(src)
quiet_cmd_image = BUILD $@
cmd_image = cat $(obj)/decompress.bin $(obj)/piggy.gz > $@

$(target)/head.o: $(src)/head.S
$(CC) -D__ASSEMBLY__ -c $< -o $@
targets := vmlinux piggy.gz decompress.o decompress.bin

# gzip the kernel image
$(obj)/decompress.o: $(OBJECTS) FORCE
$(call if_changed,ld)

piggy.img: $(SYSTEM)
cat $(SYSTEM) | gzip -f -9 > piggy.img
$(obj)/decompress.bin: $(obj)/decompress.o FORCE
$(call if_changed,objcopy)

clean:
rm -f piggy.img $(objtree)/vmlinuz vmlinuz.o decompress.o decompress.bin $(OBJECTS)
$(obj)/vmlinux: $(obj)/piggy.gz $(obj)/decompress.bin FORCE
$(call if_changed,image)

$(obj)/piggy.gz: $(obj)/../Image FORCE
$(call if_changed,gzip)

0 comments on commit 28bf739

Please sign in to comment.