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@xxxxxxxxxxxxxxxx> 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@xxxxxxxxxxxxxxxx/ , 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