19 Dec, 2011
1 commit
-
Use the xfwrite wrapper function defined in lkc.h to check the return value of
fwrite and silence these warnings.HOSTCC scripts/kconfig/zconf.tab.o
scripts/kconfig/zconf.tab.c: In function 'header_print_comment':
/usr/src/lto/scripts/kconfig/confdata.c:551:10: warning: ignoring return value of 'fwrite', declared with attribute warn_unused_result
scripts/kconfig/zconf.tab.c: In function 'kconfig_print_comment':
/usr/src/lto/scripts/kconfig/confdata.c:467:10: warning: ignoring return value of 'fwrite', declared with attribute warn_unused_resultSigned-off-by: Peter Foley
Signed-off-by: Michal Marek
30 Aug, 2011
1 commit
-
__enabled_ are only generated on visible or selected entries, do not
reflect the purpose of its introduction.Fix this by always generating these entries for named symbol.
Reported-by: Rabin Vincent
Signed-off-by: Arnaud Lacombe
30 Jul, 2011
1 commit
-
Replace the config_is_*() macros with a variant that allows for grepping
for usage of CONFIG_* options in the code. Usage:if (IS_ENABLED(CONFIG_NUMA))
or
#if IS_ENABLED(CONFIG_NUMA)
The IS_ENABLED() macro evaluates to 1 if the argument is set (to either 'y'
or 'm'), IS_BUILTIN() tests if the option is 'y' and IS_MODULE() test if
the option is 'm'. Only boolean and tristate options are supported.Reviewed-by: Arnaud Lacombe
Acked-by: Randy Dunlap
Signed-off-by: Michal Marek
18 Jul, 2011
1 commit
-
The specialized printer for headers (espectially autoconf.h) is missing
fixup code for S_HEX symbol's "0x" prefix. As long as kconfig does not
warn for such missing prefix, this code is needed. Fix this.In the same time, fix some nits in `header_print_symbol()'.
Cc: Randy Dunlap
Cc: Mauro Carvalho ChehabBroken-by: Arnaud Lacombe
Reported-by: Randy Dunlap
Reported-by: Mauro Carvalho Chehab
Acked-by: Mauro Carvalho Chehab
Acked-by: Randy Dunlap
Signed-off-by: Arnaud Lacombe
Signed-off-by: Michal Marek
01 Jul, 2011
1 commit
-
Make conf_write_symbol() grammar agnostic to be able to use it from different
code path. These path pass a printer callback which will print a symbol's name
and its value in different format.conf_write_symbol()'s job become mostly only to prepare a string for the
printer. This avoid to have to pass specialized flag to generic
functionsSigned-off-by: Arnaud Lacombe
[mmarek: rebased on top of de12518 (kconfig: autogenerated config_is_xxx
macro)]
Signed-off-by: Michal Marek
09 Jun, 2011
1 commit
07 Jun, 2011
4 commits
-
This interface is not (and has never been ?) used by any frontend, just get rid
of it.Signed-off-by: Arnaud Lacombe
-
This header is needed when using va_{start,end,copy}(3) functions family.
Signed-off-by: Arnaud Lacombe
-
Cc: Sam Ravnborg
Signed-off-by: Arnaud Lacombe -
Signed-off-by: Arnaud Lacombe
25 May, 2011
1 commit
-
For strings and integers, the config_is_xxx macros are useless and
sometimes misleading:#define CONFIG_INITRAMFS_SOURCE ""
#define config_is_initramfs_source() 1Cc: Jean-Christophe PLAGNIOL-VILLARD
Signed-off-by: Michal Marek
24 May, 2011
2 commits
-
Signed-off-by: Arnaud Lacombe
Signed-off-by: Michal Marek
17 May, 2011
1 commit
-
this will allow to use to use
if(config_is_xxx())
if(config_is_xxx_module())in the code instead of
#ifdef CONFIG_xxx
#ifdef CONFIG_xxx_MODULEand now let the compiler remove the non usefull code and not the
pre-processoras done in the mach-types for arm as exmaple
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD
Acked-by: Andi Kleen
Signed-off-by: Michal Marek
18 Apr, 2011
1 commit
-
Timestamps in file data are useless and there is already one in .config
Signed-off-by: Michal Marek
15 Dec, 2010
3 commits
-
Signed-off-by: Arnaud Lacombe
Signed-off-by: Michal Marek -
Replacing S_TRISTATE by S_BOOLEAN is a no-op for conf_write_symbol().
Signed-off-by: Arnaud Lacombe
[mmarek: Fix unused variable warning in conf_write()]
Signed-off-by: Michal Marek -
AUTOCONF_INCLUDED is not checked is not used within the tree and its parent
header, `autoconf.h', is safe to be re-included.Signed-off-by: Arnaud Lacombe
Signed-off-by: Michal Marek
28 Oct, 2010
1 commit
-
Conflicts:
scripts/kconfig/nconf.c
04 Oct, 2010
1 commit
-
This prevents the buffers being overflowed when using a config
file with a long name. PATH_MAX is used elsewhere in the same
file, so use it here as well.Signed-off-by: Will Newton
Acked-by: WANG Cong
Signed-off-by: Michal Marek
01 Oct, 2010
1 commit
-
commit 8baefd30b5b0101aa07aa75da44a9eee881eed28 of linux-next replaced
a `switch()' statement with some `if()' statements, but left `break's
in the `switch()' statement untouched. This cause read config loop to
exit and so "make oldconfig" is not much usable (see below).> $ make oldconfig
>
> scripts/kconfig/conf --oldconfig Kconfig
> #
> # using defaults found in /boot/config-2.6.34-ccs-r1
> #
> *
> * Restart config...
> *
> *
> * General setup
> *
> Prompt for development and/or incomplete code/drivers (EXPERIMENTAL) [N/y/?] (NEW)(I've already have "CONFIG_EXPERIMENTAL=y" in the old config file. But
that's not read here.)This patch should fix this problem.
Signed-off-by: Naohiro Aota
Signed-off-by: Michal Marek
20 Sep, 2010
3 commits
-
Signed-off-by: Arnaud Lacombe
Reviewed-by: Sam Ravnborg
Reviewed-by: Michal Marek -
Signed-off-by: Arnaud Lacombe
Reviewed-by: Sam Ravnborg
Reviewed-by: Michal Marek -
With the upcoming dynamical configuration prefix, we can no longer assume that
the prefix will start by a 'C'. As such, we can no longer hardcode this value in
the `case ...:', so replace the `switch() { ... }' statement by a more flexible
'if () { ... }' statement.Signed-off-by: Arnaud Lacombe
Reviewed-by: Sam Ravnborg
Reviewed-by: Michal Marek
17 Aug, 2010
2 commits
-
Signed-off-by: Michal Marek
-
This fixes:
% gmake LKC_GENPARSER=1 menuconfig
[...]
scripts/kconfig/confdata.c:739: error: 'errno' undeclared (first use in this function)
scripts/kconfig/confdata.c:739: error: (Each undeclared identifier is reported only once
scripts/kconfig/confdata.c:739: error: for each function it appears in.)
scripts/kconfig/confdata.c:739: error: 'ENOENT' undeclared (first use in this function)triggered on NetBSD.
Signed-off-by: Arnaud Lacombe
Signed-off-by: Michal Marek
15 Aug, 2010
1 commit
-
savedefconfig failed to save the correct minimal config
when it encountered a choice marked optional.Consider following minimal configuration:
$cat Kconfig
choice
prompt "choice"
optionalconfig A
bool "a"config B
bool "b"endchoice
$cat .config | grep -v ^#
CONFIG_A=y$conf --savedefconfig=defconfig Kconfig
would before this fix result in an empty file, because
kconfig would assume that CONFIG_A=y is a default value.
But because the choice is optional the default is that
both A and B are =n.Fix so we handle optional choices correct.
Signed-off-by: Sam Ravnborg
Signed-off-by: Michal Marek
13 Aug, 2010
1 commit
-
This fix facilitates fwrite() in both confdata.c and expr.c, either it
succeeds in writing, or an error occurs, or the end of file is reached.Signed-off-by: Jean Sacren
Signed-off-by: Michal Marek
12 Aug, 2010
2 commits
-
If a minimal config did not specify the value
of all choice values, the resulting configuration
could have wrong values.Consider following example:
config M
def_bool y
option modules
choice
prompt "choice list"
config A
tristate "a"
config B
tristate "b"
endchoiceWith a defconfig like this:
CONFIG_M=y
CONFIG_A=yThe resulting configuration would have
CONFIG_A=m
which was unexpected.
The problem was not not all choice values were set and thus
kconfig calculated a wrong value.The fix is to set all choice values when we
read a defconfig files.conf_set_all_new_symbols() is refactored such that
random choice values are now handled by a dedicated function.
And new choice values are set by set_all_choice_values().This was not the minimal fix, but the fix that resulted
in the most readable code.Signed-off-by: Sam Ravnborg
Reported-by: Arve Hjønnevåg
Tested-by: Arve Hjønnevåg
Signed-off-by: Michal Marek -
savedefconfig failed to save choice symbols equal to 'y'
for tristate choices.
This resulted in this value being lost.In particular is fixes an issue where
make ARCH=avr32 atngw100_defconfig
make ARCH=avr32 savedefconfig
cp defconfig arch/avr32/configs/atngw100_defconfig
make ARCH=avr32 atngw100_defconfig
diff -u .config .config.oldfailed to produce an identical .config.
Signed-off-by: Sam Ravnborg
Signed-off-by: Michal Marek
03 Aug, 2010
2 commits
-
savedefconfig will save a minimal config to a file
named "defconfig".The config symbols are saved in the same order as
they appear in the menu structure so it should
be possible to map them to the relevant menus
if desired.The implementation was tested against several minimal
configs for arm which was created using brute-force.There was one regression related to default numbers
which had their valid range further limited by another symbol.Sample:
config FOO
int "foo"
default 4config BAR
int "bar"
range 0 FOOIf FOO is set to 3 then BAR cannot take a value higher than 3.
But the current implementation will set BAR equal to 4.This is seldomly used and the final configuration is OK,
and the fix was non-trivial.
So it was documented in the code and left as is.Signed-off-by: Sam Ravnborg
Acked-by: Uwe Kleine-König
Signed-off-by: Michal Marek -
Add a a few local functions to avoid some code duplication
No functional changes.Signed-off-by: Sam Ravnborg
Signed-off-by: Michal Marek
29 Jul, 2010
1 commit
-
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 yconfig FOO
def_tristate mWith no .config, the following configuration is generated:
CONFIG_MODULES=y
CONFIG_FOO=yWith an empty .config, the following:
CONFIG_MODULES=y
CONFIG_FOO=mTristate 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: Ulf Magnusson
Reviewed-by: WANG Cong
Signed-off-by: Michal Marek
26 Jul, 2010
1 commit
-
Give boolean symbols a 50% chance of getting enabled, rather than 67%.
Signed-off-by: Peter Korsgaard
Acked-by: Sam Ravnborg
Signed-off-by: Michal Marek
12 Dec, 2009
2 commits
-
To make it easier for module-init-tools and scripts like mkinitrd to
distinguish builtin and missing modules, install a modules.builtin file
listing all builtin modules. This is done by generating an additional
config file (tristate.conf) with tristate options set to uppercase 'Y'
or 'M'. If we source that config file, the builtin modules appear in
obj-Y.Signed-off-by: Michal Marek
-
Signed-off-by: Sam Ravnborg
Signed-off-by: Michal Marek
20 Sep, 2009
1 commit
-
Warnings found via gcc -Wmissing-prototypes.
Signed-off-by: Trevor Keith
Acked-by: WANG Cong
Signed-off-by: Andrew Morton
Signed-off-by: Sam Ravnborg
10 Jun, 2009
1 commit
-
Regardless of KCONFIG_AUTOCONFIG, the filename written as a Make target
into "include/config/auto.conf.cmd" was always the default one.Of course this doesn't make it work for the Kernel kbuild system, since
there the filename is hardcoded at several places in the Makefiles.Signed-off-by: Markus Heidelberg
Signed-off-by: Sam Ravnborg
16 Mar, 2009
1 commit
-
Ingo Molnar reported that 'make randconfig' was not covering
choice blocks properly, resulting in certain config options
being left out of randconfig testing altogether.With the following patch we:
- properly randomize choice value for normal choice blocks
- properly randomize for multi choice blocks
- added several comments to explain what is going onThe root cause of the bug was that SYMBOL_VALID was set on the
symbol representing the choice block so clearing this did
the trick initially.
But testign revealed a few more issues that is now fixed.Reported-by: Ingo Molnar
Cc: Ingo Molnar
Cc: Roman Zippel
Signed-off-by: Sam Ravnborg
27 Oct, 2008
1 commit
-
If you use KCONFIG_ALLCONFIG (even with empty file) you get broken
allmodconfig/allyesconfig; CONFIG_MODULES gets turned off, with obvious
massive fallout.Breakage had been introduced when conf_set_all_new_symbols() got used
for allmodconfig et.al.What happens is that sym_calc_value(modules_sym) done in
conf_read_simple() sets SYMBOL_VALID on both modules_sym and MODULES.
When we get to conf_set_all_new_symbols(), we set sym->def[S_DEF_USER]
on everything, but it has no effect on sym->curr for the symbols that
already have SYMBOL_VALID - these are stuck.Solution: use sym_clear_all_valid() in there. Note that it makes
reevaluation of modules_sym redundant - sym_clear_all_valid() will do
that itself.[ Fixes http://bugzilla.kernel.org/show_bug.cgi?id=11512, says Alexey ]
Signed-off-by: Al Viro
Cc: Sam Ravnborg
Cc: Roman Zippel
Cc: Alexey Dobriyan
Signed-off-by: Linus Torvalds