Message ID | 20221202045743.2639466-1-irogers@google.com (mailing list archive) |
---|---|
Headers | show |
Series | Improvements to incremental builds | expand |
Em Thu, Dec 01, 2022 at 08:57:38PM -0800, Ian Rogers escreveu: > Switching to using install_headers caused incremental builds to always > rebuild most targets. This was caused by the headers always being > reinstalled and then getting new timestamps causing dependencies to be > rebuilt. Follow the convention in libbpf where the install targets are > separated and trigger when the target isn't present or is out-of-date. > > Further, fix an issue in the perf build with libpython where > python/perf.so was also regenerated as the target name was incorrect. > > Ian Rogers (5): > tools lib api: Add dependency test to install_headers > tools lib perf: Add dependency test to install_headers > tools lib subcmd: Add dependency test to install_headers > tools lib symbol: Add dependency test to install_headers > perf build: Fix python/perf.so library's name The last one isn't applying: Applying: perf build: Fix python/perf.so library's name error: patch failed: tools/perf/Makefile.perf:642 error: tools/perf/Makefile.perf: patch does not apply Patch failed at 0005 perf build: Fix python/perf.so library's name hint: Use 'git am --show-current-patch=diff' to see the failed patch When you have resolved this problem, run "git am --continue". If you prefer to skip this patch, run "git am --skip" instead. To restore the original branch and stop patching, run "git am --abort". ⬢[acme@toolbox perf]$ I'll have the first 4 applied to make progress, later I'll check what went wrong and to fix it. - Arnaldo
On Thu, Dec 01, 2022 at 08:57:38PM -0800 Ian Rogers wrote: > Switching to using install_headers caused incremental builds to always > rebuild most targets. This was caused by the headers always being > reinstalled and then getting new timestamps causing dependencies to be > rebuilt. Follow the convention in libbpf where the install targets are > separated and trigger when the target isn't present or is out-of-date. > > Further, fix an issue in the perf build with libpython where > python/perf.so was also regenerated as the target name was incorrect. > > Ian Rogers (5): > tools lib api: Add dependency test to install_headers > tools lib perf: Add dependency test to install_headers > tools lib subcmd: Add dependency test to install_headers > tools lib symbol: Add dependency test to install_headers > perf build: Fix python/perf.so library's name > > tools/lib/api/Makefile | 38 ++++++++++++++++++++++----------- > tools/lib/perf/Makefile | 43 +++++++++++++++++++------------------- > tools/lib/subcmd/Makefile | 23 +++++++++++--------- > tools/lib/symbol/Makefile | 21 ++++++++++++------- > tools/perf/Makefile.config | 4 +++- > tools/perf/Makefile.perf | 2 +- > 6 files changed, 79 insertions(+), 52 deletions(-) > > -- > 2.39.0.rc0.267.gcb52ba06e7-goog Hi Ian, which tree is your patch set based on? At least it doesn't apply on the current kbuild trees. Kind regards, Nicolas
On Mon, Dec 12, 2022 at 12:31 PM Nicolas Schier <nicolas@fjasle.eu> wrote: > > On Thu, Dec 01, 2022 at 08:57:38PM -0800 Ian Rogers wrote: > > Switching to using install_headers caused incremental builds to always > > rebuild most targets. This was caused by the headers always being > > reinstalled and then getting new timestamps causing dependencies to be > > rebuilt. Follow the convention in libbpf where the install targets are > > separated and trigger when the target isn't present or is out-of-date. > > > > Further, fix an issue in the perf build with libpython where > > python/perf.so was also regenerated as the target name was incorrect. > > > > Ian Rogers (5): > > tools lib api: Add dependency test to install_headers > > tools lib perf: Add dependency test to install_headers > > tools lib subcmd: Add dependency test to install_headers > > tools lib symbol: Add dependency test to install_headers > > perf build: Fix python/perf.so library's name > > > > tools/lib/api/Makefile | 38 ++++++++++++++++++++++----------- > > tools/lib/perf/Makefile | 43 +++++++++++++++++++------------------- > > tools/lib/subcmd/Makefile | 23 +++++++++++--------- > > tools/lib/symbol/Makefile | 21 ++++++++++++------- > > tools/perf/Makefile.config | 4 +++- > > tools/perf/Makefile.perf | 2 +- > > 6 files changed, 79 insertions(+), 52 deletions(-) > > > > -- > > 2.39.0.rc0.267.gcb52ba06e7-goog > > Hi Ian, > > which tree is your patch set based on? At least it doesn't apply on the > current kbuild trees. > > Kind regards, > Nicolas Hi Nicolas, for the perf tool the branch to follow is Arnaldo's perf/core one: https://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git/?h=perf%2Fcore I may have done this work on Arnaldo's tmp.perf/core branch, which is used for work-in-progress merges. Thanks, Ian > -- > epost|xmpp: nicolas@fjasle.eu irc://oftc.net/nsc > ↳ gpg: 18ed 52db e34f 860e e9fb c82b 7d97 0932 55a0 ce7f > -- frykten for herren er opphav til kunnskap --