An error occurred fetching the project authors.
  1. 21 Feb, 2003 3 commits
  2. 14 Feb, 2003 1 commit
    • Kai Germaschewski's avatar
      kbuild: Move the version magic generation into module postprocessing · 2ec54bc1
      Kai Germaschewski authored
      Since we'll have to always do module postprocessing shortly, we can as well
      get rid of the special cased init/vermagic.o which needed to be compiled
      before descending, and instead include the current version magic string
      during post processing. For that purpose, the generation of the string is
      moved from init/vermagic.c to include/linux/vermagic.h.
      
      People who externally maintain modules will also be happy about that.
      2ec54bc1
  3. 14 Jan, 2003 1 commit
    • Kai Germaschewski's avatar
      Module Sanity Check · 1d411b80
      Kai Germaschewski authored
      This patch, based on Rusty's implementation, adds a special section
      to vmlinux and all modules, which contain the kernel version
      string, values of some particularly important config options
      (SMP,preempt,proc family) and the gcc version.
      
      When inserting a module, the version string is checked against the
      kernel version string and loading is rejected if they don't match.
      
      The version string is actually added to the modules during the
      final .ko generation, so that a changed version string does only
      cause relinking, not recompilation, which is a major performance
      improvement over the old 2.4 way of doing things.
      1d411b80
  4. 15 Dec, 2002 1 commit
  5. 01 Nov, 2002 1 commit
  6. 28 Oct, 2002 1 commit
  7. 23 Oct, 2002 2 commits
    • Kai Germaschewski's avatar
      kbuild: Convert build and modversion phases · e846b41a
      Kai Germaschewski authored
      Alright, so now actually all four phases are converted to new-style,
      i.e. we call make -f scripts/Makefile.<phase> which includes the
      actual subdir Makefile.
      
      The obvious drawback is some code duplication between the four
      scripts/Makefile.<phase>, which could easily be overcome including
      shared parts, but since I'm going for maximum performance, I did not
      for now.
      
      Rules.make is empty now ;) (Well, not quite, since if it was 0 bytes,
      make mrproper would remove it...)
      e846b41a
    • Kai Germaschewski's avatar
      kbuild: Remove some compatibility code, $(echo_target) · 4123c52c
      Kai Germaschewski authored
      Including Rules.make after make -C stopped working with the
      fixdep changes, so the other code trying to salvage backward
      compatibility should go as well.
      4123c52c
  8. 10 Oct, 2002 1 commit
    • Sam Ravnborg's avatar
      kbuild: Distributed clean, misc. · 57733624
      Sam Ravnborg authored
      o Move sound/oss file list to sound/oss/Makefile
      o Remove files non-existing in the tree (khttp,net/802/submenu)
      o scripts/* are handled by scripts makefile
      o Do not delete .config*, be more explicit
      o Add MC* - files generated by Menuconfig in toplevel dir
      57733624
  9. 07 Oct, 2002 1 commit
  10. 18 Sep, 2002 1 commit
  11. 16 Aug, 2002 1 commit
    • Kai Germaschewski's avatar
      kbuild: Remove HPATH, general cleanup · 66f1fd2f
      Kai Germaschewski authored
      HPATH won't work with separate obj/src dirs, since it doesn't specify
      if we want to look at source or generated files. Fortunately, most uses
      in arch/*/Makefile were superfluous anyway, the others were converted to
      explicitly $(srctree) or $(objtree).
      
      Additionally, a bit more of srctree / objtree related cleanup.
      66f1fd2f
  12. 17 Jun, 2002 1 commit
    • Kai Germaschewski's avatar
      kbuild: Introduce $(obj), $(src) · 99fd37ec
      Kai Germaschewski authored
      For separate source and object directories, Rules.make needs
      to know where the files live.
      
      For all the normal variables, $(obj-[ymn]) etc, it can figure that
      out by itself, but for explicit rules to generate files it needs
      help. 
      
      So there $(obj)/target.o indicates that this file lives in the 
      object directory, as opposed to $(src)/target.c, which lives in
      the source dir.
      
      For now $(obj) = $(src) = ., but convert some Makefiles to it
      already.
      99fd37ec
  13. 09 Jun, 2002 1 commit
  14. 06 Jun, 2002 1 commit
    • Kai Germaschewski's avatar
      kbuild: Enforce UTS limit, use LANG=C for date/time · 561e79b0
      Kai Germaschewski authored
      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.
      561e79b0
  15. 05 Jun, 2002 2 commits
    • Kai Germaschewski's avatar
      kbuild: Fix calling of scripts · d02c2b1f
      Kai Germaschewski authored
      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.
      d02c2b1f
    • Kai Germaschewski's avatar
      kbuild: Fix make -s (silent) and add a quiet mode · 00b454db
      Kai Germaschewski authored
      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.
      00b454db
  16. 28 May, 2002 1 commit
    • Kai Germaschewski's avatar
      kbuild: Normal sources should not include <linux/compile.h> · c7355265
      Kai Germaschewski authored
      include/linux/compile.h is a generated file, only init/Makefile knows 
      about it - including it outside of init/* will cause trouble on
      parallel builds.
      
      Also, when compile.h already exists when 'make dep' is run, that'll pick
      up a dependency on $(TOPDIR)/include/linux/compile.h. So init/Makefile
      needs to tell make that this is actually the same file as 
      ../include/linux.compile.h
      c7355265
  17. 24 May, 2002 1 commit
    • Kai Germaschewski's avatar
      kbuild: Use consistently FORCE instead of dummy · cc4749dc
      Kai Germaschewski authored
      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. 
      cc4749dc
  18. 20 May, 2002 1 commit
    • Kai Germaschewski's avatar
      kbuild: Standardize building of init/* · 5674ceba
      Kai Germaschewski authored
      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.
      5674ceba