[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAK7LNARzBkLWFYEvVrXvT+YrivKuVGraKWTexVWyqTxxFWPG+A@mail.gmail.com>
Date:   Thu, 25 Jan 2018 22:15:47 +0900
From:   Masahiro Yamada <yamada.masahiro@...ionext.com>
To:     Jakub Kicinski <jakub.kicinski@...ronome.com>
Cc:     Linux Kbuild mailing list <linux-kbuild@...r.kernel.org>,
        "David S. Miller" <davem@...emloft.net>,
        Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
        netdev@...r.kernel.org, oss-drivers@...ronome.com
Subject: Re: [PATCH] kbuild: make Makefile|Kbuild in each directory optional
2018-01-25 10:41 GMT+09:00 Jakub Kicinski <jakub.kicinski@...ronome.com>:
> It is useful to be able to build single object files, e.g.:
> $ make net/sched/cls_flower.o W=1 C=2
>
> Currently kbuild does a hard include of a Kbuild or Makefile
> for directory where that object would reside.  Kbuild doesn't
> cater too well to multi-directory drivers, meaning such drivers
> will usually only use a single central Makefile.  This in turn
> means it will be impossible to build most of object files
> individually for such drivers.
>
> Make the include of $dir/{Makefile,Kbuild} optional.
>
> Signed-off-by: Jakub Kicinski <jakub.kicinski@...ronome.com>
> Reviewed-by: Dirk van der Merwe <dirk.vandermerwe@...ronome.com>
> ---
> I must admit I have no idea whose tree I should send this to :(
> Could it go via net-next if no one on linux-kbuild objects?
This should be taken care of by linux-kbuild (and me).
For your specific problem, please fix netronome/nfp/Makefile
I'd like to take my time to think about this patch.
The single target is a bit compromised implementation
(it cannot handle subdir-ccflags-y correctly, for example)
I wonder if we should do this just for single target...
>  scripts/Makefile.build | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/scripts/Makefile.build b/scripts/Makefile.build
> index 47cddf32aeba..178864f877d5 100644
> --- a/scripts/Makefile.build
> +++ b/scripts/Makefile.build
> @@ -42,7 +42,7 @@ save-cflags := $(CFLAGS)
>  # The filename Kbuild has precedence over Makefile
>  kbuild-dir := $(if $(filter /%,$(src)),$(src),$(srctree)/$(src))
>  kbuild-file := $(if $(wildcard $(kbuild-dir)/Kbuild),$(kbuild-dir)/Kbuild,$(kbuild-dir)/Makefile)
> -include $(kbuild-file)
> +-include $(kbuild-file)
>
>  # If the save-* variables changed error out
>  ifeq ($(KBUILD_NOPEDANTIC),)
> --
> 2.15.1
>
-- 
Best Regards
Masahiro Yamada
Powered by blists - more mailing lists
 
