]>
Commit | Line | Data |
---|---|---|
83d290c5 | 1 | # SPDX-License-Identifier: GPL-2.0+ |
e2211743 | 2 | # |
eca3aeb3 | 3 | # (C) Copyright 2000-2013 |
e2211743 | 4 | # Wolfgang Denk, DENX Software Engineering, [email protected]. |
e2211743 WD |
5 | ######################################################################### |
6 | ||
026f9cf2 MY |
7 | # This file is included from ./Makefile and spl/Makefile. |
8 | # Clean the state to avoid the same flags added twice. | |
9 | # | |
10 | # (Tegra needs different flags for SPL. | |
11 | # That's the reason why this file must be included from spl/Makefile too. | |
12 | # If we did not have Tegra SoCs, build system would be much simpler...) | |
13 | PLATFORM_RELFLAGS := | |
14 | PLATFORM_CPPFLAGS := | |
026f9cf2 | 15 | LDFLAGS_FINAL := |
1d3b97c9 | 16 | LDFLAGS_STANDALONE := |
026f9cf2 | 17 | OBJCOPYFLAGS := |
5b3ee386 MY |
18 | # clear VENDOR for tcsh |
19 | VENDOR := | |
c4e5f52a WD |
20 | ######################################################################### |
21 | ||
51148790 MY |
22 | ARCH := $(CONFIG_SYS_ARCH:"%"=%) |
23 | CPU := $(CONFIG_SYS_CPU:"%"=%) | |
e02ee254 | 24 | ifdef CONFIG_SPL_BUILD |
18138ab2 | 25 | ifdef CONFIG_ARCH_TEGRA |
e02ee254 MY |
26 | CPU := arm720t |
27 | endif | |
28 | endif | |
51148790 MY |
29 | BOARD := $(CONFIG_SYS_BOARD:"%"=%) |
30 | ifneq ($(CONFIG_SYS_VENDOR),) | |
31 | VENDOR := $(CONFIG_SYS_VENDOR:"%"=%) | |
32 | endif | |
33 | ifneq ($(CONFIG_SYS_SOC),) | |
34 | SOC := $(CONFIG_SYS_SOC:"%"=%) | |
35 | endif | |
36 | ||
03b7004d PT |
37 | # Some architecture config.mk files need to know what CPUDIR is set to, |
38 | # so calculate CPUDIR before including ARCH/SOC/CPU config.mk files. | |
8d1f2682 PT |
39 | # Check if arch/$ARCH/cpu/$CPU exists, otherwise assume arch/$ARCH/cpu contains |
40 | # CPU-specific code. | |
a8b0f9b6 | 41 | CPUDIR=arch/$(ARCH)/cpu$(if $(CPU),/$(CPU),) |
03b7004d | 42 | |
4379ac61 MY |
43 | sinclude $(srctree)/arch/$(ARCH)/config.mk # include architecture dependend rules |
44 | sinclude $(srctree)/$(CPUDIR)/config.mk # include CPU specific rules | |
03b7004d | 45 | |
c4e5f52a | 46 | ifdef SOC |
4379ac61 | 47 | sinclude $(srctree)/$(CPUDIR)/$(SOC)/config.mk # include SoC specific rules |
c4e5f52a | 48 | endif |
33a02da0 | 49 | ifneq ($(BOARD),) |
c4e5f52a WD |
50 | ifdef VENDOR |
51 | BOARDDIR = $(VENDOR)/$(BOARD) | |
86b9c3e4 | 52 | ENVDIR=${vendor}/env |
c4e5f52a WD |
53 | else |
54 | BOARDDIR = $(BOARD) | |
86b9c3e4 | 55 | ENVDIR=${board}/env |
c4e5f52a | 56 | endif |
33a02da0 | 57 | endif |
c4e5f52a | 58 | ifdef BOARD |
4379ac61 | 59 | sinclude $(srctree)/board/$(BOARDDIR)/config.mk # include board specific rules |
c4e5f52a WD |
60 | endif |
61 | ||
b8450521 SG |
62 | ifdef FTRACE |
63 | PLATFORM_CPPFLAGS += -finstrument-functions -DFTRACE | |
64 | endif | |
65 | ||
c4e5f52a WD |
66 | ######################################################################### |
67 | ||
026f9cf2 | 68 | RELFLAGS := $(PLATFORM_RELFLAGS) |
83b7e2a7 | 69 | |
026f9cf2 MY |
70 | PLATFORM_CPPFLAGS += $(RELFLAGS) |
71 | PLATFORM_CPPFLAGS += -pipe | |
4a30f1e8 | 72 | |
6dc1eceb | 73 | LDFLAGS_FINAL += -Bstatic |
026f9cf2 MY |
74 | |
75 | export PLATFORM_CPPFLAGS | |
76 | export RELFLAGS | |
77 | export LDFLAGS_FINAL | |
1d3b97c9 | 78 | export LDFLAGS_STANDALONE |
026f9cf2 | 79 | export CONFIG_STANDALONE_LOAD_ADDR |