source: atk2-sc3_fl850f1l/arch/v850_ghs/Makefile.prc@ 117

Last change on this file since 117 was 117, checked in by ertl-ishikawa, 9 years ago

ATK2-SC3 1.3.2 FL850F1L(RH850F1L)依存部(GCC/GHS/CCRH)を追加

File size: 6.2 KB
Line 
1#
2# TOPPERS ATK2
3# Toyohashi Open Platform for Embedded Real-Time Systems
4# Automotive Kernel Version 2
5#
6# Copyright (C) 2012-2014 by Center for Embedded Computing Systems
7# Graduate School of Information Science, Nagoya Univ., JAPAN
8# Copyright (C) 2012-2013 by FUJISOFT INCORPORATED, JAPAN
9# Copyright (C) 2012-2013 by FUJITSU VLSI LIMITED, JAPAN
10# Copyright (C) 2012-2013 by NEC Communication Systems, Ltd., JAPAN
11# Copyright (C) 2012-2013 by Panasonic Advanced Technology Development Co., Ltd., JAPAN
12# Copyright (C) 2012-2013 by Renesas Electronics Corporation, JAPAN
13# Copyright (C) 2012-2013 by Sunny Giken Inc., JAPAN
14# Copyright (C) 2012-2013 by TOSHIBA CORPORATION, JAPAN
15# Copyright (C) 2012-2013 by Witz Corporation, JAPAN
16# Copyright (C) 2013 by Embedded and Real-Time Systems Laboratory
17# Graduate School of Information Science, Nagoya Univ., JAPAN
18#
19# 上記著作権者は,以下の(1)〜(4)の条件を満たす場合に限り,本ソフトウェ
20# ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
21# 変・再配布(以下,利用と呼ぶ)することを無償で許諾する.
22# (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
23# 権表示,この利用条件および下記の無保証規定が,そのままの形でソー
24# スコード中に含まれていること.
25# (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
26# 用できる形で再配布する場合には,再配布に伴うドキュメント(利用
27# 者マニュアルなど)に,上記の著作権表示,この利用条件および下記
28# の無保証規定を掲載すること.
29# (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
30# 用できない形で再配布する場合には,次のいずれかの条件を満たすこ
31# と.
32# (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著
33# 作権表示,この利用条件および下記の無保証規定を掲載すること.
34# (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに
35# 報告すること.
36# (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
37# 害からも,上記著作権者およびTOPPERSプロジェクトを免責すること.
38# また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
39# 由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを
40# 免責すること.
41#
42# 本ソフトウェアは,AUTOSAR(AUTomotive Open System ARchitecture)仕
43# 様に基づいている.上記の許諾は,AUTOSARの知的財産権を許諾するもので
44# はない.AUTOSARは,AUTOSAR仕様に基づいたソフトウェアを商用目的で利
45# 用する者に対して,AUTOSARパートナーになることを求めている.
46#
47# 本ソフトウェアは,無保証で提供されているものである.上記著作権者お
48# よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
49# に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
50# アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
51# の責任を負わない.
52#
53# $Id: Makefile.prc 182 2015-06-24 07:14:37Z t_ishikawa $
54#
55
56#
57# Makefile のプロセッサ依存部(V850用)
58#
59
60#
61# プロセッサ名,開発環境名の定義
62#
63PRC = v850
64TOOL = ghs
65
66#
67# プロセッサ依存部ディレクトリ名の定義
68#
69PRCDIR = $(SRCDIR)/arch/$(PRC)_$(TOOL)
70PRCDIR_GCC = $(SRCDIR)/arch/$(PRC)_gcc
71
72#
73# コンパイルオプション
74#
75INCLUDES := $(INCLUDES) -I$(PRCDIR) -I$(PRCDIR_GCC) -I$(SRCDIR)/arch/$(TOOL)
76COPTS := $(COPTS) -ansi -preprocess_assembly_files \
77 -srec -kanji=euc -noobj \
78 -no_callt \
79 -prepare_dispose \
80 -registermode=32 \
81 -keeptempfiles \
82 --no_commons \
83 -dual_debug -G\
84 --no_slash_comment \
85 -sda=all \
86 -reserve_r2
87
88LDFLAGS := $(LDFLAGS) -Wl,-append
89
90#
91# アーキテクチャの切り替え
92#
93ifeq ($(ARCH),V850E2V3)
94 COPTS := $(COPTS) -cpu=v850e2v3
95 CDEFS := $(CDEFS) -D__v850e2v3__
96 KERNEL_ASMOBJS := $(KERNEL_ASMOBJS) Os_Lcfg_asm.o
97endif
98ifeq ($(ARCH),V850E3V5)
99 COPTS := $(COPTS) -cpu=v850e3v5
100 CDEFS := $(CDEFS) -D__v850e3v5__
101endif
102
103#
104# コアタイプ(実装)による切り替え
105#
106ifeq ($(CORETYPE),RH850G3K)
107 #COPTS := $(COPTS) -fsoft
108 COPTS := $(COPTS) -fsoft -sda=0
109endif
110ifeq ($(CORETYPE),RH850G3M)
111 ifeq ($(USE_HARD_FLOAT),true)
112 COPTS := $(COPTS) -DTOPPERS_USE_HFLOAT
113 else
114 COPTS := $(COPTS) -fsoft
115 endif
116endif
117
118#
119# 最適化に関するオプション
120#
121# Makefile で -O2 を付けない
122OMIT_OPTIMIZATION = true
123#COPTS := $(COPTS) -Ospace -Omax -Olink -Ointerproc
124COPTS := $(COPTS) -Odebug
125
126#
127# 警告に関するオプション
128#
129COPTS := $(COPTS) --prototype_warnings \
130 -Wimplicit-int \
131 -Wshadow \
132 -Wundef \
133 -Wtrigraphs \
134 --assembler_warnings \
135 -linker_warnings \
136 --diag_suppress 174,188,191,767
137
138#
139# カーネルに関する定義
140#
141KERNEL_DIR := $(KERNEL_DIR) $(PRCDIR) $(PRCDIR_GCC)
142KERNEL_ASMOBJS := $(KERNEL_ASMOBJS) prc_support.o prc_tool.o
143KERNEL_COBJS := $(KERNEL_COBJS) prc_config.o prc_mpu.o
144
145#
146# GNU開発環境のターゲットアーキテクチャの定義
147#
148GCC_TARGET = v850-elf
149
150#
151# スタートアップモジュールに関する定義
152#
153START_OBJS := $(START_OBJS) start.o
154
155$(START_OBJS): %.o: %.S
156 $(CC) -c $(CFLAGS) $(KERNEL_CFLAGS) $<
157
158$(START_OBJS:.o=.d): %.d: %.S
159 @$(PERL) $(SRCDIR)/utils/makedep -C $(CC) \
160 -O "$(CFLAGS) $(KERNEL_CFLAGS)" $< >> Makefile.depend
161
162
163
164#
165# リンクに関する設定
166#
167LDFLAGS := $(LDFLAGS) -e __reset -nostartfiles
168
169CFG1_OUT_LDFLAGS := -nostartfiles
170CFG1_OUT_LDFLAGS := $(CFG1_OUT_LDFLAGS) $(LDFLAGS)
171CFG2_OUT_LDFLAGS := $(CFG2_OUT_LDFLAGS) $(LDFLAGS)
172CFG3_OUT_LDFLAGS := $(CFG3_OUT_LDFLAGS) $(LDFLAGS)
173
174# メモリ配置決定前の暫定的なリンカスクリプト
175CFG2_OUT_LDSCRIPT = cfg2_out.ld
176# メモリ配置決定時のリンカスクリプト
177CFG3_OUT_LDSCRIPT = cfg3_out.ld
178# 最終的なリンカスクリプト
179LDSCRIPT = ldscript.ld
180ifeq ($(ARCH),V850E2V3)
181 USE_CFG_PASS3 = true
182endif
183
184$(LDSCRIPT): kernel_cfg.timestamp
185$(CFG2_OUT_LDSCRIPT): kernel_cfg.timestamp
186
187#
188# 依存関係の定義
189#
190cfg1_out.c: $(PRCDIR_GCC)/prc_def.csv
191Os_Lcfg.timestamp: $(PRCDIR)/prc.tf
192$(OBJFILE): $(PRCDIR_GCC)/prc_mem.tf
193offset.h: $(PRCDIR_GCC)/prc_offset.tf
194
195
196#
197# ジェネレータ関係の変数の定義
198#
199CFG_TABS := $(CFG_TABS) --cfg1-def-table $(PRCDIR_GCC)/prc_def.csv
200
201#
202# 開発ツールのコマンド名の定義
203#
204ifeq ($(ARCH),V850E2V3)
205 CC = ccv850.exe
206 AR = ccv850.exe
207endif
208
209ifeq ($(ARCH),V850E3V5)
210 CC = ccrh850.exe
211 AR = ccrh850.exe
212endif
213
214NM = nm
215
216#
217# clean で削除するファイル
218#
219CLEAN_FILES := $(CLEAN_FILES) *.dbo *.dla *.map *.run *.dnm *.dep *.dba *.si *.inf
Note: See TracBrowser for help on using the repository browser.