OSDN Git Service

add ignore file
[hos/hos-v4a.git] / kernel / build / arm / at91 / armcc / makefile
1 # ----------------------------------------------------------------------------
2 # Hyper Operating System V4 Advance
3 #  makefile for ATMEL AT91 series
4 #
5 # Copyright (C) 1998-2007 by Project HOS
6 # http://sourceforge.jp/projects/hos/
7 # ----------------------------------------------------------------------------
8
9
10 # %jp{ターゲット名}
11 TARGET = libhosv4a
12
13
14 # %jp{アーキテクチャ定義}
15 ARCH_PROC = arm\arm_v4t
16 ARCH_IRC  = arm\at91
17 ARCH_CC   = armcc
18
19
20 # %jp{ディレクトリ定義}
21 TOP_DIR           = ..\..\..\..\..
22 KERNEL_DIR        = $(TOP_DIR)\kernel
23 KERNEL_MAKINC_DIR = $(KERNEL_DIR)\build\common\nmake
24
25
26 # %jp{カーネル指定}
27 KERNEL = Yes
28
29
30 # %jp{共通定義読込み}
31 !include $(KERNEL_MAKINC_DIR)/common.inc
32
33
34 # %jp{アーキテクチャパス}
35 INC_PROC_DIR    = $(KERNEL_DIR)\include\arch\proc\$(ARCH_PROC)
36 INC_IRC_DIR     = $(KERNEL_DIR)\include\arch\irc\$(ARCH_IRC)
37 SRC_PROC_DIR    = $(KERNEL_DIR)\source\arch\proc\$(ARCH_PROC)
38 SRC_PROC_CC_DIR = $(KERNEL_DIR)\source\arch\proc\$(ARCH_PROC)\$(ARCH_CC)
39 SRC_IRC_DIR     = $(KERNEL_DIR)\source\arch\irc\$(ARCH_IRC)
40 SRC_IRC_CC_DIR  = $(KERNEL_DIR)\source\arch\irc\$(ARCH_IRC)\$(ARCH_CC)
41
42
43 # %jp{コンフィギュレータ定義}
44 CFGRTR_DIR = $(TOP_DIR)\cfgrtr\build\msc
45 CFGRTR     = h4acfg-at91
46
47
48 # %jp{パス設定}
49 INC_DIRS = $(INC_DIRS) $(INC_PROC_DIR) $(INC_IRC_DIR)
50 SRC_DIRS = $(SRC_DIRS) $(SRC_PROC_DIR) $(SRC_PROC_DIR) $(SRC_PROC_ASM_DIR) $(SRC_IRC_DIR) $(SRC_IRC_ASM_DIR)
51
52
53
54 # %jp{オプションフラグ}
55 CFLAGS  = $(CFLAGS) --cpu=ARM7TDMI --apcs=inter --thumb
56 AFLAGS  = $(AFLAGS) --cpu=ARM7TDMI --apcs=inter --thumb
57 ARFLAGS = $(ARFLAGS)
58
59
60
61 # %jp{コンパイラ依存定義}%en{definitions of compiler dependence}
62 !include $(KERNEL_MAKINC_DIR)/armcc_d.inc
63
64 # %jp{ライブラリ生成共通定義読込み}
65 !include $(KERNEL_MAKINC_DIR)\maklib_d.inc
66
67
68
69 # %jp{オブジェクトファイル定義}
70 OBJS = $(OBJS) $(OBJS_DIR)\val_int.$(EXT_OBJ)
71 OBJS = $(OBJS) $(OBJS_DIR)\kini_irc.$(EXT_OBJ)
72 OBJS = $(OBJS) $(OBJS_DIR)\kexe_irc.$(EXT_OBJ)
73 OBJS = $(OBJS) $(OBJS_DIR)\ena_int.$(EXT_OBJ)
74 OBJS = $(OBJS) $(OBJS_DIR)\dis_int.$(EXT_OBJ)
75 OBJS = $(OBJS) $(OBJS_DIR)\vclr_int.$(EXT_OBJ)
76 OBJS = $(OBJS) $(OBJS_DIR)\kcre_ctx.$(EXT_OBJ)
77 OBJS = $(OBJS) $(OBJS_DIR)\kdis_int.$(EXT_OBJ)
78 OBJS = $(OBJS) $(OBJS_DIR)\kena_int.$(EXT_OBJ)
79 OBJS = $(OBJS) $(OBJS_DIR)\kirq_hdr.$(EXT_OBJ)
80 OBJS = $(OBJS) $(OBJS_DIR)\kfiq_hdr.$(EXT_OBJ)
81 OBJS = $(OBJS) $(OBJS_DIR)\krst_ctx.$(EXT_OBJ)
82 OBJS = $(OBJS) $(OBJS_DIR)\kswi_ctx.$(EXT_OBJ)
83 OBJS = $(OBJS) $(OBJS_DIR)\kwai_int.$(EXT_OBJ)
84
85
86
87 # %jp{ALL}%en{all}
88 all: mkdir_objs srcobjcp makelib_all
89         $(CMD_CD) $(CFGRTR_DIR)
90         $(MAKE) TARGET=$(CFGRTR) ARCH_PROC=$(ARCH_PROC) ARCH_IRC=$(ARCH_IRC)
91
92
93 # %jp{クリーン}%en{clean}
94 clean: makelib_clean
95         $(CMD_CD) $(CFGRTR_DIR)
96         $(MAKE) TARGET=$(CFGRTR) ARCH_PROC=$(ARCH_PROC) ARCH_IRC=$(ARCH_IRC) clean
97         $(CMD_CD) $(MAKEDIR)
98
99
100 # %jp{カーネル共通ソースの追加}%en{definitions of kernel source files}
101 !include $(KERNEL_MAKINC_DIR)\knlsrc.inc
102
103 # %jp{ライブラリ生成用ルール読込み}
104 !include $(KERNEL_MAKINC_DIR)\maklib_r.inc
105
106 # %jp{コンパイラ依存ルール}%en{rules of compiler dependence}
107 !include $(KERNEL_MAKINC_DIR)/armcc_r.inc
108
109 # %jp{カーネル依存関係読込み}%en{dependence}
110 !include $(KERNEL_MAKINC_DIR)/knldep.inc
111
112
113
114 # %jp{コピー}%en{source files copy}
115 srcobjcp:
116         $(CMD_CP) $(SRC_PROC_CC_DIR)\*.* $(OBJS_DIR)
117         $(CMD_CP) $(SRC_IRC_DIR)\*.*     $(OBJS_DIR)
118
119 #       $(CMD_CP) $(SRC_PROC_DIR)\*.*    $(OBJS_DIR)
120
121
122 $(OBJS_DIR)\val_int.c: $(SRC_PROC_DIR)\val_int.c
123         $(CMD_CP) $(SRC_PROC_DIR)\val_int.c $(OBJS_DIR)\
124
125
126 # %jp{依存関係}%en{dependence}
127 # $(OBJS_DIR)\val_int.o :       $(OBJS_DIR)\val_int.c
128 $(OBJS_DIR)\kini_irc.o  :       $(OBJS_DIR)\kini_irc.c
129 $(OBJS_DIR)\kexe_irc.o  :       $(OBJS_DIR)\kexe_irc.c
130 $(OBJS_DIR)\ena_int.o   :       $(OBJS_DIR)\ena_int.c
131 $(OBJS_DIR)\dis_int.o   :       $(OBJS_DIR)\dis_int.c
132 $(OBJS_DIR)\vclr_int.o  :       $(OBJS_DIR)\vclr_int.c
133 $(OBJS_DIR)\kcre_ctx.o  :       $(OBJS_DIR)\kcre_ctx.s
134 $(OBJS_DIR)\kdis_int.o  :       $(OBJS_DIR)\kdis_int.s
135 $(OBJS_DIR)\kena_int.o  :       $(OBJS_DIR)\kena_int.s
136 $(OBJS_DIR)\kirq_hdr.o  :       $(OBJS_DIR)\kirq_hdr.s
137 $(OBJS_DIR)\kfiq_hdr.o  :       $(OBJS_DIR)\kfiq_hdr.s
138 $(OBJS_DIR)\krst_ctx.o  :       $(OBJS_DIR)\krst_ctx.s
139 $(OBJS_DIR)\kswi_ctx.o  :       $(OBJS_DIR)\kswi_ctx.s
140 $(OBJS_DIR)\kwai_int.o  :       $(OBJS_DIR)\kwai_int.s
141
142
143
144 # end of file