[PATCH 3/7] Kconfig: Escape variables to make in default strings

Masahiro Yamada
2020-02-26T02:35:18Z

On Tue, Feb 25, 2020 at 3:05 AM Tom Rini <trini@konsulko.com> wrote:
>
> We have some variables that need to include a variable to pass to make
> to evaluate later, typically ARCH and BOARDDIR, to find a file to use.
> The way we're doing this today isn't correct but works. With an update
> to Kconfig we will need to escape these properly, so do so.
>
> Cc: Masahiro Yamada <masahiroy@kernel.org>
> Signed-off-by: Tom Rini <trini@konsulko.com>
> ---
> arch/arm/mach-davinci/Kconfig | 2 +-
> arch/arm/mach-orion5x/Kconfig | 2 +-
> common/spl/Kconfig | 4 ++--
> 3 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/arch/arm/mach-davinci/Kconfig b/arch/arm/mach-davinci/Kconfig
> index 8a81c078811d..83f749c0440a 100644
> --- a/arch/arm/mach-davinci/Kconfig
> +++ b/arch/arm/mach-davinci/Kconfig
> @@ -135,6 +135,6 @@ source "board/davinci/da8xxevm/Kconfig"
> source "board/lego/ev3/Kconfig"
>
> config SPL_LDSCRIPT
> - default "board/$(BOARDDIR)/u-boot-spl-da850evm.lds"
> + default "board/\$(BOARDDIR)/u-boot-spl-da850evm.lds"

Only one file path for this.

$ find . -name u-boot-spl-da850evm.lds
./board/davinci/da8xxevm/u-boot-spl-da850evm.lds

I prefer hard-coding.

default "board/davinci/da8xxevm/u-boot-spl-da850evm.lds"

> endif
> diff --git a/arch/arm/mach-orion5x/Kconfig b/arch/arm/mach-orion5x/Kconfig
> index 2984a3edda21..c4bc524eb81e 100644
> --- a/arch/arm/mach-orion5x/Kconfig
> +++ b/arch/arm/mach-orion5x/Kconfig
> @@ -16,6 +16,6 @@ config SYS_SOC
> source "board/LaCie/edminiv2/Kconfig"
>
> config SPL_LDSCRIPT
> - default "$(CPUDIR)/orion5x/u-boot-spl.lds" if ORION5X
> + default "\$(CPUDIR)/orion5x/u-boot-spl.lds" if ORION5X

Ditto.

We know the directory path of orion5x.

$ find . -name orion5x
./arch/arm/cpu/arm926ejs/orion5x

You can hard-code it.

> endif
> diff --git a/common/spl/Kconfig b/common/spl/Kconfig
> index b03a476b9f69..9d52b75cb434 100644
> --- a/common/spl/Kconfig
> +++ b/common/spl/Kconfig
> @@ -139,7 +139,7 @@ config SPL_HANDOFF
>
> config SPL_LDSCRIPT
> string "Linker script for the SPL stage"
> - default "arch/$(ARCH)/cpu/u-boot-spl.lds"
> + default "arch/\$(ARCH)/cpu/u-boot-spl.lds"
> help
> The SPL stage will usually require a different linker-script
> (as it runs from a different memory region) than the regular
> @@ -1306,7 +1306,7 @@ config TPL_LDSCRIPT
> string "Linker script for the TPL stage"
> depends on TPL
> default "arch/arm/cpu/armv8/u-boot-spl.lds" if ARM64
> - default "arch/$(ARCH)/cpu/u-boot-spl.lds"
> + default "arch/\$(ARCH)/cpu/u-boot-spl.lds"
> help
> The TPL stage will usually require a different linker-script
> (as it runs from a different memory region) than the regular
> --
> 2.17.1
>

--
Best Regards
Masahiro Yamada