]> git.ipfire.org Git - thirdparty/u-boot.git/blame - config.mk
Merge tag 'video-for-2019.07-rc1' of git://git.denx.de/u-boot-video
[thirdparty/u-boot.git] / config.mk
CommitLineData
83d290c5 1# SPDX-License-Identifier: GPL-2.0+
e2211743 2#
eca3aeb3 3# (C) Copyright 2000-2013
e2211743 4# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
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...)
13PLATFORM_RELFLAGS :=
14PLATFORM_CPPFLAGS :=
15PLATFORM_LDFLAGS :=
16LDFLAGS :=
17LDFLAGS_FINAL :=
1d3b97c9 18LDFLAGS_STANDALONE :=
026f9cf2 19OBJCOPYFLAGS :=
5b3ee386
MY
20# clear VENDOR for tcsh
21VENDOR :=
c4e5f52a
WD
22#########################################################################
23
51148790
MY
24ARCH := $(CONFIG_SYS_ARCH:"%"=%)
25CPU := $(CONFIG_SYS_CPU:"%"=%)
e02ee254
MY
26ifdef CONFIG_SPL_BUILD
27ifdef CONFIG_TEGRA
28CPU := arm720t
29endif
30endif
51148790
MY
31BOARD := $(CONFIG_SYS_BOARD:"%"=%)
32ifneq ($(CONFIG_SYS_VENDOR),)
33VENDOR := $(CONFIG_SYS_VENDOR:"%"=%)
34endif
35ifneq ($(CONFIG_SYS_SOC),)
36SOC := $(CONFIG_SYS_SOC:"%"=%)
37endif
38
03b7004d
PT
39# Some architecture config.mk files need to know what CPUDIR is set to,
40# so calculate CPUDIR before including ARCH/SOC/CPU config.mk files.
8d1f2682
PT
41# Check if arch/$ARCH/cpu/$CPU exists, otherwise assume arch/$ARCH/cpu contains
42# CPU-specific code.
a8b0f9b6 43CPUDIR=arch/$(ARCH)/cpu$(if $(CPU),/$(CPU),)
03b7004d 44
4379ac61
MY
45sinclude $(srctree)/arch/$(ARCH)/config.mk # include architecture dependend rules
46sinclude $(srctree)/$(CPUDIR)/config.mk # include CPU specific rules
03b7004d 47
c4e5f52a 48ifdef SOC
4379ac61 49sinclude $(srctree)/$(CPUDIR)/$(SOC)/config.mk # include SoC specific rules
c4e5f52a 50endif
33a02da0 51ifneq ($(BOARD),)
c4e5f52a
WD
52ifdef VENDOR
53BOARDDIR = $(VENDOR)/$(BOARD)
54else
55BOARDDIR = $(BOARD)
56endif
33a02da0 57endif
c4e5f52a 58ifdef BOARD
4379ac61 59sinclude $(srctree)/board/$(BOARDDIR)/config.mk # include board specific rules
c4e5f52a
WD
60endif
61
b8450521
SG
62ifdef FTRACE
63PLATFORM_CPPFLAGS += -finstrument-functions -DFTRACE
64endif
65
c4e5f52a
WD
66#########################################################################
67
026f9cf2 68RELFLAGS := $(PLATFORM_RELFLAGS)
83b7e2a7 69
026f9cf2
MY
70PLATFORM_CPPFLAGS += $(RELFLAGS)
71PLATFORM_CPPFLAGS += -pipe
4a30f1e8 72
8aba9dce 73LDFLAGS += $(PLATFORM_LDFLAGS)
6dc1eceb 74LDFLAGS_FINAL += -Bstatic
026f9cf2
MY
75
76export PLATFORM_CPPFLAGS
77export RELFLAGS
78export LDFLAGS_FINAL
1d3b97c9 79export LDFLAGS_STANDALONE
026f9cf2 80export CONFIG_STANDALONE_LOAD_ADDR