view kernel/Makefile @ 0:42f240cc4bc6

From: 太田 篤志 <atoc@namikilab.tuat.ac.jp>
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Tue, 08 Sep 2009 13:44:18 +0900
parents
children
line wrap: on
line source

##
## Makefile
## SPE 軽量カーネル構築用 Makefile
##

kernel       = kernel
dump         = kernel.dump
kernel_h     = ../include/kernel.h

elf          = kernel.elf
objs         = entry.o kernel.o
ldscript     = kernel.ld

ASFLAGS      = 
CFLAGS       = -Wall -Wno-main
LDFLAGS      = -T $(ldscript)
OBJDUMPFLAGS = -D
OBJCOPYFLAGS = -S -O binary


AS           = spu-as
CC           = spu-gcc
LD           = spu-ld
OBJDUMP      = spu-objdump
OBJCOPY      = spu-objcopy
CONVERT      = ./convert

CLEANSTR     = "  CLEAN"
ASSTR        = "  AS      "
CCSTR        = "  CC      "
LDSTR        = "  LD      "
OBJDUMPSTR   = "  OBJDUMP "
OBJCOPYSTR   = "  OBJCOPY "
CONVERTSTR   = "  CONVERT "

ifeq ($(VERBOSE), 1)
	Q =
else
	Q = @
endif


.PHONY: all
all: $(kernel_h) dump

.PHONY: dump
dump: $(dump)

$(kernel_h): $(kernel)
	@echo $(CONVERTSTR)$@
	$(Q)$(CONVERT) $< $@
$(kernel): $(elf)
	@echo $(OBJCOPYSTR)$@
	$(Q)$(OBJCOPY) $(OBJCOPYFLAGS) $< $@
$(dump): $(elf)
	@echo $(OBJDUMPSTR)$@
	$(Q)$(OBJDUMP) $(OBJDUMPFLAGS) $< > $@
$(elf): $(objs)
	@echo $(LDSTR)$@
	$(Q)$(LD) $(LDFLAGS) -o $@ $^
.s.o:
	@echo $(ASSTR)$@
	$(Q)$(AS) $(ASFLAGS) -o $@ $<
.c.o:
	@echo $(CCSTR)$@
	$(Q)$(CC) $(CFLAGS) -c -o $@ $<

.PHONY: clean
clean:
	@echo $(CLEANSTR)
	$(Q)$(RM) $(kernel) $(dump) $(kernel_h) $(elf) $(objs)