Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 0/7] Update kconfig inrastructure to Linux 7.2.9
@ 2026-10-10 15:11 Titouan Christophe via buildroot
  2026-10-10 15:11 ` [Buildroot] [PATCH 1/7] Makefile: always use a base config file for defconfig Titouan Christophe via buildroot
                   ` (6 more replies)
  0 siblings, 7 replies; 9+ messages in thread
From: Titouan Christophe via buildroot @ 2026-10-10 15:11 UTC (permalink / raw)
  To: buildroot; +Cc: petr.vorel, ps.report, yann.morin, thomas.petazzoni

The following commits update the kconfig infrastructure to a recent version,
and add support for Zephyr's kconfiglib, thanks to the update that make
our Config.in files syntactically compatible.

This is a major overhaul to the previous attempt at updating Buildroot's
kconfig infrastructure [1]. Compared to the previous iteration, this series
targets the latest kernel version to date (7.2.9), instead of 6.9 at the time.
Since more changes have happened upstream inbetween those versions, more
changes have had to be applied here.

Given all these changes, I re-started the series from scratch, while keeping
in mind the reviews that were made in the previous attempts. 
- Patch 0001 has been taken as-is from the former series
- Patch 0007 has been slightly updated from the former series
- All the other patches are new
Hence why it is posted a brand new series rather than a new version of it.

As a disclaimer, I made heavy use of AI for this new iteration.

[1] https://patchwork.buildroot.org/project/buildroot/list/?series=13&state=*

