Blame view
tools/Makefile
8.06 KB
83d290c56
|
1 |
# SPDX-License-Identifier: GPL-2.0+ |
efee17099
|
2 |
# |
f93286397
|
3 |
# (C) Copyright 2000-2006 |
efee17099
|
4 |
# Wolfgang Denk, DENX Software Engineering, wd@denx.de. |
efee17099
|
5 |
|
c7c0d542a
|
6 7 |
# Enable all the config-independent tools ifneq ($(HOST_TOOLS_ALL),) |
5473eb6d1
|
8 |
CONFIG_KIRKWOOD = y |
c7c0d542a
|
9 |
CONFIG_LCD_LOGO = y |
570d7d50b
|
10 |
CONFIG_CMD_LOADS = y |
c7c0d542a
|
11 |
CONFIG_CMD_NET = y |
60b74bde9
|
12 |
CONFIG_XWAY_SWAP_BYTES = y |
c7c0d542a
|
13 14 |
CONFIG_NETCONSOLE = y CONFIG_SHA1_CHECK_UB_IMG = y |
d8c0d99e6
|
15 |
CONFIG_ARCH_SUNXI = y |
c7c0d542a
|
16 |
endif |
2887c4733
|
17 18 |
subdir-$(HOST_TOOLS_ALL) += easylogo subdir-$(HOST_TOOLS_ALL) += gdb |
2ad6e27dc
|
19 20 |
# Merge all the different vars for envcrc into one ENVCRC-$(CONFIG_ENV_IS_EMBEDDED) = y |
2ad6e27dc
|
21 22 23 24 25 26 27 |
ENVCRC-$(CONFIG_ENV_IS_IN_EEPROM) = y ENVCRC-$(CONFIG_ENV_IS_IN_FLASH) = y ENVCRC-$(CONFIG_ENV_IS_IN_ONENAND) = y ENVCRC-$(CONFIG_ENV_IS_IN_NAND) = y ENVCRC-$(CONFIG_ENV_IS_IN_NVRAM) = y ENVCRC-$(CONFIG_ENV_IS_IN_SPI_FLASH) = y CONFIG_BUILD_ENVCRC ?= $(ENVCRC-y) |
96b09a97f
|
28 |
hostprogs-$(CONFIG_SPL_GENERATE_ATMEL_PMECC_HEADER) += atmel_pmecc_params |
5c390a5b2
|
29 |
|
96b09a97f
|
30 31 32 |
hostprogs-$(CONFIG_LCD_LOGO) += bmp_logo hostprogs-$(CONFIG_VIDEO_LOGO) += bmp_logo HOSTCFLAGS_bmp_logo.o := -pedantic |
940db16d2
|
33 |
|
96b09a97f
|
34 |
hostprogs-$(CONFIG_BUILD_ENVCRC) += envcrc |
0649cd0d4
|
35 |
envcrc-objs := envcrc.o lib/crc32.o env/embedded.o lib/sha1.o |
940db16d2
|
36 |
|
96b09a97f
|
37 38 |
hostprogs-$(CONFIG_CMD_NET) += gen_eth_addr HOSTCFLAGS_gen_eth_addr.o := -pedantic |
ee3584a59
|
39 |
|
c25f01a63
|
40 41 42 |
hostprogs-$(CONFIG_CMD_NET) += gen_ethaddr_crc gen_ethaddr_crc-objs := gen_ethaddr_crc.o lib/crc8.o HOSTCFLAGS_gen_ethaddr_crc.o := -pedantic |
96b09a97f
|
43 44 |
hostprogs-$(CONFIG_CMD_LOADS) += img2srec HOSTCFLAGS_img2srec.o := -pedantic |
940db16d2
|
45 |
|
96b09a97f
|
46 47 |
hostprogs-$(CONFIG_XWAY_SWAP_BYTES) += xway-swap-bytes HOSTCFLAGS_xway-swap-bytes.o := -pedantic |
940db16d2
|
48 |
|
96b09a97f
|
49 50 |
hostprogs-y += mkenvimage mkenvimage-objs := mkenvimage.o os_support.o lib/crc32.o |
940db16d2
|
51 |
|
96b09a97f
|
52 53 |
hostprogs-y += dumpimage mkimage hostprogs-$(CONFIG_FIT_SIGNATURE) += fit_info fit_check_sign |
940db16d2
|
54 |
|
ac0201961
|
55 |
hostprogs-$(CONFIG_CMD_BOOTEFI_SELFTEST) += file2include |
ad80c4a32
|
56 |
FIT_SIG_OBJS-$(CONFIG_FIT_SIGNATURE) := common/image-sig.o |
ee95d10ba
|
57 |
|
b38ad663a
|
58 59 |
# The following files are synced with upstream DTC. # Use synced versions from scripts/dtc/libfdt/. |
ae9ace708
|
60 61 |
LIBFDT_SRCS_SYNCED := fdt.c fdt_wip.c fdt_sw.c fdt_rw.c \ fdt_strerror.c fdt_empty_tree.c fdt_addresses.c fdt_overlay.c |
b38ad663a
|
62 63 |
# The following files are locally modified for U-Boot (unfotunately). # Use U-Boot own versions from lib/libfdt/. |
ae9ace708
|
64 |
LIBFDT_SRCS_UNSYNCED := fdt_ro.c fdt_region.c |
b38ad663a
|
65 66 67 |
LIBFDT_OBJS := $(addprefix libfdt/, $(patsubst %.c, %.o, $(LIBFDT_SRCS_SYNCED))) \ $(addprefix lib/libfdt/, $(patsubst %.c, %.o, $(LIBFDT_SRCS_UNSYNCED))) |
330274f19
|
68 |
|
ad80c4a32
|
69 |
RSA_OBJS-$(CONFIG_FIT_SIGNATURE) := $(addprefix lib/rsa/, \ |
fc2f4246b
|
70 71 |
rsa-sign.o rsa-verify.o rsa-checksum.o \ rsa-mod-exp.o) |
940db16d2
|
72 |
|
9b03701a1
|
73 |
ROCKCHIP_OBS = lib/rc4.o rkcommon.o rkimage.o rksd.o rkspi.o |
a131c1f44
|
74 |
|
940db16d2
|
75 76 |
# common objs for dumpimage and mkimage dumpimage-mkimage-objs := aisimage.o \ |
7b1a41174
|
77 |
atmelimage.o \ |
940db16d2
|
78 |
$(FIT_SIG_OBJS-y) \ |
ea51a6282
|
79 |
common/bootm.o \ |
ad80c4a32
|
80 |
lib/crc32.o \ |
940db16d2
|
81 |
default_image.o \ |
b047d671d
|
82 |
lib/fdtdec_common.o \ |
ad80c4a32
|
83 |
lib/fdtdec.o \ |
6bf4ca076
|
84 |
fit_common.o \ |
940db16d2
|
85 |
fit_image.o \ |
ad80c4a32
|
86 |
common/image-fit.o \ |
940db16d2
|
87 |
image-host.o \ |
ad80c4a32
|
88 |
common/image.o \ |
940db16d2
|
89 90 |
imagetool.o \ imximage.o \ |
a2b96ece5
|
91 |
imx8image.o \ |
6609c2663
|
92 |
imx8mimage.o \ |
940db16d2
|
93 |
kwbimage.o \ |
ad80c4a32
|
94 |
lib/md5.o \ |
39f520bb6
|
95 |
lpc32xximage.o \ |
940db16d2
|
96 97 98 99 |
mxsimage.o \ omapimage.o \ os_support.o \ pblimage.o \ |
abbc67eed
|
100 |
pbl_crc32.o \ |
ed0c2c0a9
|
101 |
vybridimage.o \ |
81260e333
|
102 |
stm32image.o \ |
a131c1f44
|
103 |
$(ROCKCHIP_OBS) \ |
832472a94
|
104 |
socfpgaimage.o \ |
51c2345bd
|
105 |
lib/crc16.o \ |
ad80c4a32
|
106 107 |
lib/sha1.o \ lib/sha256.o \ |
2dd900271
|
108 |
common/hash.o \ |
940db16d2
|
109 |
ublimage.o \ |
66eef1e78
|
110 |
zynqimage.o \ |
d9b58b303
|
111 |
zynqmpimage.o \ |
6915dcf35
|
112 |
zynqmpbif.o \ |
940db16d2
|
113 |
$(LIBFDT_OBJS) \ |
969cd1fa6
|
114 115 |
gpimage.o \ gpimage-common.o \ |
3b975a147
|
116 |
mtk_image.o \ |
940db16d2
|
117 |
$(RSA_OBJS-y) |
96b09a97f
|
118 119 120 121 |
dumpimage-objs := $(dumpimage-mkimage-objs) dumpimage.o mkimage-objs := $(dumpimage-mkimage-objs) mkimage.o fit_info-objs := $(dumpimage-mkimage-objs) fit_info.o fit_check_sign-objs := $(dumpimage-mkimage-objs) fit_check_sign.o |
ac0201961
|
122 |
file2include-objs := file2include.o |
940db16d2
|
123 |
|
80870e2a6
|
124 |
ifneq ($(CONFIG_MX23)$(CONFIG_MX28)$(CONFIG_FIT_SIGNATURE),) |
940db16d2
|
125 126 |
# Add CONFIG_MXS into host CFLAGS, so we can check whether or not register # the mxsimage support within tools/mxsimage.c . |
6825a95b0
|
127 |
HOSTCFLAGS_mxsimage.o += -DCONFIG_MXS |
940db16d2
|
128 129 130 |
endif ifdef CONFIG_FIT_SIGNATURE |
940db16d2
|
131 132 133 |
# This affects include/image.h, but including the board config file # is tricky, so manually define this options here. HOST_EXTRACFLAGS += -DCONFIG_FIT_SIGNATURE |
72239fc85
|
134 |
HOST_EXTRACFLAGS += -DCONFIG_FIT_SIGNATURE_MAX_SIZE=$(CONFIG_FIT_SIGNATURE_MAX_SIZE) |
940db16d2
|
135 |
endif |
7ddf8cfb0
|
136 137 |
ifdef CONFIG_SYS_U_BOOT_OFFS HOSTCFLAGS_kwbimage.o += -DCONFIG_SYS_U_BOOT_OFFS=$(CONFIG_SYS_U_BOOT_OFFS) |
e35c6c797
|
138 |
endif |
a1b6b0a9c
|
139 140 141 |
ifneq ($(CONFIG_ARMADA_38X)$(CONFIG_ARMADA_39X),) HOSTCFLAGS_kwbimage.o += -DCONFIG_KWB_SECURE endif |
97cb4e545
|
142 |
# MXSImage needs LibSSL |
a1b6b0a9c
|
143 |
ifneq ($(CONFIG_MX23)$(CONFIG_MX28)$(CONFIG_ARMADA_38X)$(CONFIG_ARMADA_39X)$(CONFIG_FIT_SIGNATURE),) |
4839836a1
|
144 145 |
HOSTLOADLIBES_mkimage += \ $(shell pkg-config --libs libssl libcrypto 2> /dev/null || echo "-lssl -lcrypto") |
c6e3e8213
|
146 147 148 149 150 151 152 153 |
# OS X deprecate openssl in favour of CommonCrypto, supress deprecation # warnings on those systems ifeq ($(HOSTOS),darwin) HOSTCFLAGS_mxsimage.o += -Wno-deprecated-declarations HOSTCFLAGS_image-sig.o += -Wno-deprecated-declarations HOSTCFLAGS_rsa-sign.o += -Wno-deprecated-declarations endif |
97cb4e545
|
154 |
endif |
1f6049e25
|
155 |
HOSTCFLAGS_fit_image.o += -DMKIMAGE_DTC=\"$(CONFIG_MKIMAGE_DTC_PATH)\" |
47a52cd1e
|
156 |
|
96b09a97f
|
157 158 159 |
HOSTLOADLIBES_dumpimage := $(HOSTLOADLIBES_mkimage) HOSTLOADLIBES_fit_info := $(HOSTLOADLIBES_mkimage) HOSTLOADLIBES_fit_check_sign := $(HOSTLOADLIBES_mkimage) |
97cb4e545
|
160 |
|
96b09a97f
|
161 162 163 |
hostprogs-$(CONFIG_EXYNOS5250) += mkexynosspl hostprogs-$(CONFIG_EXYNOS5420) += mkexynosspl HOSTCFLAGS_mkexynosspl.o := -pedantic |
940db16d2
|
164 |
|
31eca6972
|
165 |
ifdtool-objs := $(LIBFDT_OBJS) ifdtool.o |
cd392fe8a
|
166 |
hostprogs-$(CONFIG_X86) += ifdtool |
96b09a97f
|
167 168 169 |
hostprogs-$(CONFIG_MX23) += mxsboot hostprogs-$(CONFIG_MX28) += mxsboot HOSTCFLAGS_mxsboot.o := -pedantic |
940db16d2
|
170 |
|
aec9a0f19
|
171 |
hostprogs-$(CONFIG_ARCH_SUNXI) += mksunxiboot |
594b4cc73
|
172 173 |
hostprogs-$(CONFIG_ARCH_SUNXI) += sunxi-spl-image-builder sunxi-spl-image-builder-objs := sunxi-spl-image-builder.o lib/bch.o |
50827a599
|
174 |
|
96b09a97f
|
175 176 |
hostprogs-$(CONFIG_NETCONSOLE) += ncb hostprogs-$(CONFIG_SHA1_CHECK_UB_IMG) += ubsha1 |
940db16d2
|
177 |
|
96b09a97f
|
178 |
ubsha1-objs := os_support.o ubsha1.o lib/sha1.o |
940db16d2
|
179 180 |
HOSTCFLAGS_ubsha1.o := -pedantic |
96b09a97f
|
181 |
hostprogs-$(CONFIG_KIRKWOOD) += kwboot |
81e33f4b6
|
182 |
hostprogs-$(CONFIG_ARCH_MVEBU) += kwboot |
96b09a97f
|
183 184 |
hostprogs-y += proftool hostprogs-$(CONFIG_STATIC_RELA) += relocate-rela |
42ac26f2b
|
185 |
hostprogs-$(CONFIG_RISCV) += prelink-riscv |
ee3584a59
|
186 |
|
1043d0a02
|
187 188 |
hostprogs-y += fdtgrep fdtgrep-objs += $(LIBFDT_OBJS) fdtgrep.o |
703ec9ddf
|
189 |
hostprogs-$(CONFIG_MIPS) += mips-relocs |
940db16d2
|
190 191 192 193 |
# We build some files with extra pedantic flags to try to minimize things # that won't build on some weird host compiler -- though there are lots of # exceptions for files that aren't complaint. HOSTCFLAGS_crc32.o := -pedantic |
1d3c53923
|
194 |
HOSTCFLAGS_crc8.o := -pedantic |
940db16d2
|
195 196 |
HOSTCFLAGS_md5.o := -pedantic HOSTCFLAGS_sha1.o := -pedantic |
2842c1c24
|
197 |
HOSTCFLAGS_sha256.o := -pedantic |
940db16d2
|
198 |
|
ad80c4a32
|
199 |
quiet_cmd_wrap = WRAP $@ |
ffe29ebc0
|
200 |
cmd_wrap = echo "\#include <../$(patsubst $(obj)/%,%,$@)>" >$@ |
ad80c4a32
|
201 |
|
0649cd0d4
|
202 |
$(obj)/lib/%.c $(obj)/common/%.c $(obj)/env/%.c: |
ad80c4a32
|
203 204 205 |
$(call cmd,wrap) clean-dirs := lib common |
940db16d2
|
206 |
always := $(hostprogs-y) |
19c402afa
|
207 |
|
335ffe7e0
|
208 |
# Generated LCD/video logo |
9e4140329
|
209 210 |
LOGO_H = $(objtree)/include/bmp_logo.h LOGO_DATA_H = $(objtree)/include/bmp_logo_data.h |
335ffe7e0
|
211 |
LOGO-$(CONFIG_LCD_LOGO) += $(LOGO_H) |
c270730f5
|
212 |
LOGO-$(CONFIG_LCD_LOGO) += $(LOGO_DATA_H) |
335ffe7e0
|
213 |
LOGO-$(CONFIG_VIDEO_LOGO) += $(LOGO_H) |
c270730f5
|
214 |
LOGO-$(CONFIG_VIDEO_LOGO) += $(LOGO_DATA_H) |
ee3584a59
|
215 |
|
96903dae0
|
216 |
# Generic logo |
ee3584a59
|
217 |
ifeq ($(LOGO_BMP),) |
9e4140329
|
218 |
LOGO_BMP= $(srctree)/$(src)/logos/denx.bmp |
96903dae0
|
219 220 |
# Use board logo and fallback to vendor |
603f51cbd
|
221 |
ifneq ($(wildcard $(srctree)/$(src)/logos/$(BOARD).bmp),) |
9e4140329
|
222 |
LOGO_BMP= $(srctree)/$(src)/logos/$(BOARD).bmp |
96903dae0
|
223 |
else |
603f51cbd
|
224 |
ifneq ($(wildcard $(srctree)/$(src)/logos/$(VENDOR).bmp),) |
9e4140329
|
225 |
LOGO_BMP= $(srctree)/$(src)/logos/$(VENDOR).bmp |
ee3584a59
|
226 |
endif |
348de314b
|
227 |
endif |
ee3584a59
|
228 |
|
96903dae0
|
229 |
endif # !LOGO_BMP |
efee17099
|
230 231 |
# # Use native tools and options |
2f8d396b9
|
232 |
# Define __KERNEL_STRICT_NAMES to prevent typedef overlaps |
2db1c3fc6
|
233 |
# Define _GNU_SOURCE to obtain the getline prototype from stdio.h |
efee17099
|
234 |
# |
662282203
|
235 |
HOST_EXTRACFLAGS += -include $(srctree)/include/compiler.h \ |
51148790f
|
236 |
$(patsubst -I%,-idirafter%, $(filter -I%, $(UBOOTINCLUDE))) \ |
e0d20dc15
|
237 |
-I$(srctree)/scripts/dtc/libfdt \ |
01286329b
|
238 |
-I$(srctree)/tools \ |
14d0a02a1
|
239 |
-DUSE_HOSTCC \ |
2db1c3fc6
|
240 |
-D__KERNEL_STRICT_NAMES \ |
d7edeba79
|
241 242 |
-D_GNU_SOURCE \ -std=gnu99 |
8cf30809a
|
243 |
|
d726f225f
|
244 |
__build: $(LOGO-y) |
efee17099
|
245 |
|
9e4140329
|
246 247 |
$(LOGO_H): $(obj)/bmp_logo $(LOGO_BMP) $(obj)/bmp_logo --gen-info $(LOGO_BMP) > $@ |
c270730f5
|
248 |
|
9e4140329
|
249 250 |
$(LOGO_DATA_H): $(obj)/bmp_logo $(LOGO_BMP) $(obj)/bmp_logo --gen-data $(LOGO_BMP) > $@ |
2887c4733
|
251 252 253 |
# Let clean descend into subdirs subdir- += env |
db5b339cc
|
254 255 |
ifneq ($(CROSS_BUILD_TOOLS),) |
3b0825296
|
256 |
override HOSTCC = $(CC) |
db5b339cc
|
257 258 259 260 261 262 263 264 265 |
quiet_cmd_crosstools_strip = STRIP $^ cmd_crosstools_strip = $(STRIP) $^; touch $@ $(obj)/.strip: $(call objectify,$(filter $(always),$(hostprogs-y))) $(call cmd,crosstools_strip) always += .strip endif clean-files += .strip |