6 TARGET := $(TARGET)_rom
11 ADDR_VECT ?= 000400000
17 OS_DIR = ../../../../..
18 KERNEL_DIR = $(OS_DIR)/kernel
19 APLFW_DIR = $(OS_DIR)/aplfw
21 KERNEL_INC_DIR = $(KERNEL_DIR)/include
22 APLFW_INC_DIR = $(APLFW_DIR)
24 KERNEL_BUILD_DIR = $(KERNEL_DIR)/build/sh/sh2/shc
25 APLFW_BUILD_DIR = $(APLFW_DIR)/build/sh/sh2/shc
27 KERNEL_CFG = $(OS_DIR)/cfgrtr/build/gcc/h4acfg-sh2.exe
28 KERNEL_LIB = $(KERNEL_BUILD_DIR)/libhosv4a.lib
29 APLFW_LIB = $(APLFW_BUILD_DIR)/hosaplfw.lib
37 CFLAGS = -CP=sh2 -DEBug -NOLOGO -I=$(KERNEL_INC_DIR),$(APLFW_INC_DIR)
38 AFLAGS = -CP=sh2 -DEBug -NOLOGO
43 OBJS = $(OBJS_DIR)/vcttbl.obj \
44 $(OBJS_DIR)/startup.obj \
45 $(OBJS_DIR)/main.obj \
46 $(OBJS_DIR)/sample.obj \
47 $(OBJS_DIR)/ostimer.obj \
48 $(OBJS_DIR)/kernel_cfg.obj \
49 $(OBJS_DIR)/dbsct.obj \
55 VPATH = .:..:$(SRC_DIR)/driver/renesas
58 all: mkdir_objs mk_kernel mk_aplfw $(TARGET).abs
61 $(TARGET).abs: $(OBJS) $(STD_LIBS) $(OS_LIBS)
62 echo rom D=R > $(OBJS_DIR)/subcmd.txt
63 echo -OPtimize >> $(OBJS_DIR)/subcmd.txt
64 echo list $(TARGET).map >> $(OBJS_DIR)/subcmd.txt
65 echo -Input=$(OBJS) | sed "s/ /,/g" >> $(OBJS_DIR)/subcmd.txt
66 echo -LIB=$(KERNEL_LIB),$(APLFW_LIB),$(STD_LIBS) >> $(OBJS_DIR)/subcmd.txt
67 echo "-start=VECTTBL/$(ADDR_VECT),P,C,C\$$BSEC,C\$$DSEC,D/$(ADDR_ROM),B,R,S/$(ADDR_RAM)" >> $(OBJS_DIR)/subcmd.txt
68 echo -output=$(TARGET).abs >> $(OBJS_DIR)/subcmd.txt
69 echo end >> $(OBJS_DIR)/subcmd.txt
70 echo -input=$(TARGET).abs >> $(OBJS_DIR)/subcmd.txt
71 echo form stype >> $(OBJS_DIR)/subcmd.txt
72 echo output $(TARGET).mot >> $(OBJS_DIR)/subcmd.txt
73 echo -exit >> $(OBJS_DIR)/subcmd.txt
74 $(LINK) -SU=$(OBJS_DIR)/subcmd.txt
77 lbgsh -OUTPut=$(STD_LIBS) $(CFLAGS) -REent
80 make -C $(KERNEL_BUILD_DIR) -f gmake.mak
83 make -C $(APLFW_BUILD_DIR) -f gmake.mak
89 rm -f $(OBJS) $(TARGET) ../kernel_cfg.c ../kernel_id.h
92 make -C $(KERNEL_BUILD_DIR) -f gmake.mak clean
93 make -C $(APLFW_BUILD_DIR) -f gmake.mak clean
96 $(OBJS_DIR)/sample.obj: sample.c ../kernel_id.h
98 ../kernel_cfg.c ../kernel_id.h: ../system.cfg
99 cpp -E ../system.cfg ../system.i
100 $(KERNEL_CFG) ../system.i -c ../kernel_cfg.c -i ../kernel_id.h
104 $(OBJS_DIR)/%.obj :: %.c
105 $(CC) $(CFLAGS) $< -OB=$@ -List=$(@:%.obj=%.lst)
107 $(OBJS_DIR)/%.obj :: %.src
108 $(ASM) $(AFLAGS) $< -OB=$@