Titouan Christophe (7):
  Makefile: always use a base config file for defconfig
  */Config.in: use the new $(VAR) syntax
  */Config.in: replace bool entries with prompt within all choices
  support/kconfig: update to kconfig from Linux 7.2.9
  package/openssl: move libopenssl/libressl options out of the choice
  docs/manual: add migration notes for changes in the kconfig syntax
  Makefile: add new target "yellowconfig" based on kconfiglib

 Config.in                                     |   71 +-
 Config.in.legacy                              |    6 +-
 Makefile                                      |    8 +-
 boot/xilinx-prebuilt/Config.in                |    2 +-
 docs/manual/customize-outside-br.adoc         |   12 +-
 docs/manual/migrating.adoc                    |   13 +
 docs/manual/quickstart.adoc                   |    7 +
 fs/ext2/Config.in                             |    2 +-
 linux/Config.ext.in                           |    2 +-
 package/amlogic-boot-fip/Config.in.host       |    2 +-
 package/arm-gnu-toolchain/Config.in.host      |    4 +-
 package/docker-engine/Config.in               |    2 +-
 package/efl/Config.in                         |    2 +-
 package/erlang/Config.in                      |    6 +-
 package/flutter-sdk-bin/Config.in.host        |    2 +-
 package/freescale-imx/firmware-imx/Config.in  |    2 +-
 package/go/Config.in.host                     |    4 +-
 package/go/go-bin/Config.in.host              |   12 +-
 package/go/go-bootstrap-stage1/Config.in.host |    6 +-
 package/google-breakpad/Config.in.host        |   12 +-
 package/jpeg/Config.in                        |    2 +-
 package/kvm-unit-tests/Config.in              |    2 +-
 package/libopenssl/Config.in                  |    4 -
 package/libressl/Config.in                    |    4 -
 package/linux-headers/Config.in.host          |    2 +-
 package/luajit/Config.in                      |    4 +-
 package/mono/Config.in                        |    4 +-
 package/nodejs/Config.in.host                 |    8 +-
 package/openjdk/Config.in                     |    4 +-
 package/openssl/Config.in                     |   14 +-
 package/podman/Config.in                      |    4 +-
 package/protobuf/Config.in                    |   22 +-
 package/qt5/qt5webengine/Config.in            |    2 +-
 package/rustc/Config.in.host                  |   16 +-
 package/sam-ba/Config.in.host                 |    2 +-
 package/supertuxkart/Config.in                |    4 +-
 package/ti-cgt-pru/Config.in.host             |    2 +-
 package/ti-gfx/Config.in                      |    2 +-
 package/wine/Config.in                        |    6 +-
 package/xenomai/Config.in                     |    2 +-
 support/kconfig/Makefile                      |  382 +-
 support/kconfig/Makefile.br                   |   80 +-
 support/kconfig/POTFILES.in                   |   12 -
 support/kconfig/README.buildroot              |   14 +-
 support/kconfig/check.sh                      |   14 -
 support/kconfig/conf.c                        |  587 ++-
 support/kconfig/confdata.c                    | 1621 ++++---
 support/kconfig/expr.c                        |  641 +--
 support/kconfig/expr.h                        |  119 +-
 support/kconfig/foo.h                         |   12 -
 support/kconfig/gconf-cfg.sh                  |   28 +
 support/kconfig/gconf.c                       | 1837 ++++----
 support/kconfig/{gconf.glade => gconf.ui}     |  361 +-
 support/kconfig/icons/back.xpm                |   29 +
 support/kconfig/icons/choice_no.xpm           |   18 +
 support/kconfig/icons/choice_yes.xpm          |   18 +
 support/kconfig/icons/load.xpm                |   31 +
 support/kconfig/icons/menu.xpm                |   18 +
 support/kconfig/icons/menuback.xpm            |   18 +
 support/kconfig/icons/save.xpm                |   31 +
 support/kconfig/icons/single_view.xpm         |   28 +
 support/kconfig/icons/split_view.xpm          |   28 +
 support/kconfig/icons/symbol_mod.xpm          |   18 +
 support/kconfig/icons/symbol_no.xpm           |   18 +
 support/kconfig/icons/symbol_yes.xpm          |   18 +
 support/kconfig/icons/tree_view.xpm           |   28 +
 support/kconfig/images.c                      |  326 --
 support/kconfig/include/array_size.h          |   11 +
 support/kconfig/include/hash.h                |   28 +
 support/kconfig/include/hashtable.h           |   98 +
 support/kconfig/include/list.h                |  428 ++
 support/kconfig/include/list_types.h          |   17 +
 support/kconfig/include/xalloc.h              |   53 +
 support/kconfig/internal.h                    |   27 +
 support/kconfig/kconf_id.c                    |   53 -
 support/kconfig/kconfig-sym-check.pl          |  132 +
 support/kconfig/kxgettext.c                   |  235 -
 support/kconfig/lexer.l                       |  461 ++
 support/kconfig/lexer.lex.c_shipped           | 4130 +++++++++++++++++
 support/kconfig/list.h                        |  132 -
 support/kconfig/lkc.h                         |  159 +-
 support/kconfig/lkc_proto.h                   |   47 +-
 support/kconfig/lxdialog/.gitignore           |    4 -
 support/kconfig/lxdialog/BIG.FAT.WARNING      |    2 +-
 support/kconfig/lxdialog/check-lxdialog.sh    |   93 -
 support/kconfig/lxdialog/checklist.c          |   26 +-
 support/kconfig/lxdialog/dialog.h             |   76 +-
 support/kconfig/lxdialog/inputbox.c           |   27 +-
 support/kconfig/lxdialog/menubox.c            |   35 +-
 support/kconfig/lxdialog/textbox.c            |  330 +-
 support/kconfig/lxdialog/util.c               |   53 +-
 support/kconfig/lxdialog/yesno.c              |   21 +-
 support/kconfig/mconf-cfg.sh                  |   57 +
 support/kconfig/mconf.c                       |  641 ++-
 support/kconfig/menu.c                        |  573 +--
 support/kconfig/merge_config.sh               |  311 +-
 support/kconfig/mnconf-common.c               |   53 +
 support/kconfig/mnconf-common.h               |   20 +
 support/kconfig/nconf-cfg.sh                  |   56 +
 support/kconfig/nconf.c                       |  417 +-
 support/kconfig/nconf.gui.c                   |  345 +-
 support/kconfig/nconf.h                       |   62 +-
 support/kconfig/parser.tab.c_shipped          | 2248 +++++++++
 support/kconfig/parser.tab.h_shipped          |  134 +
 support/kconfig/parser.y                      |  798 ++++
 .../01-kconfig-kernel-to-buildroot.patch      |  101 +-
 .../06-br-build-system-integration.patch      |   74 -
 .../kconfig/patches/10-br-build-system.patch  |  108 +-
 .../patches/11-use-mktemp-for-lxdialog.patch  |   17 -
 .../patches/12-fix-glade-file-path.patch      |   46 +-
 .../14-support-out-of-tree-config.patch       |  207 -
 .../16-fix-space-to-de-select-options.patch   |   41 -
 .../kconfig/patches/17-backport-kecho.patch   |   26 -
 ...fig.sh-create-temporary-files-in-tmp.patch |    6 +-
 ...e_config.sh-add-br2-external-support.patch |   20 +-
 ...fig.sh-Allow-to-define-config-prefix.patch |   31 -
 ...-positive-matches-from-comment-lines.patch |   32 -
 ...config-lxdialog-fix-check-with-GCC14.patch |   43 -
 ...onfig-mn-conf-handle-backspace-H-key.patch |   62 -
 ...4-kconfig-allow-source-inside-choice.patch |   28 +
 support/kconfig/patches/series                |   10 +-
 support/kconfig/preprocess.c                  |  581 +++
 support/kconfig/preprocess.h                  |   19 +
 support/kconfig/qconf-cfg.sh                  |   42 +
 support/kconfig/qconf.cc                      | 1305 +++---
 support/kconfig/qconf.h                       |  183 +-
 support/kconfig/streamline_config.pl          |  124 +-
 support/kconfig/symbol.c                      |  790 ++--
 support/kconfig/util.c                        |  162 +-
 support/kconfig/zconf.l                       |  372 --
 support/kconfig/zconf.lex.c_shipped           | 2500 ----------
 support/kconfig/zconf.tab.c_shipped           | 2488 ----------
 support/kconfig/zconf.y                       |  782 ----
 support/scripts/gen-bootlin-toolchains        |    2 +-
 .../br2-external/detect-bad-arch/Config.in    |    2 +-
 .../br2-external/flat-stacksize/Config.in     |    2 +-
 .../core/test_selinux/br2_external/Config.in  |    2 +-
 .../br2-external/clang-compiler-rt/Config.in  |    2 +-
 .../br2-external/gumbo-parser/Config.in       |    2 +-
 .../package/br2-external/openjdk/Config.in    |    4 +-
 .../package/br2-external/polkit/Config.in     |    2 +-
 .../br2-external/python-pybind/Config.in      |    2 +-
 system/Config.in                              |   10 +-
 toolchain/toolchain-external/Config.in        |    2 +-
 .../Config.in                                 |    2 +-
 .../toolchain-external-arm-aarch64/Config.in  |    2 +-
 .../toolchain-external-arm-arm/Config.in      |    2 +-
 .../toolchain-external-bootlin/Config.in      |    2 +-
 .../Config.in.options                         |    2 +-
 .../Config.in.options                         |    6 +-
 150 files changed, 15366 insertions(+), 13897 deletions(-)
 delete mode 100644 support/kconfig/POTFILES.in
 delete mode 100755 support/kconfig/check.sh
 delete mode 100644 support/kconfig/foo.h
 create mode 100755 support/kconfig/gconf-cfg.sh
 rename support/kconfig/{gconf.glade => gconf.ui} (57%)
 create mode 100644 support/kconfig/icons/back.xpm
 create mode 100644 support/kconfig/icons/choice_no.xpm
 create mode 100644 support/kconfig/icons/choice_yes.xpm
 create mode 100644 support/kconfig/icons/load.xpm
 create mode 100644 support/kconfig/icons/menu.xpm
 create mode 100644 support/kconfig/icons/menuback.xpm
 create mode 100644 support/kconfig/icons/save.xpm
 create mode 100644 support/kconfig/icons/single_view.xpm
 create mode 100644 support/kconfig/icons/split_view.xpm
 create mode 100644 support/kconfig/icons/symbol_mod.xpm
 create mode 100644 support/kconfig/icons/symbol_no.xpm
 create mode 100644 support/kconfig/icons/symbol_yes.xpm
 create mode 100644 support/kconfig/icons/tree_view.xpm
 delete mode 100644 support/kconfig/images.c
 create mode 100644 support/kconfig/include/array_size.h
 create mode 100644 support/kconfig/include/hash.h
 create mode 100644 support/kconfig/include/hashtable.h
 create mode 100644 support/kconfig/include/list.h
 create mode 100644 support/kconfig/include/list_types.h
 create mode 100644 support/kconfig/include/xalloc.h
 create mode 100644 support/kconfig/internal.h
 delete mode 100644 support/kconfig/kconf_id.c
 create mode 100755 support/kconfig/kconfig-sym-check.pl
 delete mode 100644 support/kconfig/kxgettext.c
 create mode 100644 support/kconfig/lexer.l
 create mode 100644 support/kconfig/lexer.lex.c_shipped
 delete mode 100644 support/kconfig/list.h
 delete mode 100644 support/kconfig/lxdialog/.gitignore
 delete mode 100755 support/kconfig/lxdialog/check-lxdialog.sh
 create mode 100755 support/kconfig/mconf-cfg.sh
 create mode 100644 support/kconfig/mnconf-common.c
 create mode 100644 support/kconfig/mnconf-common.h
 create mode 100755 support/kconfig/nconf-cfg.sh
 create mode 100644 support/kconfig/parser.tab.c_shipped
 create mode 100644 support/kconfig/parser.tab.h_shipped
 create mode 100644 support/kconfig/parser.y
 delete mode 100644 support/kconfig/patches/06-br-build-system-integration.patch
 delete mode 100644 support/kconfig/patches/11-use-mktemp-for-lxdialog.patch
 delete mode 100644 support/kconfig/patches/14-support-out-of-tree-config.patch
 delete mode 100644 support/kconfig/patches/16-fix-space-to-de-select-options.patch
 delete mode 100644 support/kconfig/patches/17-backport-kecho.patch
 delete mode 100644 support/kconfig/patches/20-merge_config.sh-Allow-to-define-config-prefix.patch
 delete mode 100644 support/kconfig/patches/21-Avoid-false-positive-matches-from-comment-lines.patch
 delete mode 100644 support/kconfig/patches/22-kconfig-lxdialog-fix-check-with-GCC14.patch
 delete mode 100644 support/kconfig/patches/23-kconfig-mn-conf-handle-backspace-H-key.patch
 create mode 100644 support/kconfig/patches/24-kconfig-allow-source-inside-choice.patch
 create mode 100644 support/kconfig/preprocess.c
 create mode 100644 support/kconfig/preprocess.h
 create mode 100755 support/kconfig/qconf-cfg.sh
 delete mode 100644 support/kconfig/zconf.l
 delete mode 100644 support/kconfig/zconf.lex.c_shipped
 delete mode 100644 support/kconfig/zconf.tab.c_shipped
 delete mode 100644 support/kconfig/zconf.y

