[PATCH v4 0/3] objtool build improvements

From: Ian Rogers
Date: Thu Jan 26 2023 - 14:07:29 EST


Install libsubcmd and then get headers from there, this avoids
inadvertent dependencies on things in tools/lib. Fix V=1
support. Clean up how HOSTCC is used to override CC to avoid CFLAGS
being set for say gcc, and then CC being overridden to clang.

v4. Rebase and look to address review comments from Josh Poimboeuf
<jpoimboe@xxxxxxxxxx>. Removes the reviewed-by/tested-by given
the scope of changes.
v3. Is a rebase that removes the merged "tools lib subcmd: Add install
target" patch. In:
https://lore.kernel.org/lkml/CAKwvOd=kgXmpfbVa1wiEvwL0tX3gu+dDTGi-HEiRXSojwCLRrg@xxxxxxxxxxxxxx/
Nick rightly points out that:
WARNINGS := $(EXTRA_WARNINGS) -Wno-switch-default -Wno-switch-enum -Wno-packed -Wno-nested-externs
became:
WARNINGS := -Wno-switch-default -Wno-switch-enum -Wno-packed -Wno-nested-externs
losing the EXTRA_WARNINGS which v3 now adds back in. Previous
testing had added the warnings to the end rather than the
beginning, thereby causing unexpected build issues that aren't present in v3.
v2. Include required "tools lib subcmd: Add install target" that is
already in Arnaldo's tree:
https://lore.kernel.org/lkml/20221109184914.1357295-3-irogers@xxxxxxxxxx/
https://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git/commit/?h=perf/core&id=630ae80ea1dd253609cb50cff87f3248f901aca3
When building libsubcmd.a from objtool's Makefile, clear the
subdir to avoid it being appended onto OUTPUT and breaking the
build.

Ian Rogers (3):
objtool: Install libsubcmd in build
objtool: Properly support make V=1
objtool: Alter how HOSTCC is forced

tools/objtool/.gitignore | 1 +
tools/objtool/Build | 2 --
tools/objtool/Makefile | 62 ++++++++++++++++++++++++++++------------
3 files changed, 44 insertions(+), 21 deletions(-)

--
2.39.1.456.gfc5497dd1b-goog