1/*- 2 * Copyright (c) 2009, 2011, 2012, 2016, 2018 3 * 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 21#if defined(VARSPEC_DEFNS) 22__RCSID("$MirOS: src/bin/mksh/var_spec.h,v 1.11 2018/01/13 21:38:10 tg Exp $"); 23#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 36/* NOTE: F0 are skipped for the ITEMS array, only FN generate names */ 37 38/* 0 is always V_NONE */ 39F0(NONE) 40 41/* 1 and up are special variables */ 42FN(BASHPID) 43#ifdef __OS2__ 44FN(BEGINLIBPATH) 45#endif 46FN(COLUMNS) 47#ifdef __OS2__ 48FN(ENDLIBPATH) 49#endif 50FN(EPOCHREALTIME) 51#if HAVE_PERSISTENT_HISTORY 52FN(HISTFILE) 53#endif 54FN(HISTSIZE) 55FN(IFS) 56#ifdef MKSH_EARLY_LOCALE_TRACKING 57FN(LANG) 58FN(LC_ALL) 59FN(LC_CTYPE) 60#endif 61#ifdef __OS2__ 62FN(LIBPATHSTRICT) 63#endif 64FN(LINENO) 65FN(LINES) 66FN(OPTIND) 67FN(PATH) 68FN(RANDOM) 69FN(SECONDS) 70#ifndef MKSH_NO_CMDLINE_EDITING 71FN(TERM) 72#endif 73FN(TMOUT) 74FN(TMPDIR) 75 76#undef FN 77#undef F0 78#undef VARSPEC_DEFNS 79#undef VARSPEC_ENUMS 80#undef VARSPEC_ITEMS 81