lineedit: print prompt and editing operations to stderr
[busybox-git.git] / applets / usage.c
blob94520ff66fa581e94e48e8fc2c77836e61b425f4
1 /* vi: set sw=4 ts=4: */
2 /*
3 * Copyright (C) 2008 Denys Vlasenko.
5 * Licensed under GPLv2, see file LICENSE in this source tree.
6 */
7 #include <unistd.h>
8 #include <stdlib.h>
9 #include <string.h>
11 #include "autoconf.h"
13 /* Since we can't use platform.h, have to do this again by hand: */
14 #if ENABLE_NOMMU
15 # define BB_MMU 0
16 # define USE_FOR_NOMMU(...) __VA_ARGS__
17 # define USE_FOR_MMU(...)
18 #else
19 # define BB_MMU 1
20 # define USE_FOR_NOMMU(...)
21 # define USE_FOR_MMU(...) __VA_ARGS__
22 #endif
24 #include "usage.h"
25 #define MAKE_USAGE(aname, usage) { aname, usage },
26 static struct usage_data {
27 const char *aname;
28 const char *usage;
29 } usage_array[] = {
30 #include "applets.h"
33 static int compare_func(const void *a, const void *b)
35 const struct usage_data *ua = a;
36 const struct usage_data *ub = b;
37 return strcmp(ua->aname, ub->aname);
40 int main(void)
42 int i;
43 int num_messages = sizeof(usage_array) / sizeof(usage_array[0]);
45 if (num_messages == 0)
46 return 0;
48 qsort(usage_array,
49 num_messages, sizeof(usage_array[0]),
50 compare_func);
51 for (i = 0; i < num_messages; i++)
52 write(STDOUT_FILENO, usage_array[i].usage, strlen(usage_array[i].usage) + 1);
54 return 0;