tic(1): Add missing beforedepend for termsort.c.
[dragonfly.git] / usr.bin / getconf / limits.gperf
1 %{
2 /*
3  * Copyright is disclaimed as to the contents of this file.
4  *
5  * $FreeBSD: head/usr.bin/getconf/limits.gperf 119312 2003-08-22 17:32:07Z markm $
6  */
7
8 #include <sys/types.h>
9
10 #include <string.h>
11 #include <limits.h>
12
13 #include "getconf.h"
14
15 /*
16  * Override gperf's built-in external scope.
17  */
18 static const struct map *in_word_set(const char *str);
19
20 %}
21 struct map { const char *name; intmax_t value; int valid; };
22 %%
23 CHARCLASS_NAME_MAX, CHARCLASS_NAME_MAX
24 CHAR_BIT, CHAR_BIT
25 CHAR_MAX, CHAR_MAX
26 CHAR_MIN, CHAR_MIN
27 INT_MAX, INT_MAX
28 INT_MIN, INT_MIN
29 LLONG_MAX, LLONG_MAX
30 LLONG_MIN, LLONG_MIN
31 LONG_BIT, LONG_BIT
32 LONG_MAX, LONG_MAX
33 LONG_MIN, LONG_MIN
34 MB_LEN_MAX, MB_LEN_MAX
35 ML_LANGMAX, NL_LANGMAX
36 NL_ARGMAX, NL_ARGMAX
37 NL_MSGMAX, NL_MSGMAX
38 NL_NMAX, NL_NMAX
39 NL_SETMAX, NL_SETMAX
40 NL_TEXTMAX, NL_TEXTMAX
41 NZERO, NZERO
42 SCHAR_MAX, SCHAR_MAX
43 SCHAR_MIN, SCHAR_MIN
44 SHRT_MAX, SHRT_MAX
45 SHRT_MIN, SHRT_MIN
46 SSIZE_MAX, SSIZE_MAX
47 UCHAR_MAX, UCHAR_MAX
48 UINT_MAX, UINT_MAX
49 ULLONG_MAX, ULLONG_MAX
50 ULONG_MAX, ULONG_MAX
51 USHRT_MAX, USHRT_MAX
52 WORD_BIT, WORD_BIT
53 POSIX2_BC_BASE_MAX, _POSIX2_BC_BASE_MAX
54 _POSIX2_BC_BASE_MAX, _POSIX2_BC_BASE_MAX
55 POSIX2_BC_DIM_MAX, _POSIX2_BC_DIM_MAX
56 _POSIX2_BC_DIM_MAX, _POSIX2_BC_DIM_MAX
57 POSIX2_BC_SCALE_MAX, _POSIX2_BC_SCALE_MAX
58 _POSIX2_BC_SCALE_MAX, _POSIX2_BC_SCALE_MAX
59 POSIX2_BC_STRING_MAX, _POSIX2_BC_STRING_MAX
60 _POSIX2_BC_STRING_MAX, _POSIX2_BC_STRING_MAX
61 _POSIX2_CHARCLASS_NAME_MAX, _POSIX2_CHARCLASS_NAME_MAX
62 POSIX2_COLL_WEIGHTS_MAX, _POSIX2_COLL_WEIGHTS_MAX
63 _POSIX2_COLL_WEIGHTS_MAX, _POSIX2_COLL_WEIGHTS_MAX
64 POSIX2_EXPR_NEST_MAX, _POSIX2_EXPR_NEST_MAX
65 _POSIX2_EXPR_NEST_MAX, _POSIX2_EXPR_NEST_MAX
66 POSIX2_LINE_MAX, _POSIX2_LINE_MAX
67 _POSIX2_LINE_MAX, _POSIX2_LINE_MAX
68 POSIX2_RE_DUP_MAX, _POSIX2_RE_DUP_MAX
69 _POSIX2_RE_DUP_MAX, _POSIX2_RE_DUP_MAX
70 _POSIX_AIO_LISTIO_MAX, _POSIX_AIO_LISTIO_MAX
71 _POSIX_AIO_MAX, _POSIX_AIO_MAX
72 _POSIX_ARG_MAX, _POSIX_ARG_MAX
73 _POSIX_CHILD_MAX, _POSIX_CHILD_MAX
74 _POSIX_CLOCKRES_MIN, _POSIX_CLOCKRES_MIN
75 _POSIX_DELAYTIMER_MAX, _POSIX_DELAYTIMER_MAX
76 _POSIX_HOST_NAME_MAX, _POSIX_HOST_NAME_MAX
77 _POSIX_LINK_MAX, _POSIX_LINK_MAX
78 _POSIX_LOGIN_NAME_MAX, _POSIX_LOGIN_NAME_MAX
79 _POSIX_MAX_CANON, _POSIX_MAX_CANON
80 _POSIX_MAX_INPUT, _POSIX_MAX_INPUT
81 _POSIX_MQ_OPEN_MAX, _POSIX_MQ_OPEN_MAX
82 _POSIX_MQ_PRIO_MAX, _POSIX_MQ_PRIO_MAX
83 _POSIX_NAME_MAX, _POSIX_NAME_MAX
84 _POSIX_NGROUPS_MAX, _POSIX_NGROUPS_MAX
85 _POSIX_OPEN_MAX, _POSIX_OPEN_MAX
86 _POSIX_PATH_MAX, _POSIX_PATH_MAX
87 _POSIX_PIPE_BUF, __POSIX_PIPE_BUF
88 POSIX_RE_DUP_MAX, _POSIX_RE_DUP_MAX
89 _POSIX_RE_DUP_MAX, _POSIX_RE_DUP_MAX
90 _POSIX_RTSIG_MAX, _POSIX_RTSIG_MAX
91 _POSIX_SEM_NSEMS_MAX, _POSIX_SEM_NSEMS_MAX
92 _POSIX_SEM_VALUE_MAX, _POSIX_SEM_VALUE_MAX
93 _POSIX_SIGQUEUE_MAX, _POSIX_SIGQUEUE_MAX
94 _POSIX_SSIZE_MAX, _POSIX_SSIZE_MAX
95 _POSIX_SS_REPL_MAX, _POSIX_SS_REPL_MAX
96 _POSIX_STREAM_MAX, _POSIX_STREAM_MAX
97 _POSIX_SYMLINK_MAX, _POSIX_SYMLINK_MAX
98 _POSIX_SYMLOOP_MAX, _POSIX_SYMLOOP_MAX
99 _POSIX_THREAD_DESTRUCTOR_ITERATIONS, _POSIX_THREAD_DESTRUCTOR_ITERATIONS
100 _POSIX_THREAD_KEYS_MAX, _POSIX_THREAD_KEYS_MAX
101 _POSIX_THREAD_THREADS_MAX, _POSIX_THREAD_THREADS_MAX
102 _POSIX_TIMER_MAX, _POSIX_TIMER_MAX
103 _POSIX_TRACE_EVENT_NAME_MAX, _POSIX_TRACE_EVENT_NAME_MAX
104 _POSIX_TRACE_NAME_MAX, _POSIX_TRACE_NAME_MAX
105 _POSIX_TRACE_SYS_MAX, _POSIX_TRACE_SYS_MAX
106 _POSIX_TRACE_USER_EVENT_MAX, _POSIX_TRACE_USER_EVENT_MAX
107 _POSIX_TTY_NAME_MAX, _POSIX_TTY_NAME_MAX
108 _POSIX_TZNAME_MAX, _POSIX_TZNAME_MAX
109 _XOPEN_IOV_MAX, _XOPEN_IOV_MAX
110 _XOPEN_NAME_MAX, _XOPEN_NAME_MAX
111 _XOPEN_PATH_MAX, _XOPEN_PATH_MAX
112 %%
113 int
114 find_limit(const char *name, intmax_t *value)
115 {
116         const struct map *rv;
117
118         rv = in_word_set(name);
119         if (rv != NULL) {
120                 if (rv->valid) {
121                         *value = rv->value;
122                         return 1;
123                 }
124                 return -1;
125         }
126         return 0;
127 }