|
@@ -334,7 +334,7 @@ KALLSYMS = scripts/kallsyms
|
|
|
PERL = perl
|
|
|
CHECK = sparse
|
|
|
|
|
|
-CHECKFLAGS := -D__linux__ -Dlinux -D__STDC__ -Dunix -D__unix__
|
|
|
+CHECKFLAGS := -D__linux__ -Dlinux -D__STDC__ -Dunix -D__unix__ $(CF)
|
|
|
MODFLAGS = -DMODULE
|
|
|
CFLAGS_MODULE = $(MODFLAGS)
|
|
|
AFLAGS_MODULE = $(MODFLAGS)
|
|
@@ -382,6 +382,9 @@ RCS_TAR_IGNORE := --exclude SCCS --exclude BitKeeper --exclude .svn --exclude CV
|
|
|
scripts_basic:
|
|
|
$(Q)$(MAKE) $(build)=scripts/basic
|
|
|
|
|
|
+# To avoid any implicit rule to kick in, define an empty command.
|
|
|
+scripts/basic/%: scripts_basic ;
|
|
|
+
|
|
|
.PHONY: outputmakefile
|
|
|
# outputmakefile generate a Makefile to be placed in output directory, if
|
|
|
# using a seperate output directory. This allows convinient use
|
|
@@ -444,9 +447,8 @@ ifeq ($(config-targets),1)
|
|
|
include $(srctree)/arch/$(ARCH)/Makefile
|
|
|
export KBUILD_DEFCONFIG
|
|
|
|
|
|
-config: scripts_basic outputmakefile FORCE
|
|
|
- $(Q)$(MAKE) $(build)=scripts/kconfig $@
|
|
|
-%config: scripts_basic outputmakefile FORCE
|
|
|
+config %config: scripts_basic outputmakefile FORCE
|
|
|
+ $(Q)mkdir -p include/linux
|
|
|
$(Q)$(MAKE) $(build)=scripts/kconfig $@
|
|
|
|
|
|
else
|
|
@@ -641,8 +643,13 @@ quiet_cmd_vmlinux__ ?= LD $@
|
|
|
# Generate new vmlinux version
|
|
|
quiet_cmd_vmlinux_version = GEN .version
|
|
|
cmd_vmlinux_version = set -e; \
|
|
|
- . $(srctree)/scripts/mkversion > .tmp_version; \
|
|
|
- mv -f .tmp_version .version; \
|
|
|
+ if [ ! -r .version ]; then \
|
|
|
+ rm -f .version; \
|
|
|
+ echo 1 >.version; \
|
|
|
+ else \
|
|
|
+ mv .version .old_version; \
|
|
|
+ expr 0$$(cat .old_version) + 1 >.version; \
|
|
|
+ fi; \
|
|
|
$(MAKE) $(build)=init
|
|
|
|
|
|
# Generate System.map
|
|
@@ -756,6 +763,7 @@ endif # ifdef CONFIG_KALLSYMS
|
|
|
# vmlinux image - including updated kernel symbols
|
|
|
vmlinux: $(vmlinux-lds) $(vmlinux-init) $(vmlinux-main) $(kallsyms.o) FORCE
|
|
|
$(call if_changed_rule,vmlinux__)
|
|
|
+ $(Q)rm -f .old_version
|
|
|
|
|
|
# The actual objects are generated when descending,
|
|
|
# make sure no implicit rule kicks in
|
|
@@ -806,7 +814,7 @@ ifneq ($(KBUILD_MODULES),)
|
|
|
endif
|
|
|
|
|
|
prepare0: prepare prepare1 FORCE
|
|
|
- $(Q)$(MAKE) $(build)=$(srctree)
|
|
|
+ $(Q)$(MAKE) $(build)=.
|
|
|
|
|
|
# All the preparing..
|
|
|
prepare-all: prepare0
|
|
@@ -848,7 +856,7 @@ include/asm:
|
|
|
|
|
|
# Split autoconf.h into include/linux/config/*
|
|
|
|
|
|
-include/config/MARKER: include/linux/autoconf.h
|
|
|
+include/config/MARKER: scripts/basic/split-include include/linux/autoconf.h
|
|
|
@echo ' SPLIT include/linux/autoconf.h -> include/config/*'
|
|
|
@scripts/basic/split-include include/linux/autoconf.h include/config
|
|
|
@touch $@
|
|
@@ -1053,6 +1061,7 @@ help:
|
|
|
@echo ' rpm - Build a kernel as an RPM package'
|
|
|
@echo ' tags/TAGS - Generate tags file for editors'
|
|
|
@echo ' cscope - Generate cscope index'
|
|
|
+ @echo ' kernelrelease - Output the release version string'
|
|
|
@echo ''
|
|
|
@echo 'Static analysers'
|
|
|
@echo ' buildcheck - List dangling references to vmlinux discarded sections'
|