public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4 0/3] tools build: Incorrect fixdep dependencies
@ 2024-07-15 20:32 Brian Norris
  2024-07-15 20:32 ` [PATCH v4 1/3] tools build: Correct libsubcmd " Brian Norris
                   ` (2 more replies)
  0 siblings, 3 replies; 12+ messages in thread
From: Brian Norris @ 2024-07-15 20:32 UTC (permalink / raw)
  To: Arnaldo Carvalho de Melo, Namhyung Kim, Ian Rogers,
	Thomas Richter, Josh Poimboeuf, Peter Zijlstra
  Cc: linux-kernel, Masahiro Yamada, bpf, linux-kbuild, Brian Norris

Hi all,

The following series consists of a few bugfixes on the topic of "misuse
of fixdep in the tools/ build tree." There is no listed maintainer for
tools/build, but there are for tools/bpf and tools/objtool, which are
the main pieces that affect most users, because they're built as part of
the main kernel build. I've addressed this series to a selection of
those maintainers, and those that have previously applied build changes
in tools/. I hope one of you can apply this series, pending favorable
review. Or feel free to point me to a different set of maintainers.

This patch series came out of poking around some build errors seen by me
and my coworkers, and I found that there were rather similar reports a
while back here:

    Subject: possible dependency error?
    https://lore.kernel.org/all/ZGVi9HbI43R5trN8@bhelgaas/

I reported some findings to that thread; see also subsequent discussion:

    https://lore.kernel.org/all/Zk-C5Eg84yt6_nml@google.com/

One element of that discussion: these problems are already solved
consistently in Kbuild. tools/build purposely borrows some from Kbuild,
but also purposely does not actually use Kbuild. While it'd make my life
easier if tools/ would just adopt Kbuild (at least for the tools which
are built during kernel builds), I've chosen a path that I hope will
yield less resistance -- simply hacking up the existing tools/ build
without major changes to its design.

NB: I've also CC'd Kbuild folks, since Masahiro has already been so
helpful here, but note that this is not really a "kbuild" patch series.

Regards,
Brian

Changes in v4:
 - update tools/lib/bpf/.gitignore to exclude 'fixdep'
 - update tools/lib/bpf `make clean` target for fixdep
 - combine $(SHARED_OBJDIR) and $(STATIC_OBJDIR) rules

Changes in v3:
 - Drop unnecessary tools/build/Build

Changes in v2:
 - also fix libbpf shared library rules
 - ensure OUTPUT is always set, and always an absolute path
 - add backup $(Q) definition in tools/build/Makefile.include

Brian Norris (3):
  tools build: Correct libsubcmd fixdep dependencies
  tools build: Avoid circular .fixdep-in.o.cmd issues
  tools build: Correct bpf fixdep dependencies

 tools/build/Build            |  3 ---
 tools/build/Makefile         | 11 ++---------
 tools/build/Makefile.include | 12 +++++++++++-
 tools/lib/bpf/.gitignore     |  1 +
 tools/lib/bpf/Makefile       | 13 ++++++++++---
 tools/lib/subcmd/Makefile    |  2 +-
 6 files changed, 25 insertions(+), 17 deletions(-)
 delete mode 100644 tools/build/Build

-- 
2.45.2.993.g49e7a77208-goog


^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2024-08-13 16:59 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-07-15 20:32 [PATCH v4 0/3] tools build: Incorrect fixdep dependencies Brian Norris
2024-07-15 20:32 ` [PATCH v4 1/3] tools build: Correct libsubcmd " Brian Norris
2024-07-15 20:32 ` [PATCH v4 2/3] tools build: Avoid circular .fixdep-in.o.cmd issues Brian Norris
2024-07-16  7:55   ` Jiri Olsa
2024-07-19 18:32     ` Andrii Nakryiko
2024-08-05 15:31       ` Arnaldo Carvalho de Melo
2024-08-02 21:17     ` Brian Norris
2024-08-12  6:32   ` Thorsten Leemhuis
2024-08-13 16:40     ` Brian Norris
2024-08-13 16:59       ` Thorsten Leemhuis
2024-07-15 20:32 ` [PATCH v4 3/3] tools build: Correct bpf fixdep dependencies Brian Norris
2024-07-19 18:31   ` Andrii Nakryiko

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox