aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2007-10-15kbuild: introduce ccflags-y, asflags-y and ldflags-ySam Ravnborg
Introduce ccflags-y, asflags-y and ldflags-y so we soon can deprecate use of EXTRA_CFLAGS, EXTRA_AFLAGS and EXTRA_LDFLAGS. This patch does not touch any in-tree users - thats next round. Lets get this committed first and then fix the users of the soon to be deprecated variants next. The rationale behind this change is to introduce support for makefile fragments like: ccflags-$(CONFIG_WHATEVER_DEBUG) := -DDEBUG As a replacement for the uglier: ifeq ($(CONFIG_WHATEVER_DEBUG),y) EXTRA_CFLAGS := -DDEBUG endif Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-15kbuild: enable 'make CPPFLAGS=...' to add additional options to CPPSam Ravnborg
The variable CPPFLAGS is a wellknown variable and the usage by kbuild may result in unexpected behaviour. This patch replace use of CPPFLAGS with KBUILD_CPPFLAGS all over the tree and enabling one to use: make CPPFLAGS=... to specify additional CPP commandline options. Patch was tested on following architectures: alpha, arm, i386, x86_64, mips, sparc, sparc64, ia64, m68k, s390 Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-15kbuild: enable use of AFLAGS and CFLAGS on commandlineSam Ravnborg
The previous patches was preparation. With this patch we can now say: make CFLAGS=-Os vmlinux And the option specified will be appended to the options passed to gcc for C files. For assembler use: make AFLAGS=-foo vmlinux for the same functionality. Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-15kbuild: enable 'make AFLAGS=...' to add additional options to ASSam Ravnborg
The variable AFLAGS is a wellknown variable and the usage by kbuild may result in unexpected behaviour. On top of that several people over time has asked for a way to pass in additional flags to gcc. This patch replace use of AFLAGS with KBUILD_AFLAGS all over the tree. Patch was tested on following architectures: alpha, arm, i386, x86_64, mips, sparc, sparc64, ia64, m68k, s390 Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-15kbuild: fix AFLAGS use in h8300 and m68knommuSam Ravnborg
In most cases when AFALGS is manipuled direct this is a bug and EXTRA_AFLAGS should have been used. Fix the obvious candidates. Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Cc: Greg Ungerer <gerg@uclinux.org> Cc: Yoshinori Sato <ysato@users.sourceforge.jp>
2007-10-14kbuild: check for wrong use of CFLAGSSam Ravnborg
External modules have in a few cases modifed gcc option by modifying CFLAGS. This has never been documented and was a bad practice. With the check to use KBUILD_CFLAGS it will no longer work so we better error out and tell what was wrong as a service to the external module users. This check can be overruled if KBUILD_NOPEDANTIC is set to something. Addid this possibility may allow older external module to build without any code modifications but potentially only loosing some un-important gcc options. Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-14kbuild: enable 'make CFLAGS=...' to add additional options to CCSam Ravnborg
The variable CFLAGS is a wellknown variable and the usage by kbuild may result in unexpected behaviour. On top of that several people over time has asked for a way to pass in additional flags to gcc. This patch replace use of CFLAGS with KBUILD_CFLAGS all over the tree and enabling one to use: make CFLAGS=... to specify additional gcc commandline options. One usecase is when trying to find gcc bugs but other use cases has been requested too. Patch was tested on following architectures: alpha, arm, i386, x86_64, mips, sparc, sparc64, ia64, m68k Test was simple to do a defconfig build, apply the patch and check that nothing got rebuild. Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-14kbuild: fix up CFLAGS usageSam Ravnborg
Only in very rare cases is it needed to change CFLAGS outside of arch/*/Makefile. Fix up all wrong cases - in most cases the use of EXTRA_CFLAGS is the only thing needed. Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-12kbuild: make modpost detect unterminated device id listsKees Cook
Cause modpost to fail if any device id lists are incorrectly terminated, after reporting the offender. Improved reporting by akpm Signed-off-by: Kees Cook <kees@ubuntu.com> Cc: Greg KH <greg@kroah.com> Cc: Alexey Dobriyan <adobriyan@gmail.com> Cc: Jeff Garzik <jeff@garzik.org> Cc: Ben Collins <bcollins@ubuntu.com> Cc: Michael Wu <flamingice@sourmilk.net> Cc: Rusty Russell <rusty@rustcorp.com.au> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-12kbuild: call export_report from the MakefileAdrian Bunk
The main feature is that export_report now automatically works for O= builds. Signed-off-by: Adrian Bunk <bunk@kernel.org> Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-12kbuild: move Kai Germaschewski to CREDITSSam Ravnborg
Kai is not active in kernel development these days so give him credit for his major kbuild contribution and ISDN work. Acked-by: Kai Germaschewski <kai@germaschewski.name> Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-12kconfig/menuconfig: distinguish between selected-by-another options and commentsMatej Laitl
menuconfig currently represents options implied by another option ('select' directive in Kconfig) by prefixing them with '---'. Unfortunately the same notation is used for comments. If the implied option is module capable, user can still switch between Y and M, all without any feedback until she visits option's help. (try saying M to MAC80211 and then toggling CFG80211) This patch changes notation of selected-by-another items by introducing 2 new representations for implied options: {*} or {M} for options selected by another modularized one, thus builtin or module capable, -*- or -M- for options that cannot be at the moment changed by user. The idea is to represent actual capability of the option by braces (dashes) around and to always report actual state by * or M inside. Signed-off-by: Matej Laitl <strohel@gmail.com> Acked-by: Randy Dunlap <randy.dunlap@oracle.com> Cc: Roman Zippel <zippel@linux-m68k.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-12kconfig: tristate choices with mixed tristate and boolean valuesJan Beulich
Change kconfig behavior so that mixing bool and tristate config settings in a choice is possible and has the desired effect of offering just the tristate options individually if the choice gets set to M, and a normal boolean selection if the choice gets set to Y. Signed-off-by: Jan Beulich <jbeulich@novell.com> Cc: Roman Zippel <zippel@linux-m68k.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-12include/linux/Kbuild: remove duplicate entriesAdrian Bunk
This patch removes three headers from header-y that were also listed as unifdef-y. Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-12kbuild: kill backward compatibility checksSam Ravnborg
These checks has been present for several kernel releases (> 5). So lets just get rid of them. With this we no longer check for use of: EXTRA_TARGETS, O_TARGET, L_TARGET, list-multi, export-objs There were three remaining in-tree users of O_TARGET in some unmaintained sh64 code - mail sent to the maintainer + list. Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-12kbuild: kill EXTRA_ARFLAGSSam Ravnborg
EXTRA_ARFLAGS have never been used so no need to carry around on this. A google search did not reveal any external module using this either. Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-12kbuild: fix documentation in makefiles.txtSam Ravnborg
Small error had sneaked in with respect to use of LDFLAGS_$@. LDFLAGS_$@ is not valid in normal kbuild files so do not say so. Fix a reference bug too. Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-12kbuild: call make once for all targets when O=.. is usedMilton Miller
Change the invocations of make in the output directory Makefile and the main Makefile for separate object trees to pass all goals to one $(MAKE) via a new phony target "sub-make" and the existing target _all. When compiling with separate object directories, a separate make is called in the context of another directory (from the output directory the main Makefile is called, the Makefile is then restarted with current directory set to the object tree). Before this patch, when multiple make command goals are specified, each target results in a separate make invocation. With make -j, these invocations may run in parallel, resulting in multiple commands running in the same directory clobbering each others results. I did not try to address make -j for mixed dot-config and no-dot-config targets. Because the order does matter, a solution was not obvious. Perhaps a simple check for MAKEFLAGS having -j and refusing to run would be appropriate. Signed-off-by: Milton Miller <miltonm@bga.com> Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-12kbuild: pass -g to assembler under CONFIG_DEBUG_INFORoland McGrath
The assembler for a while now supports -gdwarf to generate source line info just like the C compiler does. Source-level assembly debugging sounds like an oxymoron, but it is handy to be able to see the right source file and read its comments rather than just the disassembly. This patch enables -gdwarf for assembly files when CONFIG_DEBUG_INFO=y and the assembler supports the option. Signed-off-by: Roland McGrath <roland@redhat.com> Cc: Sam Ravnborg <sam@ravnborg.org> Cc: <linux-arch@vger.kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-12kbuild: update _shipped files for kconfig syntax cleanupSam Ravnborg
Update _shipped files so regular user does not need to have bison/flex/gperf installed. Code changes were contained in previous commit. Used following program versions (on fedora): bison (GNU Bison) 2.3 flex 2.5.33 GNU gperf 3.0.2 Cc: Adrian Bunk <bunk@kernel.org> Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-12kconfig: syntax cleanup - drop support for "depends/requires/def_boolean"Adrian Bunk
Remove the following redundant and never or rarely used kconfig syntax: - "def_boolean" (same as "def_bool") - "requires" (same as "depends on") - "depends" (same as "depends on") This patch contains the code changes and Kconfig updates. The shipped files are in next patch to let actual codechange stand out. Signed-off-by: Adrian Bunk <bunk@kernel.org> Cc: "Randy.Dunlap" <rdunlap@xenotime.net> Cc: Bryan Wu <bryan.wu@analog.com> Cc: Paul Mackerras <paulus@samba.org> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Cc: Dmitry Torokhov <dtor@mail.ru> Cc: "John W. Linville" <linville@tuxdriver.com> Cc: Roman Zippel <zippel@linux-m68k.org> Cc: Richard Purdie <rpurdie@rpsys.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-12kbuild: fix infinite make recursionSam Ravnborg
Jan Engelhardt <jengelh@computergmbh.de> reported: You can cause a recursion in kbuild/make with the following: make O=$PWD kernel/time.o make mrproper Of course no one would use O=$PWD (that's just the testcase), but this happened too often: /ws/linux/linux-2.6.23$ make O=/ws/linux/linux-2.6.23 kernel/time.o (Oops - should have been O=/ws/linux/obj-2.6.23!) Fixed by an explicit test for this case - we error out if output directory and source directory are the same. Tested-by: Jan Engelhardt <jengelh@computergmbh.de> Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-12kconfig: fix segv fault in menuconfigSam Ravnborg
With specific configurations requesting help for certain menu lines caused menuconfig to crash. This was tracked down to a null pointer bug. Thanks to "Miles Lane" <miles.lane@gmail.com> for inital reporting and to Gabriel C <nix.or.die@googlemail.com> for the backtrace that helped me locating the bug. Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-12kconfig: make comments stand out in menuconfigSam Ravnborg
Matěj Laitl <strohel@gmail.com> noticed that there was no way to distingush between comments and un-selectable menu lines. This patch marks comments with *** comment *** Cc: Matěj Laitl <strohel@gmail.com> Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-12kbuild: fix directory traversal bugSam Ravnborg
Previously kbuild choked over the following: obj-y += ../../../arch/i386/kernel/bootflag.o This has resulted in some rather ugly workarounds in current x86_64 tree. This patch fixes kbuild to allow the above and enable potential cleanups in x86_64 and maybe in other places. Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-12ia64: fix sn to add include files using EXTRA_CFLAGSSam Ravnborg
Changing the global CPPFLAGS is not the recommended way to add additional include dirs. Changed to use EXTRA_CFLAGS. Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Acked-by: Jes Sorensen <jes@sgi.com>
2007-10-12docproc: style & typo cleanupsRandy Dunlap
- fix typos/spellos in docproc.c and Makefile - add a little whitespace {while, switch} (coding style) - use NULL instead of 0 for pointer testing Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-12kbuild: apply genksyms changesSam Ravnborg
This patch updates the _shipped files for genksyms. See previous patch for actual functional changes. Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-12kbuild: __extension__ support in genksyms (fix unknown CRC warning)Sam Ravnborg
Recently the __extension__ keyword has been introduced in the kernel. Teach genksyms about this keyword so it can generate correct CRC for exported symbols that uses a symbol marked __extension__. For now only the typedef variant: __extension__ typedef ... is supported. Later we may add more variants as needed. This patch contains the actual source file changes. The following patch will hold modifications to the generated files (*_shipped) and only after the second patch the fix has effect. Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-12kbuild: fix genksyms MakefileSam Ravnborg
When enabling GENERATE_PARSER the genksyms Makefile failed to create _shipped version of generated files. Modifying keywords.gperf failed to cause a rebuild of genksyms. Fixed by specifying keywowrds .c as explicit prerequisite of the lexer. Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-12kbuild: scripts/ver_linux : correct printing of binutils versionJesper Juhl
Currently scripts/ver_linux prints "Binutils" or other random information for the version number in the "binutils" output line on some distributions. This patch corrects that. When I initially submitted a patch to correct that, I was not aware that the output from "ld -v" could differ as much as it turned out it can, so my original fix turned out to not cover all bases. This patch works correctly with all the different "ld -v" output that people posted in replys to my first patch, so it should be a clear win over what we have currently. Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com> Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-12kbuild: ver_linux fix glibc version printJesper Juhl
Fix ver_linux glibc version printing (for real this time) Alexey Dobriyan reported that commit 4a645d5ea65baaa5736bcb566673bf4a351b2ad8 broke ver_linux when glibc has a 3 digit version number, and proposed a patch. Al Viro then suggested a simpler way to solve the problem which I've then simply put into patch form. Signed-off-by: Alexey Dobriyan <adobriyan@sw.ru> Signed-off-by: Al Viro <viro@ftp.linux.org.uk> Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com> Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-12kbuild: improve scripts/gcc-version.sh output a bit when called without argsJesper Juhl
Currently, if you call scripts/gcc-version.sh without arguments it will generate this output : $ sh scripts/gcc-version.sh scripts/gcc-version.sh: line 12: [: =: unary operator expected scripts/gcc-version.sh: line 16: -E: command not found scripts/gcc-version.sh: line 17: -E: command not found 0000 Not too pretty. I believe this is an improvement : $ sh scripts/gcc-version.sh Error: No compiler specified. Usage: scripts/gcc-version.sh <gcc-command> Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com> Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-12kbuild: clean Modules.symvers in external module dirsMike Frysinger
At the moment, running `make clean` in an external module directory does a nice job of cleaning up with one exception: it leaves behind Modules.symvers. Attached patch adds this file to the clean list for external modules. Signed-off-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-12kbuild: fix segfault in modpostPetr Stetiar
Fix modpost segfault. Before: ------- ynezz@ntbk:~/linux-2.6.git$ scripts/mod/modpost vmlinux ath_pci.o Segmentation fault After: ------ ynezz@ntbk:~/linux-2.6.git$ scripts/mod/modpost vmlinux ath_pci.o FATAL: section header offset=815726848 in file 'ath_pci.o' is bigger then filesize=153968 Sam: This seems to warn for a binutils issue. Anyway modpost should not segfault. Signed-off-by: Petr Stetiar <ynezz@true.cz> Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-12kbuild: fix perl usage in export_report.plRam Pai
Fixes some subtle perl coding bug observed by Jan Engelhardt <jengelh@computergmbh.de> This patch applies on top of Adrian's fix. Signed-off-by: Ram Pai <linuxram@us.ibm.com> Acked-by: Jan Engelhardt <jengelh@computergmbh.de> Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-12kbuild: fix export_report.plAdrian Bunk
This patch fixes an annoying bug of export_report.pl missing the usages of some exports. Signed-off-by: Adrian Bunk <bunk@kernel.org> Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-12kbuild: script to check for undefined Kconfig symbolsPaolo 'Blaisorblade' Giarrusso
To avoid having to look manually for used but undefined Kconfig variables, I've written a script which tries do this efficiently, in case all other attention fail. It accounts for _MODULE suffix and for UML_ prefixes to Kconfig variable, but otherwise looks for exact matches (i.e. \<CONFIG_; this is done to exclude macros like MMCONFIG_). Undefined Kconfig variables should be not be removed without care, but for instance arch/i386/boot/ uses a bunch of undefined Kconfig vars: $ scripts/checkunknowndefines.sh arch/i386/boot/ arch/i386/boot/video.h uses undefined symbol VIDEO_400_HACK arch/i386/boot/video-vga.c uses undefined symbol VIDEO_400_HACK arch/i386/boot/video.c uses undefined symbol VIDEO_RETAIN arch/i386/boot/video.h uses undefined symbol VIDEO_RETAIN arch/i386/boot/video.h uses undefined symbol VIDEO_SVGA arch/i386/boot/video.h uses undefined symbol VIDEO_VESA arch/i386/boot/video-vesa.c uses undefined symbol VIDEO_VESA It should also be mentioned in SubmittingPatches and SubmitChecklist. Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it> Cc: Roman Zippel <zippel@linux-m68k.org> Cc: Adrian Bunk <bunk@stusta.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-12kbuild: check if we can link gettext not just compileSam Ravnborg
cygwin provides the header file but the lib file needs to be added manually. A generic fix is to check if we can compile and link a program that uses gettext() and if it fails fall back to NO_NLS. International users of cygwin may have to specify HOST_LOADLIBES := "-lintl" on the make command line. Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-12kbuild: Use Elfnn_Half as replacement for Elfnn_SectionSam Ravnborg
The Elfnn_Section is not available on all platforms, noteworthy are cygwin. Use the safe replacement _Half. Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-12Fix up more bio falloutAl Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-10-12Merge branch 'master' of ↵Linus Torvalds
master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 * 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6: [ZLIB]: Fix external builds of zlib_inflate code. [TG3]: Fix APE induced regression [SKY2]: version 1.19 [SKY2]: use netdevice stats struct [SKY2]: fiber advertise bits initialization (trivial) [SKY2]: fix power settings on Yukon XL [SKY2]: ethtool register reserved area blackout
2007-10-11missed bio_endio() in axonramAl Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-10-11[ZLIB]: Fix external builds of zlib_inflate code.David S. Miller
Move zlib_inflate_blob() out into it's own source file, infutil.c, so that things like the powerpc zImage builder in arch/powerpc/boot/Makefile don't end up trying to compile it. Signed-off-by: David S. Miller <davem@davemloft.net>
2007-10-11[TG3]: Fix APE induced regressionMatt Carlson
This patch fixes a bug caused by the recent APE support added for 5761 devices. Signed-off-by: Matt Carlson <mcarlson@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2007-10-11[SKY2]: version 1.19Stephen Hemminger
Update version to keep track of new changes. Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: David S. Miller <davem@davemloft.net>
2007-10-11[SKY2]: use netdevice stats structStephen Hemminger
Use builtin statistics structure from net device. Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: David S. Miller <davem@davemloft.net>
2007-10-11[SKY2]: fiber advertise bits initialization (trivial)Stephen Hemminger
Put initialization in sequential order (same as other constants). Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: David S. Miller <davem@davemloft.net>
2007-10-11[SKY2]: fix power settings on Yukon XLStephen Hemminger
Make sure PCI register for PHY power gets set correctly. Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: David S. Miller <davem@davemloft.net>
2007-10-11[SKY2]: ethtool register reserved area blackoutStephen Hemminger
Make sure and not dump reserved areas of device space. Touching some of these causes machine check exceptions on boards like D-Link DGE-550SX. Coding note, used a complex switch statement rather than bitmap because it is easier to relate the block values to the documentation rather than looking at a encoded bitmask. Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: David S. Miller <davem@davemloft.net>