lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZuGZNLHkUm+MOYpk@oracle.com>
Date: Wed, 11 Sep 2024 09:20:52 -0400
From: Kris Van Hees <kris.van.hees@...cle.com>
To: Masahiro Yamada <masahiroy@...nel.org>
Cc: Stephen Rothwell <sfr@...b.auug.org.au>,
        Kris Van Hees <kris.van.hees@...cle.com>,
        Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
        Linux Next Mailing List <linux-next@...r.kernel.org>
Subject: Re: linux-next: build failure after merge of the kbuild tree

On Wed, Sep 11, 2024 at 06:38:19PM +0900, Masahiro Yamada wrote:
> On Wed, Sep 11, 2024 at 9:18???AM Stephen Rothwell <sfr@...b.auug.org.au> wrote:
> >
> > Hi all,
> >
> > After merging the kbuild tree, today's linux-next build (x86_64
> > allmodconfig) failed like this:
> >
> > make[3]: *** Deleting file 'modules.builtin.ranges'
> > /bin/sh: 1: scripts/generate_builtin_ranges.awk: not found
> > make[3]: *** [scripts/Makefile.vmlinux:47: modules.builtin.ranges] Error 127
> > make[2]: *** [Makefile:1157: vmlinux] Error 2
> > make[2]: *** Waiting for unfinished jobs....
> > make[1]: *** [Makefile:224: __sub-make] Error 2
> > make: *** [Makefile:224: __sub-make] Error 2
> > Command exited with non-zero status 2
> >
> > Caused by commit
> >
> >   04b15cdd611a ("kbuild: generate offset range data for builtin modules")
> >
> > I do not have gawk installed - I do have mawk installed (as awk).  Does
> > this script actually need gawk, or will just plain awk suffice?

The scripts does need gawk because other flavours like mawk do not have the
features that the scripts depend on.

> >
> > I have installed gawk.
> >
> 
> 
> This is what I was worried about.
> 
> As Documentation/process/changes.rst was modified in that commit,
> it specifically requires GNU AWK.
> 
> Anyway, you were able to fix the build error
> by installing /usr/bin/gawk.
> 
> If a distro installs gawk somewhere else,
> (/usr/local/bin/gawk, for example), it is a problem.
> The shebang "#!/usr/bin/gawk -f" will not work.
> "#!/usr/bin/env gawk -f" will not work either.
> 
> More people may start complaining about it.

For the generator script, passing it as a script explicitly to gawk would
work because then the regular PATH search will apply, i.e.

	gawk -f scripts/generate_builtin_ranges.awk <args>

The scripts/verify_builtin_ranges.awk script can be invoked the same way,
or simply as an executable script if gawk is installed in the standard place.


Other utilities that are executed during the kernel build seem to depend
on being found using the PATH, so perhaps changing the recipe in the makefile
to use gawk -f <script> <args> would be an acceptable solution?

	Kris

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