OSDN Git Service

First commitment for the BlackTank LPC1769.
[blacktank/blacktank.git] / kernel / chip / lpc17xx_gcc / Makefile.chip
1 #
2 #               Makefile のチップ依存部(LPC17xx用)
3 #
4
5 #
6 # ディレクトリの定義
7 #
8 CHIPDIR = $(SRCDIR)/chip/$(CHIP)_$(TOOL)
9
10 #
11 #  GNU開発環境のターゲットアーキテクチャの定義
12 #
13 GCC_TARGET = arm-none-eabi
14
15 #
16 #  コンパイルオプション
17 #
18 INCLUDES := $(INCLUDES) -I$(CHIPDIR) -I$(CHIPDIR)/cmsis/core -I$(CHIPDIR)/cmsis/device -I$(SRCDIR)/pdic/common -I$(SRCDIR)/pdic/i2c -I$(SRCDIR)/pdic/spi -I$(SRCDIR)/pdic/uart -I$(SRCDIR)/pdic/gpio -I$(SRCDIR)/pdic/ssp -I$(SRCDIR)/pdic/adc -I$(SRCDIR)/pdic/rtc
19 CDEFS := $(CDEFS)
20 COPTS := $(COPTS) -mcpu=cortex-m3
21
22 #
23 #  カーネルに関する定義
24 #
25 KERNEL_DIR := $(KERNEL_DIR) $(CHIPDIR)
26 KERNEL_ASMOBJS := $(KERNEL_ASMOBJS)
27 KERNEL_COBJS := $(KERNEL_COBJS)  chip_config.o prc_timer.o core_cm3.o system_LPC17xx.o
28 KERNEL_CFLAGS := $(KERNEL_CFLAGS) -fno-strict-aliasing -mcpu=cortex-m3
29
30 #
31 #  システムサービスに関する定義
32 #
33 SYSSVC_DIR := $(SYSSVC_DIR) $(SRCDIR)/pdic/common $(SRCDIR)/pdic/i2c $(SRCDIR)/pdic/spi $(SRCDIR)/pdic/uart $(SRCDIR)/pdic/gpio $(SRCDIR)/pdic/ssp $(SRCDIR)/pdic/adc $(SRCDIR)/pdic/rtc
34 SYSSVC_COBJS := $(SYSSVC_COBJS) lpc17xx_clkpwr.o lpc17xx_libcfg_default.o lpc17xx_pinsel.o lpc17xx_i2c.o lpc17xx_spi.o lpc17xx_gpio.o uart.o lpc17xx_ssp.o lpc17xx_adc.o lpc17xx_rtc.o lpc17xx_uart.o
35
36
37 #
38 #  トレースログに関する設定
39 #
40 ifeq ($(ENABLE_TRACE),true)
41         COPTS := $(COPTS) -DTOPPERS_ENABLE_TRACE
42         KERNEL_DIR := $(KERNEL_DIR) $(SRCDIR)/arch/logtrace
43         KERNEL_COBJS := $(KERNEL_COBJS) trace_config.o trace_dump.o
44 endif
45
46 #
47 #  ROM化時は ROM_BOOTをtrueに定義する
48 #
49 ifeq ($(ROM_BOOT),true)
50         CDEFS := $(CDEFS) -DROM_BOOT
51 endif
52
53 #
54 #  スタートアップモジュールに関する定義
55 #
56 #  ldファイルに「STARTUP(start.o)」を記述したため,スタートアップモジュー
57 #  ルの名前をHIDDEN_OBJSに定義する.また,LDFLAGSに-nostdlibを追加している.
58 #
59 HIDDEN_OBJS = start.o
60
61 $(HIDDEN_OBJS): %.o: %.S
62         $(CC) -c $(CFLAGS) $(KERNEL_CFLAGS) $<
63
64 $(HIDDEN_OBJS:.o=.d): %.d: %.S
65         @$(PERL) $(SRCDIR)/utils/makedep -C $(CC) \
66                 -O "$(CFLAGS) $(KERNEL_CFLAGS)" $< >> Makefile.depend
67
68 LDFLAGS := -nostdlib $(LDFLAGS)
69
70 #
71 #  依存関係の定義
72 #
73 kernel_cfg.timestamp: $(CHIPDIR)/chip.tf
74 $(OBJFILE): $(CHIPDIR)/chip_check.tf
75
76 #
77 #  プロセッサ依存部のインクルード
78 #
79 include $(SRCDIR)/arch/$(PRC)_$(TOOL)/Makefile.prc