3 # Toyohashi Open Platform for Embedded Real-Time Systems/
4 # Advanced Standard Profile Kernel
6 # Copyright (C) 2003 by Embedded and Real-Time Systems Laboratory
7 # Toyohashi Univ. of Technology, JAPAN
8 # Copyright (C) 2005-2010 by Embedded and Real-Time Systems Laboratory
9 # Graduate School of Information Science, Nagoya Univ., JAPAN
11 # 上記著作権者は,以下の(1)〜(4)の条件を満たす場合に限り,本ソフトウェ
12 # ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
13 # 変・再配布(以下,利用と呼ぶ)することを無償で許諾する.
14 # (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
15 # 権表示,この利用条件および下記の無保証規定が,そのままの形でソー
17 # (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
18 # 用できる形で再配布する場合には,再配布に伴うドキュメント(利用
19 # 者マニュアルなど)に,上記の著作権表示,この利用条件および下記
21 # (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
22 # 用できない形で再配布する場合には,次のいずれかの条件を満たすこ
24 # (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著
25 # 作権表示,この利用条件および下記の無保証規定を掲載すること.
26 # (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに
28 # (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
29 # 害からも,上記著作権者およびTOPPERSプロジェクトを免責すること.
30 # また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
31 # 由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを
34 # 本ソフトウェアは,無保証で提供されているものである.上記著作権者お
35 # よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
36 # に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
37 # アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
40 # @(#) $Id: Makefile.kernel 1717 2010-01-31 11:41:03Z ertl-hiro $
48 # 1つのソースファイルから複数のオブジェクトファイルを生成するように作
51 KERNEL_FCSRCS = startup.c task.c wait.c time_event.c \
52 task_manage.c task_refer.c task_sync.c task_except.c \
53 semaphore.c eventflag.c dataqueue.c pridataq.c mailbox.c \
54 mempfix.c time_manage.c cyclic.c alarm.c overrun.c \
55 sys_manage.c interrupt.c exception.c
58 # 各ソースファイルから生成されるオブジェクトファイルのリスト
60 startup = sta_ker.o ext_ker.o
62 task = tskini.o tsksched.o tskrun.o tsknrun.o \
63 tskdmt.o tskact.o tskpri.o tskrot.o tsktex.o
65 wait = waimake.o waicmp.o waitmo.o waitmook.o \
66 wairel.o wobjwai.o wobjwaitmo.o iniwque.o
68 time_event = tmeini.o tmeup.o tmedown.o tmeins.o tmedel.o tmeltim.o sigtim.o
70 task_manage = act_tsk.o iact_tsk.o can_act.o ext_tsk.o ter_tsk.o \
71 chg_pri.o get_pri.o get_inf.o
73 task_refer = ref_tsk.o
75 task_sync = slp_tsk.o tslp_tsk.o wup_tsk.o iwup_tsk.o can_wup.o \
76 rel_wai.o irel_wai.o sus_tsk.o rsm_tsk.o dly_tsk.o
78 task_except = ras_tex.o iras_tex.o dis_tex.o ena_tex.o sns_tex.o ref_tex.o
80 semaphore = semini.o sig_sem.o isig_sem.o \
81 wai_sem.o pol_sem.o twai_sem.o ini_sem.o ref_sem.o
83 eventflag = flgini.o flgcnd.o set_flg.o iset_flg.o clr_flg.o \
84 wai_flg.o pol_flg.o twai_flg.o ini_flg.o ref_flg.o
86 dataqueue = dtqini.o dtqenq.o dtqfenq.o dtqdeq.o dtqsnd.o dtqfsnd.o dtqrcv.o \
87 snd_dtq.o psnd_dtq.o ipsnd_dtq.o tsnd_dtq.o fsnd_dtq.o ifsnd_dtq.o \
88 rcv_dtq.o prcv_dtq.o trcv_dtq.o ini_dtq.o ref_dtq.o
90 pridataq = pdqini.o pdqenq.o pdqdeq.o pdqsnd.o pdqrcv.o \
91 snd_pdq.o psnd_pdq.o ipsnd_pdq.o tsnd_pdq.o \
92 rcv_pdq.o prcv_pdq.o trcv_pdq.o ini_pdq.o ref_pdq.o
94 mailbox = mbxini.o snd_mbx.o rcv_mbx.o prcv_mbx.o trcv_mbx.o \
97 mempfix = mpfini.o mpfget.o get_mpf.o pget_mpf.o tget_mpf.o \
98 rel_mpf.o ini_mpf.o ref_mpf.o
100 time_manage = get_tim.o get_utm.o
102 cyclic = cycini.o sta_cyc.o stp_cyc.o ref_cyc.o cyccal.o
104 alarm = almini.o sta_alm.o ista_alm.o stp_alm.o istp_alm.o ref_alm.o almcal.o
106 overrun = ovrini.o ovrsta.o ovrstp.o sta_ovr.o ista_ovr.o \
107 stp_ovr.o istp_ovr.o ref_ovr.o ovrcal.o
109 sys_manage = rot_rdq.o irot_rdq.o get_tid.o iget_tid.o \
110 loc_cpu.o iloc_cpu.o unl_cpu.o iunl_cpu.o dis_dsp.o ena_dsp.o \
111 sns_ctx.o sns_loc.o sns_dsp.o sns_dpn.o sns_ker.o
113 interrupt = intini.o dis_int.o ena_int.o chg_ipm.o get_ipm.o
115 exception = excini.o xsns_dpn.o xsns_xpn.o
118 # 生成されるオブジェクトファイルの依存関係の定義
120 $(startup) $(startup:.o=.s) $(startup:.o=.d): startup.c
121 $(task) $(task:.o=.s) $(task:.o=.d): task.c
122 $(wait) $(wait:.o=.s) $(wait:.o=.d): wait.c
123 $(time_event) $(time_event:.o=.s) $(time_event:.o=.d): time_event.c
124 $(task_manage) $(task_manage:.o=.s) $(task_manage:.o=.d): task_manage.c
125 $(task_refer) $(task_refer:.o=.s) $(task_refer:.o=.d): task_refer.c
126 $(task_sync) $(task_sync:.o=.s) $(task_sync:.o=.d): task_sync.c
127 $(task_except) $(task_except:.o=.s) $(task_except:.o=.d): task_except.c
128 $(semaphore) $(semaphore:.o=.s) $(semaphore:.o=.d): semaphore.c
129 $(eventflag) $(eventflag:.o=.s) $(eventflag:.o=.d): eventflag.c
130 $(dataqueue) $(dataqueue:.o=.s) $(dataqueue:.o=.d): dataqueue.c
131 $(pridataq) $(pridataq:.o=.s) $(pridataq:.o=.d): pridataq.c
132 $(mailbox) $(mailbox:.o=.s) $(mailbox:.o=.d): mailbox.c
133 $(mempfix) $(mempfix:.o=.s) $(mempfix:.o=.d): mempfix.c
134 $(time_manage) $(time_manage:.o=.s) $(time_manage:.o=.d): time_manage.c
135 $(cyclic) $(cyclic:.o=.s) $(cyclic:.o=.d): cyclic.c
136 $(alarm) $(alarm:.o=.s) $(alarm:.o=.d): alarm.c
137 $(overrun) $(overrun:.o=.s) $(overrun:.o=.d): overrun.c
138 $(sys_manage) $(sys_manage:.o=.s) $(sys_manage:.o=.d): sys_manage.c
139 $(interrupt) $(interrupt:.o=.s) $(interrupt:.o=.d): interrupt.c
140 $(exception) $(exception:.o=.s) $(exception:.o=.d): exception.c