// cmdlib.h #ifndef __CMDLIB__ #define __CMDLIB__ #include "progsint.h" /*#include #include #include #include #include #include #include #include #include #include #include #ifdef NeXT #include #endif */ // the dec offsetof macro doesn't work very well... #define myoffsetof(type,identifier) ((size_t)&((type *)NULL)->identifier) // set these before calling CheckParm extern int myargc; extern char **myargv; //char *strupr (char *in); //char *strlower (char *in); int QCC_filelength (int handle); int QCC_tell (int handle); int QC_strcasecmp (const char *s1, const char *s2); #ifdef _MSC_VER #define QC_vsnprintf _vsnprintf #else #define QC_vsnprintf vsnprintf #endif #if (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 1)) #ifndef LIKEPRINTF #define LIKEPRINTF(x) __attribute__((format(printf,x,x+1))) #endif #endif #ifndef LIKEPRINTF #define LIKEPRINTF(x) #endif double I_FloatTime (void); void VARGS QCC_Error (int errortype, const char *error, ...) LIKEPRINTF(2); int CheckParm (char *check); int SafeOpenWrite (char *filename, int maxsize); int SafeOpenRead (char *filename); void SafeRead (int handle, void *buffer, long count); void SafeWrite (int handle, void *buffer, long count); void SafeClose(int handle); int SafeSeek(int hand, int ofs, int mode); void *SafeMalloc (long size); long QCC_LoadFile (char *filename, void **bufferptr); void QCC_SaveFile (char *filename, void *buffer, long count); void DefaultExtension (char *path, char *extension); void DefaultPath (char *path, char *basepath); void StripFilename (char *path); void StripExtension (char *path); void ExtractFilePath (char *path, char *dest); void ExtractFileBase (char *path, char *dest); void ExtractFileExtension (char *path, char *dest); long ParseNum (char *str); char *QCC_COM_Parse (char *data); char *QCC_COM_Parse2 (char *data); extern char qcc_token[1024]; extern int qcc_eof; #endif