You need to sign in or sign up before continuing.
提交 2b8dfec8 编写于 作者: L Linus Torvalds

Merge master.kernel.org:/pub/scm/linux/kernel/git/sam/kbuild

...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
# 1) Generate asm-offsets.h # 1) Generate asm-offsets.h
##### #####
# 1) Generate asm-offsets.h # 1) Generate asm-offsets.h
# #
offsets-file := include/asm-$(ARCH)/asm-offsets.h offsets-file := include/asm-$(ARCH)/asm-offsets.h
...@@ -22,6 +22,7 @@ sed-$(CONFIG_MIPS) := "/^@@@/s///p" ...@@ -22,6 +22,7 @@ sed-$(CONFIG_MIPS) := "/^@@@/s///p"
quiet_cmd_offsets = GEN $@ quiet_cmd_offsets = GEN $@
define cmd_offsets define cmd_offsets
mkdir -p $(dir $@); \
cat $< | \ cat $< | \
(set -e; \ (set -e; \
echo "#ifndef __ASM_OFFSETS_H__"; \ echo "#ifndef __ASM_OFFSETS_H__"; \
...@@ -43,6 +44,6 @@ arch/$(ARCH)/kernel/asm-offsets.s: arch/$(ARCH)/kernel/asm-offsets.c FORCE ...@@ -43,6 +44,6 @@ arch/$(ARCH)/kernel/asm-offsets.s: arch/$(ARCH)/kernel/asm-offsets.c FORCE
$(Q)mkdir -p $(dir $@) $(Q)mkdir -p $(dir $@)
$(call if_changed_dep,cc_s_c) $(call if_changed_dep,cc_s_c)
$(srctree)/$(offsets-file): arch/$(ARCH)/kernel/asm-offsets.s Kbuild $(obj)/$(offsets-file): arch/$(ARCH)/kernel/asm-offsets.s Kbuild
$(call cmd,offsets) $(call cmd,offsets)
...@@ -334,7 +334,7 @@ KALLSYMS = scripts/kallsyms ...@@ -334,7 +334,7 @@ KALLSYMS = scripts/kallsyms
PERL = perl PERL = perl
CHECK = sparse CHECK = sparse
CHECKFLAGS := -D__linux__ -Dlinux -D__STDC__ -Dunix -D__unix__ CHECKFLAGS := -D__linux__ -Dlinux -D__STDC__ -Dunix -D__unix__ $(CF)
MODFLAGS = -DMODULE MODFLAGS = -DMODULE
CFLAGS_MODULE = $(MODFLAGS) CFLAGS_MODULE = $(MODFLAGS)
AFLAGS_MODULE = $(MODFLAGS) AFLAGS_MODULE = $(MODFLAGS)
...@@ -382,6 +382,9 @@ RCS_TAR_IGNORE := --exclude SCCS --exclude BitKeeper --exclude .svn --exclude CV ...@@ -382,6 +382,9 @@ RCS_TAR_IGNORE := --exclude SCCS --exclude BitKeeper --exclude .svn --exclude CV
scripts_basic: scripts_basic:
$(Q)$(MAKE) $(build)=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 .PHONY: outputmakefile
# outputmakefile generate a Makefile to be placed in output directory, if # outputmakefile generate a Makefile to be placed in output directory, if
# using a seperate output directory. This allows convinient use # using a seperate output directory. This allows convinient use
...@@ -444,9 +447,8 @@ ifeq ($(config-targets),1) ...@@ -444,9 +447,8 @@ ifeq ($(config-targets),1)
include $(srctree)/arch/$(ARCH)/Makefile include $(srctree)/arch/$(ARCH)/Makefile
export KBUILD_DEFCONFIG export KBUILD_DEFCONFIG
config: scripts_basic outputmakefile FORCE config %config: scripts_basic outputmakefile FORCE
$(Q)$(MAKE) $(build)=scripts/kconfig $@ $(Q)mkdir -p include/linux
%config: scripts_basic outputmakefile FORCE
$(Q)$(MAKE) $(build)=scripts/kconfig $@ $(Q)$(MAKE) $(build)=scripts/kconfig $@
else else
...@@ -641,8 +643,13 @@ quiet_cmd_vmlinux__ ?= LD $@ ...@@ -641,8 +643,13 @@ quiet_cmd_vmlinux__ ?= LD $@
# Generate new vmlinux version # Generate new vmlinux version
quiet_cmd_vmlinux_version = GEN .version quiet_cmd_vmlinux_version = GEN .version
cmd_vmlinux_version = set -e; \ cmd_vmlinux_version = set -e; \
. $(srctree)/scripts/mkversion > .tmp_version; \ if [ ! -r .version ]; then \
mv -f .tmp_version .version; \ rm -f .version; \
echo 1 >.version; \
else \
mv .version .old_version; \
expr 0$$(cat .old_version) + 1 >.version; \
fi; \
$(MAKE) $(build)=init $(MAKE) $(build)=init
# Generate System.map # Generate System.map
...@@ -756,6 +763,7 @@ endif # ifdef CONFIG_KALLSYMS ...@@ -756,6 +763,7 @@ endif # ifdef CONFIG_KALLSYMS
# vmlinux image - including updated kernel symbols # vmlinux image - including updated kernel symbols
vmlinux: $(vmlinux-lds) $(vmlinux-init) $(vmlinux-main) $(kallsyms.o) FORCE vmlinux: $(vmlinux-lds) $(vmlinux-init) $(vmlinux-main) $(kallsyms.o) FORCE
$(call if_changed_rule,vmlinux__) $(call if_changed_rule,vmlinux__)
$(Q)rm -f .old_version
# The actual objects are generated when descending, # The actual objects are generated when descending,
# make sure no implicit rule kicks in # make sure no implicit rule kicks in
...@@ -806,7 +814,7 @@ ifneq ($(KBUILD_MODULES),) ...@@ -806,7 +814,7 @@ ifneq ($(KBUILD_MODULES),)
endif endif
prepare0: prepare prepare1 FORCE prepare0: prepare prepare1 FORCE
$(Q)$(MAKE) $(build)=$(srctree) $(Q)$(MAKE) $(build)=.
# All the preparing.. # All the preparing..
prepare-all: prepare0 prepare-all: prepare0
...@@ -848,7 +856,7 @@ include/asm: ...@@ -848,7 +856,7 @@ include/asm:
# Split autoconf.h into include/linux/config/* # 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/*' @echo ' SPLIT include/linux/autoconf.h -> include/config/*'
@scripts/basic/split-include include/linux/autoconf.h include/config @scripts/basic/split-include include/linux/autoconf.h include/config
@touch $@ @touch $@
...@@ -1053,6 +1061,7 @@ help: ...@@ -1053,6 +1061,7 @@ help:
@echo ' rpm - Build a kernel as an RPM package' @echo ' rpm - Build a kernel as an RPM package'
@echo ' tags/TAGS - Generate tags file for editors' @echo ' tags/TAGS - Generate tags file for editors'
@echo ' cscope - Generate cscope index' @echo ' cscope - Generate cscope index'
@echo ' kernelrelease - Output the release version string'
@echo '' @echo ''
@echo 'Static analysers' @echo 'Static analysers'
@echo ' buildcheck - List dangling references to vmlinux discarded sections' @echo ' buildcheck - List dangling references to vmlinux discarded sections'
......
...@@ -49,6 +49,9 @@ build := -f $(if $(KBUILD_SRC),$(srctree)/)scripts/Makefile.build obj ...@@ -49,6 +49,9 @@ build := -f $(if $(KBUILD_SRC),$(srctree)/)scripts/Makefile.build obj
cmd = @$(if $($(quiet)cmd_$(1)),\ cmd = @$(if $($(quiet)cmd_$(1)),\
echo ' $(subst ','\'',$($(quiet)cmd_$(1)))' &&) $(cmd_$(1)) echo ' $(subst ','\'',$($(quiet)cmd_$(1)))' &&) $(cmd_$(1))
# Add $(obj)/ for paths that is not absolute
objectify = $(foreach o,$(1),$(if $(filter /%,$(o)),$(o),$(obj)/$(o)))
### ###
# if_changed - execute command if any prerequisite is newer than # if_changed - execute command if any prerequisite is newer than
# target, or command line has changed # target, or command line has changed
......
...@@ -91,12 +91,7 @@ foreach $object (keys(%object)) { ...@@ -91,12 +91,7 @@ foreach $object (keys(%object)) {
$from !~ /\.exit\.data$/ && $from !~ /\.exit\.data$/ &&
$from !~ /\.altinstructions$/ && $from !~ /\.altinstructions$/ &&
$from !~ /\.pdr$/ && $from !~ /\.pdr$/ &&
$from !~ /\.debug_info$/ && $from !~ /\.debug_.*$/ &&
$from !~ /\.debug_aranges$/ &&
$from !~ /\.debug_ranges$/ &&
$from !~ /\.debug_line$/ &&
$from !~ /\.debug_frame$/ &&
$from !~ /\.debug_loc$/ &&
$from !~ /\.exitcall\.exit$/ && $from !~ /\.exitcall\.exit$/ &&
$from !~ /\.eh_frame$/ && $from !~ /\.eh_frame$/ &&
$from !~ /\.stab$/)) { $from !~ /\.stab$/)) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册