* [GIT PULL] Kbuild updates for v6.11-rc1
@ 2024-07-23 19:44 ` Masahiro Yamada
2024-07-23 21:40 ` pr-tracker-bot
` (2 more replies)
0 siblings, 3 replies; 12+ messages in thread
From: Masahiro Yamada @ 2024-07-23 19:44 UTC (permalink / raw)
To: Linus Torvalds; +Cc: Linux Kbuild mailing list, Linux Kernel Mailing List
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
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [GIT PULL] Kbuild updates for v6.11-rc1
2024-07-23 19:44 ` [GIT PULL] Kbuild updates for v6.11-rc1 Masahiro Yamada
@ 2024-07-23 21:40 ` pr-tracker-bot
2024-07-23 21:49 ` Linus Torvalds
2024-07-24 9:03 ` Petr Vorel
2 siblings, 0 replies; 12+ messages in thread
From: pr-tracker-bot @ 2024-07-23 21:40 UTC (permalink / raw)
To: Masahiro Yamada
Cc: Linus Torvalds, Linux Kbuild mailing list,
Linux Kernel Mailing List
The pull request you sent on Wed, 24 Jul 2024 04:44:06 +0900:
> git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild.git tags/kbuild-v6.11
has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/ca83c61cb3db964061ea186654bf8e1879589de3
Thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/prtracker.html
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [GIT PULL] Kbuild updates for v6.11-rc1
2024-07-23 19:44 ` [GIT PULL] Kbuild updates for v6.11-rc1 Masahiro Yamada
2024-07-23 21:40 ` pr-tracker-bot
@ 2024-07-23 21:49 ` Linus Torvalds
2024-07-25 19:29 ` Masahiro Yamada
2024-07-24 9:03 ` Petr Vorel
2 siblings, 1 reply; 12+ messages in thread
From: Linus Torvalds @ 2024-07-23 21:49 UTC (permalink / raw)
To: Masahiro Yamada; +Cc: Linux Kbuild mailing list, Linux Kernel Mailing List
On Tue, 23 Jul 2024 at 12:44, Masahiro Yamada <masahiroy@kernel.org> wrote:
>
> You will get a merge conflict in scripts/Makefile.lib
So the merge conflict certainly wasn't too bad, but I really don't
love the complex fdtoverlay command duplication.
Strangely enough, there's a simplification for the DT_CHECK_CMD case
(used only once), but not for this creation case (now duplicate).
I didn't do it as part of the merge, but may I suggest adding something like
DT_CREATE_CMD = $(objtree)/scripts/dtc/fdtoverlay -i $(filter %.dtb
%.dtbo, $^) -o
and then using
$(DT_CREATE_CMD) $@
to pair up with the existing "$(DT_CHECK_CMD) $@" logic?
Or something along those lines?
(And no, I didn't check whether maybe the argument order for the
'fdtoverlay' script might matter, or something like that - I don't
think it does, but I did *not* test the above suggestion or really try
to think about it deeply, just mostly a reaction against the command
duplication particularly when there is now a comment about the
subtlety of the arguments)
Linus
^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH] kbuild: rpm-pkg: Fix C locale setup
@ 2024-07-24 8:46 Petr Vorel
2024-07-23 19:44 ` [GIT PULL] Kbuild updates for v6.11-rc1 Masahiro Yamada
` (4 more replies)
0 siblings, 5 replies; 12+ messages in thread
From: Petr Vorel @ 2024-07-24 8:46 UTC (permalink / raw)
To: linux-kbuild; +Cc: Petr Vorel, Rafael Aquini, Masahiro Yamada
semicolon separation in LC_ALL is wrong. Either variable needs to be
exported before as a separate commit or set as part of the commit in the
beginning. Used second variant.
This fixes broken build on user's locale setup which makes 'date' binary
to produce invalid characters in rpm changelog (e.g. cs_CZ.UTF-8 'čec'):
$ make binrpm-pkg
GEN rpmbuild/SPECS/kernel.spec
rpmbuild -bb rpmbuild/SPECS/kernel.spec --define='_topdirlinux/rpmbuild' \
--target x86_64-linux --build-in-place --noprep --define='_smp_mflags \
%{nil}' $(rpm -q rpm >/dev/null 2>&1 || echo --nodeps)
Building target platforms: x86_64-linux
Building for target x86_64-linux
error: bad date in %changelog: St čec 24 2024 user <user@somehost>
make[2]: *** [scripts/Makefile.package:71: binrpm-pkg] Error 1
make[1]: *** [linux/Makefile:1546: binrpm-pkg] Error 2
make: *** [Makefile:224: __sub-make] Error 2
Fixes: 301c10908e42 ("kbuild: rpm-pkg: introduce a simple changelog section for kernel.spec")
Signed-off-by: Petr Vorel <pvorel@suse.cz>
---
scripts/package/mkspec | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/scripts/package/mkspec b/scripts/package/mkspec
index ead54d67a024..4dc1466dfc81 100755
--- a/scripts/package/mkspec
+++ b/scripts/package/mkspec
@@ -50,6 +50,6 @@ fi
cat << EOF
%changelog
-* $(LC_ALL=C; date +'%a %b %d %Y') ${name} <${email}>
+* $(LC_ALL=C date +'%a %b %d %Y') ${name} <${email}>
- Custom built Linux kernel.
EOF
--
2.43.0
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [GIT PULL] Kbuild updates for v6.11-rc1
2024-07-23 19:44 ` [GIT PULL] Kbuild updates for v6.11-rc1 Masahiro Yamada
2024-07-23 21:40 ` pr-tracker-bot
2024-07-23 21:49 ` Linus Torvalds
@ 2024-07-24 9:03 ` Petr Vorel
2 siblings, 0 replies; 12+ messages in thread
From: Petr Vorel @ 2024-07-24 9:03 UTC (permalink / raw)
To: pvorel, Linus Torvalds
Cc: aquini, linux-kbuild, masahiroy, Linux Kernel Mailing List
From: Masahiro Yamada <masahiroy@kernel.org>
Hi Masahiro, Linus,
> 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.
It'd be nice to include also this tiny binrpm-pkg fix [1] for non-english
locales (introduced by 301c10908e42 already merged).
Kind regards,
Petr
[1] https://lore.kernel.org/linux-kbuild/20240724084655.930706-1-pvorel@suse.cz/
> Thank you.
...
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH] kbuild: rpm-pkg: Fix C locale setup
2024-07-24 8:46 [PATCH] kbuild: rpm-pkg: Fix C locale setup Petr Vorel
2024-07-23 19:44 ` [GIT PULL] Kbuild updates for v6.11-rc1 Masahiro Yamada
@ 2024-07-24 9:11 ` Miguel Ojeda
2024-07-24 10:02 ` Masahiro Yamada
` (2 subsequent siblings)
4 siblings, 0 replies; 12+ messages in thread
From: Miguel Ojeda @ 2024-07-24 9:11 UTC (permalink / raw)
To: Petr Vorel; +Cc: linux-kbuild, Rafael Aquini, Masahiro Yamada
On Wed, Jul 24, 2024 at 10:51 AM Petr Vorel <pvorel@suse.cz> wrote:
>
> semicolon separation in LC_ALL is wrong. Either variable needs to be
> exported before as a separate commit or set as part of the commit in the
> beginning. Used second variant.
Reviewed-by: Miguel Ojeda <ojeda@kernel.org>
Probably a typo after having removed `export`, or perhaps it was
assuming a built-in `date` for some reason.
Cheers,
Miguel
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH] kbuild: rpm-pkg: Fix C locale setup
2024-07-24 8:46 [PATCH] kbuild: rpm-pkg: Fix C locale setup Petr Vorel
2024-07-23 19:44 ` [GIT PULL] Kbuild updates for v6.11-rc1 Masahiro Yamada
2024-07-24 9:11 ` [PATCH] kbuild: rpm-pkg: Fix C locale setup Miguel Ojeda
@ 2024-07-24 10:02 ` Masahiro Yamada
2024-07-24 10:50 ` Petr Vorel
2024-07-24 10:24 ` Masahiro Yamada
2024-07-25 12:18 ` Rafael Aquini
4 siblings, 1 reply; 12+ messages in thread
From: Masahiro Yamada @ 2024-07-24 10:02 UTC (permalink / raw)
To: Petr Vorel; +Cc: linux-kbuild, Rafael Aquini
On Wed, Jul 24, 2024 at 5:47 PM Petr Vorel <pvorel@suse.cz> wrote:
>
> semicolon separation in LC_ALL is wrong. Either variable needs to be
> exported before as a separate commit or set as part of the commit in the
> beginning. Used second variant.
>
> This fixes broken build on user's locale setup which makes 'date' binary
> to produce invalid characters in rpm changelog (e.g. cs_CZ.UTF-8 'čec'):
>
> $ make binrpm-pkg
> GEN rpmbuild/SPECS/kernel.spec
> rpmbuild -bb rpmbuild/SPECS/kernel.spec --define='_topdirlinux/rpmbuild' \
> --target x86_64-linux --build-in-place --noprep --define='_smp_mflags \
> %{nil}' $(rpm -q rpm >/dev/null 2>&1 || echo --nodeps)
> Building target platforms: x86_64-linux
> Building for target x86_64-linux
> error: bad date in %changelog: St čec 24 2024 user <user@somehost>
> make[2]: *** [scripts/Makefile.package:71: binrpm-pkg] Error 1
> make[1]: *** [linux/Makefile:1546: binrpm-pkg] Error 2
> make: *** [Makefile:224: __sub-make] Error 2
>
> Fixes: 301c10908e42 ("kbuild: rpm-pkg: introduce a simple changelog section for kernel.spec")
> Signed-off-by: Petr Vorel <pvorel@suse.cz>
> ---
> scripts/package/mkspec | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/scripts/package/mkspec b/scripts/package/mkspec
> index ead54d67a024..4dc1466dfc81 100755
> --- a/scripts/package/mkspec
> +++ b/scripts/package/mkspec
> @@ -50,6 +50,6 @@ fi
> cat << EOF
>
> %changelog
> -* $(LC_ALL=C; date +'%a %b %d %Y') ${name} <${email}>
> +* $(LC_ALL=C date +'%a %b %d %Y') ${name} <${email}>
> - Custom built Linux kernel.
> EOF
> --
> 2.43.0
>
Ah, right. Thanks.
I also noticed this mistake in Rafaels' initial submission, then
I suggested the correct code without the semicolon:
https://lore.kernel.org/linux-kbuild/CAK7LNAQba5CDetpwevSoaOLJ21s1tO9ZHh=7gJpPCNK0AnHfJw@mail.gmail.com/
He tried to modify the code on his way over again,
then I missed that he had restored the semicolon.
I should have taken the code diff.
:-(
--
Best Regards
Masahiro Yamada
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH] kbuild: rpm-pkg: Fix C locale setup
2024-07-24 8:46 [PATCH] kbuild: rpm-pkg: Fix C locale setup Petr Vorel
` (2 preceding siblings ...)
2024-07-24 10:02 ` Masahiro Yamada
@ 2024-07-24 10:24 ` Masahiro Yamada
2024-07-25 12:18 ` Rafael Aquini
4 siblings, 0 replies; 12+ messages in thread
From: Masahiro Yamada @ 2024-07-24 10:24 UTC (permalink / raw)
To: Petr Vorel; +Cc: linux-kbuild, Rafael Aquini
On Wed, Jul 24, 2024 at 5:47 PM Petr Vorel <pvorel@suse.cz> wrote:
>
> semicolon separation in LC_ALL is wrong. Either variable needs to be
> exported before as a separate commit or set as part of the commit in the
> beginning. Used second variant.
>
> This fixes broken build on user's locale setup which makes 'date' binary
> to produce invalid characters in rpm changelog (e.g. cs_CZ.UTF-8 'čec'):
>
> $ make binrpm-pkg
> GEN rpmbuild/SPECS/kernel.spec
> rpmbuild -bb rpmbuild/SPECS/kernel.spec --define='_topdirlinux/rpmbuild' \
> --target x86_64-linux --build-in-place --noprep --define='_smp_mflags \
> %{nil}' $(rpm -q rpm >/dev/null 2>&1 || echo --nodeps)
> Building target platforms: x86_64-linux
> Building for target x86_64-linux
> error: bad date in %changelog: St čec 24 2024 user <user@somehost>
> make[2]: *** [scripts/Makefile.package:71: binrpm-pkg] Error 1
> make[1]: *** [linux/Makefile:1546: binrpm-pkg] Error 2
> make: *** [Makefile:224: __sub-make] Error 2
>
> Fixes: 301c10908e42 ("kbuild: rpm-pkg: introduce a simple changelog section for kernel.spec")
> Signed-off-by: Petr Vorel <pvorel@suse.cz>
Applied to linux-kbuild/fixes.
Thanks!
--
Best Regards
Masahiro Yamada
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH] kbuild: rpm-pkg: Fix C locale setup
2024-07-24 10:02 ` Masahiro Yamada
@ 2024-07-24 10:50 ` Petr Vorel
0 siblings, 0 replies; 12+ messages in thread
From: Petr Vorel @ 2024-07-24 10:50 UTC (permalink / raw)
To: Masahiro Yamada; +Cc: linux-kbuild, Rafael Aquini
Hi Masahiro,
> On Wed, Jul 24, 2024 at 5:47 PM Petr Vorel <pvorel@suse.cz> wrote:
> > semicolon separation in LC_ALL is wrong. Either variable needs to be
> > exported before as a separate commit or set as part of the commit in the
> > beginning. Used second variant.
> > This fixes broken build on user's locale setup which makes 'date' binary
> > to produce invalid characters in rpm changelog (e.g. cs_CZ.UTF-8 'čec'):
> > $ make binrpm-pkg
> > GEN rpmbuild/SPECS/kernel.spec
> > rpmbuild -bb rpmbuild/SPECS/kernel.spec --define='_topdirlinux/rpmbuild' \
> > --target x86_64-linux --build-in-place --noprep --define='_smp_mflags \
> > %{nil}' $(rpm -q rpm >/dev/null 2>&1 || echo --nodeps)
> > Building target platforms: x86_64-linux
> > Building for target x86_64-linux
> > error: bad date in %changelog: St čec 24 2024 user <user@somehost>
> > make[2]: *** [scripts/Makefile.package:71: binrpm-pkg] Error 1
> > make[1]: *** [linux/Makefile:1546: binrpm-pkg] Error 2
> > make: *** [Makefile:224: __sub-make] Error 2
> > Fixes: 301c10908e42 ("kbuild: rpm-pkg: introduce a simple changelog section for kernel.spec")
> > Signed-off-by: Petr Vorel <pvorel@suse.cz>
> > ---
> > scripts/package/mkspec | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> > diff --git a/scripts/package/mkspec b/scripts/package/mkspec
> > index ead54d67a024..4dc1466dfc81 100755
> > --- a/scripts/package/mkspec
> > +++ b/scripts/package/mkspec
> > @@ -50,6 +50,6 @@ fi
> > cat << EOF
> > %changelog
> > -* $(LC_ALL=C; date +'%a %b %d %Y') ${name} <${email}>
> > +* $(LC_ALL=C date +'%a %b %d %Y') ${name} <${email}>
> > - Custom built Linux kernel.
> > EOF
> > --
> > 2.43.0
> Ah, right. Thanks.
> I also noticed this mistake in Rafaels' initial submission, then
> I suggested the correct code without the semicolon:
> https://lore.kernel.org/linux-kbuild/CAK7LNAQba5CDetpwevSoaOLJ21s1tO9ZHh=7gJpPCNK0AnHfJw@mail.gmail.com/
> He tried to modify the code on his way over again,
> then I missed that he had restored the semicolon.
> I should have taken the code diff.
> :-(
Thank you for an explanation, quick review and merge!
Kind regards,
Petr
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH] kbuild: rpm-pkg: Fix C locale setup
2024-07-24 8:46 [PATCH] kbuild: rpm-pkg: Fix C locale setup Petr Vorel
` (3 preceding siblings ...)
2024-07-24 10:24 ` Masahiro Yamada
@ 2024-07-25 12:18 ` Rafael Aquini
4 siblings, 0 replies; 12+ messages in thread
From: Rafael Aquini @ 2024-07-25 12:18 UTC (permalink / raw)
To: Petr Vorel; +Cc: linux-kbuild, Masahiro Yamada
On Wed, Jul 24, 2024 at 10:46:55AM +0200, Petr Vorel wrote:
> semicolon separation in LC_ALL is wrong. Either variable needs to be
> exported before as a separate commit or set as part of the commit in the
> beginning. Used second variant.
>
> This fixes broken build on user's locale setup which makes 'date' binary
> to produce invalid characters in rpm changelog (e.g. cs_CZ.UTF-8 'čec'):
>
> $ make binrpm-pkg
> GEN rpmbuild/SPECS/kernel.spec
> rpmbuild -bb rpmbuild/SPECS/kernel.spec --define='_topdirlinux/rpmbuild' \
> --target x86_64-linux --build-in-place --noprep --define='_smp_mflags \
> %{nil}' $(rpm -q rpm >/dev/null 2>&1 || echo --nodeps)
> Building target platforms: x86_64-linux
> Building for target x86_64-linux
> error: bad date in %changelog: St čec 24 2024 user <user@somehost>
> make[2]: *** [scripts/Makefile.package:71: binrpm-pkg] Error 1
> make[1]: *** [linux/Makefile:1546: binrpm-pkg] Error 2
> make: *** [Makefile:224: __sub-make] Error 2
>
> Fixes: 301c10908e42 ("kbuild: rpm-pkg: introduce a simple changelog section for kernel.spec")
> Signed-off-by: Petr Vorel <pvorel@suse.cz>
> ---
> scripts/package/mkspec | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/scripts/package/mkspec b/scripts/package/mkspec
> index ead54d67a024..4dc1466dfc81 100755
> --- a/scripts/package/mkspec
> +++ b/scripts/package/mkspec
> @@ -50,6 +50,6 @@ fi
> cat << EOF
>
> %changelog
> -* $(LC_ALL=C; date +'%a %b %d %Y') ${name} <${email}>
> +* $(LC_ALL=C date +'%a %b %d %Y') ${name} <${email}>
> - Custom built Linux kernel.
> EOF
> --
> 2.43.0
>
Acked-by: Rafael Aquini <aquini@redhat.com>
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [GIT PULL] Kbuild updates for v6.11-rc1
2024-07-23 21:49 ` Linus Torvalds
@ 2024-07-25 19:29 ` Masahiro Yamada
2024-07-25 19:44 ` Linus Torvalds
0 siblings, 1 reply; 12+ messages in thread
From: Masahiro Yamada @ 2024-07-25 19:29 UTC (permalink / raw)
To: Linus Torvalds; +Cc: Linux Kbuild mailing list, Linux Kernel Mailing List
Hi Linus,
On Wed, Jul 24, 2024 at 6:49 AM Linus Torvalds
<torvalds@linux-foundation.org> wrote:
>
> On Tue, 23 Jul 2024 at 12:44, Masahiro Yamada <masahiroy@kernel.org> wrote:
> >
> > You will get a merge conflict in scripts/Makefile.lib
>
> So the merge conflict certainly wasn't too bad, but I really don't
> love the complex fdtoverlay command duplication.
>
> Strangely enough, there's a simplification for the DT_CHECK_CMD case
> (used only once), but not for this creation case (now duplicate).
>
> I didn't do it as part of the merge, but may I suggest adding something like
>
> DT_CREATE_CMD = $(objtree)/scripts/dtc/fdtoverlay -i $(filter %.dtb
> %.dtbo, $^) -o
>
> and then using
>
> $(DT_CREATE_CMD) $@
>
> to pair up with the existing "$(DT_CHECK_CMD) $@" logic?
>
> Or something along those lines?
I deduplicated the code in a slightly different way.
https://lore.kernel.org/lkml/20240725192317.258132-1-masahiroy@kernel.org/T/#u
Anyway, this is not an urgent issue. I will include it in my next pull request.
>
> (And no, I didn't check whether maybe the argument order for the
> 'fdtoverlay' script might matter, or something like that - I don't
> think it does, but I did *not* test the above suggestion or really try
> to think about it deeply, just mostly a reaction against the command
> duplication particularly when there is now a comment about the
> subtlety of the arguments)
>
> Linus
--
Best Regards
Masahiro Yamada
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [GIT PULL] Kbuild updates for v6.11-rc1
2024-07-25 19:29 ` Masahiro Yamada
@ 2024-07-25 19:44 ` Linus Torvalds
0 siblings, 0 replies; 12+ messages in thread
From: Linus Torvalds @ 2024-07-25 19:44 UTC (permalink / raw)
To: Masahiro Yamada; +Cc: Linux Kbuild mailing list, Linux Kernel Mailing List
On Thu, 25 Jul 2024 at 12:30, Masahiro Yamada <masahiroy@kernel.org> wrote:
>
> I deduplicated the code in a slightly different way.
Thanks, looks fine (from just a quick look at the patch),
Linus
^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2024-07-25 19:44 UTC | newest]
Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-07-24 8:46 [PATCH] kbuild: rpm-pkg: Fix C locale setup Petr Vorel
2024-07-23 19:44 ` [GIT PULL] Kbuild updates for v6.11-rc1 Masahiro Yamada
2024-07-23 21:40 ` pr-tracker-bot
2024-07-23 21:49 ` Linus Torvalds
2024-07-25 19:29 ` Masahiro Yamada
2024-07-25 19:44 ` Linus Torvalds
2024-07-24 9:03 ` Petr Vorel
2024-07-24 9:11 ` [PATCH] kbuild: rpm-pkg: Fix C locale setup Miguel Ojeda
2024-07-24 10:02 ` Masahiro Yamada
2024-07-24 10:50 ` Petr Vorel
2024-07-24 10:24 ` Masahiro Yamada
2024-07-25 12:18 ` Rafael Aquini
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox