mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-09-06 04:43:21 +09:00
![Masahiro Yamada](/assets/img/avatar_default.png)
Now we are ready to switch over to real Kbuild. This commit disables temporary scripts: scripts/{Makefile.build.tmp, Makefile.host.tmp} and enables real Kbuild scripts: scripts/{Makefile.build,Makefile.host,Makefile.lib}. This switch is triggered by the line in scripts/Kbuild.include -build := -f $(if $(KBUILD_SRC),$(srctree)/)scripts/Makefile.build.tmp obj +build := -f $(if $(KBUILD_SRC),$(srctree)/)scripts/Makefile.build obj We need to adjust some build scripts for U-Boot. But smaller amount of modification is preferable. Additionally, we need to fix compiler flags which are locally added or removed. In Kbuild, it is not allowed to change CFLAGS locally. Instead, ccflags-y, asflags-y, cppflags-y, CFLAGS_$(basetarget).o, CFLAGS_REMOVE_$(basetarget).o are prepared for that purpose. Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com> Tested-by: Gerhard Sittig <gsi@denx.de>
60 lines
2.3 KiB
Makefile
60 lines
2.3 KiB
Makefile
#
|
|
# (C) Copyright 2000-2006
|
|
# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
|
#
|
|
# (C) Copyright 2011 Freescale Semiconductor, Inc.
|
|
#
|
|
# SPDX-License-Identifier: GPL-2.0+
|
|
#
|
|
|
|
ifeq ($(SOC),$(filter $(SOC),mx25 mx35 mx5 mx6 vf610))
|
|
obj-y = iomux-v3.o
|
|
endif
|
|
ifeq ($(SOC),$(filter $(SOC),mx5 mx6))
|
|
obj-y += timer.o cpu.o speed.o
|
|
obj-$(CONFIG_SYS_I2C_MXC) += i2c-mxv7.o
|
|
endif
|
|
ifeq ($(SOC),$(filter $(SOC),mx6 mxs))
|
|
obj-y += misc.o
|
|
endif
|
|
ifeq ($(SOC),$(filter $(SOC),mx6))
|
|
obj-$(CONFIG_CMD_SATA) += sata.o
|
|
endif
|
|
obj-$(CONFIG_CMD_BMODE) += cmd_bmode.o
|
|
obj-$(CONFIG_CMD_HDMIDETECT) += cmd_hdmidet.o
|
|
|
|
$(OBJTREE)/$(patsubst "%",%,$(CONFIG_IMX_CONFIG)).cfgtmp: $(OBJTREE)/%.cfgtmp : $(SRCTREE)/%
|
|
mkdir -p $(dir $@)
|
|
$(CPP) $(cpp_flags) -x c -o $@ $<
|
|
|
|
$(OBJTREE)/u-boot.imx: $(OBJTREE)/u-boot.bin $(OBJTREE)/$(patsubst "%",%,$(CONFIG_IMX_CONFIG)).cfgtmp
|
|
$(OBJTREE)/tools/mkimage -n $(filter-out %.bin,$^) -T imximage \
|
|
-e $(CONFIG_SYS_TEXT_BASE) -d $< $@
|
|
|
|
$(OBJTREE)/SPL: $(OBJTREE)/spl/u-boot-spl.bin $(OBJTREE)/$(patsubst "%",%,$(CONFIG_IMX_CONFIG)).cfgtmp
|
|
$(OBJTREE)/tools/mkimage -n $(filter-out %.bin,$^) -T imximage \
|
|
-e $(CONFIG_SPL_TEXT_BASE) -d $< $@
|
|
|
|
$(OBJTREE)/u-boot-with-spl.imx: $(OBJTREE)/SPL $(OBJTREE)/u-boot.bin
|
|
$(OBJCOPY) ${OBJCFLAGS} --pad-to=$(CONFIG_SPL_PAD_TO) \
|
|
-I binary -O binary $< $(OBJTREE)/spl/u-boot-spl-pad.imx
|
|
$(OBJTREE)/tools/mkimage -A arm -O U-Boot -a $(CONFIG_SYS_TEXT_BASE) \
|
|
-e $(CONFIG_SYS_TEXT_BASE) -C none -d $(OBJTREE)/u-boot.bin \
|
|
$(OBJTREE)/u-boot.uim
|
|
cat $(OBJTREE)/spl/u-boot-spl-pad.imx $(OBJTREE)/u-boot.uim > $@
|
|
rm $(OBJTREE)/spl/u-boot-spl-pad.imx $(OBJTREE)/u-boot.uim
|
|
|
|
$(OBJTREE)/u-boot-with-nand-spl.imx: $(OBJTREE)/SPL $(OBJTREE)/u-boot.bin
|
|
(echo -ne '\x00\x00\x00\x00\x46\x43\x42\x20\x01' && \
|
|
dd bs=1015 count=1 if=/dev/zero 2>/dev/null) | \
|
|
cat - $< > $(OBJTREE)/spl/u-boot-nand-spl.imx
|
|
$(OBJCOPY) ${OBJCFLAGS} --pad-to=$(CONFIG_SPL_PAD_TO) \
|
|
-I binary -O binary $(OBJTREE)/spl/u-boot-nand-spl.imx \
|
|
$(OBJTREE)/spl/u-boot-nand-spl-pad.imx
|
|
rm $(OBJTREE)/spl/u-boot-nand-spl.imx
|
|
$(OBJTREE)/tools/mkimage -A arm -O U-Boot -a $(CONFIG_SYS_TEXT_BASE) \
|
|
-e $(CONFIG_SYS_TEXT_BASE) -C none -d $(OBJTREE)/u-boot.bin \
|
|
$(OBJTREE)/u-boot.uim
|
|
cat $(OBJTREE)/spl/u-boot-nand-spl-pad.imx $(OBJTREE)/u-boot.uim > $@
|
|
rm $(OBJTREE)/spl/u-boot-nand-spl-pad.imx $(OBJTREE)/u-boot.uim
|