source: rubycfg_ssp/trunk/ssp_ruby.patch

Last change on this file was 410, checked in by nmir-saito, 4 years ago

Move contents of ssp_aarch64.patch in ssp_aarch64 to ssp_ruby.patch

  • Property svn:mime-type set to text/plain; charset=utf-8
File size: 11.9 KB
Line 
1diff -x build -uprN ssp/arch/arm_m_gcc/Makefile.prc ssp_patched2/arch/arm_m_gcc/Makefile.prc
2--- ssp/arch/arm_m_gcc/Makefile.prc 2014-03-18 09:28:35.000000000 +0900
3+++ ssp_patched2/arch/arm_m_gcc/Makefile.prc 2020-03-12 10:01:45.921186240 +0900
4@@ -18,17 +18,17 @@ LIBS := $(LIBS) -lgcc
5 #
6 # カーネルに関する定義
7 #
8-KERNEL_DIR := $(KERNEL_DIR) $(SRCDIR)/arch/$(PRC)_$(TOOL)
9+KERNEL_DIRS := $(KERNEL_DIRS) $(SRCDIR)/arch/$(PRC)_$(TOOL)
10 KERNEL_ASMOBJS := $(KERNEL_ASMOBJS) prc_support.o
11 KERNEL_COBJS := $(KERNEL_COBJS) prc_config.o prc_timer.o
12
13 #
14 # コンフィギュレータ関係の変数の定義
15 #
16-CFG_TABS := $(CFG_TABS) --cfg1-def-table $(SRCDIR)/arch/$(PRC)_$(TOOL)/prc_def.csv
17+CFG_TABS := $(CFG_TABS) --symval-table $(SRCDIR)/arch/$(PRC)_$(TOOL)/prc_sym.def
18
19 #
20 # 依存関係の定義
21 #
22-cfg1_out.c: $(SRCDIR)/arch/$(PRC)_$(TOOL)/prc_def.csv
23+cfg1_out.c: $(SRCDIR)/arch/$(PRC)_$(TOOL)/prc_sym.def
24 kernel_cfg.timestamp: $(SRCDIR)/arch/$(PRC)_$(TOOL)/prc.tf
25diff -x build -uprN ssp/doc/porting.txt ssp_patched2/doc/porting.txt
26--- ssp/doc/porting.txt 2015-05-19 18:45:26.000000000 +0900
27+++ ssp_patched2/doc/porting.txt 2020-03-12 11:12:42.701293992 +0900
28@@ -408,7 +408,7 @@ KERNEL_CFLAGS := $(KERNEL_CFLAGS) -fno-s
29 また,アセンブリ言語レベルの識別名が,C言語レベルの識別名のå…
30ˆé ­ã«"_"が
31 付いたものになる場合には,CDEFSに-DTOPPERS_LABEL_ASMを追加する.
32
33-(2-4-6) SYSSVC_DIR システムサービスのソースが置かれたディレクトリ
34+(2-4-6) SYSSVC_DIRS システムサービスのソースが置かれたディレクトリ
35 (2-4-7) SYSSVC_ASMOBJS アセンブリ言語で記述されたシステムサービスの
36 オブジェクト
37 (2-4-8) SYSSVC_COBJS C言語で記述されたシステムサービスのオブジェクト
38@@ -421,7 +421,7 @@ オブジェクトファイルのリスã
39 イルオプション,その構成に必
40要なライブラリリンク指定を追加する場合には,
41 上に示した変数に定義する.
42
43-(2-4-11) KERNEL_DIR カーネルのソースが置かれたディレクトリ
44+(2-4-11) KERNEL_DIRS カーネルのソースが置かれたディレクトリ
45 (2-4-12) KERNEL_ASMOBJS アセンブリ言語で記述されたカーネルのオブジェクト
46 (2-4-13) KERNEL_COBJS C言語で記述されたカーネルのオブジェクト
47 (2-4-14) KERNEL_CFLAGS カーネルに対するコンパイルオプション
48@@ -450,7 +450,7 @@ ほとんどの場合に,ターゲッã
49 下の記述を含める必
50要がある.
51
52 ----------------------------------------
53-CFG_TABS := $(CFG_TABS) --cfg1-def-table $(TARGETDIR)/target_def.csv
54+CFG_TABS := $(CFG_TABS) --symval-table $(TARGETDIR)/target_sym.def
55 ----------------------------------------
56
57 (2-4-16) CFG1_OUT_LDFLAGS cfg1_out.cに対するリンクオプション
58@@ -595,9 +595,9 @@ ほとんどの場合に,ターゲッã
59 下の記述を含める必
60要がある.
61
62 ----------------------------------------
63-cfg1_out.c: $(TARGETDIR)/target_def.csv
64-kernel_cfg.timestamp: $(TARGETDIR)/target.tf
65-$(OBJFILE): $(TARGETDIR)/target_check.tf
66+cfg1_out.c: $(TARGETDIR)/target_sym.def
67+kernel_cfg.timestamp: $(TARGETDIR)/target_kernel.trb
68+check.timestamp: $(TARGETDIR)/target_check.trb
69 ----------------------------------------
70
71 2.7 その他の設定
72diff -x build -uprN ssp/sample/Makefile ssp_patched2/sample/Makefile
73--- ssp/sample/Makefile 2016-04-03 23:11:07.000000000 +0900
74+++ ssp_patched2/sample/Makefile 2020-03-12 11:12:42.701293992 +0900
75@@ -1,5 +1,5 @@
76 #
77-# TOPPERS/ASP Kernel
78+# TOPPERS/SSP Kernel
79 # Toyohashi Open Platform for Embedded Real-Time Systems/
80 # Advanced Standard Profile Kernel
81 #
82@@ -7,6 +7,8 @@
83 # Toyohashi Univ. of Technology, JAPAN
84 # Copyright (C) 2006-2016 by Embedded and Real-Time Systems Laboratory
85 # Graduate School of Information Science, Nagoya Univ., JAPAN
86+# Copyright (C) 2017 by Naoki Saito
87+# Nagoya Municipal Industrial Research Institute, JAPAN
88 #
89 # 上記著作権者
90は,以下の(1)〜(4)の条件を満たす場合に限り,本ソフトウェ
91 # ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
92@@ -108,7 +110,7 @@ TECSGEN = @(TECSGEN)
93 #
94 # オブジェクトファイル名の定義
95 #
96-OBJNAME = asp
97+OBJNAME = ssp
98 ifdef OBJEXT
99 OBJFILE = $(OBJNAME).$(OBJEXT)
100 CFG1_OUT = cfg1_out.$(OBJEXT)
101@@ -163,7 +165,7 @@ ifdef OMIT_TECS
102 CDEFS := -DTOPPERS_OMIT_TECS $(CDEFS)
103 endif
104 CDEFS := $(CDEFS) @(CDEFS)
105-INCLUDES := -I. -I$(SRCDIR)/include $(INCLUDES) -I$(SRCDIR)
106+INCLUDES := -I. -I$(SRCDIR)/include -I$(SRCDIR)/arch $(INCLUDES) -I$(SRCDIR)
107 LDFLAGS := $(LDFLAGS) @(LDFLAGS)
108 LIBS := $(LIBS) $(CXXLIBS)
109 CFLAGS = $(COPTS) $(CDEFS) $(INCLUDES)
110@@ -184,7 +186,7 @@ ifdef USE_CXX
111 else
112 APPL_COBJS := @(APPLOBJS)
113 endif
114-APPL_COBJS := $(APPL_COBJS) log_output.o vasyslog.o t_perror.o strerror.o
115+APPL_COBJS := $(APPL_COBJS) log_output.o vasyslog.o
116 APPL_CFLAGS := $(APPL_CFLAGS)
117 ifdef APPLDIRS
118 INCLUDES := $(INCLUDES) $(foreach dir,$(APPLDIRS),-I$(dir))
119@@ -197,11 +199,18 @@ SYSSVC_DIRS := $(TECSGENDIR) $(SRCDIR)/t
120 $(SYSSVC_DIRS) $(SRCDIR)/syssvc
121 SYSSVC_ASMOBJS := $(SYSSVC_ASMOBJS)
122 SYSSVC_COBJS := $(INIT_TECS_COBJ) $(TECS_COBJS) $(SYSSVC_COBJS) \
123- @(SYSSVCOBJS) $(CXXRTS)
124+ @(SYSSVCOBJS) $(CXXRTS) banner.o serial.o syslog.o logtask.o
125 SYSSVC_CFLAGS := $(SYSSVC_CFLAGS)
126 INCLUDES := $(INCLUDES) -I$(TECSGENDIR) -I$(SRCDIR)/tecs_kernel
127
128 #
129+# 拡張パッケージに関する定義
130+#
131+
132+EXTPKG_DIR := $(EXTPKG_DIR) $(SRCDIR)/extension
133+
134+
135+#
136 # ターゲットファイル
137 #
138 .PHONY: all
139@@ -219,17 +228,6 @@ endif
140 ##### 以下は編集しないこと #####
141
142 #
143-# コンフィギュレータに関する定義
144-#
145-CFG_TABS := --api-table $(SRCDIR)/kernel/kernel_api.def \
146- --symval-table $(SRCDIR)/kernel/kernel_sym.def $(CFG_TABS)
147-CFG_ASMOBJS := $(CFG_ASMOBJS)
148-CFG_COBJS := kernel_cfg.o $(CFG_COBJS)
149-CFG_OBJS := $(CFG_ASMOBJS) $(CFG_COBJS)
150-CFG2_OUT_SRCS := kernel_cfg.h kernel_cfg.c $(CFG2_OUT_SRCS)
151-CFG_CFLAGS := -DTOPPERS_CB_TYPE_ONLY $(CFG_CFLAGS)
152-
153-#
154 # カーネルに関する定義
155 #
156 # KERNEL_ASMOBJS: カーネルライブラリに含める,ソースがアセンブリ言語の
157@@ -244,7 +242,7 @@ CFG_CFLAGS := -DTOPPERS_CB_TYPE_ONLY $(C
158 KERNEL_DIRS := $(KERNEL_DIRS) $(SRCDIR)/kernel
159 KERNEL_ASMOBJS := $(KERNEL_ASMOBJS)
160 KERNEL_COBJS := $(KERNEL_COBJS)
161-KERNEL_CFLAGS := $(KERNEL_CFLAGS) -I$(SRCDIR)/kernel
162+KERNEL_CFLAGS := $(KERNEL_CFLAGS) -I$(SRCDIR)/kernel -I$(EXTPKG_DIR)
163
164 #
165 # カーネルのファイル構成の定義
166@@ -258,14 +256,6 @@ else
167 KERNEL_COBJS := $(KERNEL_COBJS) \
168 $(foreach file,$(KERNEL_FCSRCS),$(file:.c=.o))
169 endif
170-ifdef OMIT_OFFSET_H
171- OFFSET_H =
172-else
173- OFFSET_H = offset.h
174-endif
175-ifndef TARGET_OFFSET_TRB
176- TARGET_OFFSET_TRB := $(TARGETDIR)/target_offset.trb
177-endif
178 ifndef TARGET_KERNEL_TRB
179 TARGET_KERNEL_TRB := $(TARGETDIR)/target_kernel.trb
180 endif
181@@ -277,12 +267,24 @@ ifndef TARGET_KERNEL_CFG
182 endif
183
184 #
185+# コンフィギュレータに関する定義
186+#
187+CFG_TABS := --api-table $(SRCDIR)/kernel/kernel_api.def \
188+ --symval-table $(SRCDIR)/kernel/kernel_sym.def \
189+ --symval-table $(SRCDIR)/syssvc/syssvc_sym.def $(CFG_TABS)
190+CFG_ASMOBJS := $(CFG_ASMOBJS)
191+CFG_COBJS := kernel_cfg.o $(CFG_COBJS)
192+CFG_OBJS := $(CFG_ASMOBJS) $(CFG_COBJS)
193+CFG2_OUT_SRCS := kernel_cfg.h kernel_cfg.c $(CFG2_OUT_SRCS)
194+CFG_CFLAGS := -DTOPPERS_CB_TYPE_ONLY $(SYSSVC_CFLAGS) $(KERNEL_CFLAGS) $(CFG_CFLAGS)
195+
196+#
197 # ソースファイルのあるディレクトリに関する定義
198 #
199-vpath %.c $(KERNEL_DIRS) $(SYSSVC_DIRS) $(APPL_DIRS)
200-vpath %.S $(KERNEL_DIRS) $(SYSSVC_DIRS) $(APPL_DIRS)
201-vpath %.cfg $(APPL_DIRS)
202-vpath %.cdl $(APPL_DIRS)
203+vpath %.c $(KERNEL_DIRS) $(SYSSVC_DIRS) $(APPL_DIRS) $(EXTPKG_DIR)
204+vpath %.S $(KERNEL_DIRS) $(SYSSVC_DIRS) $(APPL_DIRS) $(EXTPKG_DIR)
205+vpath %.cfg $(APPL_DIRS) $(EXTPKG_DIR)
206+vpath %.cdl $(APPL_DIRS) $(EXTPKG_DIR)
207
208 #
209 # コンパイルのための変数の定義
210@@ -330,7 +332,7 @@ $(TECSGEN_TIMESTAMP): $(APPL_CDL) $(TECS
211 #
212 cfg1_out.c cfg1_out.db: cfg1_out.timestamp ;
213 cfg1_out.timestamp: $(APPL_CFG) $(TECSGEN_TIMESTAMP)
214- $(CFG) --pass 1 --kernel asp $(INCLUDES) $(CFG_TABS) \
215+ $(CFG) --pass 1 --kernel ssp $(INCLUDES) $(CFG_TABS) \
216 -M $(DEPDIR)/cfg1_out_c.d $(TARGET_KERNEL_CFG) $<
217
218 $(CFG1_OUT): $(START_OBJS) cfg1_out.o $(END_OBJS) $(HIDDEN_OBJS)
219@@ -345,14 +347,14 @@ cfg1_out.srec: $(CFG1_OUT)
220
221 $(CFG2_OUT_SRCS) cfg2_out.db: kernel_cfg.timestamp ;
222 kernel_cfg.timestamp: cfg1_out.db cfg1_out.syms cfg1_out.srec
223- $(CFG) --pass 2 --kernel asp $(INCLUDES) -T $(TARGET_KERNEL_TRB)
224+ $(CFG) --pass 2 --kernel ssp $(INCLUDES) -T $(TARGET_KERNEL_TRB)
225
226 #
227 # オフセットファイル(offset.h)の生成規則
228 #
229 $(OFFSET_H): offset.timestamp ;
230 offset.timestamp: cfg1_out.db cfg1_out.syms cfg1_out.srec
231- $(CFG) --pass 2 -O --kernel asp $(INCLUDES) -T $(TARGET_OFFSET_TRB) \
232+ $(CFG) --pass 2 -O --kernel ssp $(INCLUDES) -T $(TARGET_OFFSET_TRB) \
233 --rom-symbol cfg1_out.syms --rom-image cfg1_out.srec
234
235 #
236@@ -400,7 +402,7 @@ $(OBJNAME).srec: $(OBJFILE)
237 .PHONY: check
238 check: check.timestamp ;
239 check.timestamp: cfg2_out.db $(OBJNAME).syms $(OBJNAME).srec
240- $(CFG) --pass 3 --kernel asp -O $(INCLUDES) -T $(TARGET_CHECK_TRB) \
241+ $(CFG) --pass 3 --kernel ssp -O $(INCLUDES) -T $(TARGET_CHECK_TRB) \
242 --rom-symbol $(OBJNAME).syms --rom-image $(OBJNAME).srec
243 @echo "configuration check passed"
244
245diff -x build -uprN ssp/sample/sample1.cfg ssp_patched2/sample/sample1.cfg
246--- ssp/sample/sample1.cfg 2014-03-18 09:28:35.000000000 +0900
247+++ ssp_patched2/sample/sample1.cfg 2020-03-12 10:01:45.921186240 +0900
248@@ -4,7 +4,6 @@
249
250 #include "sample1.h"
251
252-INCLUDE("target_timer.cfg");
253 INCLUDE("syssvc/serial.cfg");
254 INCLUDE("syssvc/banner.cfg");
255 INCLUDE("syssvc/syslog.cfg");
256diff -x build -uprN ssp/target/cq_frk_fm3_gcc/Makefile.target ssp_patched2/target/cq_frk_fm3_gcc/Makefile.target
257--- ssp/target/cq_frk_fm3_gcc/Makefile.target 2014-05-08 11:47:23.000000000 +0900
258+++ ssp_patched2/target/cq_frk_fm3_gcc/Makefile.target 2020-03-12 10:01:45.921186240 +0900
259@@ -1,6 +1,7 @@
260 #
261 # Makefile のターゲット依存部(CQ-FRM-FM3用)
262 #
263+OMIT_OFFSET_H = true
264
265 #
266 # ボード名,プロセッサ名,開発環境名の定義
267@@ -39,7 +40,7 @@ COPTS := $(COPTS) -mcpu=cortex-m3 -mthum
268 #
269 # カーネルに関する定義
270 #
271-KERNEL_DIR := $(KERNEL_DIR) $(TARGETDIR)
272+KERNEL_DIRS := $(KERNEL_DIRS) $(TARGETDIR)
273 KERNEL_ASMOBJS := $(KERNEL_ASMOBJS) target_support.o
274 KERNEL_COBJS := $(KERNEL_COBJS) target_config.o target_serial.o
275 KERNEL_CFLAGS := $(KERNEL_CFLAGS) -fno-strict-aliasing -mcpu=cortex-m3 -mthumb
276@@ -47,21 +48,21 @@ KERNEL_CFLAGS := $(KERNEL_CFLAGS) -fno-s
277 #
278 # システムサービスに関する定義
279 #
280-SYSSVC_DIR := $(SYSSVC_DIR)
281+SYSSVC_DIRS := $(SYSSVC_DIRS)
282 SYSSVC_COBJS := $(SYSSVC_COBJS)
283 SYSSVC_CFLAGS := $(SYSSVC_CFLAGS) -mcpu=cortex-m3 -mthumb
284
285 #
286 # コンフィギュレータ関係の変数の定義
287 #
288-CFG_TABS := $(CFG_TABS) --cfg1-def-table $(TARGETDIR)/target_def.csv
289+CFG_TABS := $(CFG_TABS)
290
291 #
292 # トレースログに関する設定
293 #
294 ifeq ($(ENABLE_TRACE),true)
295 COPTS := $(COPTS) -DTOPPERS_ENABLE_TRACE
296- KERNEL_DIR := $(KERNEL_DIR) $(SRCDIR)/arch/logtrace
297+ KERNEL_DIRS := $(KERNEL_DIRS) $(SRCDIR)/arch/logtrace
298 KERNEL_COBJS := $(KERNEL_COBJS) trace_config.o trace_dump.o
299 endif
300
301@@ -95,18 +96,13 @@ HIDDEN_OBJS = start.o
302 $(HIDDEN_OBJS): %.o: %.S
303 $(CC) -c $(CFLAGS) $(KERNEL_CFLAGS) $<
304
305-$(HIDDEN_OBJS:.o=.d): %.d: %.S
306- @$(PERL) $(SRCDIR)/utils/makedep -C $(CC) \
307- -O "$(CFLAGS) $(KERNEL_CFLAGS)" $< >> Makefile.depend
308-
309 LDFLAGS := -nostdlib $(LDFLAGS) --entry _start
310
311 #
312 # 依存関係の定義
313 #
314-cfg1_out.c: $(TARGETDIR)/target_def.csv
315-kernel_cfg.timestamp: $(TARGETDIR)/target.tf
316-$(OBJFILE): $(TARGETDIR)/target_check.tf
317+kernel_cfg.timestamp: $(TARGETDIR)/target_kernel.trb
318+check.timestamp: $(TARGETDIR)/target_check.trb
319
320 #
321 # プロセッサ依存部のインクルード
Note: See TracBrowser for help on using the repository browser.