/* * Things needed to compile under linux. * * Should be reworked totally to use GNU's 'configure' */ #ifndef SCLINUX_H #define SCLINUX_H /* getchar() is not a 'cool' replacement for MSDOS getch: Linux/unix depends on the features activated or not about the * controlling terminal's tty. This means that ioctl(2) calls must be performed, for instance to have the controlling * terminal tty's in 'raw' mode, if we want to be able to fetch a single character. This also means that everything must * be put back correctly when the function ends. See GETCH.C for an implementation. * * For interactive use of SRUN/SDBG if would be much better to use GNU's readline package: the user would be able to * have a complete emacs/vi like line editing system. */ #include "getch.h" #define stricmp(a,b) strcasecmp(a,b) #define strnicmp(a,b,c) strncasecmp(a,b,c) /* * WinWorld wants '\'. Unices do not. */ #define DIRECTORY_SEP_CHAR '/' #define DIRECTORY_SEP_STR "/" /* * SC assumes that a computer is Little Endian unless told otherwise. It uses * (and defines) the macros BYTE_ORDER and BIG_ENDIAN. * For Linux, we must overrule these settings with those defined in glibc. */ #if !defined __BYTE_ORDER # include #endif #if defined __OpenBSD__ || defined __FreeBSD__ # define __BYTE_ORDER BYTE_ORDER # define __LITTLE_ENDIAN LITTLE_ENDIAN # define __BIG_ENDIAN BIG_ENDIAN #endif #if !defined __BYTE_ORDER # error "Can't figure computer byte order (__BYTE_ORDER macro not found)" #endif #endif /* SCLINUX_H */