From ced9f62ec4355bbb92226ac3f019da468a5c996b Mon Sep 17 00:00:00 2001 From: SeongJae Park Date: Mon, 10 Jan 2022 08:59:52 +0000 Subject: [PATCH] init/Kconfig: Specify the interpreter for rust-is-available.sh Some common tools like 'diff' don't support permissions of the files. Due to that, 'rust-is-available.sh' in some trees including '-mm' result in having no execution permission, and therefore build fails like below: $ make O=../linux.out/ olddefconfig make[1]: Entering directory 'linux.out' GEN Makefile sh: 1: linux/scripts/rust-is-available.sh: Permission denied init/Kconfig:71: syntax error init/Kconfig:70: invalid statement linux/scripts/kconfig/Makefile:77: recipe for target 'olddefconfig' failed make[2]: *** [olddefconfig] Error 1 linux/Makefile:666: recipe for target 'olddefconfig' failed make[1]: *** [olddefconfig] Error 2 make[1]: Leaving directory 'linux.out' Makefile:226: recipe for target '__sub-make' failed make: *** [__sub-make] Error 2 It's not a big deal, but not so fun. This commit works around the issue by specifying the interpreter for 'rust-is-available.sh' in the Kconfig file. The ugly work around wouldn't be needed once 'rust-is-available.sh' file is merged in the mainline with the execution permission. Signed-off-by: SeongJae Park Reviewed-by: Wei Liu [Edited for new script] Signed-off-by: Miguel Ojeda --- init/Kconfig | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/init/Kconfig b/init/Kconfig index a98f39039cc90..861cf35157eba 100644 --- a/init/Kconfig +++ b/init/Kconfig @@ -61,7 +61,13 @@ config LLD_VERSION default 0 config RUST_IS_AVAILABLE - def_bool $(success,$(srctree)/scripts/rust-is-available.sh) + # Because some common tools like 'diff' don't support permissions of + # the files, 'rust-is-available.sh' in some trees that managed with such + # tools result in having no execution permission. As a temporal work + # around, we specify the interpreter ('/bin/sh'). It will be unneeded + # once 'rust-is-available.sh' is merged in the mainline with its execution + # permission. + def_bool $(success,/bin/sh $(srctree)/scripts/rust-is-available.sh) help This shows whether a suitable Rust toolchain is available (found).