# # @(#) $Id: Makefile.config,v 1.2 2004/10/07 17:10:56 honda Exp $ # # # Makefile のシステム依存部分 # (株)タンバック MPC860T TB6102S # # # ターゲットアーキテクチャの定義 # powerpc-elf-gcc以外のコンパイラを用いる場合は # $(SYS)/Makefile.configで変数TARGETを定義する。 #   定義されていない場合は、デフォルトでTARGETに #   powerpc-elfが設定される。 # # TARGET = powerpc-eabi # # 実行環境の定義 # # DBGENVには下記の中の1つだけを選択する。 #   どちらも選択しなければ、共通部でデフォルトの実行環境GDBが #   選択される # #   ROM #    ROM化用の設定 #    ROM化である(他の実行環境ではない)ことを明示しているだけで、 #    ソースコード中で参照はしていない。 # #   DOWNLOAD_TO_RAM #    デバッグ用にプログラムをすべてRAM領域にマッピングする設定 # DBGENV = ROM #DBGENV = DOWNLOAD_TO_RAM # # コンパイルオプション # INCLUDES := $(INCLUDES) -I$(CONFIGDIR)/$(CPU)/$(SYS) # デバッグオプションはgccのバージョンにより異なる場合があるので注意 COPTS := $(COPTS) -gdwarf -G 0 -msoft-float -mbig # gccオプション # -gdwarf デバッグ情報を DWARF のバージョン1の形式 # (サポートされていれば)で生成する。 # -G num 組み込みPowerPCシステムにおいて、 広域データと静的 # データのうちサイズがnumバイト以下のものを、 通常の # dataセクションやbssセクションにではなく、 small data # セクションやsmall bssセクションに置く。 # -msoft-float 浮動小数点レジスタ・セットを使わない # -mbig ビッグ・エンディアン # -N .save'ファイルを作成しない # # リンカ・オプション -N # テキストセクションとデータセクションを読み書き可能に設定する. # また, データセグメントのページ境界への位置合わせをおこなわない. LDFLAGS := $(LDFLAGS) -N # # カーネルに関する定義 # KERNEL_DIR := $(KERNEL_DIR):$(CONFIGDIR)/$(CPU)/$(SYS) KERNEL_ASMOBJS := $(KERNEL_ASMOBJS) sys_support.o KERNEL_COBJS := $(KERNEL_COBJS) sys_config.o mpc860_smc.o # # マクロ定義オプション # CDEFS := $(CDEFS) -DIMPLEMENT_EXCEPTION_01000 #-DSIL_DEBUG # # 各セグメントの開始アドレスの定義 # # テキストセクションの先頭番地 # DOWNLOAD_TO_RAMの場合は例外ベクタの後ろに配置するので #  アドレスは指定しない # ifneq ($(DBGENV),DOWNLOAD_TO_RAM) TEXT_START_ADDRESS=0x10002000 endif # dataセクションの先頭番地 ifeq ($(DBGENV),DOWNLOAD_TO_RAM) DATA_START_ADDRESS=0x00800000 else DATA_START_ADDRESS=0x2000 endif # # リンカスクリプトの定義 # ifeq ($(DBGENV),DOWNLOAD_TO_RAM) LDSCRIPT = $(CPU)/$(SYS)/mpc860elf_ram.ld else LDSCRIPT = $(CPU)/$(SYS)/mpc860elf.ld endif