summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDenys Vlasenko2011-06-21 16:38:29 +0200
committerDenys Vlasenko2011-06-21 16:38:29 +0200
commit561f9c8585e7cb0882472297f4fd2ed763dc085a (patch)
treed7cce0d468e453674f0714c87746f90af8223f35
parent040b5a2e29743e21698d98c427fe033ffcc94eeb (diff)
downloadbusybox-561f9c8585e7cb0882472297f4fd2ed763dc085a.zip
busybox-561f9c8585e7cb0882472297f4fd2ed763dc085a.tar.gz
Add HAVE_STRVERSCMP, guard the only usage of strverscmp with #ifdef
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
-rw-r--r--coreutils/ls.c2
-rw-r--r--include/platform.h5
2 files changed, 7 insertions, 0 deletions
diff --git a/coreutils/ls.c b/coreutils/ls.c
index c42f5f3..6080f59 100644
--- a/coreutils/ls.c
+++ b/coreutils/ls.c
@@ -886,9 +886,11 @@ static int sortcmp(const void *a, const void *b)
if (sort_opts == SORT_DIR) {
dif = S_ISDIR(d2->dn_mode) - S_ISDIR(d1->dn_mode);
} else
+#ifdef HAVE_STRVERSCMP && HAVE_STRVERSCMP == 1
if (sort_opts == SORT_VERSION) {
dif = strverscmp(d1->name, d2->name);
} else
+#endif
if (sort_opts == SORT_EXT) {
dif = strcmp(strchrnul(d1->name, '.'), strchrnul(d2->name, '.'));
}
diff --git a/include/platform.h b/include/platform.h
index 429220b..d6b7488 100644
--- a/include/platform.h
+++ b/include/platform.h
@@ -348,6 +348,7 @@ typedef unsigned smalluint;
#define HAVE_STRCHRNUL 1
#define HAVE_STRSEP 1
#define HAVE_STRSIGNAL 1
+#define HAVE_STRVERSCMP 1
#define HAVE_VASPRINTF 1
#define HAVE_XTABS 1
#define HAVE_MNTENT_H 1
@@ -372,6 +373,7 @@ typedef unsigned smalluint;
# undef HAVE_STRCHRNUL
# undef HAVE_STRSEP
# undef HAVE_STRSIGNAL
+# undef HAVE_STRVERSCMP
# undef HAVE_VASPRINTF
# undef HAVE_NET_ETHERNET_H
#endif
@@ -389,18 +391,21 @@ typedef unsigned smalluint;
# undef HAVE_PTSNAME_R
# undef HAVE_SYS_STATFS_H
# undef HAVE_SIGHANDLER_T
+# undef HAVE_STRVERSCMP
# undef HAVE_XTABS
# undef HAVE_DPRINTF
#endif
#if defined(__digital__) && defined(__unix__)
# undef HAVE_STPCPY
+# undef HAVE_STRVERSCMP
#endif
#if defined(ANDROID)
# undef HAVE_DPRINTF
# undef HAVE_STPCPY
# undef HAVE_STRCHRNUL
+# undef HAVE_STRVERSCMP
# undef HAVE_NET_ETHERNET_H
#endif