From: Josh Triplett <josh@joshtriplett.org>
To: Masahiro Yamada <masahiroy@kernel.org>
Cc: Linux Kbuild mailing list <linux-kbuild@vger.kernel.org>,
Michal Marek <michal.lkml@markovi.net>
Subject: Re: "make bindeb-pkg" fails with CONFIG_MODULES disabled
Date: Sat, 26 Sep 2020 01:45:19 -0700 [thread overview]
Message-ID: <20200926084519.GA8344@localhost> (raw)
In-Reply-To: <CAK7LNAR5ArP8RGHHOXAauTvXcQgvstP=Ydh8Nc+Kv-0NYhhP2g@mail.gmail.com>
On Sat, Sep 26, 2020 at 02:45:38PM +0900, Masahiro Yamada wrote:
> On Sat, Sep 26, 2020 at 7:29 AM Josh Triplett <josh@joshtriplett.org> wrote:
> >
> > With CONFIG_MODULES disabled, "make bindeb-pkg" fails in
> > scripts/package/builddeb with:
> >
> > find: ‘Module.symvers’: No such file or directory
> >
> > The deploy_kernel_headers function in scripts/package/builddeb calls:
> >
> > find arch/$SRCARCH/include Module.symvers include scripts -type f
> >
> > But find errors out if any of its command-line arguments doesn't exist.
> >
> > This could be fixed by checking whether that file exists first, but if
> > CONFIG_MODULES is disabled, it doesn't really make sense to build the
> > linux-headers package at all. Perhaps that whole package could be
> > disabled when modules are disabled?
>
> I agree.
>
>
> How about something like the following?
That looks good to me.
(It would be nice, as well, to have some conditional wrapped around the
linux-libc-dev package. I had a patch for that a while ago at
https://lore.kernel.org/lkml/b45738b05bb396e175a36f67b02fa01de4c7472f.1583912084.git.josh@joshtriplett.org/
, but that's probably not the ideal way to do it. I'd love to see a way
to disable that extra deb, though, as it adds time to the deb build
process for a package that most people looking to build a deb won't
need or install.)
> diff --git a/scripts/package/builddeb b/scripts/package/builddeb
> index 6df3c9f8b2da..8277144298a0 100755
> --- a/scripts/package/builddeb
> +++ b/scripts/package/builddeb
> @@ -202,8 +202,10 @@ EOF
> done
>
> if [ "$ARCH" != "um" ]; then
> - deploy_kernel_headers debian/linux-headers
> - create_package linux-headers-$version debian/linux-headers
> + if is_enabled CONFIG_MODULES; then
> + deploy_kernel_headers debian/linux-headers
> + create_package linux-headers-$version debian/linux-headers
> + fi
>
> deploy_libc_headers debian/linux-libc-dev
> create_package linux-libc-dev debian/linux-libc-dev
> diff --git a/scripts/package/mkdebian b/scripts/package/mkdebian
> index 48fbd3d0284a..88c5e25662bd 100755
> --- a/scripts/package/mkdebian
> +++ b/scripts/package/mkdebian
> @@ -183,13 +183,6 @@ Description: Linux kernel, version $version
> This package contains the Linux kernel, modules and corresponding other
> files, version: $version.
>
> -Package: $kernel_headers_packagename
> -Architecture: $debarch
> -Description: Linux kernel headers for $version on $debarch
> - This package provides kernel header files for $version on $debarch
> - .
> - This is useful for people who need to build external modules
> -
> Package: linux-libc-dev
> Section: devel
> Provides: linux-kernel-headers
> @@ -200,6 +193,17 @@ Description: Linux support headers for userspace
> development
> Multi-Arch: same
> EOF
>
> +if is_enabled CONFIG_MODULES; then
> +cat <<EOF >> debian/control
> +Package: $kernel_headers_packagename
> +Architecture: $debarch
> +Description: Linux kernel headers for $version on $debarch
> + This package provides kernel header files for $version on $debarch
> + .
> + This is useful for people who need to build external modules
> +EOF
> +fi
> +
> if is_enabled CONFIG_DEBUG_INFO; then
> cat <<EOF >> debian/control
>
>
>
>
>
>
> --
> Best Regards
> Masahiro Yamada
next prev parent reply other threads:[~2020-09-26 8:45 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-09-25 22:29 "make bindeb-pkg" fails with CONFIG_MODULES disabled Josh Triplett
2020-09-26 5:45 ` Masahiro Yamada
2020-09-26 8:45 ` Josh Triplett [this message]
2020-10-13 16:48 ` Masahiro Yamada
2020-10-20 17:21 ` Josh Triplett
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200926084519.GA8344@localhost \
--to=josh@joshtriplett.org \
--cc=linux-kbuild@vger.kernel.org \
--cc=masahiroy@kernel.org \
--cc=michal.lkml@markovi.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.