git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH v2] Makefile: make the "sparse" target non-.PHONY

From
Jeff King <peff@peff.net>
Date
Sep 23, 2021, 17:17 UTC
Message-ID
<YUy2tggR1tifj4Ay@coredump.intra.peff.net>
In-Reply-To
<87ilyr43v2.fsf@evledraar.gmail.com>
On Thu, Sep 23, 2021 at 07:06:02PM +0200, Ævar Arnfjörð Bjarmason wrote:
Show 25 quoted lines
> >> We ensure that the recursive dependencies are correct by depending on
> >> the *.o file, which in turn will have correct dependencies by either
> >> depending on all header files, or under
> >> "COMPUTE_HEADER_DEPENDENCIES=yes" the headers it needs.
> >> 
> >> This means that a plain "make sparse" is much slower, as we'll now
> >> need to make the *.o files just to create the *.sp files, but
> >> incrementally creating the *.sp files is *much* faster and less
> >> verbose, it thus becomes viable to run "sparse" along with "all" as
> >> e.g. "git rebase --exec 'make all sparse'".
> >
> > OK. I think this solves the dependency issues sufficiently. It is a
> > tradeoff that you must do the normal build in order to do the sparse
> > check now. That is certainly fine for my workflow (I am building Git all
> > the time, and only occasionally run "make sparse"). I don't know if
> > others would like it less (e.g., if Ramsay is frequently running sparse
> > checks without having just built).
> >
> > (I'd say "I do not care that much either way", but then I do not care
> > all that much either way about incremental sparse checks either, so I'm
> > not sure my opinion really matters).
> 
> Aside: As I recall you make a lot of use of ccache (as I do), so is the
> "meh" on incremental builds synonymous with it not being piped through
> $(CC) in this case?

I do use ccache, and yeah, it makes a big difference on incremental builds of the actual object files. I don't use it for sparse, though (I never really thought about it, but I don't see any reason why it would not work?). Mostly I just don't run "make sparse" very often.

-Peff
Previous: Ævar Arnfjörð BjarmasonNext: Junio C Hamano
Message 18 of 28 in “Makefile: make "sparse" and "hdr-check" non-.PHONY”
  1. 0/3 Makefile: make "sparse" and "hdr-check" non-.PHONYÆvar Arnfjörð Bjarmason, Sep 21, 2021
  2. 1/3 Makefile: make the "sparse" target non-.PHONYÆvar Arnfjörð Bjarmason, Sep 21, 2021
  3. Jeff KingSep 22, 2021
  4. 2/3 Makefile: do one append in %.hcc ruleÆvar Arnfjörð Bjarmason, Sep 21, 2021
  5. 3/3 Makefile: make the "hdr-check" target non-.PHONYÆvar Arnfjörð Bjarmason, Sep 21, 2021
  6. Jeff KingSep 22, 2021
  7. Ramsay JonesSep 22, 2021
  8. Jeff KingSep 22, 2021
  9. Ramsay JonesSep 22, 2021
  10. Junio C HamanoSep 22, 2021
  11. Ævar Arnfjörð BjarmasonSep 23, 2021
  12. Junio C HamanoSep 23, 2021
  13. Ævar Arnfjörð BjarmasonSep 23, 2021
  14. Junio C HamanoSep 22, 2021
  15. Makefile: make the "sparse" target non-.PHONYÆvar Arnfjörð Bjarmason, Sep 23, 2021
  16. Jeff KingSep 23, 2021
  17. Ævar Arnfjörð BjarmasonSep 23, 2021
  18. Jeff KingSep 23, 2021
  19. Junio C HamanoSep 23, 2021
  20. Ramsay JonesSep 23, 2021
  21. Ævar Arnfjörð BjarmasonSep 24, 2021
  22. Ramsay JonesSep 24, 2021
  23. Ævar Arnfjörð BjarmasonSep 24, 2021
  24. Junio C HamanoSep 24, 2021
  25. Makefile: add a non-.PHONY "sparse-incr" targetÆvar Arnfjörð Bjarmason, Sep 28, 2021
  26. Makefile: add a non-.PHONY "sparse-incr" targetÆvar Arnfjörð Bjarmason, Sep 28, 2021
  27. Junio C HamanoSep 28, 2021
  28. Ævar Arnfjörð BjarmasonSep 28, 2021

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.