Commit Graph

82 Commits

Author SHA1 Message Date
Renz Bagaporo
89f572c933 kconfig: ignore nonexistent new names 2021-03-31 19:13:03 +08:00
Roland Dobai
bccb5be82f tools: Remove unnecessary warning generated during documentation generation 2021-03-03 19:12:03 +01:00
Fu Hanxi
0146f258d7 style: format python files with isort and double-quote-string-fixer 2021-01-26 10:49:01 +08:00
Roland Dobai
3587203495 tools: Invoke menuconfig as named module
Closes https://github.com/espressif/esp-idf/issues/6248
2020-12-13 08:07:00 +01:00
Krzysztof Budzynski
1f6d2b0257 Merge branch 'feature/doc_kconfig_default_and_range' into 'master'
tools: show defaults and ranges in generated kconfig documentation

Closes IDF-1816 and IDF-1679

See merge request espressif/esp-idf!10875
2020-12-11 16:40:11 +08:00
Roland Dobai
aaa46a93da tools: Sort menu content in Kconfig option reference 2020-11-30 09:52:20 +00:00
Roland Dobai
c31dab51a0 Show defaults and ranges in generated kconfig documentation 2020-11-30 09:51:50 +00:00
Angus Gratton
66fb5a29bb Whitespace: Automated whitespace fixes (large commit)
Apply the pre-commit hook whitespace fixes to all files in the repo.

(Line endings, blank lines at end of file, trailing whitespace)
2020-11-11 07:36:35 +00:00
Roland Dobai
883cbc416e tools: Use kconfiglib from package 2020-09-22 11:29:30 +02:00
Ivan Grokhotkov
b736eebf90 cmake: also pass IDF_ENV_FPGA in config.env 2020-06-26 11:37:50 +02:00
morris
d003f96a9d gh_action: fix python lint 2020-05-20 10:50:10 +08:00
Angus Gratton
9b5f25ae2c confserver: Always store hex values in sdkconfig with 0x prefix
This is not necessary for correct behaviour or to have valid sdkconfig files
(previous commit adds tests for this), but it's useful for consistency with
sdkconfig files generated by menuconfig.

As reported in https://github.com/espressif/vscode-esp-idf-extension/issues/83
2020-05-05 13:15:54 +10:00
Angus Gratton
16e14104f7 kconfig: Fix generation of hex outputs for Make & CMake
And add tests for hex output formatting in all output formats.

Previously, Make & CMake outputs only formatted hex values with the 0x prefix
if they had the 0x prefix in the sdkconfig file. Now this prefix is always
applied.

Closes https://github.com/espressif/vscode-esp-idf-extension/issues/83
2020-05-05 13:15:54 +10:00
Roland Dobai
c4421629c8 Tools: Add tests for confgen.py 2020-02-25 17:15:46 +01:00
Angus Gratton
3b498a0576 Merge branch 'bugfix/confserver_hex_types' into 'master'
confserver: Standardize and document the handling of hex values

See merge request espressif/esp-idf!7437
2020-02-20 14:48:15 +08:00
Angus Gratton
d9d7a906b1 confserver docs: Merge the build-system docs info about confserver into the README
Add link into the README from the docs
2020-02-17 17:21:22 +11:00
Angus Gratton
89fb104747 confserver: Standardize and document the handling of hex values
Previously, server always sent back "hex" types as JSON integers but would only accept setting them as a
JSON string of hex digits. This still works, but also possible to use JSON integers in both directions.

Add tests for both representations, add a note in the README about types.
2020-02-17 17:21:22 +11:00
Roland Dobai
935b34e829 confgen.py: Escape special characters for cmake
Closes https://github.com/espressif/esp-idf/issues/4751
2020-02-12 14:30:53 +01:00
Angus Gratton
ac8e931179 confgen: Avoid including invisible (due to target) choice items in kconfig.rst renames 2020-02-07 16:37:45 +11:00
Roland Dobai
5454c268f7 Docs: Omit kconfig configurations not available for the target 2020-01-30 10:30:06 +01:00
Roland Dobai
3909208852 tools: Update kconfiglib to 13.7.1
This fixes the crash on MacOs under Python 3 and improves the menuconfig
colors on some terminals.
2020-01-14 09:30:05 +01:00
Roland Dobai
81b116b1b9 Update kconfiglib from v12.14.0 to v13.3.2
Thank you @ulfalizer for fixing the aquatic color theme in upstream
kconfiglib.

Now "xterm" or "screen" values of TERM environment variable is
sufficient to use our default blue menuconfig. "xterm-256color" or
"screen-256color" was necessary before this fix.

See https://github.com/espressif/esp-idf/issues/4387#issuecomment-557823262
2019-12-03 07:33:02 +00:00
Angus Gratton
a29f667b87 Merge branch 'bugfix/kconfig_write_empty_files' into 'master'
tools: Write Kconfig files always

See merge request espressif/esp-idf!6763
2019-11-26 13:58:49 +08:00
Roland Dobai
be749395c4 Menuconfig: Don't ask to save configuration when nothing has changed
Closes https://github.com/espressif/esp-idf/issues/4303
2019-11-21 06:47:11 +00:00
Roland Dobai
e533c88760 tools: Write Kconfig files always
Write COMPONENT_KCONFIGS_SOURCE_FILE and
COMPONENT_KCONFIGS_PROJBUILD_SOURCE_FILE files always even when
COMPONENT_KCONFIGS or COMPONENT_KCONFIGS_PROJBUILD are empty variables
because kconfiglib expects them to exist.
2019-11-19 15:11:11 +01:00
Roland Dobai
84d5cc1c17 Generate source files for kconfiglib from the build system 2019-11-15 15:25:09 +00:00
Roland Dobai
01887f71e7 Update kconfiglib to upstream version and replace mconf-idf
Special thanks to @ulfalizer for the helpful suggestions regarding
kconfiglib.

"rsource" option is available for relative path includes
Closes https://github.com/espressif/esp-idf/issues/4064
2019-10-29 10:40:04 +01:00
Angus Gratton
496ede9bcd Merge branch 'master' into feature/esp32s2beta_merge 2019-10-15 14:59:27 +11:00
Roland Dobai
15857d9cbb Handle deprecated values in sdkconfig.defaults
The issue was pointed out also in
https://github.com/espressif/esp-idf/issues/4092
2019-10-02 16:29:25 +00:00
Angus Gratton
438d513a95 Merge branch 'master' into feature/esp32s2beta_merge 2019-09-16 16:18:48 +10:00
Roland Dobai
1dcdc56a7f Use kconfiglib from $IDF_PATH/tools/kconfig_new 2019-09-11 14:30:31 +02:00
Angus Gratton
0a0bb09585 Merge 'master' into feature/esp32s2beta_update 2019-08-20 13:55:23 +10:00
Angus Gratton
6990a7cd54 Merge branch 'master' into feature/esp32s2beta_update 2019-08-19 15:03:43 +10:00
Angus Gratton
423fb9573b confserver: Fix NamedTemporaryFile use on Windows
Can't have the file open twice, so need to close and delete after reopening.
2019-08-16 19:24:37 +10:00
Angus Gratton
24d26fccde Merge branch 'master' into feature/esp32s2beta_update 2019-08-08 13:44:24 +10:00
Roland Dobai
bd21960955 tools: Support sdkconfig.rename files from outside IDF in confgen.py 2019-07-16 20:18:19 +02:00
Roland Dobai
f3d6219c46 tools: Fix indentation in confgen.py 2019-07-06 09:17:31 +02:00
Ivan Grokhotkov
cd89182458 Merge branch 'bugfix/confgen_avoid_write_to_conf' into 'master'
tools: avoid using directly _write_to_conf from Kconfiglib

Closes IDFGH-1246

See merge request espressif/esp-idf!5423
2019-07-04 22:36:23 +08:00
Roland Dobai
510042160d tools: avoid using directly _write_to_conf from kconfiglib
Closes https://github.com/espressif/esp-idf/issues/3543
2019-07-04 10:35:34 +02:00
Roland Dobai
3bd4003e98 tools: Fix hex parsing in confgen.py
Closes https://github.com/espressif/esp-idf/issues/3568
2019-07-04 10:35:03 +02:00
Angus Gratton
f1e07663c4 cmake: Use environment variables file for all config binaries 2019-07-01 15:54:27 +10:00
Angus Gratton
26db058339 cmake kconfig: Pass environment variables to confgen.py via a file
Works around "command line too long" errors when using Windows
and CMake < 3.11

Closes IDF-711
2019-07-01 15:54:10 +10:00
Kondal Kolipaka
9550176f83 Addressing PR comments 2019-06-26 00:42:13 +00:00
Kondal Kolipaka
bc48a9c92f Stdoutflush: Flushing stdout to avoid issues with 64k char limits 2019-06-26 00:42:13 +00:00
Anton Maklakov
442b57b3ee ci: Adjust more 'spawn' settings in test_confserver 2019-06-19 20:50:53 +07:00
Ivan Grokhotkov
8cfa574ad6 Merge branch 'bugfix/ci_test_confserver_timeout' into 'master'
ci: Adjust the test_confserver timeout to 2 seconds

See merge request idf/esp-idf!5184
2019-06-12 13:48:19 +08:00
Ivan Grokhotkov
73b30af2b3 confgen.py: don't output compatibility definitions for options which are not defined
For example, if a renamed option CONFIG_NEW is a bool with value "n", kconfiglib will not generate a define for it in the Kconfig file. The define (#define CONFIG_NEW 1) will only be generated if the option is "y" or "m".
However the compatibility definition was always generated: #define CONFIG_OLD CONFIG_NEW. This broke the #ifdef checks which depended on the old option names.
2019-06-11 13:07:37 +08:00
Angus Gratton
e08b787d79 ci: Adjust the test_confserver timeout to 2 seconds
On a VM, it seems like 500ms is sometimes a very short time...
2019-06-11 10:16:15 +10:00
Ivan Grokhotkov
912c75372c confgen.py: don't output compatibility definitions for options which are not defined
For example, if a renamed option CONFIG_NEW is a bool with value “n”,
kconfiglib will not generate a define for it in the Kconfig file. The
define (#define CONFIG_NEW 1) will only be generated if the option is
“y” or “m”. However the compatibility definition was always
generated: #define CONFIG_OLD CONFIG_NEW. This broke the #ifdef
checks which depended on the old option names.

This commit wraps each compatibility definition:

    #ifdef CONFIG_NEW
    #define CONFIG_OLD CONFIG_NEW
    #endif

so that the CONFIG_OLD definition is only generated if CONFIG_NEW is
defined.
2019-06-10 06:56:07 +00:00
Roland Dobai
5b15686e29 docs: Kconfig formatting rules and backward compatibility of options 2019-05-29 14:56:23 +02:00