diff options
author | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-07-19 17:28:19 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-07-19 17:28:19 -0400 |
commit | efffbeee5bc4168059683714b300d307f5193d69 (patch) | |
tree | 7fde51080f4534a86bfa27a430aaf7ef2bb8ef92 /Makefile | |
parent | 40b42f1ebf653cd72c32eb1a1a0b9fea2dfbfd7d (diff) | |
parent | b824325443bb010689d22262c6a4e0feb63bad56 (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild
* git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild: (33 commits)
xtensa: use DATA_DATA in xtensa
powerpc: add missing DATA_DATA to powerpc
cris: use DATA_DATA in cris
kallsyms: remove usage of memmem and _GNU_SOURCE from scripts/kallsyms.c
kbuild: use -fno-optimize-sibling-calls unconditionally
kconfig: reset generated values only if Kconfig and .config agree.
kbuild: fix the warning when running make tags
kconfig: strip 'CONFIG_' automatically in kernel configuration search
kbuild: use POSIX BRE in headers install target
Whitelist references from __dbe_table to .init
modpost white list pattern adjustment
kbuild: do section mismatch check on full vmlinux
kbuild: whitelist references from variables named _timer to .init.text
kbuild: remove hardcoded _logo names from modpost
kbuild: remove hardcoded apic_es7000 from modpost
kbuild: warn about references from .init.text to .exit.text
kbuild: consolidate section checks
kbuild: refactor code in modpost to improve maintainability
kbuild: ignore section mismatch warnings originating from .note section
kbuild: .paravirtprobe section is obsolete, so modpost doesn't need to handle it
...
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 26 |
1 files changed, 21 insertions, 5 deletions
@@ -492,7 +492,7 @@ endif | |||
492 | include $(srctree)/arch/$(ARCH)/Makefile | 492 | include $(srctree)/arch/$(ARCH)/Makefile |
493 | 493 | ||
494 | ifdef CONFIG_FRAME_POINTER | 494 | ifdef CONFIG_FRAME_POINTER |
495 | CFLAGS += -fno-omit-frame-pointer $(call cc-option,-fno-optimize-sibling-calls,) | 495 | CFLAGS += -fno-omit-frame-pointer -fno-optimize-sibling-calls |
496 | else | 496 | else |
497 | CFLAGS += -fomit-frame-pointer | 497 | CFLAGS += -fomit-frame-pointer |
498 | endif | 498 | endif |
@@ -618,7 +618,7 @@ quiet_cmd_vmlinux__ ?= LD $@ | |||
618 | cmd_vmlinux__ ?= $(LD) $(LDFLAGS) $(LDFLAGS_vmlinux) -o $@ \ | 618 | cmd_vmlinux__ ?= $(LD) $(LDFLAGS) $(LDFLAGS_vmlinux) -o $@ \ |
619 | -T $(vmlinux-lds) $(vmlinux-init) \ | 619 | -T $(vmlinux-lds) $(vmlinux-init) \ |
620 | --start-group $(vmlinux-main) --end-group \ | 620 | --start-group $(vmlinux-main) --end-group \ |
621 | $(filter-out $(vmlinux-lds) $(vmlinux-init) $(vmlinux-main) FORCE ,$^) | 621 | $(filter-out $(vmlinux-lds) $(vmlinux-init) $(vmlinux-main) vmlinux.o FORCE ,$^) |
622 | 622 | ||
623 | # Generate new vmlinux version | 623 | # Generate new vmlinux version |
624 | quiet_cmd_vmlinux_version = GEN .version | 624 | quiet_cmd_vmlinux_version = GEN .version |
@@ -742,15 +742,31 @@ debug_kallsyms: .tmp_map$(last_kallsyms) | |||
742 | 742 | ||
743 | endif # ifdef CONFIG_KALLSYMS | 743 | endif # ifdef CONFIG_KALLSYMS |
744 | 744 | ||
745 | # Do modpost on a prelinked vmlinux. The finally linked vmlinux has | ||
746 | # relevant sections renamed as per the linker script. | ||
747 | quiet_cmd_vmlinux-modpost = LD $@ | ||
748 | cmd_vmlinux-modpost = $(LD) $(LDFLAGS) -r -o $@ \ | ||
749 | $(vmlinux-init) --start-group $(vmlinux-main) --end-group \ | ||
750 | $(filter-out $(vmlinux-init) $(vmlinux-main) $(vmlinux-lds) FORCE ,$^) | ||
751 | define rule_vmlinux-modpost | ||
752 | : | ||
753 | +$(call cmd,vmlinux-modpost) | ||
754 | $(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modpost $@ | ||
755 | $(Q)echo 'cmd_$@ := $(cmd_vmlinux-modpost)' > $(dot-target).cmd | ||
756 | endef | ||
757 | |||
745 | # vmlinux image - including updated kernel symbols | 758 | # vmlinux image - including updated kernel symbols |
746 | vmlinux: $(vmlinux-lds) $(vmlinux-init) $(vmlinux-main) $(kallsyms.o) FORCE | 759 | vmlinux: $(vmlinux-lds) $(vmlinux-init) $(vmlinux-main) $(kallsyms.o) vmlinux.o FORCE |
747 | ifdef CONFIG_HEADERS_CHECK | 760 | ifdef CONFIG_HEADERS_CHECK |
748 | $(Q)$(MAKE) -f $(srctree)/Makefile headers_check | 761 | $(Q)$(MAKE) -f $(srctree)/Makefile headers_check |
749 | endif | 762 | endif |
763 | $(call vmlinux-modpost) | ||
750 | $(call if_changed_rule,vmlinux__) | 764 | $(call if_changed_rule,vmlinux__) |
751 | $(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modpost $@ | ||
752 | $(Q)rm -f .old_version | 765 | $(Q)rm -f .old_version |
753 | 766 | ||
767 | vmlinux.o: $(vmlinux-lds) $(vmlinux-init) $(vmlinux-main) $(kallsyms.o) FORCE | ||
768 | $(call if_changed_rule,vmlinux-modpost) | ||
769 | |||
754 | # The actual objects are generated when descending, | 770 | # The actual objects are generated when descending, |
755 | # make sure no implicit rule kicks in | 771 | # make sure no implicit rule kicks in |
756 | $(sort $(vmlinux-init) $(vmlinux-main)) $(vmlinux-lds): $(vmlinux-dirs) ; | 772 | $(sort $(vmlinux-init) $(vmlinux-main)) $(vmlinux-lds): $(vmlinux-dirs) ; |
@@ -1323,7 +1339,7 @@ define xtags | |||
1323 | -I __initdata,__exitdata,__acquires,__releases \ | 1339 | -I __initdata,__exitdata,__acquires,__releases \ |
1324 | -I EXPORT_SYMBOL,EXPORT_SYMBOL_GPL \ | 1340 | -I EXPORT_SYMBOL,EXPORT_SYMBOL_GPL \ |
1325 | --extra=+f --c-kinds=+px \ | 1341 | --extra=+f --c-kinds=+px \ |
1326 | --regex-asm='/ENTRY\(([^)]*)\).*/\1/'; \ | 1342 | --regex-asm='/^ENTRY\(([^)]*)\).*/\1/'; \ |
1327 | $(all-kconfigs) | xargs $1 -a \ | 1343 | $(all-kconfigs) | xargs $1 -a \ |
1328 | --langdef=kconfig \ | 1344 | --langdef=kconfig \ |
1329 | --language-force=kconfig \ | 1345 | --language-force=kconfig \ |