[GIT PULL] Kbuild updates for v6.11-rc1

From: Masahiro Yamada
Date: Tue Jul 23 2024 - 15:44:53 EST


Hello Linus,

Please pull Kbuild updates for v6.11-rc1




You will get a merge conflict in scripts/Makefile.lib

It is a conflict between the following two commits:
49636c5680b977d8a39263c6c8db6061c427346e
712aba5543b88996bc4682086471076fbf048927

The resolution exists in linux-next.


Thank you.





The following changes since commit 256abd8e550ce977b728be79a74e1729438b4948:

Linux 6.10-rc7 (2024-07-07 14:23:46 -0700)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild.git
tags/kbuild-v6.11

for you to fetch changes up to 13c239a2c088e91e453d26517b562c9a116444fa:

kbuild: doc: gcc to CC change (2024-07-24 01:18:25 +0900)

----------------------------------------------------------------
Kbuild updates for v6.11

- Remove tristate choice support from Kconfig

- Stop using the PROVIDE() directive in the linker script

- Reduce the number of links for the combination of CONFIG_DEBUG_INFO_BTF
and CONFIG_KALLSYMS

- Enable the warning for symbol reference to .exit.* sections by default

- Fix warnings in RPM package builds

- Improve scripts/make_fit.py to generate a FIT image with separate base
DTB and overlays

- Improve choice value calculation in Kconfig

- Fix conditional prompt behavior in choice in Kconfig

- Remove support for the uncommon EMAIL environment variable in Debian
package builds

- Remove support for the uncommon "name <email>" form for the DEBEMAIL
environment variable

- Raise the minimum supported GNU Make version to 4.0

- Remove stale code for the absolute kallsyms

- Move header files commonly used for host programs to scripts/include/

- Introduce the pacman-pkg target to generate a pacman package used in
Arch Linux

- Clean up Kconfig

----------------------------------------------------------------
Chen-Yu Tsai (1):
scripts/make_fit: Support decomposing DTBs

HONG Yifan (1):
kconfig: recursive checks drop file/lineno

Ivan Davydov (1):
kbuild: doc: gcc to CC change

Jann Horn (1):
kallsyms: get rid of code for absolute kallsyms