-- 
2.55.0

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2026-10-11 19:31 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-10-10 15:11 [Buildroot] [PATCH 0/7] Update kconfig inrastructure to Linux 7.2.9 Titouan Christophe via buildroot
2026-10-10 15:11 ` [Buildroot] [PATCH 1/7] Makefile: always use a base config file for defconfig Titouan Christophe via buildroot
2026-10-10 15:11 ` [Buildroot] [PATCH 2/7] */Config.in: use the new $(VAR) syntax Titouan Christophe via buildroot
2026-10-10 15:11 ` [Buildroot] [PATCH 3/7] */Config.in: replace bool entries with prompt within all choices Titouan Christophe via buildroot
2026-10-10 15:11 ` [Buildroot] [PATCH 5/7] package/openssl: move libopenssl/libressl options out of the choice Titouan Christophe via buildroot
2026-10-10 15:11 ` [Buildroot] [PATCH 6/7] docs/manual: add migration notes for changes in the kconfig syntax Titouan Christophe via buildroot
2026-10-10 15:11 ` [Buildroot] [PATCH 7/7] Makefile: add new target "yellowconfig" based on kconfiglib Titouan Christophe via buildroot
2026-10-11 19:12 ` [Buildroot] [PATCH 0/7] Update kconfig inrastructure to Linux 7.2.9 Petr Vorel
2026-10-11 19:30   ` Titouan Christophe via buildroot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox