Permalink
Browse files

Merge branch 'for-35' of git://repo.or.cz/linux-kbuild

* 'for-35' of git://repo.or.cz/linux-kbuild: (81 commits)
  kbuild: Revert part of e8d400a to resolve a conflict
  kbuild: Fix checking of scm-identifier variable
  gconfig: add support to show hidden options that have prompts
  menuconfig: add support to show hidden options which have prompts
  gconfig: remove show_debug option
  gconfig: remove dbg_print_ptype() and dbg_print_stype()
  kconfig: fix zconfdump()
  kconfig: some small fixes
  add random binaries to .gitignore
  kbuild: Include gen_initramfs_list.sh and the file list in the .d file
  kconfig: recalc symbol value before showing search results
  .gitignore: ignore *.lzo files
  headerdep: perlcritic warning
  scripts/Makefile.lib: Align the output of LZO
  kbuild: Generate modules.builtin in make modules_install
  Revert "kbuild: specify absolute paths for cscope"
  kbuild: Do not unnecessarily regenerate modules.builtin
  headers_install: use local file handles
  headers_check: fix perl warnings
  export_report: fix perl warnings
  ...
  • Loading branch information...
2 parents b904d71 + 64ffc9f commit 1f73897861b8ef0be64ff4b801f8d6f830f683b5 @torvalds committed Jun 1, 2010
Showing with 3,023 additions and 538 deletions.
  1. +1 −0 .gitignore
  2. +7 −0 Documentation/.gitignore
  3. +5 −1 Documentation/kbuild/kbuild.txt
  4. +2 −2 Documentation/mutex-design.txt
  5. +4 −1 MAINTAINERS
  6. +40 −25 Makefile
  7. +2 −2 arch/frv/kernel/break.S
  8. +1 −1 arch/frv/kernel/entry.S
  9. +1 −1 arch/frv/kernel/head.S
  10. +5 −5 arch/frv/kernel/vmlinux.lds.S
  11. +1 −1 arch/frv/mm/tlb-miss.S
  12. +1 −1 arch/h8300/boot/compressed/head.S
  13. +1 −1 arch/h8300/boot/compressed/vmlinux.lds
  14. +6 −6 arch/ia64/include/asm/asmmacro.h
  15. +1 −1 arch/ia64/include/asm/cache.h
  16. +1 −1 arch/ia64/include/asm/percpu.h
  17. +1 −1 arch/ia64/kernel/Makefile.gate
  18. +1 −1 arch/ia64/kernel/gate-data.S
  19. +4 −4 arch/ia64/kernel/gate.S
  20. +5 −5 arch/ia64/kernel/gate.lds.S
  21. +1 −1 arch/ia64/kernel/init_task.c
  22. +1 −1 arch/ia64/kernel/ivt.S
  23. +2 −2 arch/ia64/kernel/minstate.h
  24. +1 −1 arch/ia64/kernel/paravirtentry.S
  25. +14 −14 arch/ia64/kernel/vmlinux.lds.S
  26. +1 −1 arch/ia64/kvm/vmm_ivt.S
  27. +1 −1 arch/ia64/scripts/unwcheck.py
  28. +1 −1 arch/ia64/xen/gate-data.S
  29. +1 −1 arch/ia64/xen/xensetup.S
  30. +2 −2 arch/m68knommu/kernel/vmlinux.lds.S
  31. +1 −1 arch/m68knommu/platform/68360/head-ram.S
  32. +1 −1 arch/m68knommu/platform/68360/head-rom.S
  33. +1 −1 arch/mips/lasat/image/head.S
  34. +1 −1 arch/mips/lasat/image/romscript.normal
  35. +1 −1 arch/parisc/include/asm/cache.h
  36. +1 −1 arch/parisc/include/asm/system.h
  37. +1 −1 arch/parisc/kernel/head.S
  38. +3 −3 arch/parisc/kernel/init_task.c
  39. +6 −6 arch/parisc/kernel/vmlinux.lds.S
  40. +5 −0 arch/powerpc/Makefile
  41. +1 −1 arch/powerpc/include/asm/cache.h
  42. +0 −8 arch/powerpc/include/asm/page_64.h
  43. +4 −6 arch/powerpc/kernel/vmlinux.lds.S
  44. +1 −1 arch/s390/include/asm/cache.h
  45. +1 −1 arch/s390/kernel/swsusp_asm64.S
  46. +1 −1 arch/sh/boot/compressed/vmlinux.scr
  47. +1 −1 arch/sh/include/asm/cache.h
  48. +1 −1 arch/sparc/boot/btfixupprep.c
  49. +1 −1 arch/sparc/include/asm/cache.h
  50. +1 −1 arch/um/kernel/dyn.lds.S
  51. +1 −1 arch/um/kernel/init_task.c
  52. +1 −1 arch/um/kernel/uml.lds.S
  53. +3 −0 arch/x86/.gitignore
  54. +1 −1 arch/x86/boot/compressed/mkpiggy.c
  55. +2 −2 arch/x86/boot/compressed/vmlinux.lds.S
  56. +1 −1 arch/x86/include/asm/cache.h
  57. +1 −1 arch/x86/kernel/acpi/wakeup_32.S
  58. +1 −1 arch/x86/kernel/init_task.c
  59. +1 −1 arch/x86/kernel/setup_percpu.c
  60. +2 −2 arch/x86/kernel/vmlinux.lds.S
  61. +5 −5 include/asm-generic/percpu.h
  62. +19 −19 include/asm-generic/vmlinux.lds.h
  63. +1 −1 include/linux/cache.h
  64. +1 −1 include/linux/init.h
  65. +1 −1 include/linux/init_task.h
  66. +4 −4 include/linux/linkage.h
  67. +2 −2 include/linux/percpu-defs.h
  68. +1 −1 include/linux/spinlock.h
  69. +8 −0 init/Kconfig
  70. +1 −1 kernel/module.c
  71. +1 −1 scripts/Makefile.build
  72. +1 −1 scripts/Makefile.lib
  73. +14 −10 scripts/checkincludes.pl
  74. +6 −10 scripts/checkstack.pl
  75. +11 −12 scripts/checkversion.pl
  76. +35 −13 scripts/decodecode
  77. +20 −17 scripts/export_report.pl
  78. +2 −1 scripts/gen_initramfs_list.sh
  79. +3 −1 scripts/genksyms/genksyms.c
  80. +1 −2 scripts/headerdep.pl
  81. +6 −5 scripts/headers_check.pl
  82. +10 −9 scripts/headers_install.pl
  83. +4 −2 scripts/kallsyms.c
  84. +14 −2 scripts/kconfig/Makefile
  85. +25 −2 scripts/kconfig/expr.c
  86. +2 −3 scripts/kconfig/expr.h
  87. +37 −76 scripts/kconfig/gconf.c
  88. +20 −6 scripts/kconfig/gconf.glade
  89. +6 −1 scripts/kconfig/lkc.h
  90. +4 −2 scripts/kconfig/lkc_proto.h
  91. +2 −2 scripts/kconfig/lxdialog/inputbox.c
  92. +11 −11 scripts/kconfig/lxdialog/menubox.c
  93. +19 −17 scripts/kconfig/mconf.c
  94. +26 −2 scripts/kconfig/menu.c
  95. +1,568 −0 scripts/kconfig/nconf.c
  96. +617 −0 scripts/kconfig/nconf.gui.c
  97. +95 −0 scripts/kconfig/nconf.h
  98. +18 −12 scripts/kconfig/symbol.c
  99. +2 −0 scripts/kconfig/util.c
  100. +19 −6 scripts/kconfig/zconf.tab.c_shipped
  101. +19 −6 scripts/kconfig/zconf.y
  102. +39 −15 scripts/markup_oops.pl
  103. +2 −3 scripts/mkcompile_h
  104. +88 −64 scripts/mod/modpost.c
  105. +33 −32 scripts/namespace.pl
  106. +2 −0 scripts/package/builddeb
  107. +1 −1 scripts/package/mkspec
  108. +3 −5 scripts/profile2linkerlist.pl
  109. +1 −1 scripts/rt-tester/rt-tester.py
  110. +1 −1 scripts/show_delta
  111. +30 −15 scripts/tags.sh
