OSDN Git Service

add sh7262
[hos/hos-v4a.git] / kernel / build / sh / sh2a-fpu / shc / GNUmakefile
1 # ----------------------------------------------------------------------------
2 # Hyper Operating System V4 Advance
3 #  makefile for SH2
4 #
5 # Copyright (C) 1998-2007 by Project HOS
6 # http://sourceforge.jp/projects/hos/
7 # ----------------------------------------------------------------------------
8
9
10 # %jp{\83^\81[\83Q\83b\83g\96¼}%en{target}
11 TARGET ?= libhosv4a
12
13
14 # %jp{\83A\81[\83L\83e\83N\83`\83\83\92è\8b`}%en{architecture}
15 ARCH_PROC ?= sh/sh2a-fpu
16 ARCH_IRC  ?= simple
17 ARCH_CC   ?= shc
18
19
20 # %jp{\83f\83B\83\8c\83N\83g\83\8a\92è\8b`}%en{directorys}
21 HOSV4A_DIR        = ../../../../..
22 KERNEL_DIR        = $(HOSV4A_DIR)/kernel
23 KERNEL_MAKINC_DIR = $(KERNEL_DIR)/build/common/gmake
24 OBJS_DIR          = objs_$(TARGET)
25
26
27 # %jp{\83J\81[\83l\83\8b\8ew\92è}
28 KERNEL = Yes
29
30
31 # %jp{\83R\83\93\83t\83B\83M\83\85\83\8c\81[\83^\92è\8b`}%en{Configurator}
32 CFGRTR_DIR = $(HOSV4A_DIR)/cfgrtr/build/gcc
33 CFGRTR     = h4acfg-sh2a-fpu
34
35
36 # %jp{\8b¤\92Ê\92è\8b`\93Ç\8d\9e\82Ý}%en{Common setting}
37 include $(KERNEL_MAKINC_DIR)/common.inc
38
39
40 # %jp{\83A\81[\83L\83e\83N\83`\83\83\83p\83X}%en{architecture path}
41 INC_PROC_DIR    = $(KERNEL_DIR)/include/arch/proc/$(ARCH_PROC)
42 INC_IRC_DIR     = $(KERNEL_DIR)/include/arch/irc/$(ARCH_IRC)
43 SRC_PROC_DIR    = $(KERNEL_DIR)/source/arch/proc/$(ARCH_PROC)
44 SRC_PROC_CC_DIR = $(KERNEL_DIR)/source/arch/proc/$(ARCH_PROC)/$(ARCH_CC)
45 SRC_IRC_DIR     = $(KERNEL_DIR)/source/arch/irc/$(ARCH_IRC)
46 SRC_IRC_CC_DIR  = $(KERNEL_DIR)/source/arch/irc/$(ARCH_IRC)/$(ARCH_CC)
47
48
49 # %jp{\83p\83X\90Ý\92è}%en{Source path}
50 INC_DIRS += $(INC_PROC_DIR) $(INC_IRC_DIR)
51 SRC_DIRS += $(SRC_PROC_DIR) $(SRC_PROC_DIR) $(SRC_PROC_CC_DIR) $(SRC_IRC_DIR) $(SRC_IRC_CC_DIR)
52
53
54 # %jp{\83I\83v\83V\83\87\83\93\83t\83\89\83O}%en{compile options}
55 CFLAGS  += -CPu=sh2afpu
56 AFLAGS  += -CPu=sh2afpu
57 ARFLAGS += 
58
59
60 ifeq ($(FAST_VECTOR),Yes)
61 A_DEFS += _KERNEL_FAST_INTVEC="ON"
62 endif
63
64
65
66 # %jp{C\8c¾\8cê\83t\83@\83C\83\8b\82Ì\92Ç\89Á}
67 CSRCS += $(SRC_PROC_DIR)/val_int.c                      \
68          $(SRC_IRC_DIR)/ena_int.c                       \
69          $(SRC_IRC_DIR)/dis_int.c                       \
70          $(SRC_IRC_DIR)/clr_int.c                       \
71          $(SRC_IRC_DIR)/get_imsk.c                      \
72          $(SRC_IRC_DIR)/chg_imsk.c                      \
73          $(SRC_IRC_DIR)/chg_ilv.c                       \
74          $(SRC_IRC_DIR)/get_ilv.c
75
76 # %jp{\83A\83Z\83\93\83u\83\89\83t\83@\83C\83\8b\82Ì\92Ç\89Á}
77 ASRCS += $(SRC_PROC_CC_DIR)/kdis_int.src        \
78          $(SRC_PROC_CC_DIR)/kena_int.src        \
79          $(SRC_PROC_CC_DIR)/kwai_int.src        \
80          $(SRC_PROC_CC_DIR)/kcre_ctx.src        \
81          $(SRC_PROC_CC_DIR)/krst_ctx.src        \
82          $(SRC_PROC_CC_DIR)/kswi_ctx.src        \
83          $(SRC_PROC_CC_DIR)/kint_hdr.src        \
84          $(SRC_PROC_CC_DIR)/kexc_hdr.src
85
86
87
88 # %jp{\83R\83\93\83p\83C\83\89\88Ë\91\92è\8b`}%en{definitions of compiler dependence}
89 include $(KERNEL_MAKINC_DIR)/shc_d.inc
90
91
92 # %jp{\83J\81[\83l\83\8b\8b¤\92Ê\83\\81[\83X\82Ì\92Ç\89Á}%en{definitions of kernel source files}
93 include $(KERNEL_MAKINC_DIR)/knlsrc.inc
94
95
96
97 # %jp{ALL}%en{all}
98 .PHONY : all
99 all: makelib_all
100         $(MAKE) -C $(CFGRTR_DIR) TARGET=$(CFGRTR) ARCH_PROC=$(ARCH_PROC) ARCH_IRC=$(ARCH_IRC)
101
102 # %jp{\83N\83\8a\81[\83\93}$en{clean}
103 .PHONY : clean
104 clean: makelib_clean
105         $(MAKE) -C $(CFGRTR_DIR) TARGET=$(CFGRTR) ARCH_PROC=$(ARCH_PROC) ARCH_IRC=$(ARCH_IRC) clean
106         $(RM) -f *.lst
107
108 # depend
109 .PHONY : depend
110 clean: makelib_clean
111
112 # source file copy
113 .PHONY : srccpy
114 srccpy: makelib_srccpy
115
116
117 # %jp{\83\89\83C\83u\83\89\83\8a\90\90¬\97p\90Ý\92è\93Ç\8d\9e\82Ý}%en{rules of library}
118 include $(KERNEL_MAKINC_DIR)/makelib.inc
119
120
121 # %jp{\83R\83\93\83p\83C\83\89\88Ë\91\83\8b\81[\83\8b}%en{rules of compiler dependence}
122 include $(KERNEL_MAKINC_DIR)/shc_r.inc
123
124
125 # %jp{\83J\81[\83l\83\8b\88Ë\91\8aÖ\8cW\93Ç\8d\9e\82Ý}%en{dependence}
126 include $(KERNEL_MAKINC_DIR)/knldep.inc
127
128
129
130 # end of file