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

Re: [PATCH 3/6] meson: do a full usage-based compile check for sysinfo

From
Patrick Steinhardt <ps@pks.im>
Date
Apr 22, 2025, 07:31 UTC
Message-ID
<aAdF1MvGJcqfpI4p@pks.im>
In-Reply-To
<20250421175247.240971-3-eschwartz@gentoo.org>
On Mon, Apr 21, 2025 at 01:51:47PM -0400, Eli Schwartz wrote:
Show 22 quoted lines
> diff --git a/meson.build b/meson.build
> index f5d9ffcd7f..8037e536dd 100644
> --- a/meson.build
> +++ b/meson.build
> @@ -1058,10 +1058,6 @@ if compiler.has_header('alloca.h')
>    libgit_c_args += '-DHAVE_ALLOCA_H'
>  endif
>  
> -if compiler.has_header('sys/sysinfo.h')
> -  libgit_c_args += '-DHAVE_SYSINFO'
> -endif
> -
>  # Windows has libgen.h and a basename implementation, but we still need our own
>  # implementation to threat things like drive prefixes specially.
>  if host_machine.system() == 'windows' or not compiler.has_header('libgen.h')
> @@ -1272,6 +1268,10 @@ if host_machine.system() != 'windows'
>    endif
>  endif
>  
> +if compiler.has_member('struct sysinfo', 'totalram', prefix: '#include <sys/sysinfo.h>')
> +  libgit_c_args += '-DHAVE_SYSINFO'
> +endif

Makes sense. We do have c9a51775a36 (builtin/gc.c: correct RAM calculation when using sysinfo, 2025-04-17) in flight which also causes us to use `struct sysinfo::mem_unit`. But I think it's fine to check for only one of the members here.

Patrick
Previous: Eli SchwartzNext: Eli Schwartz
Message 7 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.