diff mbox series

[-next,v2] kbuild: explicitly run mksysmap as sed script from link-vmlinux.sh

Message ID 20240605175807.106447-3-mailingradian@gmail.com (mailing list archive)
State New
Headers show
Series [-next,v2] kbuild: explicitly run mksysmap as sed script from link-vmlinux.sh | expand

Commit Message

Richard Acayan June 5, 2024, 5:58 p.m. UTC
In commit b18b047002b7 ("kbuild: change scripts/mksysmap into sed
script"), the mksysmap script was transformed into a sed script,
made directly executable with "#!/bin/sed -f". Apparently, the path to
sed is different on NixOS.

The shebang can't use the env command, otherwise the "sed -f" command
would be treated as a single argument. This can be solved with the -S
flag, but that is a GNU extension. Explicitly use sed instead of relying
on the executable shebang to fix NixOS builds without breaking build
environments using Busybox.

Fixes: b18b047002b7 ("kbuild: change scripts/mksysmap into sed script")
Signed-off-by: Richard Acayan <mailingradian@gmail.com>
---
 scripts/link-vmlinux.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Nathan Chancellor June 5, 2024, 6:15 p.m. UTC | #1
On Wed, Jun 05, 2024 at 01:58:09PM -0400, Richard Acayan wrote:
> In commit b18b047002b7 ("kbuild: change scripts/mksysmap into sed
> script"), the mksysmap script was transformed into a sed script,
> made directly executable with "#!/bin/sed -f". Apparently, the path to
> sed is different on NixOS.
> 
> The shebang can't use the env command, otherwise the "sed -f" command
> would be treated as a single argument. This can be solved with the -S
> flag, but that is a GNU extension. Explicitly use sed instead of relying
> on the executable shebang to fix NixOS builds without breaking build
> environments using Busybox.
> 
> Fixes: b18b047002b7 ("kbuild: change scripts/mksysmap into sed script")
> Signed-off-by: Richard Acayan <mailingradian@gmail.com>

Reviewed-by: Nathan Chancellor <nathan@kernel.org>

> ---
>  scripts/link-vmlinux.sh | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/scripts/link-vmlinux.sh b/scripts/link-vmlinux.sh
> index 46ce5d04dbeb..518c70b8db50 100755
> --- a/scripts/link-vmlinux.sh
> +++ b/scripts/link-vmlinux.sh
> @@ -193,7 +193,7 @@ kallsyms_step()
>  mksysmap()
>  {
>  	info NM ${2}
> -	${NM} -n "${1}" | "${srctree}/scripts/mksysmap" > "${2}"
> +	${NM} -n "${1}" | sed -f "${srctree}/scripts/mksysmap" > "${2}"
>  }
>  
>  sorttable()
> -- 
> 2.45.2
>
Masahiro Yamada June 6, 2024, 1:16 p.m. UTC | #2
On Thu, Jun 6, 2024 at 2:59 AM Richard Acayan <mailingradian@gmail.com> wrote:
>
> In commit b18b047002b7 ("kbuild: change scripts/mksysmap into sed
> script"), the mksysmap script was transformed into a sed script,
> made directly executable with "#!/bin/sed -f". Apparently, the path to
> sed is different on NixOS.
>
> The shebang can't use the env command, otherwise the "sed -f" command
> would be treated as a single argument. This can be solved with the -S
> flag, but that is a GNU extension. Explicitly use sed instead of relying
> on the executable shebang to fix NixOS builds without breaking build
> environments using Busybox.
>
> Fixes: b18b047002b7 ("kbuild: change scripts/mksysmap into sed script")
> Signed-off-by: Richard Acayan <mailingradian@gmail.com>
> ---

Applied with Kent's Reported-by.

Thanks!


>  scripts/link-vmlinux.sh | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/scripts/link-vmlinux.sh b/scripts/link-vmlinux.sh
> index 46ce5d04dbeb..518c70b8db50 100755
> --- a/scripts/link-vmlinux.sh
> +++ b/scripts/link-vmlinux.sh
> @@ -193,7 +193,7 @@ kallsyms_step()
>  mksysmap()
>  {
>         info NM ${2}
> -       ${NM} -n "${1}" | "${srctree}/scripts/mksysmap" > "${2}"
> +       ${NM} -n "${1}" | sed -f "${srctree}/scripts/mksysmap" > "${2}"
>  }
>
>  sorttable()
> --
> 2.45.2
>
>
diff mbox series

Patch

diff --git a/scripts/link-vmlinux.sh b/scripts/link-vmlinux.sh
index 46ce5d04dbeb..518c70b8db50 100755
--- a/scripts/link-vmlinux.sh
+++ b/scripts/link-vmlinux.sh
@@ -193,7 +193,7 @@  kallsyms_step()
 mksysmap()
 {
 	info NM ${2}
-	${NM} -n "${1}" | "${srctree}/scripts/mksysmap" > "${2}"
+	${NM} -n "${1}" | sed -f "${srctree}/scripts/mksysmap" > "${2}"
 }
 
 sorttable()