X-Git-Url: http://git.ipfire.org/?p=people%2Fms%2Fu-boot.git;a=blobdiff_plain;f=Makefile;h=f8c66a20730f5478fd32f8b14638a34b36b4b77c;hp=a0f3bfd2a52f5c4e7e52befe789406590e79efcb;hb=aa122f6b3d24bd133392c7dd2a882a8cc2cbd622;hpb=8197d92843952b376915fdbcbf67c723feab1532 diff --git a/Makefile b/Makefile index a0f3bfd2a5..f8c66a2073 100644 --- a/Makefile +++ b/Makefile @@ -3,9 +3,9 @@ # VERSION = 2017 -PATCHLEVEL = 09 +PATCHLEVEL = 11 SUBLEVEL = -EXTRAVERSION = -rc2 +EXTRAVERSION = NAME = # *DOCUMENTATION* @@ -349,7 +349,7 @@ OBJDUMP = $(CROSS_COMPILE)objdump AWK = awk PERL = perl PYTHON ?= python -DTC ?= dtc +DTC ?= $(objtree)/scripts/dtc/dtc CHECK = sparse CHECKFLAGS := -D__linux__ -Dlinux -D__STDC__ -Dunix -D__unix__ \ @@ -360,6 +360,7 @@ KBUILD_CPPFLAGS := -D__KERNEL__ -D__UBOOT__ KBUILD_CFLAGS := -Wall -Wstrict-prototypes \ -Wno-format-security \ -fno-builtin -ffreestanding +KBUILD_CFLAGS += -fshort-wchar KBUILD_AFLAGS := -D__ASSEMBLY__ # Read UBOOTRELEASE from include/config/uboot.release (if it exists) @@ -795,7 +796,7 @@ ALL-$(CONFIG_REMAKE_ELF) += u-boot.elf ALL-$(CONFIG_EFI_APP) += u-boot-app.efi ALL-$(CONFIG_EFI_STUB) += u-boot-payload.efi -ifneq ($(BUILD_ROM),) +ifneq ($(BUILD_ROM)$(CONFIG_BUILD_ROM),) ALL-$(CONFIG_X86_RESET_VECTOR) += u-boot.rom endif @@ -871,13 +872,13 @@ endif PHONY += dtbs dtbs: dts/dt.dtb @: -dts/dt.dtb: checkdtc u-boot +dts/dt.dtb: u-boot $(Q)$(MAKE) $(build)=dts dtbs quiet_cmd_copy = COPY $@ cmd_copy = cp $< $@ -ifeq ($(CONFIG_FIT_EMBED),y) +ifeq ($(CONFIG_MULTI_DTB_FIT),y) fit-dtb.blob: dts/dt.dtb FORCE $(call if_changed,mkimage) @@ -1134,7 +1135,7 @@ cmd_ldr = $(LD) $(LDFLAGS_$(@F)) \ u-boot.rom: u-boot-x86-16bit.bin u-boot.bin \ $(if $(CONFIG_SPL_X86_16BIT_INIT),spl/u-boot-spl.bin) \ - $(if $(CONFIG_HAVE_REFCODE),refcode.bin) checkbinman FORCE + $(if $(CONFIG_HAVE_REFCODE),refcode.bin) FORCE $(call if_changed,binman) OBJCOPYFLAGS_u-boot-x86-16bit.bin := -O binary -j .start16 -j .resetvec @@ -1143,8 +1144,7 @@ u-boot-x86-16bit.bin: u-boot FORCE endif ifneq ($(CONFIG_ARCH_SUNXI),) -u-boot-sunxi-with-spl.bin: spl/sunxi-spl.bin u-boot.img u-boot.dtb \ - checkbinman FORCE +u-boot-sunxi-with-spl.bin: spl/sunxi-spl.bin u-boot.img u-boot.dtb FORCE $(call if_changed,binman) endif @@ -1378,18 +1378,6 @@ $(version_h): include/config/uboot.release FORCE $(timestamp_h): $(srctree)/Makefile FORCE $(call filechk,timestamp.h) -checkbinman: tools - @if ! ( echo 'import libfdt' | ( PYTHONPATH=tools $(PYTHON) )); then \ - echo >&2; \ - echo >&2 '*** binman needs the Python libfdt library.'; \ - echo >&2 '*** Either install it on your system, or try:'; \ - echo >&2 '***'; \ - echo >&2 '*** sudo apt-get install swig libpython-dev'; \ - echo >&2 '***'; \ - echo >&2 '*** to have U-Boot build its own version.'; \ - false; \ - fi - # --------------------------------------------------------------------------- quiet_cmd_cpp_lds = LDS $@ cmd_cpp_lds = $(CPP) -Wp,-MD,$(depfile) $(cpp_flags) $(LDPPFLAGS) \ @@ -1401,8 +1389,8 @@ u-boot.lds: $(LDSCRIPT) prepare FORCE spl/u-boot-spl.bin: spl/u-boot-spl @: spl/u-boot-spl: tools prepare \ - $(if $(CONFIG_OF_SEPARATE)$(CONFIG_SPL_OF_PLATDATA),dts/dt.dtb) \ - $(if $(CONFIG_OF_SEPARATE)$(CONFIG_TPL_OF_PLATDATA),dts/dt.dtb) + $(if $(CONFIG_OF_SEPARATE)$(CONFIG_OF_EMBED)$(CONFIG_SPL_OF_PLATDATA),dts/dt.dtb) \ + $(if $(CONFIG_OF_SEPARATE)$(CONFIG_OF_EMBED)$(CONFIG_TPL_OF_PLATDATA),dts/dt.dtb) $(Q)$(MAKE) obj=spl -f $(srctree)/scripts/Makefile.spl all spl/sunxi-spl.bin: spl/u-boot-spl @@ -1418,7 +1406,7 @@ spl/boot.bin: spl/u-boot-spl @: tpl/u-boot-tpl.bin: tools prepare \ - $(if $(CONFIG_OF_SEPARATE)$(CONFIG_SPL_OF_PLATDATA),dts/dt.dtb) + $(if $(CONFIG_OF_SEPARATE)$(CONFIG_OF_EMBED)$(CONFIG_SPL_OF_PLATDATA),dts/dt.dtb) $(Q)$(MAKE) obj=tpl -f $(srctree)/scripts/Makefile.spl all TAG_SUBDIRS := $(patsubst %,$(srctree)/%,$(u-boot-dirs) include) @@ -1446,12 +1434,6 @@ SYSTEM_MAP = \ System.map: u-boot @$(call SYSTEM_MAP,$<) > $@ -checkdtc: - @if test $(call dtc-version) -lt 0104; then \ - echo '*** Your dtc is too old, please upgrade to dtc 1.4 or newer'; \ - false; \ - fi - ######################################################################### # ARM relocations should all be R_ARM_RELATIVE (32-bit) or @@ -1465,14 +1447,14 @@ checkarmreloc: u-boot false; \ fi -environ: scripts_basic - $(Q)$(MAKE) $(build)=tools/$@ +envtools: scripts_basic $(version_h) $(timestamp_h) + $(Q)$(MAKE) $(build)=tools/env tools-only: scripts_basic $(version_h) $(timestamp_h) $(Q)$(MAKE) $(build)=tools tools-all: export HOST_TOOLS_ALL=y -tools-all: environ tools ; +tools-all: envtools tools ; cross_tools: export CROSS_BUILD_TOOLS=y cross_tools: tools ; @@ -1586,9 +1568,11 @@ help: @echo ' ubootrelease - Output the release version string (use with make -s)' @echo ' ubootversion - Output the version stored in Makefile (use with make -s)' @echo " cfg - Don't build, just create the .cfg files" + @echo " envtools - Build only the target-side environment tools" @echo '' @echo 'Static analysers' @echo ' checkstack - Generate a list of stack hogs' + @echo ' coccicheck - Execute static code analysis with Coccinelle' @echo '' @echo 'Documentation targets:' @$(MAKE) -f $(srctree)/doc/DocBook/Makefile dochelp @@ -1681,6 +1665,14 @@ endif $(build)=$(build-dir) $(@:.ko=.o) $(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modpost +# Consistency checks +# --------------------------------------------------------------------------- + +PHONY += coccicheck + +coccicheck: + $(Q)$(CONFIG_SHELL) $(srctree)/scripts/$@ + # FIXME Should go into a make.lib or something # ===========================================================================