[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAK7LNAQ46gagVdjYSYGCkFNfdHYnr-qCUfbDq-cUtHWvCGfmnA@mail.gmail.com>
Date: Sun, 25 Aug 2024 01:58:45 +0900
From: Masahiro Yamada <masahiroy@...nel.org>
To: Thomas Weißschuh <thomas@...ch.de>
Cc: linux-kbuild@...r.kernel.org, linux-kernel@...r.kernel.org,
Kees Cook <kees@...nel.org>, Nathan Chancellor <nathan@...nel.org>, Nicolas Schier <nicolas@...sle.eu>,
Ben Hutchings <ben@...adent.org.uk>
Subject: Re: [PATCH 3/4] kbuild: slim down package for building external modules
On Sat, Aug 24, 2024 at 9:27 PM Thomas Weißschuh <thomas@...ch.de> wrote:
>
> Hi Masahiro,
>
> On 2024-07-27 16:42:03+0000, Masahiro Yamada wrote:
> > Exclude directories and files unnecessary for building external modules:
> >
> > - include/config/ (except include/config/auto.conf)
> > - scripts/atomic/
> > - scripts/dtc/
> > - scripts/kconfig/
> > - scripts/mod/mk_elfconfig
> > - scripts/package/
> > - scripts/unifdef
> > - .config
> > - *.o
> > - .*.cmd
> >
> > Avoid copying files twice for the following directories:
> >
> > - include/generated/
> > - arch/*/include/generated/
> >
> > Signed-off-by: Masahiro Yamada <masahiroy@...nel.org>
> > ---
> >
> > scripts/package/install-extmod-build | 20 +++++++++++++++-----
> > 1 file changed, 15 insertions(+), 5 deletions(-)
> >
> > diff --git a/scripts/package/install-extmod-build b/scripts/package/install-extmod-build
> > index 8cc9e13403ae..cc335945dfbc 100755
> > --- a/scripts/package/install-extmod-build
> > +++ b/scripts/package/install-extmod-build
> > @@ -9,15 +9,22 @@ is_enabled() {
> > grep -q "^$1=y" include/config/auto.conf
> > }
> >
> > +find_in_scripts() {
> > + find scripts \
> > + \( -name atomic -o -name dtc -o -name kconfig -o -name package \) -prune -o \
> > + ! -name unifdef -a ! -name mk_elfconfig -a \( -type f -o -type l \) -print
> > +}
> > +
> > mkdir -p "${destdir}"
> >
> > (
> > cd "${srctree}"
> > echo Makefile
> > find "arch/${SRCARCH}" -maxdepth 1 -name 'Makefile*'
> > - find include scripts -type f -o -type l
> > + find "arch/${SRCARCH}" -name generated -prune -o -name include -type d -print
> > find "arch/${SRCARCH}" -name Kbuild.platforms -o -name Platform
> > - find "arch/${SRCARCH}" -name include -type d
> > + find include \( -name config -o -name generated \) -prune -o \( -type f -o -type l \) -print
> > + find_in_scripts
> > ) | tar -c -f - -C "${srctree}" -T - | tar -xf - -C "${destdir}"
> >
> > {
> > @@ -25,12 +32,15 @@ mkdir -p "${destdir}"
> > echo tools/objtool/objtool
> > fi
> >
> > - find "arch/${SRCARCH}/include" Module.symvers include scripts -type f
> > + echo Module.symvers
> > + echo "arch/${SRCARCH}/include/generated"
> > + echo include/config/auto.conf
> > + echo include/generated
> > + find_in_scripts
>
> This now excludes include/config/kernel.release which is used to set
> KERNELRELEASE, which is commonly used by Makefiles.
> See Documentation/kbuild/modules.txt, other users also seem not unlikely.
>
> IMO this specific file should be added back.
Agree.
I fixed it up locally. Thanks for the report.
--
Best Regards
Masahiro Yamada
Powered by blists - more mailing lists