1 # ----------------------------------------------------------------------------
2 # Hyper Operating System V4 Advance
3 # makefile for sh2-sample
5 # Copyright (C) 1998-2006 by Project HOS
6 # http://sourceforge.jp/projects/hos/
7 # ----------------------------------------------------------------------------
14 CMD_CC ?= sh-$(GCC_SYS)-gcc
15 CMD_ASM ?= sh-$(GCC_SYS)-gcc
16 CMD_LINK ?= sh-$(GCC_SYS)-gcc
17 CMD_OBJCNV ?= sh-$(GCC_SYS)-objcopy
21 TOP_DIR = ../../../../..
22 KERNEL_DIR = $(TOP_DIR)/kernel
23 KERNEL_CFGRTR_DIR = $(TOP_DIR)/cfgrtr/build/gcc
24 KERNEL_MAKINC_DIR = $(KERNEL_DIR)/build/common/gmake
25 KERNEL_BUILD_DIR = $(KERNEL_DIR)/build/sh/sh2/gcc
26 HOSAPLFW_DIR = $(TOP_DIR)/aplfw
27 HOSAPLFW_INC_DIR = $(HOSAPLFW_DIR)
28 HOSAPLFW_BUILD_DIR = $(HOSAPLFW_DIR)/build/sh/sh2/gcc
29 OBJS_DIR = objs_$(TARGET)
33 include $(KERNEL_MAKINC_DIR)/common.inc
37 KERNEL_CFGRTR = $(KERNEL_CFGRTR_DIR)/h4acfg-sh2
41 HOSAPLFW_LIB = $(HOSAPLFW_BUILD_DIR)/hosaplfw.$(EXT_LIB)
46 # %jp{外部メモリ(モニタプログラム利用を想定)}
47 TARGET := $(TARGET)ext
48 LINK_SCRIPT = link_ext.x
51 LINK_SCRIPT = link_rom.x
57 TARGET := $(TARGET)dbg
58 HOSAPLFW_LIB = $(HOSAPLFW_BUILD_DIR)/hosaplfwdbg.$(EXT_LIB)
65 LNFLAGS = -m2 -nostartfiles -Wl,-Map,$(TARGET).map,-T$(LINK_SCRIPT)
69 TARGET_EXE = $(TARGET).$(EXT_EXE)
70 TARGET_MOT = $(TARGET).$(EXT_MOT)
74 include $(KERNEL_MAKINC_DIR)/gcc_d.inc
78 INC_DIRS += $(HOSAPLFW_INC_DIR)
90 CSRCS += ../kernel_cfg.c \
96 LIBS += $(HOSAPLFW_LIB)
100 # --------------------------------------
102 # --------------------------------------
105 all: make_libs makeexe_all $(TARGET_EXE) $(TARGET_MOT)
109 make -C $(HOSAPLFW_BUILD_DIR) -f gmake.mak
113 rm -f $(TARGET_EXE) $(TARGET_EXE) $(OBJS) ../kernel_cfg.c ../kernel_id.h
116 mostlyclean: clean kernel_clean
117 make -C $(HOSAPLFW_BUILD_DIR) -f gmake.mak clean
120 depend: makeexe_depend
122 .PHONY : mostlydepend
123 mostlydepend: depend kernel_depend
124 make -C $(HOSAPLFW_BUILD_DIR) -f gmake.mak depend
127 srccpy: makeexe_srccpy
128 make -C $(KERNEL_BUILD_DIR) -f gmake.mak srccpy
129 make -C $(HOSAPLFW_BUILD_DIR) -f gmake.mak srccpy
131 ../kernel_cfg.c ../kernel_id.h: ../system.cfg
132 cpp -E ../system.cfg ../system.i
133 $(KERNEL_CFGRTR) ../system.i -c ../kernel_cfg.c -i ../kernel_id.h
138 include $(KERNEL_MAKINC_DIR)/makeexe.inc
142 include $(KERNEL_MAKINC_DIR)/gcc_r.inc
146 # --------------------------------------
148 # --------------------------------------
150 $(OBJS_DIR)/sample.$(EXT_OBJ): ../sample.c ../kernel_id.h