OSDN Git Service

(none)
[hos/hos-v4a.git] / kernel / build / common / nmake / shc_r.inc
1 # ----------------------------------------------------------------------------
2 #  Hyper Operating System V4 Advance
3 #
4 #  Copyright (C) 1998-2006 by Project HOS
5 #  http://sourceforge.jp/projects/hos/
6 # ----------------------------------------------------------------------------
7
8
9
10
11 # --------------------------------------
12 #  %jp{オプション展開}%en{options}
13 # --------------------------------------
14
15 # %jp{C言語インクルードパスオプションの定義}%en{C-compiler include path}
16 !ifdef INC_DIRS
17 INC_DIRS = $(INC_DIRS:  = )
18 INC_DIRS = $(INC_DIRS:  = )
19 INC_DIRS = $(INC_DIRS:  = )
20 INC_DIRS = $(INC_DIRS:  = )
21 INC_DIRS = @$(INC_DIRS)@
22 INC_DIRS = $(INC_DIRS:@ =)
23 INC_DIRS = $(INC_DIRS: @=)
24 INC_DIRS = $(INC_DIRS:@=)
25
26 CFLAGS_INC = -I=$(INC_DIRS: =,)
27 !endif
28
29
30 # %jp{C言語マクロ定義オプションの定義}%en{C-compiler define macros}
31 !ifdef C_DEFS
32 C_DEFS = $(C_DEFS:      = )
33 C_DEFS = $(C_DEFS:  = )
34 C_DEFS = $(C_DEFS:  = )
35 C_DEFS = $(C_DEFS:  = )
36 C_DEFS = @$(C_DEFS)@
37 C_DEFS = $(C_DEFS:@ =)
38 C_DEFS = $(C_DEFS: @=)
39 C_DEFS = $(C_DEFS:@=)
40
41 CFLAGS_DEF = -DEF=$(C_DEFS: =,)
42 !endif
43
44
45 # %jp{アセンブリ言語インクルードパスオプションの定義}%en{Assembler include path}
46 !ifdef INC_DIRS
47 AFLAGS_INC = -I=$(INC_DIRS: =,)
48 !endif
49
50
51 # %jp{アセンブリ言語マクロ定義オプションの定義}%en{Assembler define macros}
52 !ifdef A_DEFS
53 A_DEFS = $(A_DEFS:      = )
54 A_DEFS = $(A_DEFS:  = )
55 A_DEFS = $(A_DEFS:  = )
56 A_DEFS = $(A_DEFS:  = )
57 A_DEFS = @$(A_DEFS)@
58 A_DEFS = $(A_DEFS:@ =)
59 A_DEFS = $(A_DEFS: @=)
60 A_DEFS = $(A_DEFS:@=)
61
62 AFLAGS_DEF = -DEF=$(A_DEFS: =,)
63 !endif
64
65
66 !ifdef OBJS
67 OBJS = $(OBJS:  = )
68 OBJS  = $(OBJS:  = )
69 OBJS = $(OBJS:  = )
70 OBJS  = $(OBJS:  = )
71 OBJS = @$(OBJS)@
72 OBJS  = $(OBJS:@ =)
73 OBJS  = $(OBJS: @=)
74 OBJS  = $(OBJS:@=)
75 !endif
76
77
78 # %jp{オプション統合}{Options marged}
79 CFLAGS = $(CFLAGS) $(CFLAGS_INC) $(CFLAGS_DEF)
80 AFLAGS = $(AFLAGS) $(AFLAGS_INC)
81
82
83 !ifdef LIBS
84 LIBS = $(LIBS:  = )
85 LIBS  = $(LIBS:  = )
86 LIBS = $(LIBS:  = )
87 LIBS  = $(LIBS:  = )
88 LIBS = @$(LIBS)@
89 LIBS  = $(LIBS:@ =)
90 LIBS  = $(LIBS: @=)
91 LIBS  = $(LIBS:@=)
92 !endif
93
94
95 # --------------------------------------
96 #  %jpルール定義}%en{Rules}
97 # --------------------------------------
98
99 # %jp{実行ファイル生成}%en{Executable file}
100 !ifdef TARGET_EXE
101 $(TARGET_EXE): $(OBJS) $(LIBS)
102         -$(CMD_RM) $(TARGET_EXE)
103         $(CMD_LINK) -SU=<<
104 -rom D=R
105 -list $(TARGET).map
106 -SHow SY,R,X
107 -Input=$(OBJS: =,)
108 -LIB=$(LIBS: =,)
109 -start=VECTTBL/$(SECTION_VECT),P,C,C$$BSEC,C$$DSEC,D/$(SECTION_ROM),B,R,S/$(SECTION_RAM)
110 -output=$(TARGET_EXE)
111 <<
112 !endif
113
114
115 # %jp{モトローラS形式ファイル生成}%en{Motorola S format file}
116 !ifdef TARGET_MOT
117 $(TARGET_MOT): $(TARGET_EXE)
118         $(CMD_OBJCNV) -SU=<<
119 -input=$(TARGET_EXE)
120 -form stype
121 -output $(TARGET_MOT)
122 <<
123 !endif
124
125
126 # %jp{ライブラリ生成}%en{Library}
127 !ifdef TARGET_LIB
128 $(TARGET_LIB): $(OBJS)
129         -$(CMD_RM) $(TARGET_LIB)
130         $(CMD_LIBR) -SUbcommand=<<
131 -Input=$(OBJS: =,)
132 -OUtput=$(TARGET_LIB)
133 -FOrm=Library
134 <<
135 !endif
136
137
138 # %jp{Cコンパイル}%en{C Compile}
139 {$(OBJS_DIR)}.c{$(OBJS_DIR)}.obj :
140         $(CMD_CC) $(CFLAGS) $< -OB=$@
141
142
143 # %jp{アセンブル}%en{Assemble}
144 {$(OBJS_DIR)}.src{$(OBJS_DIR)}.obj :
145         $(CMD_ASM) $(AFLAGS) $< -OB=$@
146
147
148
149 # end of file