1. 03 Aug, 2010 5 commits
    • Roman Zippel's avatar
      kconfig: print more info when we see a recursive dependency · d595cea6
      Roman Zippel authored
      Consider following kconfig file:
      
      config TEST1
      	bool "test 1"
      	depends on TEST2
      
      config TEST2
      	bool "test 2"
      	depends on TEST1
      
      Previously kconfig would report:
      
      foo:6:error: found recursive dependency: TEST2 -> TEST1 -> TEST2
      
      With the following patch kconfig reports:
      foo:5:error: recursive dependency detected!
      foo:5:  symbol TEST2 depends on TEST1
      foo:1:  symbol TEST1 depends on TEST2
      
      Note that we now report where the offending symbols are defined.
      This can be a great help for complex situations involving
      several files.
      
      Patch is originally from Roman Zippel with a few adjustments by Sam.
      Signed-off-by: default avatarSam Ravnborg <sam@ravnborg.org>
      Cc: Roman Zippel <zippel@linux-m68k.org>
      Signed-off-by: default avatarMichal Marek <mmarek@suse.cz>
      d595cea6
    • Sam Ravnborg's avatar
      kconfig: save location of config symbols · 59e89e3d
      Sam Ravnborg authored
      When we add a new config symbol save the file/line
      so we later can refer to their location.
      
      The information is saved as a property to a config symbol
      because we may have multiple definitions of the same symbol.
      
      This has the side-effect that a symbol always has
      at least one property.
      Signed-off-by: default avatarSam Ravnborg <sam@ravnborg.org>
      Cc: Roman Zippel <zippel@linux-m68k.org>
      Signed-off-by: default avatarMichal Marek <mmarek@suse.cz>
      59e89e3d
    • Sam Ravnborg's avatar
      kconfig: change nonint_oldconfig to listnewconfig · 861b4ea4
      Sam Ravnborg authored
      Rename to a name that better match the other kconfig targets.
      
      listnewconfig shall read as:
      
      - list new options compared to current configuration
      
      New options are now written to stdout so one can redirect the output.
      
      Do not exit with an error code if there is new options.
      
      These are feature changes compared to the original
      nonint_oldconfig - but as this feature has not yet been in a
      released kernel it should not matter.
      
      It is still possible to do:
      
      make listnewconfig
      lookup new config options in Kconfig*
      edit .config
      Signed-off-by: default avatarSam Ravnborg <sam@ravnborg.org>
      Cc: Aristeu Rozanski <aris@redhat.com>
      Acked-by: default avatarAristeu Rozanski <aris@redhat.com>
      Signed-off-by: default avatarMichal Marek <mmarek@suse.cz>
      861b4ea4
    • Sam Ravnborg's avatar
      kconfig: rename loose_nonint_oldconfig => oldnoconfig · ef61ca88
      Sam Ravnborg authored
      Rename target to something that fall more in line
      with the other kconfig targets.
      
      oldnoconfig shall read as:
      
      - read the old configuration and set all new options to no
      Signed-off-by: default avatarSam Ravnborg <sam@ravnborg.org>
      Cc: Aristeu Rozanski <aris@redhat.com>
      Signed-off-by: default avatarMichal Marek <mmarek@suse.cz>
      ef61ca88
    • Sam Ravnborg's avatar
      kconfig: use long options in conf · 4062f1a4
      Sam Ravnborg authored
      The list of options supported by conf is growing
      and their abbreviation did not resemble anything usefull.
      
      So drop the single letter options in favour of long options.
      
      The long options are named equal to what we know from
      the make target.
      The internal implmentation was changed to match this,
      resulting in much more readable code.
      
      Support for short options is dropped - no one is supposed
      to call this program direct anyway.
      Signed-off-by: default avatarSam Ravnborg <sam@ravnborg.org>
      Signed-off-by: default avatarMichal Marek <mmarek@suse.cz>
      4062f1a4
  2. 29 Jul, 2010 1 commit
    • Ulf Magnusson's avatar
      kconfig: fix MODULES-related bug in case of no .config · ac1ffde1
      Ulf Magnusson authored
      There seems to be a kconfig bug due to MODULES not always being
      evaluated if no .config is found. Take the following Kconfig as an
      example:
      
      config MODULES
      	def_bool y
      
      config FOO
      	def_tristate m
      
      With no .config, the following configuration is generated:
      
      CONFIG_MODULES=y
      CONFIG_FOO=y
      
      With an empty .config, the following:
      
      CONFIG_MODULES=y
      CONFIG_FOO=m
      
      Tristate choice statements can also exhibit the problem, due to having an
      implicit rev_dep (select) containing "m".
      
      The problem is that MODULES is never evaluted in conf_read_simple() unless
      there's a .config. The following patch fixes this.
      Signed-off-by: default avatarUlf Magnusson <ulfalizer.lkml@gmail.com>
      Reviewed-by: default avatarWANG Cong <xiyou.wangcong@gmail.com>
      Signed-off-by: default avatarMichal Marek <mmarek@suse.cz>
      ac1ffde1
  3. 26 Jul, 2010 1 commit
  4. 08 Jul, 2010 1 commit
  5. 02 Jul, 2010 1 commit
    • Catalin Marinas's avatar
      kbuild: Warn on selecting symbols with unmet direct dependencies · 246cf9c2
      Catalin Marinas authored
      The "select" statement in Kconfig files allows the enabling of options
      even if they have unmet direct dependencies (i.e. "depends on" expands
      to "no"). Currently, the "depends on" clauses are used in calculating
      the visibility but they do not affect the reverse dependencies in any
      way.
      
      The patch introduces additional tracking of the "depends on" statements
      and prints a warning on selecting an option if its direct dependencies
      are not met.
      Signed-off-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
      Cc: Sam Ravnborg <sam@ravnborg.org>
      Cc: Arnd Bergmann <arnd@arndb.de>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Signed-off-by: default avatarMichal Marek <mmarek@suse.cz>
      246cf9c2
  6. 11 Jun, 2010 1 commit
  7. 03 Jun, 2010 2 commits
  8. 02 Jun, 2010 10 commits
  9. 27 May, 2010 1 commit
  10. 06 May, 2010 1 commit
  11. 14 Apr, 2010 6 commits
  12. 08 Apr, 2010 1 commit
  13. 23 Mar, 2010 4 commits
  14. 11 Mar, 2010 1 commit
  15. 10 Mar, 2010 1 commit
  16. 08 Mar, 2010 2 commits
    • Michal Marek's avatar
      Revert "kbuild: specify absolute paths for cscope" · e93bc1a0
      Michal Marek authored
      This reverts commit eb8f844c. Ian
      Campbell writes:
      > I keep my kernel source tree on a more powerful build box where I run my
      > builds etc (including "make cscope") but run my editor from my
      > workstation with an NFS mount to the source. This worked fine for me
      > using relative paths for cscope. Using absolute paths in cscope breaks
      > this previously working setup because the root path is not the same on
      > both systems. I guess this is similar to moving the source tree around.
      >
      > Without wanting to start a flamewar it really sounds to me like we are
      > working around a vim (or cscope) bug here, emacs with cscope bindings
      > works fine in this configuration.
      
      Given that absolute paths can be forced by make O=. cscope, change the
      default back to relative paths.
      
      Ian Campbell <ijc@hellion.org.uk>
      Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
      Signed-off-by: default avatarMichal Marek <mmarek@suse.cz>
      e93bc1a0
    • Michal Marek's avatar
      kbuild: Do not unnecessarily regenerate modules.builtin · a6c36632
      Michal Marek authored
      Only regenerate it if the configuration has changed. Also, do this after
      the modules build to fix errors with some weird Makefiles that are
      generated during build.
      Reported-by: default avatarEric Miao <eric.y.miao@gmail.com>
      Signed-off-by: default avatarMichal Marek <mmarek@suse.cz>
      a6c36632
  17. 07 Mar, 2010 1 commit