xref: /openbmc/u-boot/config.mk (revision 3ac83935)
1#
2# (C) Copyright 2000-2013
3# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
4#
5# SPDX-License-Identifier:	GPL-2.0+
6#
7#########################################################################
8
9# This file is included from ./Makefile and spl/Makefile.
10# Clean the state to avoid the same flags added twice.
11#
12# (Tegra needs different flags for SPL.
13#  That's the reason why this file must be included from spl/Makefile too.
14#  If we did not have Tegra SoCs, build system would be much simpler...)
15PLATFORM_RELFLAGS :=
16PLATFORM_CPPFLAGS :=
17PLATFORM_LDFLAGS :=
18LDFLAGS :=
19LDFLAGS_FINAL :=
20OBJCOPYFLAGS :=
21# clear VENDOR for tcsh
22VENDOR :=
23#########################################################################
24
25ARCH := $(CONFIG_SYS_ARCH:"%"=%)
26CPU := $(CONFIG_SYS_CPU:"%"=%)
27BOARD := $(CONFIG_SYS_BOARD:"%"=%)
28ifneq ($(CONFIG_SYS_VENDOR),)
29VENDOR := $(CONFIG_SYS_VENDOR:"%"=%)
30endif
31ifneq ($(CONFIG_SYS_SOC),)
32SOC := $(CONFIG_SYS_SOC:"%"=%)
33endif
34
35# Some architecture config.mk files need to know what CPUDIR is set to,
36# so calculate CPUDIR before including ARCH/SOC/CPU config.mk files.
37# Check if arch/$ARCH/cpu/$CPU exists, otherwise assume arch/$ARCH/cpu contains
38# CPU-specific code.
39CPUDIR=arch/$(ARCH)/cpu$(if $(CPU),/$(CPU),)
40
41sinclude $(srctree)/arch/$(ARCH)/config.mk	# include architecture dependend rules
42sinclude $(srctree)/$(CPUDIR)/config.mk		# include  CPU	specific rules
43
44ifdef	SOC
45sinclude $(srctree)/$(CPUDIR)/$(SOC)/config.mk	# include  SoC	specific rules
46endif
47ifneq ($(BOARD),)
48ifdef	VENDOR
49BOARDDIR = $(VENDOR)/$(BOARD)
50else
51BOARDDIR = $(BOARD)
52endif
53endif
54ifdef	BOARD
55sinclude $(srctree)/board/$(BOARDDIR)/config.mk	# include board specific rules
56endif
57
58ifdef FTRACE
59PLATFORM_CPPFLAGS += -finstrument-functions -DFTRACE
60endif
61
62# Allow use of stdint.h if available
63ifneq ($(USE_STDINT),)
64PLATFORM_CPPFLAGS += -DCONFIG_USE_STDINT
65endif
66
67#########################################################################
68
69RELFLAGS := $(PLATFORM_RELFLAGS)
70
71OBJCOPYFLAGS += --gap-fill=0xff
72
73PLATFORM_CPPFLAGS += $(RELFLAGS)
74PLATFORM_CPPFLAGS += -pipe
75
76LDFLAGS += $(PLATFORM_LDFLAGS)
77LDFLAGS_FINAL += -Bstatic
78
79export PLATFORM_CPPFLAGS
80export RELFLAGS
81export LDFLAGS_FINAL
82export CONFIG_STANDALONE_LOAD_ADDR
83