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

Re: [PATCH 1/6] meson: simplify and parameterize various standard function checks

From
Patrick Steinhardt <ps@pks.im>
Date
Apr 23, 2025, 11:25 UTC
Message-ID
<aAjOIEs5Lwb9CvkU@pks.im>
In-Reply-To
<590d0daa-59ac-44f3-b277-e3e83ad1add5@gentoo.org>
On Tue, Apr 22, 2025 at 11:36:06AM -0400, Eli Schwartz wrote:
Show 18 quoted lines
> On 4/22/25 3:31 AM, Patrick Steinhardt wrote:
> > On Mon, Apr 21, 2025 at 04:04:30PM -0400, Eli Schwartz wrote:
> >> On 4/21/25 1:51 PM, Eli Schwartz wrote:
> > I'd rather prefer to try and detect this generically instead of adding
> > more platform-specific configuration. It is way simpler to maintain, and
> > if we ever see that things don't work well on a specific platform we may
> > still reconsider at that point in time.
> 
> 
> Okay but, how do we generically detect that a platform triggers the
> Makefile advice "recommended if Git triggers O(n^2) behavior in your
> platform's qsort()"? I'm not sure how to write a compile-time check for
> this.
> 
> It's easy to write a compile-time check for whether a function exists,
> but it seems to have been an error that meson assumes some platforms
> will not provide the function, as that was never the intent of Git's
> support for internal qsort.

The question to me is whether this is still an issue that we need to care about nowadays. If we _know_ that it is still an issue that we need to address then I'm okay with adapting as required. But if we think that it's probably not an issue anymore then I'd rather wait and see whether anybody complains. Because if nobody does, then we can eventually just throw out this logic altogether.

I treat this as a bit of a canary. Git is quite old by now, so we need to question existing infrastructure every now and then so that we can in the best case throw out unneeded bits and pieces every once in a while as the surrounding ecosystem matures.

Patrick
Previous: Eli SchwartzNext: Patrick Steinhardt
Message 21 of 40 in “meson: simplify and parameterize various standard function checks”
  1. 1/6 meson: simplify and parameterize various standard function checksEli Schwartz, Apr 21, 2025
  2. 2/6 meson: check for getpagesize before using itEli Schwartz, Apr 21, 2025
  3. Patrick SteinhardtApr 22, 2025
  4. Junio C HamanoApr 24, 2025
  5. Eli SchwartzApr 25, 2025
  6. 3/6 meson: do a full usage-based compile check for sysinfoEli Schwartz, Apr 21, 2025
  7. Patrick SteinhardtApr 22, 2025
  8. 4/6 meson: add a couple missing networking dependenciesEli Schwartz, Apr 21, 2025
  9. Patrick SteinhardtApr 22, 2025
  10. 5/6 meson: fix typo in function check that prevented checking for hstrerrorEli Schwartz, Apr 21, 2025
  11. Patrick SteinhardtApr 22, 2025
  12. 6/6 meson: only check for missing networking syms on non-Windows; add compat implsEli Schwartz, Apr 21, 2025
  13. Patrick SteinhardtApr 22, 2025
  14. Eli SchwartzApr 22, 2025
  15. Patrick SteinhardtApr 23, 2025
  16. Eli SchwartzApr 21, 2025
  17. Junio C HamanoApr 22, 2025
  18. Eli SchwartzApr 22, 2025
  19. Patrick SteinhardtApr 22, 2025
  20. Eli SchwartzApr 22, 2025
  21. Patrick SteinhardtApr 23, 2025
  22. Patrick SteinhardtApr 22, 2025
  23. Junio C HamanoApr 22, 2025
  24. 0/6 meson: miscellaneous system detection fixesEli Schwartz, Apr 25, 2025
  25. 1/6 meson: simplify and parameterize various standard function checksEli Schwartz, Apr 25, 2025
  26. 2/6 meson: check for getpagesize before using itEli Schwartz, Apr 25, 2025
  27. 3/6 meson: do a full usage-based compile check for sysinfoEli Schwartz, Apr 25, 2025
  28. 5/6 meson: fix typo in function check that prevented checking for hstrerrorEli Schwartz, Apr 25, 2025
  29. 4/6 meson: add a couple missing networking dependenciesEli Schwartz, Apr 25, 2025
  30. 6/6 meson: only check for missing networking syms on non-Windows; add compat implsEli Schwartz, Apr 25, 2025
  31. Patrick SteinhardtApr 25, 2025
  32. Eli SchwartzApr 25, 2025
  33. 0/6 meson: miscellaneous system detection fixesEli Schwartz, Apr 25, 2025
  34. 1/6 meson: simplify and parameterize various standard function checksEli Schwartz, Apr 25, 2025
  35. 2/6 meson: check for getpagesize before using itEli Schwartz, Apr 25, 2025
  36. 3/6 meson: do a full usage-based compile check for sysinfoEli Schwartz, Apr 25, 2025
  37. 4/6 meson: add a couple missing networking dependenciesEli Schwartz, Apr 25, 2025
  38. 5/6 meson: fix typo in function check that prevented checking for hstrerrorEli Schwartz, Apr 25, 2025
  39. 6/6 meson: only check for missing networking syms on non-Windows; add compat implsEli Schwartz, Apr 25, 2025
  40. Patrick SteinhardtApr 25, 2025

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.