View
@@ -28,6 +28,7 @@ modules.builtin
*.gz
*.bz2
*.lzma
+*.lzo
*.patch
*.gcno
@@ -0,0 +1,7 @@
+filesystems/dnotify_test
+laptops/dslm
+timers/hpet_example
+vm/hugepage-mmap
+vm/hugepage-shm
+vm/map_hugetlb
+
@@ -65,7 +65,7 @@ CROSS_COMPILE
Specify an optional fixed part of the binutils filename.
CROSS_COMPILE can be a part of the filename or the full path.
-CROSS_COMPILE is also used for ccache is some setups.
+CROSS_COMPILE is also used for ccache in some setups.
CF
--------------------------------------------------
@@ -162,3 +162,7 @@ For tags/TAGS/cscope targets, you can specify more than one arch
to be included in the databases, separated by blank space. E.g.:
$ make ALLSOURCE_ARCHS="x86 mips arm" tags
+
+To get all available archs you can also specify all. E.g.:
+
+ $ make ALLSOURCE_ARCHS=all tags
@@ -66,14 +66,14 @@ of advantages of mutexes:
c0377ccb <mutex_lock>:
c0377ccb: f0 ff 08 lock decl (%eax)
- c0377cce: 78 0e js c0377cde <.text.lock.mutex>
+ c0377cce: 78 0e js c0377cde <.text..lock.mutex>
c0377cd0: c3 ret
the unlocking fastpath is equally tight:
c0377cd1 <mutex_unlock>:
c0377cd1: f0 ff 00 lock incl (%eax)
- c0377cd4: 7e 0f jle c0377ce5 <.text.lock.mutex+0x7>
+ c0377cd4: 7e 0f jle c0377ce5 <.text..lock.mutex+0x7>
c0377cd6: c3 ret
- 'struct mutex' semantics are well-defined and are enforced if
View
@@ -3242,7 +3242,7 @@ L: autofs@linux.kernel.org
S: Maintained
F: fs/autofs4/
-KERNEL BUILD
+KERNEL BUILD + files below scripts/ (unless maintained elsewhere)
M: Michal Marek <mmarek@suse.cz>
T: git git://repo.or.cz/linux-kbuild.git for-next
T: git git://repo.or.cz/linux-kbuild.git for-linus
@@ -3251,6 +3251,9 @@ S: Maintained
F: Documentation/kbuild/
F: Makefile
F: scripts/Makefile.*
+F: scripts/basic/
+F: scripts/mk*
+F: scripts/package/
KERNEL JANITORS
L: kernel-janitors@vger.kernel.org
View
@@ -183,11 +183,14 @@ SUBARCH := $(shell uname -m | sed -e s/i.86/i386/ -e s/sun4u/sparc64/ \
# CROSS_COMPILE can be set on the command line
# make CROSS_COMPILE=ia64-linux-
# Alternatively CROSS_COMPILE can be set in the environment.
+# A third alternative is to store a setting in .config so that plain
+# "make" in the configured kernel build directory always uses that.
# Default value for CROSS_COMPILE is not to prefix executables
# Note: Some architectures assign CROSS_COMPILE in their arch/*/Makefile
export KBUILD_BUILDHOST := $(SUBARCH)
ARCH ?= $(SUBARCH)
CROSS_COMPILE ?=
+CROSS_COMPILE ?= $(CONFIG_CROSS_COMPILE:"%"=%)
# Architecture as present in compile.h
UTS_MACHINE := $(ARCH)
@@ -576,9 +579,6 @@ KBUILD_CFLAGS += $(call cc-option,-Wno-pointer-sign,)
# disable invalid "can't wrap" optimizations for signed / pointers
KBUILD_CFLAGS += $(call cc-option,-fno-strict-overflow)
-# revert to pre-gcc-4.4 behaviour of .eh_frame
-KBUILD_CFLAGS += $(call cc-option,-fno-dwarf2-cfi-asm)
-
# conserve stack if available
KBUILD_CFLAGS += $(call cc-option,-fconserve-stack)
@@ -882,9 +882,6 @@ $(sort $(vmlinux-init) $(vmlinux-main)) $(vmlinux-lds): $(vmlinux-dirs) ;
PHONY += $(vmlinux-dirs)
$(vmlinux-dirs): prepare scripts
$(Q)$(MAKE) $(build)=$@
-ifdef CONFIG_MODULES
- $(Q)$(MAKE) $(modbuiltin)=$@
-endif
# Build the kernel release string
#
@@ -907,14 +904,19 @@ endif
# $(localver)
# localversion* (files without backups, containing '~')
# $(CONFIG_LOCALVERSION) (from kernel config setting)
-# $(localver-auto) (only if CONFIG_LOCALVERSION_AUTO is set)
-# ./scripts/setlocalversion (SCM tag, if one exists)
-# $(LOCALVERSION) (from make command line if provided)
+# $(LOCALVERSION) (from make command line, if provided)
+# $(localver-extra)
+# $(scm-identifier) (unique SCM tag, if one exists)
+# ./scripts/setlocalversion (only with CONFIG_LOCALVERSION_AUTO)
+# .scmversion (only with CONFIG_LOCALVERSION_AUTO)
+# + (only without CONFIG_LOCALVERSION_AUTO
+# and without LOCALVERSION= and
+# repository is at non-tagged commit)
#
-# Note how the final $(localver-auto) string is included *only* if the
-# kernel config option CONFIG_LOCALVERSION_AUTO is selected. Also, at the
-# moment, only git is supported but other SCMs can edit the script
-# scripts/setlocalversion and add the appropriate checks as needed.
+# For kernels without CONFIG_LOCALVERSION_AUTO compiled from an SCM that has
+# been revised beyond a tagged commit, `+' is appended to the version string
+# when not overridden by using "make LOCALVERSION=". This indicates that the
+# kernel is not a vanilla release version and has been modified.
pattern = ".*/localversion[^~]*"
string = $(shell cat /dev/null \
@@ -923,26 +925,32 @@ string = $(shell cat /dev/null \
localver = $(subst $(space),, $(string) \
$(patsubst "%",%,$(CONFIG_LOCALVERSION)))
-# If CONFIG_LOCALVERSION_AUTO is set scripts/setlocalversion is called
-# and if the SCM is know a tag from the SCM is appended.
-# The appended tag is determined by the SCM used.
+# scripts/setlocalversion is called to create a unique identifier if the source
+# is managed by a known SCM and the repository has been revised since the last
+# tagged (release) commit. The format of the identifier is determined by the
+# SCM's implementation.
#
# .scmversion is used when generating rpm packages so we do not loose
# the version information from the SCM when we do the build of the kernel
# from the copied source
-ifdef CONFIG_LOCALVERSION_AUTO
-
ifeq ($(wildcard .scmversion),)
- _localver-auto = $(shell $(CONFIG_SHELL) \
+ scm-identifier = $(shell $(CONFIG_SHELL) \
$(srctree)/scripts/setlocalversion $(srctree))
else
- _localver-auto = $(shell cat .scmversion 2> /dev/null)
+ scm-identifier = $(shell cat .scmversion 2> /dev/null)
endif
- localver-auto = $(LOCALVERSION)$(_localver-auto)
+ifdef CONFIG_LOCALVERSION_AUTO
+ localver-extra = $(scm-identifier)
+else
+ ifneq ($(scm-identifier),)
+ ifeq ($(LOCALVERSION),)
+ localver-extra = +
+ endif
+ endif
endif
-localver-full = $(localver)$(localver-auto)
+localver-full = $(localver)$(LOCALVERSION)$(localver-extra)
# Store (new) KERNELRELASE string in include/config/kernel.release
kernelrelease = $(KERNELVERSION)$(localver-full)
@@ -1089,11 +1097,16 @@ all: modules
PHONY += modules
modules: $(vmlinux-dirs) $(if $(KBUILD_BUILTIN),vmlinux)
$(Q)$(AWK) '!x[$$0]++' $(vmlinux-dirs:%=$(objtree)/%/modules.order) > $(objtree)/modules.order
- $(Q)$(AWK) '!x[$$0]++' $(vmlinux-dirs:%=$(objtree)/%/modules.builtin) > $(objtree)/modules.builtin
@$(kecho) ' Building modules, stage 2.';
$(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modpost
$(Q)$(MAKE) -f $(srctree)/scripts/Makefile.fwinst obj=firmware __fw_modbuild
+modules.builtin: $(vmlinux-dirs:%=%/modules.builtin)
+ $(Q)$(AWK) '!x[$$0]++' $^ > $(objtree)/modules.builtin
+
+%/modules.builtin: include/config/auto.conf
+ $(Q)$(MAKE) $(modbuiltin)=$*
+
# Target to prepare building external modules
PHONY += modules_prepare
@@ -1104,7 +1117,7 @@ PHONY += modules_install
modules_install: _modinst_ _modinst_post
PHONY += _modinst_
-_modinst_:
+_modinst_: modules.builtin
@if [ -z "`$(DEPMOD) -V 2>/dev/null | grep module-init-tools`" ]; then \
echo "Warning: you may need to install module-init-tools"; \
echo "See http://www.codemonkey.org.uk/docs/post-halloween-2.6.txt";\
@@ -1247,7 +1260,9 @@ help:
@echo ' firmware_install- Install all firmware to INSTALL_FW_PATH'
@echo ' (default: $$(INSTALL_MOD_PATH)/lib/firmware)'
@echo ' dir/ - Build all files in dir and below'
- @echo ' dir/file.[ois] - Build specified target only'
+ @echo ' dir/file.[oisS] - Build specified target only'
+ @echo ' dir/file.lst - Build specified mixed source/assembly target only'
+ @echo ' (requires a recent binutils and recent build (System.map))'
@echo ' dir/file.ko - Build module including final link'
@echo ' modules_prepare - Set up for building external modules'
@echo ' tags/TAGS - Generate tags file for editors'
@@ -21,7 +21,7 @@
#
# the break handler has its own stack
#
- .section .bss.stack
+ .section .bss..stack
.globl __break_user_context
.balign THREAD_SIZE
__break_stack:
@@ -63,7 +63,7 @@ __break_trace_through_exceptions:
# entry point for Break Exceptions/Interrupts
#
###############################################################################
- .section .text.break
+ .section .text..break
.balign 4
.globl __entry_break
__entry_break:
@@ -38,7 +38,7 @@
#define nr_syscalls ((syscall_table_size)/4)
- .section .text.entry
+ .section .text..entry
.balign 4
.macro LEDS val
@@ -542,7 +542,7 @@ __head_end:
.size _boot, .-_boot
# provide a point for GDB to place a break
- .section .text.start,"ax"
+ .section .text..start,"ax"
.globl _start
.balign 4
_start:
@@ -57,10 +57,10 @@ SECTIONS
_text = .;
_stext = .;
.text : {
- *(.text.start)
- *(.text.entry)
- *(.text.break)
- *(.text.tlbmiss)
+ *(.text..start)
+ *(.text..entry)
+ *(.text..break)
+ *(.text..tlbmiss)
TEXT_TEXT
SCHED_TEXT
LOCK_TEXT
@@ -114,7 +114,7 @@ SECTIONS
.sbss : { *(.sbss .sbss.*) }
.bss : { *(.bss .bss.*) }
- .bss.stack : { *(.bss) }
+ .bss..stack : { *(.bss) }
__bss_stop = .;
_end = . ;
@@ -15,7 +15,7 @@
#include <asm/pgtable.h>
#include <asm/spr-regs.h>
- .section .text.tlbmiss
+ .section .text..tlbmiss
.balign 4
.globl __entry_insn_mmu_miss
@@ -9,7 +9,7 @@
#define SRAM_START 0xff4000
- .section .text.startup
+ .section .text..startup
.global startup
startup:
mov.l #SRAM_START+0x8000, sp
@@ -4,7 +4,7 @@ SECTIONS
{
__stext = . ;
__text = .;
- *(.text.startup)
+ *(.text..startup)
*(.text)
__etext = . ;
}
@@ -70,12 +70,12 @@
* path (ivt.S - TLB miss processing) or in places where it might not be
* safe to use a "tpa" instruction (mca_asm.S - error recovery).
*/
- .section ".data.patch.vtop", "a" // declare section & section attributes
+ .section ".data..patch.vtop", "a" // declare section & section attributes
.previous
#define LOAD_PHYSICAL(pr, reg, obj) \
[1:](pr)movl reg = obj; \
- .xdata4 ".data.patch.vtop", 1b-.
+ .xdata4 ".data..patch.vtop", 1b-.
/*
* For now, we always put in the McKinley E9 workaround. On CPUs that don't need it,
@@ -84,11 +84,11 @@
#define DO_MCKINLEY_E9_WORKAROUND
#ifdef DO_MCKINLEY_E9_WORKAROUND
- .section ".data.patch.mckinley_e9", "a"
+ .section ".data..patch.mckinley_e9", "a"
.previous
/* workaround for Itanium 2 Errata 9: */
# define FSYS_RETURN \
- .xdata4 ".data.patch.mckinley_e9", 1f-.; \
+ .xdata4 ".data..patch.mckinley_e9", 1f-.; \
1:{ .mib; \
nop.m 0; \
mov r16=ar.pfs; \
@@ -107,11 +107,11 @@
* If physical stack register size is different from DEF_NUM_STACK_REG,
* dynamically patch the kernel for correct size.
*/
- .section ".data.patch.phys_stack_reg", "a"
+ .section ".data..patch.phys_stack_reg", "a"
.previous
#define LOAD_PHYS_STACK_REG_SIZE(reg) \
[1:] adds reg=IA64_NUM_PHYS_STACK_REG*8+8,r0; \
- .xdata4 ".data.patch.phys_stack_reg", 1b-.
+ .xdata4 ".data..patch.phys_stack_reg", 1b-.
/*
* Up until early 2004, use of .align within a function caused bad unwind info.
@@ -24,6 +24,6 @@
# define SMP_CACHE_BYTES (1 << 3)
#endif
-#define __read_mostly __attribute__((__section__(".data.read_mostly")))
+#define __read_mostly __attribute__((__section__(".data..read_mostly")))
#endif /* _ASM_IA64_CACHE_H */
@@ -31,7 +31,7 @@ extern void *per_cpu_init(void);
#endif /* SMP */
-#define PER_CPU_BASE_SECTION ".data.percpu"
+#define PER_CPU_BASE_SECTION ".data..percpu"
/*
* Be extremely careful when taking the address of this variable! Due to virtual
@@ -21,7 +21,7 @@ GATECFLAGS_gate-syms.o = -r
$(obj)/gate-syms.o: $(obj)/gate.lds $(obj)/gate.o FORCE
$(call if_changed,gate)
-# gate-data.o contains the gate DSO image as data in section .data.gate.
+# gate-data.o contains the gate DSO image as data in section .data..gate.
# We must build gate.so before we can assemble it.
# Note: kbuild does not track this dependency due to usage of .incbin
$(obj)/gate-data.o: $(obj)/gate.so
@@ -1,3 +1,3 @@
- .section .data.gate, "aw"
+ .section .data..gate, "aw"
.incbin "arch/ia64/kernel/gate.so"
@@ -21,18 +21,18 @@
* to targets outside the shared object) and to avoid multi-phase kernel builds, we
* simply create minimalistic "patch lists" in special ELF sections.
*/
- .section ".data.patch.fsyscall_table", "a"
+ .section ".data..patch.fsyscall_table", "a"
.previous
#define LOAD_FSYSCALL_TABLE(reg) \
[1:] movl reg=0; \
- .xdata4 ".data.patch.fsyscall_table", 1b-.
+ .xdata4 ".data..patch.fsyscall_table", 1b-.
- .section ".data.patch.brl_fsys_bubble_down", "a"
+ .section ".data..patch.brl_fsys_bubble_down", "a"
.previous
#define BRL_COND_FSYS_BUBBLE_DOWN(pr) \
[1:](pr)brl.cond.sptk 0; \
;; \
- .xdata4 ".data.patch.brl_fsys_bubble_down", 1b-.
+ .xdata4 ".data..patch.brl_fsys_bubble_down", 1b-.
GLOBAL_ENTRY(__kernel_syscall_via_break)
.prologue
Oops, something went wrong.

0 comments on commit 1f73897

Please sign in to comment.