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

Re: [PATCH] test-lib.sh: use awk instead of expr for a POSIX non integer check

From
Elia Pinto <gitter.spiros@gmail.com>
Date
Mar 13, 2022, 19:02 UTC
Message-ID
<CA+EOSBm1wfO-RPJHiHZiUxokdt8MW3ufoCk_aJ4o7O=x1_nwDQ@mail.gmail.com>
In-Reply-To
<20220308113305.39395-1-carenas@gmail.com>

Il giorno mar 8 mar 2022 alle ore 12:34 Carlo Marcelo Arenas Belón <carenas@gmail.com> ha scritto:

Show 5 quoted lines
>
> Restrict the glibc version to a single version number and compare it
> arithmetically against the base glibc version to avoid accidentally
> matching against "2.3" and better supporting versions like "2.34.9000"
>
I didn't understand the problem. How glibc names the versions is known:
https://sourceware.org/glibc/wiki/Glibc%20Timeline
What is wrong with the expr statement ?
+ expr 2.34 '<=' 2.35
1
+ expr 2.34 '<=' 2.34
1
+ expr 2.34 '<=' 2.33
0
+ expr 2.34 '<=' 2.32
0
+ expr 2.34 '<=' 2.31
0
+ expr 2.34 '<=' 2.30
0
+ expr 2.34 '<=' 2.29
0
+ expr 2.34 '<=' 2.28
0
+ expr 2.34 '<=' 2.27
0
+ expr 2.34 '<=' 2.26
0
+ expr 2.34 '<=' 2.25
0
+ expr 2.34 '<=' 2.24
0
+ expr 2.34 '<=' 2.23
0
+ expr 2.34 '<=' 2.22
0
+ expr 2.34 '<=' 2.21
0
+ expr 2.34 '<=' 2.20
0
+ expr 2.34 '<=' 2.19
0
+ expr 2.34 '<=' 2.18
0
+ expr 2.34 '<=' 2.17
0
+ expr 2.34 '<=' 2.16
0
+ expr 2.34 '<=' 2.15
0
+ expr 2.34 '<=' 2.13
Show 25 quoted lines
> Signed-off-by: Carlo Marcelo Arenas Belón <carenas@gmail.com>
> ---
>  t/test-lib.sh | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/t/test-lib.sh b/t/test-lib.sh
> index 8e59c58e7e7..f624f87eb81 100644
> --- a/t/test-lib.sh
> +++ b/t/test-lib.sh
> @@ -518,9 +518,9 @@ else
>         setup_malloc_check () {
>                 MALLOC_CHECK_=3 MALLOC_PERTURB_=165
>                 export MALLOC_CHECK_ MALLOC_PERTURB_
> -               if _GLIBC_VERSION=$(getconf GNU_LIBC_VERSION 2>/dev/null) &&
> -                  _GLIBC_VERSION=${_GLIBC_VERSION#"glibc "} &&
> -                  expr 2.34 \<= "$_GLIBC_VERSION" >/dev/null
> +               local _GLIBC_VERSION=$(getconf GNU_LIBC_VERSION 2>/dev/null)
> +               if echo "$_GLIBC_VERSION" | cut -d. -f1-2 |
> +                       awk '{ if ($2 - 2.34 < 0) exit 1 }'
>                 then
>                         g=
>                         LD_PRELOAD="libc_malloc_debug.so.0"
> --
> 2.35.1.505.g27486cd1b2d
>
Previous: Eric SunshineNext: Phillip Wood
Message 15 of 19 in “test-lib.sh: Use GLIBC_TUNABLES instead of MALLOC_CHECK_ on glibc >= 2.34”
  1. test-lib.sh: Use GLIBC_TUNABLES instead of MALLOC_CHECK_ on glibc >= 2.34Elia Pinto, Mar 4, 2022
  2. Junio C HamanoMar 4, 2022
  3. test-lib.sh: use awk instead of expr for a POSIX non integer checkCarlo Marcelo Arenas Belón, Mar 8, 2022
  4. Eric SunshineMar 8, 2022
  5. Eric SunshineMar 8, 2022
  6. Eric SunshineMar 9, 2022
  7. Junio C HamanoMar 9, 2022
  8. Ævar Arnfjörð BjarmasonMar 9, 2022
  9. Eric SunshineMar 11, 2022
  10. Ævar Arnfjörð BjarmasonMar 12, 2022
  11. Junio C HamanoMar 13, 2022
  12. Carlo ArenasMar 13, 2022
  13. Junio C HamanoMar 13, 2022
  14. Eric SunshineMar 11, 2022
  15. Elia PintoMar 13, 2022
  16. Phillip WoodApr 4, 2022
  17. Making the tests ~2.5x faster (was: [PATCH v3] test-lib.sh: Use GLIBC_TUNABLES instead of MALLOC_CHECK_ on glibc >= 2.34)Ævar Arnfjörð Bjarmason, Apr 5, 2022
  18. Phillip WoodApr 5, 2022
  19. Ævar Arnfjörð BjarmasonApr 5, 2022

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.