From: Bartosz Golaszewski Date: Mon, 3 Apr 2023 14:20:09 +0000 (+0200) Subject: tools: replace alphasort() with versionsort() X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=8a864d669363308c43cc4a072c3911fc4bd933af;p=qemu-gpiodev%2Flibgpiod.git tools: replace alphasort() with versionsort() Sorting chip names with alphasort() results in gpiochip2 coming after gpiochip19 as it only find the lexicographic order of strings. Switching to using versionsort() makes it look better and the order is more logical with the numbering being taken into account. Reviewed-by: Kent Gibson Signed-off-by: Bartosz Golaszewski --- diff --git a/configure.ac b/configure.ac index 7d72c24..c1005a9 100644 --- a/configure.ac +++ b/configure.ac @@ -119,7 +119,7 @@ AS_IF([test "x$with_tools" = xtrue], AC_CHECK_FUNC([daemon], [], [FUNC_NOT_FOUND_TOOLS([daemon])]) AC_CHECK_FUNC([asprintf], [], [FUNC_NOT_FOUND_LIB([asprintf])]) AC_CHECK_FUNC([scandir], [], [FUNC_NOT_FOUND_LIB([scandir])]) - AC_CHECK_FUNC([alphasort], [], [FUNC_NOT_FOUND_LIB([alphasort])]) + AC_CHECK_FUNC([versionsort], [], [FUNC_NOT_FOUND_LIB([versionsort])]) AS_IF([test "x$with_gpioset_interactive" = xtrue], [PKG_CHECK_MODULES([LIBEDIT], [libedit >= 3.1])]) ]) diff --git a/tools/tools-common.c b/tools/tools-common.c index e5f6fc1..64592d3 100644 --- a/tools/tools-common.c +++ b/tools/tools-common.c @@ -469,7 +469,7 @@ int all_chip_paths(char ***paths_ptr) struct dirent **entries; char **paths; - num_chips = scandir("/dev/", &entries, chip_dir_filter, alphasort); + num_chips = scandir("/dev/", &entries, chip_dir_filter, versionsort); if (num_chips < 0) die_perror("unable to scan /dev");