1 | #
|
---|
2 | # TOPPERS ATK2
|
---|
3 | # Toyohashi Open Platform for Embedded Real-Time Systems
|
---|
4 | # Automotive Kernel Version 2
|
---|
5 | #
|
---|
6 | # Copyright (C) 2008-2015 by Center for Embedded Computing Systems
|
---|
7 | # Graduate School of Information Science, Nagoya Univ., JAPAN
|
---|
8 | # Copyright (C) 2011-2015 by FUJI SOFT INCORPORATED, JAPAN
|
---|
9 | # Copyright (C) 2011-2013 by Spansion LLC, USA
|
---|
10 | # Copyright (C) 2011-2015 by NEC Communication Systems, Ltd., JAPAN
|
---|
11 | # Copyright (C) 2011-2015 by Panasonic Advanced Technology Development Co., Ltd., JAPAN
|
---|
12 | # Copyright (C) 2011-2014 by Renesas Electronics Corporation, JAPAN
|
---|
13 | # Copyright (C) 2011-2015 by Sunny Giken Inc., JAPAN
|
---|
14 | # Copyright (C) 2011-2015 by TOSHIBA CORPORATION, JAPAN
|
---|
15 | # Copyright (C) 2011-2015 by Witz Corporation
|
---|
16 | # Copyright (C) 2014-2015 by AISIN COMCRUISE Co., Ltd., JAPAN
|
---|
17 | # Copyright (C) 2014-2015 by eSOL Co.,Ltd., JAPAN
|
---|
18 | # Copyright (C) 2014-2015 by SCSK Corporation, JAPAN
|
---|
19 | #
|
---|
20 | # ä¸è¨èä½æ¨©è
|
---|
21 | ã¯ï¼ä»¥ä¸ã®(1)ã(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§
|
---|
22 | # ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ã使ç¨ã»è¤è£½ã»æ¹
|
---|
23 | # å¤ã»åé
|
---|
24 | å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
|
---|
25 | # (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½
|
---|
26 | # 権表示ï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼
|
---|
27 | # ã¹ã³ã¼ãä¸ã«å«ã¾ãã¦ãããã¨ï¼
|
---|
28 | # (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
|
---|
29 | # ç¨ã§ããå½¢ã§åé
|
---|
30 | å¸ããå ´åã«ã¯ï¼åé
|
---|
31 | å¸ã«ä¼´ãããã¥ã¡ã³ãï¼å©ç¨
|
---|
32 | # è
|
---|
33 | ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨
|
---|
34 | # ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
|
---|
35 | # (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
|
---|
36 | # ç¨ã§ããªãå½¢ã§åé
|
---|
37 | å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã
|
---|
38 | # ã¨ï¼
|
---|
39 | # (a) åé
|
---|
40 | å¸ã«ä¼´ãããã¥ã¡ã³ãï¼å©ç¨è
|
---|
41 | ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è
|
---|
42 | # ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
|
---|
43 | # (b) åé
|
---|
44 | å¸ã®å½¢æ
|
---|
45 | ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSããã¸ã§ã¯ãã«
|
---|
46 | # å ±åãããã¨ï¼
|
---|
47 | # (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ
|
---|
48 | # 害ãããï¼ä¸è¨èä½æ¨©è
|
---|
49 | ããã³TOPPERSããã¸ã§ã¯ããå
|
---|
50 | 責ãããã¨ï¼
|
---|
51 | # ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç
|
---|
52 | # ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è
|
---|
53 | ããã³TOPPERSããã¸ã§ã¯ãã
|
---|
54 | # å
|
---|
55 | 責ãããã¨ï¼
|
---|
56 | #
|
---|
57 | # æ¬ã½ããã¦ã§ã¢ã¯ï¼AUTOSARï¼AUTomotive Open System ARchitectureï¼ä»
|
---|
58 | # æ§ã«åºã¥ãã¦ããï¼ä¸è¨ã®è¨±è«¾ã¯ï¼AUTOSARã®ç¥ç財ç£æ¨©ã許諾ãããã®ã§
|
---|
59 | # ã¯ãªãï¼AUTOSARã¯ï¼AUTOSARä»æ§ã«åºã¥ããã½ããã¦ã§ã¢ãåç¨ç®çã§å©
|
---|
60 | # ç¨ããè
|
---|
61 | ã«å¯¾ãã¦ï¼AUTOSARãã¼ããã¼ã«ãªããã¨ãæ±ãã¦ããï¼
|
---|
62 | #
|
---|
63 | # æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
|
---|
64 | ã
|
---|
65 | # ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç
|
---|
66 | # ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§
|
---|
67 | # ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ã
|
---|
68 | # ã®è²¬ä»»ãè² ããªãï¼
|
---|
69 | #
|
---|
70 | # $Id: Makefile.kernel 425 2015-12-07 08:06:19Z witz-itoyo $
|
---|
71 | #
|
---|
72 |
|
---|
73 | #
|
---|
74 | # ã«ã¼ãã«ã®ãã¡ã¤ã«æ§æã®å®ç¾©
|
---|
75 | #
|
---|
76 |
|
---|
77 | #
|
---|
78 | # 1ã¤ã®ã½ã¼ã¹ãã¡ã¤ã«ããè¤æ°ã®ãªãã¸ã§ã¯ããã¡ã¤ã«ãçæããããã«ä½
|
---|
79 | # æãããã½ã¼ã¹ãã¡ã¤ã«ã®ãªã¹ã
|
---|
80 | #
|
---|
81 | KERNEL_FCSRCS = counter_manage.c counter.c alarm.c osctl_manage.c osctl.c task_manage.c \
|
---|
82 | event.c resource.c interrupt_manage.c interrupt.c task.c scheduletable.c \
|
---|
83 | osap.c memory.c ioc_manage.c svc_table.c
|
---|
84 |
|
---|
85 | #
|
---|
86 | # åã½ã¼ã¹ãã¡ã¤ã«ããçæããããªãã¸ã§ã¯ããã¡ã¤ã«ã®ãªã¹ã
|
---|
87 | #
|
---|
88 | osctl = internal_call_errorhook.o call_posttaskhook.o call_pretaskhook.o init_stack_magic_region.o \
|
---|
89 | call_protectionhk_main.o internal_shutdownos.o \
|
---|
90 | internal_call_shtdwnhk.o
|
---|
91 |
|
---|
92 | osctl_manage = StartOS.o GetActiveApplicationMode.o ShutdownOS.o GetFaultyContext.o
|
---|
93 |
|
---|
94 |
|
---|
95 | task = task_initialize.o search_schedtsk.o make_runnable.o make_non_runnable.o \
|
---|
96 | make_active.o preempt.o suspend.o release_taskresources.o cancel_taskcounters.o exit_task.o \
|
---|
97 | remove_task_from_queue.o force_terminate_task.o force_term_osap_task.o move_schedtsk.o
|
---|
98 |
|
---|
99 | event = SetEvent.o ClearEvent.o GetEvent.o WaitEvent.o set_event_action.o
|
---|
100 |
|
---|
101 | task_manage = ActivateTask.o TerminateTask.o ChainTask.o Schedule.o GetTaskID.o \
|
---|
102 | GetTaskState.o activate_task_action.o
|
---|
103 |
|
---|
104 | resource = resource_initialize.o GetResource.o ReleaseResource.o
|
---|
105 |
|
---|
106 | counter = insert_cnt_expr_que.o delete_cnt_expr_que.o counter_initialize.o \
|
---|
107 | counter_terminate.o get_reltick.o get_abstick.o expire_process.o force_term_osap_counter.o
|
---|
108 |
|
---|
109 | counter_manage = IncrementCounter.o GetCounterValue.o GetElapsedValue.o notify_hardware_counter.o \
|
---|
110 | incr_counter_action.o incr_counter_process.o
|
---|
111 |
|
---|
112 | alarm = alarm_initialize.o alarm_expire.o GetAlarmBase.o GetAlarm.o SetRelAlarm.o SetAbsAlarm.o \
|
---|
113 | CancelAlarm.o force_term_osap_alarm.o
|
---|
114 |
|
---|
115 | interrupt = interrupt_initialize.o release_interrupts.o exit_isr2.o
|
---|
116 |
|
---|
117 | interrupt_manage = DisableAllInterrupts.o EnableAllInterrupts.o SuspendAllInterrupts.o \
|
---|
118 | ResumeAllInterrupts.o SuspendOSInterrupts.o ResumeOSInterrupts.o GetISRID.o \
|
---|
119 | DisableInterruptSource.o EnableInterruptSource.o
|
---|
120 |
|
---|
121 | scheduletable = schtbl_initialize.o StartScheduleTableRel.o StartScheduleTableAbs.o \
|
---|
122 | StopScheduleTable.o NextScheduleTable.o GetScheduleTableStatus.o \
|
---|
123 | schtbl_expire.o schtbl_expiry_process.o schtbl_head.o schtbl_exppoint_process.o schtbl_tail.o \
|
---|
124 | force_term_osap_schtbl.o
|
---|
125 |
|
---|
126 | osap = osap_initialize.o GetApplicationID.o GetApplicationState.o CallTrustedFunction.o CheckTaskAccess.o \
|
---|
127 | CheckISRAccess.o CheckAlarmAccess.o CheckResourceAccess.o CheckCounterAccess.o CheckScheduleTableAccess.o \
|
---|
128 | CheckTaskOwnership.o CheckISROwnership.o CheckAlarmOwnership.o CheckCounterOwnership.o CheckScheduleTableOwnership.o \
|
---|
129 | AllowAccess.o TerminateApplication.o force_term_osap.o
|
---|
130 |
|
---|
131 |
|
---|
132 | ioc_manage = ioc_initialize.o ioc_send_generic.o ioc_write_generic.o ioc_receive_generic.o \
|
---|
133 | ioc_read_generic.o ioc_empty_queue_generic.o
|
---|
134 |
|
---|
135 | memory = search_meminib.o check_address_stack.o check_osap_memory.o check_isr_memory.o CheckISRMemoryAccess.o \
|
---|
136 | check_task_memory.o CheckTaskMemoryAccess.o probe_memory_access.o probe_memory_write.o \
|
---|
137 | probe_memory_read.o probe_memory_read_write.o initialize_sections.o
|
---|
138 |
|
---|
139 | svc_table = svc_table.o
|
---|
140 |
|
---|
141 | #
|
---|
142 | # çæããããªãã¸ã§ã¯ããã¡ã¤ã«ã®ä¾åé¢ä¿ã®å®ç¾©
|
---|
143 | #
|
---|
144 | $(osctl) $(osctl:.o=.s) $(osctl:.o=.d): osctl.c
|
---|
145 | $(osctl_manage) $(osctl_manage:.o=.s) $(osctl_manage:.o=.d): osctl_manage.c
|
---|
146 | $(task) $(task:.o=.s) $(task:.o=.d): task.c
|
---|
147 | $(task_manage) $(task_manage:.o=.s) $(task_manage:.o=.d): task_manage.c
|
---|
148 | $(event) $(event:.o=.s) $(event:.o=.d): event.c
|
---|
149 | $(resource) $(resource:.o=.s) $(resource:.o=.d): resource.c
|
---|
150 | $(counter) $(counter:.o=.s) $(counter:.o=.d): counter.c
|
---|
151 | $(counter_manage) $(counter_manage:.o=.s) $(counter_manage:.o=.d): counter_manage.c
|
---|
152 | $(alarm) $(alarm:.o=.s) $(alarm:.o=.d): alarm.c
|
---|
153 | $(scheduletable) $(scheduletable:.o=.s) $(scheduletable:.o=.d): scheduletable.c
|
---|
154 | $(interrupt) $(interrupt:.o=.s) $(interrupt:.o=.d): interrupt.c
|
---|
155 | $(interrupt_manage) $(interrupt_manage:.o=.s) $(interrupt_manage:.o=.d): interrupt_manage.c
|
---|
156 | $(osap) $(osap:.o=.s) $(osap:.o=.d): osap.c
|
---|
157 | $(ioc_manage) $(ioc_manage:.o=.s) $(ioc_manage:.o=.d): ioc_manage.c
|
---|
158 | $(memory) $(memory:.o=.s) $(memory:.o=.d): memory.c
|
---|
159 | $(svc_table) $(svc_table:.o=.s) $(svc_table:.o=.d): svc_table.c
|
---|