⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 config.h

📁 操作系统源代码
💻 H
字号:
/* * vi configuration file * We try to automatically configure to various compilers and operating * systems. Extend the autoconf section as needed. */#ifndef _CONFIG_H# define _CONFIG_H/*************************** autoconf section ************************//* Commodore-Amiga */#ifdef	amiga# define AMIGA		1# define COMPILED_BY	"Manx Aztec C 5.2b"#endif/* standard unix V (?) */#ifdef	M_SYSV# define UNIXV		1#endif/* xelos system, University of Ulm */#ifdef	xelos# define UNIXV		1#endif/* BSD UNIX? */#ifdef bsd# define BSD		1#else# ifdef sun#  define BSD		1# endif#endif/* Microsoft C: sorry, Watcom does the same thing */#ifdef	M_I86# ifndef M_SYSV#  define MSDOS		1#  ifdef IBMC2#   define COMPILED_BY	"IBM C/2 1.00"#  else#   define MICROSOFT	1#   define COMPILED_BY	"Microsoft C 5.10"#  endif# endif#endif/* Borland's Turbo C */#ifdef	__TURBOC__# define MSDOS		1# define TURBOC		1# ifdef __BORLANDC__# define COMPILED_BY	"Borland C 2.00"# else# define COMPILED_BY	(__TURBOC__ >= 661 ? "Turbo C++ 1.00" : "Turbo C 2.00")# endif#endif/* Tos Mark-Williams */#ifdef	M68000# define TOS 1# define COMPILED_BY	"Mark Williams C"#endif/* Tos GNU-C */#if defined(__atarist__) && defined(__gem__)# define TOS 1# define COMPILED_BY	"GNU-C " __VERSION__#endif/* OS9/68000 */#ifdef	OSK# define COMPILED_BY	"Microware C V2.3 Edition 40"#endif/* DEC Rainbow, running MS-DOS (handled by earlier MS-DOS tests) *//* (would need -DRAINBOW in CFLAGS to compile a Rainbow-compatible .EXE) */#ifdef VMS# define COMPILED_BY    "VAX/VMS VAXC compiler"# undef VMS# define VMS 1#endif/*************************** end of autoconf section ************************//* All undefined symbols are defined to zero here, to allow for older    *//* compilers which dont understand #if defined() or #if UNDEFINED_SYMBOL *//*************************** operating systems *****************************/ #ifndef	BSD# define BSD	0		/* UNIX - Berkeley 4.x */#endif#ifndef	UNIXV# define UNIXV	0		/* UNIX - AT&T SYSV */#endif#ifndef	UNIX7# define UNIX7	0		/* UNIX - version 7 */#endif#ifndef	MSDOS# define MSDOS	0		/* PC		*/#endif#ifndef	TOS# define TOS	0		/* Atari ST	*/#endif#ifndef	AMIGA# define AMIGA	0		/* Commodore Amiga */#endif#ifndef OSK# define OSK	0		/* OS-9 / 68k */#endif#ifndef COHERENT# define COHERENT 0		/* Coherent */#endif#ifndef RAINBOW			/* DEC Rainbow support, under MS-DOS */# define RAINBOW 0#endif#ifndef VMS# define VMS 0                  /* VAX/VMS */#endif				/* Minix has no predefines */#if !BSD && !UNIXV && !UNIX7 && !MSDOS && !TOS && !AMIGA && !OSK && !COHERENT && !VMS# define MINIX	1#else# define MINIX	0#endif				/* generic combination of Unices */#if UNIXV || UNIX7 || BSD || MINIX || COHERENT# define ANY_UNIX 1#else# define ANY_UNIX 0#endif/*************************** compilers **************************************/ #ifndef	AZTEC_C# define AZTEC_C	0#endif#ifndef	MICROSOFT# define MICROSOFT	0#endif#ifndef	TURBOC# define TURBOC		0#endif/******************************* Credit ************************************/#if MSDOS# define CREDIT "Ported to MS-DOS by Guntram Blohm & Martin Patzel"# if RAINBOW#  define CREDIT2 "Rainbow support added by Willett Kempton"# endif#endif#if AMIGA# define CREDIT "Ported to AmigaDOS 2.04 by Mike Rieser & Dale Rahn"#endif#if TOS# define CREDIT "Ported to Atari/TOS by Guntram Blohm & Martin Patzel"#endif#if OSK# define CREDIT	"Ported to Microware OS9/68k by Peter Reinig"#endif#if COHERENT# define CREDIT	"Ported to Coherent by Esa Ahola"#endif#if VMS# define CREDIT "Ported to VAX/VMS by John Campbell"#endif/*************************** functions depending on OS *********************//* There are two terminal-related functions that we need: ttyread() and * ttywrite().  The ttyread() function implements read-with-timeout and is * a true function on all systems.  The ttywrite() function is almost always * just a macro... */#if !TOS && !AMIGA# define ttywrite(buf, len)	write(1, buf, (unsigned)(len))	/* raw write */#endif/* The strchr() function is an official standard now, so everybody has it * except Unix version 7 (which is old) and BSD Unix (which is academic). * Those guys use something called index() to do the same thing. */#if BSD || UNIX7 || OSK# define strchr	index#endifextern char *strchr();/* BSD uses bcopy() instead of memcpy() */#if BSD# define memcpy(dest, src, siz)	bcopy(src, dest, siz)#endif/* BSD uses getwd() instead of getcwd().  The arguments are a little different, * but we'll ignore that and hope for the best; adding arguments to the macro * would mess up an "extern" declaration of the function. */#if BSD || COHERENT# define getcwd	getwd#endifextern char *getcwd();/* text versa binary mode for read/write */#if !TOS#define	tread(fd,buf,n)		read(fd,buf,(unsigned)(n))#define twrite(fd,buf,n)	write(fd,buf,(unsigned)(n))#endif/**************************** Compiler quirks *********************************//* the UNIX version 7 and (some) TOS compilers, don't allow "void" */#if UNIX7 || TOS# define void int#endif/* as far as I know, all compilers except version 7 support unsigned char *//* NEWFLASH: the Minix-ST compiler has subtle problems with unsigned char */#if UNIX7 || MINIX# define UCHAR(c)	((c) & 0xff)# define uchar		char#else# define UCHAR(c)	((unsigned char)(c))# define uchar		unsigned char#endif/* Some compilers prefer to have malloc declared as returning a (void *) */#if BSD || AMIGAextern void *malloc();#elseextern char *malloc();#endif/* everybody but Amiga wants lseek declared here */#if !AMIGAextern long lseek();#endif/******************* Names of files and environment vars **********************/#if ANY_UNIX# ifndef TMPDIR#  if MINIX#   define TMPDIR	"/usr/tmp"	/* Keep elvis' temp files off RAM disk! */#  else#   define TMPDIR	"/tmp"		/* directory where temp files live */#  endif# endif# ifndef PRSVDIR#  define PRSVDIR	"/usr/preserve"	/* directory where preserved file live */# endif# ifndef PRSVINDEX#  define PRSVINDEX	"/usr/preserve/Index" /* index of files in PRSVDIR */# endif# ifndef EXRC#  define EXRC		".exrc"		/* init file in current directory */# endif# define SCRATCHOUT	"%s/soXXXXXX"	/* temp file used as input to filter */# ifndef SHELL#  define SHELL		"/bin/sh"	/* default shell */# endif# if COHERENT#  ifndef REDIRECT#   define REDIRECT	">"		/* Coherent CC writes errors to stdout */#  endif# endif#endif#if AMIGA		/* Specify AMIGA environment */# ifndef CC_COMMAND#  define CC_COMMAND	"cc"		/* generic C compiler */# endif# ifndef COLON#  define COLON		':'		/* Amiga files can also end in `:' */# endif# ifndef SYSEXRC#  define SYSEXRC	"S:" EXRC	/* name of ".exrc" file in system dir */# endif# ifndef MAXRCLEN#  define MAXRCLEN	2048		/* max size of a .exrc file */# endif# ifndef NBUFS#  define NBUFS		10		/* must be at least 3 -- more is better */# endif# ifndef NEEDSYNC#  define NEEDSYNC	TRUE		/* assume ":se sync" by default */# endif# ifndef PRSVDIR#  define PRSVDIR	"Elvis:"	/* directory where preserved file live */# endif# ifndef PRSVINDEX#  define PRSVINDEX	"Elvis:Index"	/* index of files in PRSVDIR */# endif# ifndef REDIRECT#  define REDIRECT	">"		/* Amiga writes errors to stdout */# endif# ifndef SCRATCHIN#  define SCRATCHIN	"%sSIXXXXXX"# endif# ifndef SCRATCHOUT#  define SCRATCHOUT	"%sSOXXXXXX"# endif# ifndef SHELL#  define SHELL		"newshell"	/* default shell */# endif# ifndef TERMTYPE#  define TERMTYPE	"amiga"		/* default termtype */# endif# ifndef TMPDIR				/* for AMIGA should end in `:' or `/' */#  define TMPDIR	"T:"		/* directory where temp files live */# endif# ifndef TMPNAME#  define TMPNAME	"%selv_%x.%x"	/* format of names for temp files */# endif#endif#if MSDOS || TOS/* do not change TMPNAME and SCRATCH*: they MUST begin with '%s\\'! */# ifndef TMPDIR#  define TMPDIR	"C:\\tmp"	/* directory where temp files live */# endif# ifndef PRSVDIR#  define PRSVDIR	"C:\\preserve"	/* directory where preserved file live */# endif# ifndef PRSVINDEX#  define PRSVINDEX	"C:\\preserve\\Index" /* index of files in PRSVDIR */# endif# define TMPNAME	"%s\\elv_%x.%x" /* temp file */# if MSDOS#  if MICROSOFT#   define CC_COMMAND	"cl -c"		/* C compiler */#  else#   if __BORLANDC__  /* Borland C */#    define CC_COMMAND	"bcc"		/* C compiler */#   else#   if TURBOC        /* Turbo C */#    define CC_COMMAND	"tcc"		/* C compiler */#   endif	/* TURBOC */#   endif	/* BORLANDC */#  endif		/* MICROSOFT */# endif		/* MSDOS */# define SCRATCHIN	"%s\\siXXXXXX"	/* DOS ONLY - output of filter program */# define SCRATCHOUT	"%s\\soXXXXXX"	/* temp file used as input to filter */# define SLASH		'\\'# ifndef SHELL#  if TOS#   define SHELL	"shell.ttp"	/* default shell */#  else#   define SHELL	"command.com"	/* default shell */#  endif# endif# define NEEDSYNC	TRUE		/* assume ":se sync" by default */# if TOS && __GNUC__			/* probably on other systems, too */#  define REDIRECT	"2>"		/* GNUC reports on 2, others on 1 */#  define CC_COMMAND	"gcc -c"# else#  define REDIRECT	">"		/* shell's redirection of stderr */# endif#endif#if VMS/* do not change TMPNAME, and SCRATCH*: they MUST begin with '%s\\'! */# ifndef TMPDIR#  define TMPDIR        "sys$scratch:"  /* directory where temp files live */# endif# define TMPNAME        "%selv_%x.%x;1" /* temp file */# define SCRATCHIN      "%ssiXXXXXX"    /* DOS ONLY - output of filter program */# define SCRATCHOUT     "%ssoXXXXXX"    /* temp file used as input to filter */# define SLASH          '\:'  /* Worry point... jdc */# ifndef SHELL#   define SHELL        ""      /* default shell */# endif# define REDIRECT       ">"             /* shell's redirection of stderr */# define tread(fd,buf,n)  vms_read(fd,buf,(unsigned)(n))# define close vms_close# define lseek vms_lseek# define unlink vms_delete# define delete __delete   /* local routine conflicts w/VMS rtl routine. */# define rpipe vms_rpipe# define rpclose vms_rpclose# define ttyread vms_ttyread/* There is no sync() on vms */# define sync()/* jdc -- seems VMS external symbols are case insensitive */# define m_fWord m_fw_ord# define m_bWord m_bw_ord# define m_eWord m_ew_ord# define m_Nsrch m_n_srch# define m_Fch   m_f_ch# define m_Tch   m_t_ch# define v_Xchar v_x_char/* jdc -- also, braindead vms curses always found by linker. */# define LINES elvis_LINES# define COLS  elvis_COLS# define curscr elvis_curscr# define stdscr elvis_stdscr# define initscr elvis_initscr# define endwin  elvis_endwin# define wrefresh elvis_wrefresh#endif#if OSK# ifndef TMPDIR#  define TMPDIR	"/dd/tmp"	   /* directory where temp files live */# endif# ifndef PRSVDIR#  define PRSVDIR	"/dd/usr/preserve" /* directory where preserved file live */# endif# ifndef PRSVINDEX#  define PRSVINDEX	"/dd/usr/preserve/Index" /* index of files in PRSVDIR */# endif# ifndef CC_COMMAND#  define CC_COMMAND	"cc -r"		   /* name of the compiler */# endif# ifndef EXRC#  define EXRC		".exrc"		   /* init file in current directory */# endif# define SCRATCHOUT	"%s/soXXXXXX"	   /* temp file used as input to filter */# ifndef SHELL#  define SHELL		"shell"		   /* default shell */# endif# define FILEPERMS	(S_IREAD|S_IWRITE) /* file permissions used for creat() */# define REDIRECT	">>-"		   /* shell's redirection of stderr */# define sync()				   /* OS9 doesn't need a sync() */#endif#ifndef	TAGS# define TAGS		"tags"		/* name of the tags file */#endif#ifndef TMPNAME# define TMPNAME	"%s/elv_%x.%x"	/* format of names for temp files */#endif#ifndef EXINIT# define EXINIT		"EXINIT"	/* name of EXINIT environment variable */#endif#ifndef	EXRC# define EXRC		"elvis.rc"	/* name of ".exrc" file in current dir */#endif#ifndef HMEXRC# define HMEXRC		EXRC		/* name of ".exrc" file in home dir */#endif#ifndef	KEYWORDPRG# define KEYWORDPRG	"ref"#endif#ifndef	SCRATCHOUT# define SCRATCHIN	"%s/SIXXXXXX"# define SCRATCHOUT	"%s/SOXXXXXX"#endif#ifndef ERRLIST# define ERRLIST	"errlist"#endif#ifndef	SLASH# define SLASH		'/'#endif#ifndef SHELL# define SHELL		"shell"#endif#ifndef REG# define REG		register#endif#ifndef NEEDSYNC# define NEEDSYNC	FALSE#endif#ifndef FILEPERMS# define FILEPERMS	0666#endif#ifndef PRESERVE# define PRESERVE	"elvprsv"	/* name of the "preserve" program */#endif#ifndef CC_COMMAND# define CC_COMMAND	"cc -c"#endif#ifndef MAKE_COMMAND# define MAKE_COMMAND	"make"#endif#ifndef REDIRECT# define REDIRECT	"2>"#endif#ifndef BLKSIZE# ifdef CRUNCH#  define BLKSIZE	1024# else#  define BLKSIZE	2048# endif#endif#ifndef KEYBUFSIZE# define KEYBUFSIZE	1000#endif#endif  /* ndef _CONFIG_H */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -