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
32 KERNEL_LIB = $(KERNEL_BUILD_DIR)/libhosv4adbg.lib
33 APLFW_LIB = $(APLFW_BUILD_DIR)/hosaplfwdbg.lib
42 CFLAGS = -CP=sh2 -DEBug -NOLOGO -I=$(KERNEL_INC_DIR),$(APLFW_INC_DIR)
43 AFLAGS = -CP=sh2 -DEBug -NOLOGO
48 OBJS = $(OBJS_DIR)/vcttbl.obj \
49 $(OBJS_DIR)/startup.obj \
50 $(OBJS_DIR)/dbsct.obj \
51 $(OBJS_DIR)/main.obj \
52 $(OBJS_DIR)/kernel_cfg.obj \
53 $(OBJS_DIR)/sample.obj \
54 $(OBJS_DIR)/ostimer.obj \
59 VPATH = .:..:$(SRC_DIR)/driver/renesas
62 all: mkdir_objs mk_kernel mk_aplfw $(TARGET).abs
65 $(TARGET).abs: $(OBJS) $(STD_LIBS) $(OS_LIBS)
66 echo rom D=R > $(OBJS_DIR)/subcmd.txt
67 echo -OPtimize >> $(OBJS_DIR)/subcmd.txt
68 echo list $(TARGET).map >> $(OBJS_DIR)/subcmd.txt
69 echo -Input=$(OBJS) | sed "s/ /,/g" >> $(OBJS_DIR)/subcmd.txt
70 echo -LIB=$(KERNEL_LIB),$(APLFW_LIB),$(STD_LIBS) >> $(OBJS_DIR)/subcmd.txt
71 echo "-start=VECTTBL/$(ADDR_VECT),P,C,C\$$BSEC,C\$$DSEC,D/$(ADDR_ROM),B,R,S/$(ADDR_RAM)" >> $(OBJS_DIR)/subcmd.txt
72 echo -output=$(TARGET).abs >> $(OBJS_DIR)/subcmd.txt
73 echo end >> $(OBJS_DIR)/subcmd.txt
74 echo -input=$(TARGET).abs >> $(OBJS_DIR)/subcmd.txt
75 echo form stype >> $(OBJS_DIR)/subcmd.txt
76 echo output $(TARGET).mot >> $(OBJS_DIR)/subcmd.txt
77 echo -exit >> $(OBJS_DIR)/subcmd.txt
78 $(LINK) -SU=$(OBJS_DIR)/subcmd.txt
81 lbgsh -OUTPut=$(STD_LIBS) -CP=sh2 -REent
84 make -C $(KERNEL_BUILD_DIR) -f gmake.mak
87 make -C $(APLFW_BUILD_DIR) -f gmake.mak
93 rm -f $(OBJS) $(TARGET) ../kernel_cfg.c ../kernel_id.h
96 make -C $(KERNEL_BUILD_DIR) -f gmake.mak clean
97 make -C $(APLFW_BUILD_DIR) -f gmake.mak clean
100 $(OBJS_DIR)/sample.obj: sample.c ../kernel_id.h
102 ../kernel_cfg.c ../kernel_id.h: ../system.cfg
103 cpp -E ../system.cfg ../system.i
104 $(KERNEL_CFG) ../system.i -c ../kernel_cfg.c -i ../kernel_id.h
108 $(OBJS_DIR)/%.obj :: %.c
109 $(CC) $(CFLAGS) $< -OB=$@ -List=$(@:%.obj=%.lst)
111 $(OBJS_DIR)/%.obj :: %.src
112 $(ASM) $(AFLAGS) $< -OB=$@