Commit Graph

20 Commits

Author SHA1 Message Date
Chris Packham
acce58834d kconfig: Sync with upstream v5.5
This commit introduces the following upstream changes:

272a72103012 kconfig: don't crash on NULL expressions in expr_eq()
46b2afa6890d kconfig: be more helpful if pkg-config is missing
5d8b42aa7ccb kconfig: Add option to get the full help text with listnewconfig
a64c0440dda1 kbuild: Wrap long "make help" text lines
521b29b6ff53 kconfig: split util.c out of parser.y
60bef52c7a68 merge_config.sh: ignore unwanted grep errors
54b8ae66ae1a kbuild: change *FLAGS_<basetarget>.o to take the path relative to $(obj)
1634f2bfdb84 kbuild: remove clean-dirs syntax
cdfca821571d merge_config.sh: Check error codes from make

Signed-off-by: Chris Packham <judge.packham@gmail.com>
2021-02-02 20:06:32 +13:00
Chris Packham
31695dd2b0 kconfig: Sync with upstream v5.3
This commit introduces the following upstream changes:

0c5b6c28ed68 kconfig: Clear "written" flag to avoid data loss
8e2442a5f86e kconfig: fix missing choice values in auto.conf
3266c806dc86 kconfig: run olddefconfig instead of oldconfig after merging fragments
e3cd5136a4ec kconfig: remove meaningless if-conditional in conf_read()
baa23ec86092 kconfig: Fix spelling of sym_is_changable
cd238effefa2 docs: kbuild: convert docs to ReST and rename to *.rst
bd305f259cd3 kconfig: make arch/*/configs/defconfig the default of KBUILD_DEFCONFIG
5533397d1ec8 kconfig: add static qualifier to expand_string()
b6f7e9f7050b kconfig: require the argument of --defconfig
e0a2668665a5 kconfig: remove always false ifeq ($(KBUILD_DEFCONFIG,) conditional

Signed-off-by: Chris Packham <judge.packham@gmail.com>
2021-02-02 20:06:32 +13:00
Chris Packham
d057ba5324 kconfig: Sync with upstream v5.1
This commit introduces the following upstream changes:

9c38f1f04408 kconfig/[mn]conf: handle backspace (^H) key
c71bb9f86666 kconfig: remove stale lxdialog/.gitignore
8741908b3e29 kconfig: fix 'Save As' menu of xconfig
058507195b53 kbuild: move ".config not found!" message from Kconfig to Makefile
769a1c022678 kconfig: rename zconf.y to parser.y
981e545a698a kconfig: rename zconf.l to lexer.l

Signed-off-by: Chris Packham <judge.packham@gmail.com>
2021-02-02 20:06:32 +13:00
Chris Packham
21095fab67 kconfig: Sync with upstream v5.0
This commit introduces the following upstream changes:

2648ca1859bb kconfig: clean generated *conf-cfg files
d86271af6460 kconfig: rename generated .*conf-cfg to *conf-cfg
ba97df45581f kbuild: use assignment instead of define ... endef for filechk_* rules
a5003571e627 kconfig: remove unused "file" field of yylval union
f222b7f43661 kconfig: surround dbg_sym_flags with #ifdef DEBUG to fix gconf warning
3b541978562a kconfig: split images.c out of qconf.cc/gconf.c to fix gconf warnings
9abe42371b44 kconfig: add static qualifiers to fix gconf warnings
cbafbf7f551c kconfig: split the lexer out of zconf.y
558e78e3ce84 kconfig: split some C files out of zconf.y
0c874100108f kconfig: convert to SPDX License Identifier
979f2b2f7936 kconfig: remove keyword lookup table entirely
4b31a32caf0a kconfig: update current_pos in the second lexer
824fa3b3b5e3 kconfig: switch to ASSIGN_VAL state in the second lexer
b3d1d9d3c362 kconfig: stop associating kconf_id with yylval
caaebb3c6de3 kconfig: refactor end token rules
f5451582c4e2 kconfig: stop supporting '.' and '/' in unquoted words
171a515d0803 kconfig: use T_WORD instead of T_VARIABLE for variables
c3d228713b10 kconfig: use specific tokens instead of T_ASSIGN for assignments
ce2164ab5831 kconfig: refactor scanning and parsing "option" properties
3c8f317d4cf1 kconfig: use distinct tokens for type and default properties
a01e5d242d93 kconfig: remove redundant token defines
4b5ec81bfeda kconfig: rename depends_list to comment_option_list
1f31be9ec0a9 kconfig: loosen the order of "visible" and "depends on" in menu entry
94d4e1b6021b kconfig: remove redundant menu_block rule
4891796c6f83 kconfig: remove redundant if_block rule
2f60e46e605a kconfig: remove grammatically ambiguous option_error
6900ae9eeee3 kconfig: remove grammatically ambiguous "unexpected option" diagnostic
723679339d08 kconfig: warn no new line at end of file
0bcc547ec4b0 kconfig: clean up EOF handling in the lexer
cc66bca775ee kconfig: fix ambiguous grammar in terms of new lines
21c5ecf60472 kconfig: refactor pattern matching in STRING state
be3c8075978a kconfig: remove unneeded pattern matching to whitespaces
413cd19d81fd kconfig: require T_EOL to reduce visible statement
fbac5977d81c kconfig: fix memory leak when EOF is encountered in quotation
77c1c0fa8b14 kconfig: fix file name and line number of warn_ignored_character()
0cbe3ac439bf kconfig: remove k_invalid from expr_parse_string() return type
2aabbed6774f kconfig: remove S_OTHER symbol type and correct dependency tracking
1508fec82e39 kconfig: split out code touching a file to conf_touch_dep()
0849d212e395 kconfig: rename conf_split_config() to conf_touch_deps()
75889e9be78f kconfig: remove unneeded setsym label in conf_read_simple()
a9b722847872 scripts/kconfig/merge_config: don't redefine 'y' to 'm'

Signed-off-by: Chris Packham <judge.packham@gmail.com>
2021-02-02 20:06:32 +13:00
Chris Packham
b16baed494 kconfig: Sync with upstream v4.20
6bbe4385d035 kconfig: merge_config: avoid false positive matches from comment lines
2cd3faf87d2d merge_config.sh: Allow to define config prefix
0085b4191f3e kconfig: remove silentoldconfig target
04c459d20448 kconfig: remove oldnoconfig target

Signed-off-by: Chris Packham <judge.packham@gmail.com>
2021-02-02 20:06:32 +13:00
Chris Packham
df94f6803f kconfig: Sync with upstream v4.19
This commit introduces the following upstream changes:

fd65465b7016 kconfig: do not require pkg-config on make {menu,n}config
bc8d2e20a3eb kconfig: remove a spurious self-assignment
9a9ddcf47831 kconfig: suppress "configuration written to .config" for syncconfig
98a4afbfafd2 kconfig: fix "Can't open ..." in parallel build
f498926c47aa kconfig: improve the recursive dependency report
5e8c5299d315 kconfig: report recursive dependency involving 'imply'
f1575595d156 kconfig: error out when seeing recursive dependency
4bf6a9af0e91 kconfig: add build-only configurator targets
1880861226c1 kconfig: remove P_ENV property type
c151272d1687 kconfig: remove unused sym_get_env_prop() function
56869d45e364 kconfig: fix the rule of mainmenu_stmt symbol
00c864f8903d kconfig: allow all config targets to write auto.conf if missing
16952b77d8b5 kconfig: make syncconfig update .config regardless of sym_change_count
79123b1389cc kconfig: create directories needed for syncconfig by itself
adc18acf42a1 kconfig: remove unneeded directory generation from local*config
0608182ad542 kconfig: split out useful helpers in confdata.c
a2ff4040151a kconfig: rename file_write_dep and move it to confdata.c
5accd7f3360e kconfig: handle format string before calling conf_message_callback()
693359f7ac90 kconfig: rename SYMBOL_AUTO to SYMBOL_NO_WRITE
4ab3b80159d4 kconfig: check for pkg-config on make {menu,n,g,x}config
8377bd2b9ee1 kbuild: Rename HOST_LOADLIBES to KBUILD_HOSTLDLIBS

Signed-off-by: Chris Packham <judge.packham@gmail.com>
2021-02-02 20:06:32 +13:00
Chris Packham
bbc4db1337 kconfig: Sync with upstream v4.18
This commit introduces the following upstream changes:

73d1c580f92b kconfig: loop boundary condition fix
ecd53ac2f2c6 kconfig: handle P_SYMBOL in print_symbol()
b2d00d7c61c8 kconfig: fix line numbers for if-entries in menu tree
8593080c0fcf kconfig: fix localmodconfig
2ae89c7a82ea kconfig: Avoid format overflow warning from GCC 8.1
bb6d83dde191 kbuild: Move last word of nconfig help to the previous line
d6a0c8a1326b kconfig: Add testconfig into make help output
2bece88f89fa kconfig: test: add Kconfig macro language tests
915f64901eb3 kconfig: error out if a recursive variable references itself
a702a6176e2f kconfig: add 'filename' and 'lineno' built-in variables
1d6272e6fe43 kconfig: add 'info', 'warning-if', and 'error-if' built-in functions
82bc8bd82e5c kconfig: expand lefthand side of assignment statement
ed2a22f277c6 kconfig: support append assignment operator
1175c02506ff kconfig: support simply expanded variable
9ced3bddec08 kconfig: support user-defined function and recursively expanded variable
9de071536c87 kconfig: begin PARAM state only when seeing a command keyword
2fd5b09c201e kconfig: add 'shell' built-in function
e298f3b49def kconfig: add built-in function support
137c0118a900 kconfig: make default prompt of mainmenu less specific
5b31a9746756 kconfig: remove sym_expand_string_value()
96d8e48da55a kconfig: remove string expansion for mainmenu after yyparse()
bb222ceeb327 kconfig: remove string expansion in file_lookup()
104daea149c4 kconfig: reference environment variables directly and remove 'option env='
694c49a7c01c kconfig: drop localization support
1c5af5cf9308 kconfig: refactor ncurses package checks for building mconf and nconf
b464ef583dc7 kconfig: refactor GTK+ package checks for building gconf
0b669a5076fd kconfig: refactor Qt package checks for building qconf

Signed-off-by: Chris Packham <judge.packham@gmail.com>
2021-02-02 20:06:32 +13:00
Chris Packham
689dc60f21 kconfig: Sync with upstream v4.17
This commit introduces the following upstream changes:

17baab68d337 kconfig: extend output of 'listnewconfig'
b23d1a241f4e kbuild: add %.lex.c and %.tab.[ch] to 'targets' automatically
9a8dfb394c04 kbuild: clean up *.lex.c and *.tab.[ch] patterns from top-level Makefile
598893002745 .gitignore: move *.lex.c *.tab.[ch] patterns to the top-level .gitignore
18492685e479 kconfig: use yylineno option instead of manual lineno increments
379a8eb8eb1a kconfig: detect recursive inclusion earlier
32a94b8b0c3e kconfig: remove duplicated file name and lineno of recursive inclusion
26561514cc9d kconfig: do not include both curses.h and ncurses.h for nconfig
f8f69dc0b4e0 kconfig: make unmet dependency warnings readable
f622f8279581 kconfig: warn unmet direct dependency of tristate symbols selected by y
e2c75e7667c7 kconfig: tests: test if recursive inclusion is detected
29c434f367ea kconfig: tests: test if recursive dependencies are detected
3e4888c2e3d7 kconfig: tests: test randconfig for choice in choice
beaaddb62540 kconfig: tests: test defconfig when two choices interact
ee236610653e kconfig: tests: check visibility of tristate choice values in y choice
930c429a656f kconfig: tests: check unneeded "is not set" with unmet dependency
b76960c0f6b2 kconfig: tests: test if new symbols in choice are asked
49ac3c0c3aa3 kconfig: tests: test automatic submenu creation
1903c5119059 kconfig: tests: add basic choice tests
022a4bf6b59d kconfig: tests: add framework for Kconfig unit testing
2a61625835c7 kconfig: remove redundant streamline_config.pl prerequisite
911a91c39cab kconfig: rename silentoldconfig to syncconfig
81d2bc227305 kconfig: invoke oldconfig instead of silentoldconfig from local*config
2aad9b896213 kconfig: hide irrelevant sub-menus for oldconfig
99f0b6578bab kconfig: remove redundant input_mode test for check_conf() loop
4bb3a5b085cd kconfig: remove unneeded input_mode test in conf()
59a80b5e892d kconfig: do not call check_conf() for olddefconfig
f467c5640c29 kconfig: only write '# CONFIG_FOO is not set' for visible symbols
d9119b5925a0 kconfig: Print reverse dependencies in groups
9a47ceec543b kconfig: clean-up reverse dependency help implementation
07a422bb213a kbuild: restore autoksyms.h touch to the top Makefile

Signed-off-by: Chris Packham <judge.packham@gmail.com>
2021-02-02 20:06:32 +13:00
Chris Packham
07ae8dd48d kconfig: Sync with upstream v4.16
This commit introduces the following upstream changes:

5ae6fcc4bb82 kconfig: fix line number in recursive inclusion error message
1a90ce36c6ef kconfig: Update ncurses package names for menuconfig
bf0bbdcf1003 kconfig: Don't leak choice names during parsing
f4bc1eefc160 kconfig: set SYMBOL_AUTO to the symbol marked with defconfig_list
cd81fc82b93f kconfig: add xstrdup() helper
523ca58b7db2 kconfig: remove const qualifier from sym_expand_string_value()
d717f24d8c68 kconfig: add xrealloc() helper
9e3e10c72536 kconfig: send error messages to stderr
f3ff6fb5db68 kconfig: echo stdin to stdout if either is redirected
d2a04648a5db kconfig: remove check_stdin()
cd58a91def2a kconfig: remove 'config*' pattern from .gitignnore
4f208f392103 kconfig: show '?' prompt even if no help text is available
cb67ab2cd2b8 kconfig: do not write choice values when their dependency becomes n
1b9eda2e4892 kconfig: Warn if help text is blank
cedd55d49dee kconfig: Remove silentoldconfig from help and docs; fix kconfig/conf's help
1ccb27143360 kconfig: make "Selected by:" and "Implied by:" readable
312ee68752fa kconfig: announce removal of oldnoconfig if used
d0fd0428ecf0 kconfig: fix make xconfig when gettext is missing
b53688014e33 kconfig: Clarify menu and 'if' dependency propagation
9d1a9e8bc18b kconfig: Document 'if' flattening logic
d3465af60f44 kconfig: Clarify choice dependency propagation
3e41ba05b6d6 kconfig: Document SYMBOL_OPTIONAL logic
765f4cdef6f8 kconfig: use default 'yy' prefix for lexer and parser
84dd95d4f87a kconfig: make conf_unsaved a local variable of conf_read()
5a3dc717b3c7 kconfig: make xfgets() really static
52e58a3caeba kconfig: make input_mode static
6479f327dea6 kconfig: Warn if there is more than one help text
b92d804a5179 kconfig: drop 'boolean' keyword
df60f4b92d3d kconfig: Remove menu_end_entry()
0735f7e5def2 kconfig: Document important expression functions
05cccce58045 kconfig: Document automatic submenu creation code
7cf33f88e294 kconfig: Fix choice symbol expression leak
5b1374b3b3c2 kconfig: Fix expr_free() E_NOT leak
ae7440ef0c80 kconfig: Fix automatic menu creation mem leak
0724a7c32a54 kconfig: Don't leak main menus during parsing
bc28fe1d5ede kconfig: Don't leak 'option' arguments during parsing
24161a6711c9 kconfig: Don't leak 'source' filenames during parsing
26e47a3c11a2 kconfig: Don't leak symbol names during parsing
29c833061c1d kconfig: generate lexer and parser during build instead of shipping
e3b03bf29d6b kconfig: display recursive dependency resolution hint just once
f77850d3fe0c kconfig: Clean up modules handling and fix crash
fa8cedaef814 kconfig: Clarify expression rewriting
9a826842ff2f kconfig: Rename menu_check_dep() to rewrite_m()
c873443430eb kconfig: Sync zconf.y with zconf.tab.c_shipped
52aede4ba5ef kconfig: Document the 'symbol' struct
33ca1a248663 kconfig: Document the 'menu' struct
2c37e08464a8 kconfig: Warn if choice default is not in choice

Signed-off-by: Chris Packham <judge.packham@gmail.com>
2021-02-02 20:06:32 +13:00
Bryan Hundven
59b08f8d06 Sync kconfig files with upstream 4.15
Last updated with 4.9-rc7.
This commit introduces the following upstream changes:

9059a3493efe kconfig: fix relational operators for bool and tristate symbols
88127dae6ed9 kconfig/symbol.c: use correct pointer type argument for sizeof
b24413180f56 License cleanup: add SPDX GPL-2.0 license identifier to files with no license
bb3290d91695 Remove gperf usage from toolchain
ad8181060788 kconfig: fix sparse warnings in nconfig
ff85a1a80e00 kconfig: Check for libncurses before menuconfig
9be3213b14d4 gconfig: remove misleading parentheses around a condition
83c3a1bad224 xconfig: fix missing suboption and help panels on first run
e039303ff71a xconfig: fix 'Show Debug' functionality
79e51b5c2dee kconfig/nconf: Fix hang when editing symbol with a long prompt
0eb47346968f Scripts: kconfig: nconf: fix _GNU_SOURCE redefined warning
237e3ad0f195 Kconfig: Introduce the "imply" keyword

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2018-01-31 16:39:45 -08:00
Bryan Hundven
89a2182f14 kconfig: sync upstream changes
Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2016-11-30 16:34:39 -08:00
Bryan Hundven
0cffa79d9f kconfig: Update kconfig. Sync with Linux-4.2
This change updates the kconfig utility to what is shipped with 4.2.0.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-09-03 19:00:28 -07:00
Yann E. MORIN"
82250e56c7 kconfig: remove mis-leading messages
Unlinke the Linux kernel, crosstool-NG does not (directly) use make
as a frontend, so remove any occurence of reference to running make
after the configuration.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-05-12 19:46:23 +02:00
Yann E. MORIN"
084a8e18f5 kconfig: update from linux-next
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-05-08 14:14:40 +02:00
Yann E. MORIN"
0233ac8534 kconfig: allow stdin/stdout redirection
Allow stdin/stdout redirection for the CLI conf (not mconf).
This allows to recall a sample and automatically apply the defaults
to new configuration option, with something like the following:
 yes "" |ct-ng "sample_name"
2009-09-08 22:42:48 +02:00
Yann E. MORIN"
f31bcd0026 Update the kconfig stuff to match the one in the linux-2.6.27 version.
/trunk/kconfig/zconf.hash.c         |  225   110   115     0 +++----
 /trunk/kconfig/lkc_proto.h          |    4     3     1     0 +
 /trunk/kconfig/mconf.c              |  217   110   107     0 +++---
 /trunk/kconfig/menu.c               |   86    60    26     0 ++-
 /trunk/kconfig/symbol.c             |  212   156    56     0 ++++--
 /trunk/kconfig/kconfig.mk           |   24     9    15     0 -
 /trunk/kconfig/lex.zconf.c          |   97    80    17     0 ++-
 /trunk/kconfig/util.c               |   38    30     8     0 +
 /trunk/kconfig/lkc.h                |   22    18     4     0 +
 /trunk/kconfig/expr.c               |   32    19    13     0 +
 /trunk/kconfig/confdata.c           |  254   172    82     0 +++++---
 /trunk/kconfig/lxdialog/dialog.h    |   12     9     3     0 +
 /trunk/kconfig/lxdialog/inputbox.c  |    6     3     3     0
 /trunk/kconfig/lxdialog/checklist.c |    4     2     2     0
 /trunk/kconfig/lxdialog/menubox.c   |    6     3     3     0
 /trunk/kconfig/lxdialog/textbox.c   |    2     1     1     0
 /trunk/kconfig/lxdialog/util.c      |   47    30    17     0 +
 /trunk/kconfig/lxdialog/yesno.c     |    4     2     2     0
 /trunk/kconfig/expr.h               |   20    10    10     0
 /trunk/kconfig/zconf.tab.c          | 1441   793   648     0 ++++++++++++++++++++++++-------------------
 /trunk/kconfig/conf.c               |  276   124   152     0 ++++----
 /trunk/kconfig/check-gettext.sh     |   14    14     0     0 +
 /trunk/ct-ng.in                     |    2     1     1     0
 23 files changed, 1759 insertions(+), 1286 deletions(-)
2008-10-17 12:47:53 +00:00
Yann E. MORIN"
59b1a0929d Don't advertise 'xconfig' as a config rule.
/trunk/kconfig/conf.c |    2     1     1     0 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
2008-09-16 14:32:07 +00:00
Yann E. MORIN"
5486810b76 When doing a silent old config, don't check if stdin was redirected. ct-ng doesn't use this feature, and even better yet, it makes explicit use of redirecting both stdin and stdout at aome moments. 2007-06-16 20:45:03 +00:00
Yann E. MORIN"
afaffaea38 Update to latest kconfig from linux-2.6.20.7.
I'm not sure of the improvements, but at least we're up-to-date, and updating in the future will be easier.
2007-04-15 16:45:11 +00:00
Yann E. MORIN"
1906cf93f8 Add the full crosstool-NG sources to the new repository of its own.
You might just say: 'Yeah! crosstool-NG's got its own repo!".
Unfortunately, that's because the previous repo got damaged beyond repair and I had no backup.
That means I'm putting backups in place in the afternoon.
That also means we've lost history... :-(
2007-02-24 11:00:05 +00:00