summaryrefslogtreecommitdiff
path: root/scripts
AgeCommit message (Collapse)Author
2002-07-29MergeKai Germaschewski
2002-07-30[PATCH] kbuild: fix warnings in fixdep when compiled with -pedanticSam Ravnborg
2002-07-28Merge tp1.ruhr-uni-bochum.de:/home/kai/kernel/v2.5/linux-2.5Kai Germaschewski
into tp1.ruhr-uni-bochum.de:/home/kai/kernel/v2.5/linux-2.5.make-fix
2002-07-27kbuild: Make scripts/compile.h when sh != bashKai Germaschewski
Contributed by Arkadiusz Miskiewicz
2002-07-27kbuild: Fix compiling/installing as different usersKai Germaschewski
"make bzImage && sudo make install" had the problem that during the "sudo make install" the build system would notice that the information in include/linux/compile.h is not accurate (it says "compiled by <user>", but we are root), thus causing compile.h to be updated and leading to some recompiles. We now only update "compile.h" if the current user is the owner of include/linux/autoconf.h, i.e. the user who did the "make *config". So the above sequence will correctly state "compiled by <user>".
2002-07-25[PATCH] Remove docgen + gen-all-syms targetsSam Ravnborg
Removed unused targets to CHMOD_FILES in scripts This allow a fresh kernel to start the build process without bailing about docgen.
2002-07-24[PATCH] docbook: scripts/docproc improved [5/9]Sam Ravnborg
This is the first patch in a serie to clean-up the DocBook Makefile. docproc is extented to include the functionality previously provided by gen-all-syms and docgen. Furthermore the necessity to specify which files to search for EXPORT_SYMBOL are removed, the information is now read in the .tmpl files. docproc is furthermore extended to generate dependency information. gen-all-syms and docgen are deleted.
2002-07-24[PATCH] kernel-doc: Fix warnings [4/9]Sam Ravnborg
During processing of skbuff.h three warnings were issued, because members of an enum within a struct were nor documented. This patch fixes kernel-doc not to spit out these non-valid warnings. Originally by Thunder.
2002-07-24[PATCH] kernel-doc: Generate valid DocBook syntax [3/9]Sam Ravnborg
Forward port from 2.4, originally by Alan Cox o Do not generate empty RefEntry's o Improved error reporting
2002-07-24[PATCH] kernel-doc: Improved support for man-page generation [2/9]Sam Ravnborg
Forward port from 2.4, originally by Christoph Hellwig
2002-06-19[PATCH] Fix bashisms in scripts_patch-kernelAndreas Bombe
The following trivial patch makes the patch-kernel script executable by a bare bone POSIX shell like ash. Either that, or the interpreter line has to be changed to /bin/bash. The same patch applies to 2.4 (with some line offset).
2002-06-17kbuild: Improve output and error behavior when making modversions.Kai Germaschewski
Reduce the amount of output in verbose (default) mode and stop immediately on error. (Sam Ravnborg/me)
2002-06-17kbuild: Handle removed headersKai Germaschewski
New and old way to handle dependencies would choke when a file #include'd by other files was removed, since the dependency on it was still recorded, but since it was gone, make has no idea what to do about it (and would complain with "No rule to make <file> ...") We now add targets for all the previously included files, so make will just ignore them if they disappear.
2002-06-10kbuild: Fix unaligned access in sanity checkKai Germaschewski
fixdep does a sanity check to make sure that it got endianness and sizeof(int) right. As opposed to the main loops, this sanity check forgot to ensure proper alignment.
2002-06-09kbuild: Improve output alignmentKai Germaschewski
by Sam Ravnborg
2002-06-09kbuild: Pass <target> to fixdepKai Germaschewski
cpp -MD guesses the target name from the source file name, but not always correctly, e.g. when compiling fixdep, it generates prequisites for fixdep.o instead of fixdep. fixdep now fixes up the -MD generated output to contain the right target, which is the one we pass on the command line.
2002-06-06kbuild: dependency generation fixesKai Germaschewski
o Fix a bug in fixdep.c, which could cause segfaults o Make sure that we build fixdep first of all, since we need it to build host programs.
2002-06-06kbuild: Fix extracting of CONFIG_ referencesKai Germaschewski
by Sam Ravnborg: fixdep, when adding dependencies to config entires fails to take into account the last part of a config entry, if it contains more than one underscore. Example: CONFIG_PROC_FS generates $(wildcard include/config/proc.h) but should generate $(wildcard include/config/proc/fs.h) Attached patch fixes this.
2002-06-06kbuild: Add rules for compiling programs on the hostKai Germaschewski
At a couple of places, we need to build programs which run on the compile host during building the kernel. Add a new variable "host-progs" to declare such programs. Rules.make will automatically provide rules to compile these programs with appropriate command lines etc. Compared to having explicit rules spread around for doing so, this has the following advantages: o shorter o automatically figures out dependencies and handles changing command lines o Nicer output in quiet mode ;-) Compiling host programs from multiple sources is also possible, analogous to multi-part objects. E.g. scripts/Makefile has host-progs := tkparse tkparse-objs := tkparse.o tkcond.o tkgen.o
2002-06-06kbuild: Enforce UTS limit, use LANG=C for date/timeKai Germaschewski
Patch by Keith Owens, ported to 2.5. If the length of $(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION) exceeds 64 characters it silently corrupts the utsname data, resulting in garbage for uname -r and problems running the kernel and modules. Abort if KERNELRELEASE is too long. Truncation is not good enough, it results in ambiguous /lib/modules/`uname -r` contents. Ensure that the date/time in uname are always in LANG=C. Users with other languages report that 8 bit values cause the boot messages to go haywire.
2002-06-05kbuild: Fix tolower() usage in scripts/fixdep.cKai Germaschewski
Not that it matters, since it's only used with 7bit chars, but anyway.
2002-06-05kbuild: Remove 2048 symbol limit from make xconfigKai Germaschewski
This patch was extracted from Keith Owens' kbuild-2.5 by patch@luckynet.dynu.com
2002-06-05kbuild: Additional config targets for testingKai Germaschewski
This patch adds the following targets, which generate some configs useful for testing - which kind should be clear from the names: o allyesconfig o allmodconfig o allnoconfig o randconfig It also adds o defconfig which does the same as make oldconfig but uses the defaults for all new options without asking. The actual patch was done by Ghozlane Toumi, maintained in kbuild-2.5 by Keith Owens, and extracted by Sam Ravnborg and patch@luckynet.dynu.com.
2002-06-05kbuild: Use a standard "update-if-changed"Kai Germaschewski
For some cases, we cannot decide if a target would change just by looking at its prequisites, i.e. it's quite likely that it remains the same even though a prequisite changed. The updated timestamp would cause a lot of unnecessary recompiles. In this case, we actually generate a temporary file, compare it to the old file and only the contents are different do overwrite the old file. The "update-if-changed" snippet remains always the same, so let's put it into a macro instead of duplicating it. After that change, scripts/mkversion_h is so small that we rather put the three remaining lines directly into the Makefile.
2002-06-05kbuild: Make dependencies at compile timeKai Germaschewski
Making dependencies once up front is not ideal. For one, you don't need them initially, since when you don't have the .o file, you bet you have to build it no matter what the dependencies say - dependencies are about deciding when to *re*build. There's more reasons, like: o you don't even know which files you'll build, so you have to go over all files (even over drivers/{sbus,s390,...} on i386) o generated files don't exist yet, so you cannot pick up dependencies on them o even if dependencies are right initially, they change when you work on your tree or patch it, and nobody will notice unless you run "make dep" explicitly again Anyway, gcc knows hows to emit a correct dependency list, so we just use that. Well, a little bit of hacking is necessary to remove the dependency on autoconf.h and put in individual CONFIG_WHAT_EVER dependencies instead, since otherwise changing one config option would cause everything to be rebuilt. I should add that I didn't come up with this all by myself, most work is actually done in gcc and there were discussions about using -MD on kbuild-devel way back, so I should mention Keith Owens and Michael Elizabeth Chastain, and probably others that I forgot, so I apologize just in case.
2002-06-05kbuild: Fix calling of scriptsKai Germaschewski
We source some scripts, but still pass parameters to them, e.g. . mk_version_h $@ $(KERNELRELEASE) $(VERSION) ... This does not work for all kinds of /bin/sh (it does for bash, that's why I did not notice). The fix is easy: Just mark the scripts executable and call instead of source them. Unfortunately, patch(1) doesn't understand about propagating chmod. bk does, so changing the tree isn't hard, and we introduce an explicit chmod a+x executed during the build for propagating this change into those trees which get "traditionally" patched up.
2002-06-05kbuild: Fix 'make some/dir/foo.lst'Kai Germaschewski
Just use 'make some/dir/foo.lst' to produce mixed source code and assembly for debugging. (If the object gets linked in and you have a System.map, it'll relocate appropriately) Apart from the needed Makefile bits, also clean up the script "makelst".
2002-06-05kbuild: Fix make -s (silent) and add a quiet modeKai Germaschewski
Suppress echoing of commands when using "make -s", so that make -s does indeed have the effect one would expect. Add a quiet mode, which will print not the entire command but only one line per rule. To turn it on, use make KBUILD_VERBOSE=0 vmlinux/whatever or set KBUILD_VERBOSE=0 in your environment. For now, the verbose mode is default, which gives you the old behavior of printing all commands. The output in quiet mode is based on what Keith Owens' kbuild-2.5 does, I like, I did not want to invent yet another output format.
2002-06-02Proper usage of isupper/tolower for build scripts.Linus Torvalds
2002-05-28kbuild: Build targets locallyKai Germaschewski
Targets should always be built from the Makefile local to the subdir they are in. So build scripts/* from scripts/Makefile. Clean up scripts/Makefile as we go.
2002-05-24kbuild: Use consistently FORCE instead of dummyKai Germaschewski
FORCE is the de-facto standard name for a prequisite to force recompilation, so instead of using a mix of 'dummy','FORCE' and 'FORCE_RECOMPILE' use 'FORCE' everywhere. Also, move figuring out the path relative to the top level dir into Rules.make, instead of calling an external script.
2002-05-22kbuild: Fix warning when .version doesn't exist yetKai Germaschewski
2002-05-21kbuild: Regenerate include/linux/version.h only if necessaryKai Germaschewski
Before overwriting version.h, check if it actually changed - otherwise we will unnecessarily rebuild a lot of files, as e.g. module.h depends on version.h, and many files include module.h
2002-05-20kbuild: Standardize building of init/*Kai Germaschewski
There's no good reason to build the objects in init/ explicitly from the top-level Makefile. Instead, handle init/ like every other subdir, which also provides the automatic checks for a changed command line etc.
2002-05-11Makefile cleanup: Don't rebuild init/version.o on each buildKai Germaschewski
init/version.o includes include/linux/compile.h. As compile.h was regenerated each time make was run, init/version.o was recompiled each time. To avoid this, use the following solution: Generate a temporary new compile.h, and only replace the old one if the new one is different. We consider the files different if more than just date/time changed, since otherwise we would have to rebuild every time anyway. Still, the two files turned out to be different all the time, as we put a generation number into them which is incremented at each invocation of "make". The generation number update is now only done when the kernel config changes, which makes more sense, anyway. So, the UTS_VERSION and generation number now relate to the time the kernel was configured, not the time the actual "make vmlinux" was run, which should be fine.
2002-05-11Add scripts to generate include/linux/{version,compile}.hKai Germaschewski
Also, put the #define UTS_MACHINE ... from the command line into the header as well.
2002-04-28[PATCH] Also look in /boot for .configDave Jones
Try to get config file distro placed in boot.
2002-04-28[PATCH] fix xconfig.Dave Jones
We now have so many CONFIG_ options we overflow a buffer in xconfig. Doubling the size should see us until someone either writes a replacement, or can be bothered to make it dynamically allocate.
2002-04-28[PATCH] help texts for patch-kernelDave Jones
2002-04-22Make "oldconfig" look for old defaults first in .config, thenLinus Torvalds
in /etc/kernel-config, and only if that fails in the architecture- specific defconfig.
2002-04-02[PATCH] updates for make rpmDave Jones
- install .config in /boot - provide kernel-drm package if drm is compiled - handle extra '-' marks so that linux-2.5.8-dj3-voon works.
2002-03-07[PATCH] cramfs updates for 2.5.6-pre2Daniel Quinlan
Documentation/filesystems/cramfs.txt - remove comment about ROM size limit - fix up magic - update location of tools fs/cramfs/README - add note about sorted directory entries - mkcramfs compile-time DO_HOLES option replaced by run-time -z option - update tools section - add note about PAGE_CACHE_SIZE possibly changing on arm and ia64 fs/cramfs/inode.c - statfs->f_namelen = CRAMFS_MAXPATHLEN include/linux/cramfs_fs.h - add CRAMFS_MAXPATHLEN (252) - clarify CRAMFS_SUPPORTED_FLAGS definition scripts/cramfs - directory removed, the cramfs user-space tools are now located at <http://sourceforge.net/projects/cramfs/>.
2002-03-01[PATCH] 2.5.6-pre2 I: 2.2.19-pre2 SYNCRusty Russell
This set of one-liners are the ones which have already gone into 2.2.19-pre2. Andrey Panin <pazke@orbita1.ru>: [PATCH] arch_i386_kernel_smpboot.c missing __init: this patch adds missing __init directive for div64() function in arch/i386/kernel/smpboot.c. div64() is only used synchronize_tsc_bp() function which is marked __init. Andrey Panin <pazke@orbita1.ru>: [PATCH] remove annoying ISAPNP message: This patch removes useless messages like: "isapnp: Calling quirk for 02:00". John Fremlin <john@fremlin.de>: Patch to fix off by one in ide-scsi: Patch to fix off by one in ide-scsi To see it is correct compare with ide-cd behaviour René Scharfe <l.s.r@web.de>: [PATCH] compiler warnings in scripts_tkgen.c: this patch fixes two compiler warnings during make xconfig which turn up if one uses -Wshadow
2002-02-12[PATCH] menuconfig: fix error exit if awk failsMichael Elizabeth Chastain
This one-liner fixes an error case in Menuconfig when awk fails. Written by Andrew Church (achurch@achurch.org). Reviewed and tested by Michael Elizabeth Chastain (mec@shout.net). Michael Elizabeth Chastain ===
2002-02-05[PATCH] fix xconfig for new help systemMichael Elizabeth Chastain
Here is a patch to enhance xconfig to read the new Config.help files. Olaf Dietsche wrote this, and Steven Cole passed it on to me. Testing: Steven Cole tested it, and I tested it.
2002-02-05v2.5.2.6 -> v2.5.3Linus Torvalds
- Doug Ledford: i810 audio driver update - Evgeniy Polyakov: update various SCSI drivers to new locking - David Howells: syscall latency improvement, try 2 - Francois Romieu: dscc4 driver update - Patrick Mochel: driver model fixes - Andrew Morton: clean up a few details in ext3 inode initialization - Pete Wyckoff: make x86 machine check print out right address.. - Hans Reiser: reiserfs update - Richard Gooch: devfs update - Greg KH: USB updates - Dave Jones: PNPBIOS - Nathan Scott: extended attributes - Corey Minyard: clean up zlib duplication (triplication..)
2002-02-05v2.5.2.4 -> v2.5.2.4.1Linus Torvalds
- Patrick Mochel: devicefs locking cleanups, refcount fixes - Brian Gerst: apic timer cleanup - Adam Richter: fix loop over block device bio breakage, ipfwadm compile fix - Peter Anvin: bootproto v2.03 - me: split up Configure.help over the subdirectories where it is used
2002-02-04v2.4.14.5 -> v2.4.14.6Linus Torvalds
- Russell King: /proc/cpuinfo for ARM - Paul Mackerras: PPC update (cpuinfo etc) - Nicolas Aspert: fix Intel 8xx agptlb flush - Marko Myllynen: "Lindent" doesn't really need bash ;) - Alexander Viro: /proc/cpuinfo for s390/s390x/sh, /proc/pci cleanup - Alexander Viro: make lseek work on seqfiles
2002-02-04v2.4.14.1 -> v2.4.14.2Linus Torvalds
- Ivan Kokshaysky: fix alpha dec_and_lock with modules, for alpha config entry - Kai Germaschewski: ISDN updates - Jeff Garzik: network driver updates, sysv fs update - Kai Mäkisara: SCSI tape update - Alan Cox: large drivers merge - Nikita Danilov: reiserfs procfs information - Andrew Morton: ext3 merge - Christoph Hellwig: vxfs livelock fix - Trond Myklebust: NFS updates - Jens Axboe: cpqarray + cciss dequeue fix - Tim Waugh: parport_serial base_baud setting - Matthew Dharm: usb-storage Freecom driver fixes - Dave McCracken: wait4() thread group race fix
2002-02-04v2.4.10.5 -> v2.4.10.6Linus Torvalds
- various: fix some module exports uncovered by stricter error checking - Urban Widmark: make smbfs use same error define names as samba and win32 - Greg KH: USB update - Tom Rini: MPC8xx ppc update - Matthew Wilcox: rd.c page cache flushing fix - Richard Gooch: devfs race fix: rwsem for symlinks - Björn Wesen: Cris arch update - Nikita Danilov: reiserfs cleanup - Tim Waugh: parport update - Peter Rival: update alpha SMP bootup to match wait_init_idle fixes - Trond Myklebust: lockd/grace period fix