blob: d8444dd92fb325d63fcf7e6bc505f42892669a21 [file] [log] [blame]
Elliott Hughesfc0307d2016-02-02 15:26:47 -08001/*-
Elliott Hughesdd4abe02018-02-05 15:55:19 -08002 * Copyright (c) 2009, 2011, 2012, 2016, 2018
Elliott Hughesfc0307d2016-02-02 15:26:47 -08003 * mirabilos <m@mirbsd.org>
4 *
5 * Provided that these terms and disclaimer and all copyright notices
6 * are retained or reproduced in an accompanying document, permission
7 * is granted to deal in this work without restriction, including un-
8 * limited rights to use, publicly perform, distribute, sell, modify,
9 * merge, give away, or sublicence.
10 *
11 * This work is provided "AS IS" and WITHOUT WARRANTY of any kind, to
12 * the utmost extent permitted by applicable law, neither express nor
13 * implied; without malicious intent or gross negligence. In no event
14 * may a licensor, author or contributor be held liable for indirect,
15 * direct, other damage, loss, or other issues arising in any way out
16 * of dealing in the work, even if advised of the possibility of such
17 * damage or existence of a defect, except proven that it results out
18 * of said person's immediate fault when using the work as intended.
19 */
20
Jean-Baptiste Queru5155f1c2011-06-16 10:05:28 -070021#if defined(VARSPEC_DEFNS)
Elliott Hughesdd4abe02018-02-05 15:55:19 -080022__RCSID("$MirOS: src/bin/mksh/var_spec.h,v 1.11 2018/01/13 21:38:10 tg Exp $");
Jean-Baptiste Queru5155f1c2011-06-16 10:05:28 -070023#define FN(name) /* nothing */
24#elif defined(VARSPEC_ENUMS)
25#define FN(name) V_##name,
26#define F0(name) V_##name = 0,
27#elif defined(VARSPEC_ITEMS)
28#define F0(name) /* nothing */
29#define FN(name) #name,
30#endif
31
32#ifndef F0
33#define F0 FN
34#endif
35
Geremy Condra03ebf062011-10-12 18:17:24 -070036/* NOTE: F0 are skipped for the ITEMS array, only FN generate names */
37
Jean-Baptiste Queru5155f1c2011-06-16 10:05:28 -070038/* 0 is always V_NONE */
39F0(NONE)
40
41/* 1 and up are special variables */
Thorsten Glaserc2dc5de2013-02-18 23:02:51 +000042FN(BASHPID)
Elliott Hughes966dd552016-12-08 15:56:04 -080043#ifdef __OS2__
44FN(BEGINLIBPATH)
45#endif
Jean-Baptiste Queru5155f1c2011-06-16 10:05:28 -070046FN(COLUMNS)
Elliott Hughes966dd552016-12-08 15:56:04 -080047#ifdef __OS2__
48FN(ENDLIBPATH)
49#endif
Thorsten Glaserc2dc5de2013-02-18 23:02:51 +000050FN(EPOCHREALTIME)
Jean-Baptiste Queru5155f1c2011-06-16 10:05:28 -070051#if HAVE_PERSISTENT_HISTORY
52FN(HISTFILE)
53#endif
54FN(HISTSIZE)
55FN(IFS)
Elliott Hughesdd4abe02018-02-05 15:55:19 -080056#ifdef MKSH_EARLY_LOCALE_TRACKING
57FN(LANG)
58FN(LC_ALL)
59FN(LC_CTYPE)
60#endif
Elliott Hughes966dd552016-12-08 15:56:04 -080061#ifdef __OS2__
62FN(LIBPATHSTRICT)
63#endif
Jean-Baptiste Queru5155f1c2011-06-16 10:05:28 -070064FN(LINENO)
65FN(LINES)
66FN(OPTIND)
67FN(PATH)
68FN(RANDOM)
69FN(SECONDS)
Elliott Hughes77740fc2016-08-12 15:06:53 -070070#ifndef MKSH_NO_CMDLINE_EDITING
71FN(TERM)
72#endif
Jean-Baptiste Queru5155f1c2011-06-16 10:05:28 -070073FN(TMOUT)
74FN(TMPDIR)
75
76#undef FN
77#undef F0
78#undef VARSPEC_DEFNS
79#undef VARSPEC_ENUMS
80#undef VARSPEC_ITEMS