Masahiro Yamada (55):
initramfs: shorten cmd_initfs in usr/Makefile
kconfig: qconf: remove initial call to conf_changed()
kconfig: gconf: remove unnecessary forward declarations
kconfig: gconf: move conf_changed() definition up
kconfig: pass new conf_changed value to the callback
kconfig: remove tristate choice support
kconfig: refactor conf_set_all_new_symbols() to reduce indentation level
kconfig: refactor conf_write_defconfig() to reduce indentation level
kbuild: refactor variables in scripts/link-vmlinux.sh
kbuild: remove PROVIDE() for kallsyms symbols
kbuild: merge temporary vmlinux for BTF and kallsyms
kconfig: add -e and -u options to *conf-cfg.sh scripts
kconfig: remove unneeded code in expr_compare_type()
kconfig: add fallthrough comments to expr_compare_type()
kconfig: introduce choice_set_value() helper
kconfig: remember the current choice while parsing the choice block
kbuild: move init/build-version to scripts/
kconfig: import list_move(_tail) and list_for_each_entry_reverse macros
kconfig: refactor choice value calculation
kconfig: remove sym_get_choice_value()
kconfig: remove conf_unsaved in conf_read_simple()
kconfig: change sym_choice_default() to take the choice menu
kconfig: use menu_list_for_each_sym() in sym_choice_default()
kconfig: remove expr_list_for_each_sym() macro
kconfig: use sym_get_choice_menu() in sym_check_print_recursive()
kconfig: use sym_get_choice_menu() in sym_check_choice_deps()
kconfig: use sym_get_choice_menu() in sym_check_deps()
kconfig: remove P_CHOICE property
kconfig: remove E_LIST expression type
treewide: change conditional prompt for choices to 'depends on'
kconfig: fix conditional prompt behavior for choice
kconfig: improve error message for dependency between choice members
kconfig: improve error message for recursive dependency in choice
kconfig: refactor error messages in sym_check_print_recursive()
kbuild: deb-pkg: remove support for EMAIL environment variable
kbuild: deb-pkg: remove support for "name <email>" form for DEBEMAIL
kbuild: package: add -e and -u options to some shell scripts
kbuild: avoid build error when single DTB is turned into composite DTB
kbuild: raise the minimum GNU Make requirement to 4.0
modpost: remove self-definitions of R_ARM_* macros
modpost: rename R_ARM_THM_CALL to R_ARM_THM_PC22
kbuild: deb-pkg: use default string when variable is unset or null
kconfig: call expr_eliminate_yn() at least once in expr_eliminate_dups()
kconfig: add const qualifiers to several function arguments
kconfig: remove SYMBOL_CHOICEVAL flag
kconfig: remove 'e1' and 'e2' macros from expression deduplication
kbuild: clean up scripts/remove-stale-files
Makefile: add comment to discourage tools/* addition for kernel builds
kbuild: move some helper headers from scripts/kconfig/ to scripts/include/
modpost: use generic macros for hash table implementation
kallsyms: avoid repeated calculation of array size for markers
kallsyms: use \t instead of a tab in printf()
kallsyms: add more original symbol type/name in comment lines
kallsyms: unify seq and start_pos fields of struct sym_entry
kallsyms: change sym_entry::percpu_absolute to bool type

Rafael Aquini (2):
kbuild: rpm-pkg: make sure to have versioned 'Obsoletes' for kernel.spec
kbuild: rpm-pkg: introduce a simple changelog section for kernel.spec

Thomas Weißschuh (1):
kbuild: add script and target to generate pacman package

Uwe Kleine-König (1):
modpost: Enable section warning from *driver to .exit.text

Zhang Bingwu (2):
kbuild: Abort make on install failures
kbuild: Create INSTALL_PATH directory if it does not exist

.gitignore | 6 +
Documentation/kbuild/kconfig-language.rst | 11 +-
Documentation/kbuild/makefiles.rst | 6 +-
Documentation/process/changes.rst | 4 +-
MAINTAINERS | 8 +
Makefile | 36 ++--
arch/arm/Kconfig | 6 +-
arch/arm/boot/install.sh | 2 +
arch/arm64/Kconfig | 3 +-
arch/arm64/boot/install.sh | 2 +
arch/m68k/install.sh | 2 +
arch/mips/Kconfig | 6 +-
arch/nios2/boot/install.sh | 2 +
arch/parisc/install.sh | 2 +
arch/powerpc/Kconfig | 3 +-
arch/riscv/Kconfig | 3 +-
arch/riscv/boot/install.sh | 2 +
arch/s390/boot/install.sh | 2 +
arch/sparc/boot/install.sh | 2 +
arch/x86/boot/install.sh | 2 +
fs/jffs2/Kconfig | 3 +-
include/asm-generic/vmlinux.lds.h | 19 --
init/Kconfig | 18 --
init/Makefile | 2 +-
kernel/kallsyms.c | 5 +-
kernel/kallsyms_internal.h | 6 -
kernel/vmcore_info.c | 4 -
scripts/Kbuild.include | 2 +-
scripts/Makefile.lib | 7 +-
scripts/Makefile.package | 14 ++
{init => scripts}/build-version | 0
scripts/{kconfig => include}/array_size.h | 0
scripts/{kconfig => include}/hashtable.h | 0
scripts/{kconfig => include}/list.h | 53 ++++++
scripts/{kconfig => include}/list_types.h | 0
scripts/install.sh | 4 +
scripts/kallsyms.c | 125
++++++-------
scripts/kconfig/conf.c | 238
++++++++++--------------
scripts/kconfig/confdata.c | 127
++++---------
scripts/kconfig/expr.c | 128
++++++-------
scripts/kconfig/expr.h | 29 ++-
scripts/kconfig/gconf-cfg.sh | 2 +
scripts/kconfig/gconf.c | 26 ++-
scripts/kconfig/internal.h | 2 +-
scripts/kconfig/lkc.h | 34 ++--
scripts/kconfig/lkc_proto.h | 16 +-
scripts/kconfig/mconf-cfg.sh | 2 +
scripts/kconfig/mconf.c | 38 ++--
scripts/kconfig/menu.c | 111
++----------
scripts/kconfig/mnconf-common.c | 2 +-
scripts/kconfig/mnconf-common.h | 2 +
scripts/kconfig/nconf-cfg.sh | 2 +
scripts/kconfig/nconf.c | 38 ++--
scripts/kconfig/parser.y | 45 ++---
scripts/kconfig/preprocess.c | 4 +-
scripts/kconfig/qconf-cfg.sh | 2 +
scripts/kconfig/qconf.cc | 20 +--
scripts/kconfig/qconf.h | 2 +-
scripts/kconfig/symbol.c | 369
++++++++++++++++++++------------------
scripts/kconfig/tests/choice/Kconfig | 17 --
scripts/kconfig/tests/choice/__init__.py | 10 --
scripts/kconfig/tests/choice/alldef_expected_config | 3 -
scripts/kconfig/tests/choice/allmod_expected_config | 3 -
scripts/kconfig/tests/choice/allno_expected_config | 3 -
scripts/kconfig/tests/choice/allyes_expected_config | 3 -
scripts/kconfig/tests/choice/oldask0_expected_stdout | 4 -
scripts/kconfig/tests/choice/oldask1_config | 1 -
scripts/kconfig/tests/choice/oldask1_expected_stdout | 9 -
scripts/kconfig/tests/choice_value_with_m_dep/Kconfig | 21 ---
scripts/kconfig/tests/choice_value_with_m_dep/__init__.py | 16 --
scripts/kconfig/tests/choice_value_with_m_dep/config | 2 -
scripts/kconfig/tests/choice_value_with_m_dep/expected_config | 3 -
scripts/kconfig/tests/choice_value_with_m_dep/expected_stdout | 4 -
scripts/kconfig/tests/err_recursive_dep/expected_stderr | 36 ++--
scripts/kconfig/tests/inter_choice/Kconfig | 25 ---
scripts/kconfig/tests/inter_choice/__init__.py | 15 --
scripts/kconfig/tests/inter_choice/defconfig | 1 -
scripts/kconfig/tests/inter_choice/expected_config | 4 -
scripts/kconfig/util.c | 4 +-
scripts/link-vmlinux.sh | 105 ++++++-----
scripts/make_fit.py | 86 ++++++---
scripts/mod/list.h | 213
----------------------
scripts/mod/modpost.c | 67 +------
scripts/mod/modpost.h | 2 +-
scripts/package/PKGBUILD | 108 +++++++++++
scripts/package/builddeb | 2 +-
scripts/package/buildtar | 2 +-
scripts/package/gen-diff-patch | 2 +
scripts/package/install-extmod-build | 5 +-
scripts/package/kernel.spec | 2 +-
scripts/package/mkdebian | 44 ++---
scripts/package/mkspec | 27 ++-
scripts/remove-stale-files | 18 --
tools/perf/tests/vmlinux-kallsyms.c | 1 -
usr/Makefile | 4 +-
95 files changed, 1016 insertions(+), 1467 deletions(-)
rename {init => scripts}/build-version (100%)
rename scripts/{kconfig => include}/array_size.h (100%)
rename scripts/{kconfig => include}/hashtable.h (100%)
rename scripts/{kconfig => include}/list.h (81%)
rename scripts/{kconfig => include}/list_types.h (100%)
delete mode 100644 scripts/kconfig/tests/choice/oldask1_config
delete mode 100644 scripts/kconfig/tests/choice/oldask1_expected_stdout
delete mode 100644 scripts/kconfig/tests/choice_value_with_m_dep/Kconfig
delete mode 100644 scripts/kconfig/tests/choice_value_with_m_dep/__init__.py
delete mode 100644 scripts/kconfig/tests/choice_value_with_m_dep/config
delete mode 100644
scripts/kconfig/tests/choice_value_with_m_dep/expected_config
delete mode 100644
scripts/kconfig/tests/choice_value_with_m_dep/expected_stdout
delete mode 100644 scripts/kconfig/tests/inter_choice/Kconfig
delete mode 100644 scripts/kconfig/tests/inter_choice/__init__.py
delete mode 100644 scripts/kconfig/tests/inter_choice/defconfig
delete mode 100644 scripts/kconfig/tests/inter_choice/expected_config
delete mode 100644 scripts/mod/list.h
create mode 100644 scripts/package/PKGBUILD




--
Best Regards
Masahiro Yamada