Re: [Intel-gfx] [PATCH 0/5] kbuild: allow big modules to sub-divide Makefiles

2019-08-10 Thread Sam Ravnborg
Hi Masahiro

On Tue, Aug 06, 2019 at 03:39:18PM +0900, Masahiro Yamada wrote:
> 
> Recently, Jani Nikula requests a better build system support
> for drivers spanning multiple directories.
> (better kbuild support for drivers spanning multiple directories?)
> 
> I implemented it, so please take a look at it.
> 
> Note:
> The single targets do not work correctly.
> 
> The single targets have never worked correctly:

It works in most cases, but now always.
I dunno how much it is used.
Myself I almost always do make /drivers/foo/bar/
> 
> [1] For instance, "make drivers/foo/bar/baz.o" will descend into
> drivers/foo/bar/Makefile, which may not necessarily specify
> the build rule of baz.o
> 
> It is possible for drivers/foo/Makefile having
> obj-$(CONFIG_BAZ) += bar/baz.o
> 
> [2] subdir-ccflags-y does not work.
> 
> The single targets directly descend into the directory of
> that file resides.
> 
> It missed subdir-ccflags-y if it is specifies in parent
> Makefiles.
> 
> Perhaps, I will have to manage correct implementation of single targets.
The day that kbuild has a separate step to read all Makefiles
and then without using recursive make can build the kernel we can have
this fixed.
Until then we can accpet it as is - as fixing this may not be simple.

Sam
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

[Intel-gfx] [PATCH 0/5] kbuild: allow big modules to sub-divide Makefiles

2019-08-06 Thread Masahiro Yamada

Recently, Jani Nikula requests a better build system support
for drivers spanning multiple directories.
(better kbuild support for drivers spanning multiple directories?)

I implemented it, so please take a look at it.

Note:
The single targets do not work correctly.

The single targets have never worked correctly:

[1] For instance, "make drivers/foo/bar/baz.o" will descend into
drivers/foo/bar/Makefile, which may not necessarily specify
the build rule of baz.o

It is possible for drivers/foo/Makefile having
obj-$(CONFIG_BAZ) += bar/baz.o

[2] subdir-ccflags-y does not work.

The single targets directly descend into the directory of
that file resides.

It missed subdir-ccflags-y if it is specifies in parent
Makefiles.

Perhaps, I will have to manage correct implementation of single targets.



Masahiro Yamada (5):
  kbuild: treat an object as multi-used when $(foo-) is set
  kbuild: clean up modname calculation
  kbuild: rename cmd_ar_builtin to cmd_ar_no_sym
  kbuild: support composite objects spanning across multiple Makefiles
  drm: i915: hierachize Makefiles

 drivers/gpu/drm/i915/Makefile   | 126 ++--
 drivers/gpu/drm/i915/display/Makefile   |  64 ++
 drivers/gpu/drm/i915/gem/Makefile   |  27 +
 drivers/gpu/drm/i915/gem/selftests/Makefile |   3 +
 drivers/gpu/drm/i915/gt/Makefile|  16 +++
 drivers/gpu/drm/i915/gvt/Makefile   |  32 -
 drivers/gpu/drm/i915/selftests/Makefile |   9 ++
 scripts/Makefile.build  |  39 +++---
 scripts/Makefile.lib|  66 ++
 9 files changed, 218 insertions(+), 164 deletions(-)
 create mode 100644 drivers/gpu/drm/i915/gem/selftests/Makefile
 create mode 100644 drivers/gpu/drm/i915/selftests/Makefile

-- 
2.17.1

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx