|
|
// PROTO.H -- function prototypes
//
// Copyright (c) 1988-1990, Microsoft Corporation. All rights reserved.
//
// Purpose:
// This include file contains global function prototypes for all modules.
//
// Revision History:
// 04-Feb-2000 BTF Ported to Win64
// 15-Nov-1993 JdR Major speed improvements
// 01-Jun-1993 HV Change #ifdef KANJI to _MBCS
// 02-Feb-1990 SB Add open_file() prototype
// 31-Jan-1990 SB Debug version changes
// 08-Dec-1989 SB Changed proto of SPRINTF()
// 04-Dec-1989 SB Changed proto of expandFileNames() to void from void *
// 01-Dec-1989 SB realloc_memory() added #ifdef DEBUG_MEMORY
// 22-Nov-1989 SB free_memory() and mem_status() added #ifdef DEBUG_MEMORY
// 19-Oct-1989 SB added param (searchHandle) to protos of file functions
// 02-Oct-1989 SB setdrive() proto change
// 18-Aug-1989 SB heapdump() gets two parameters
// 05-Jun-1989 SB heapdump() prototype was added
// 22-May-1989 SB added parameter to freeRules()
// 19-Apr-1989 SB getFileName(), getDateTime(), putDateTime() added
// changed FILEINFO to void * in
// findFirst(), findNext(), searchPath(), findRule()
// 05-Apr-1989 SB made all funcs NEAR; Reqd to make all function calls NEAR
// 22-Mar-1989 SB rm unlinkTmpFiles(); add delScriptFiles()
// 09-Mar-1989 SB Changed param from FILEINFO* to FILEINFO** for findRule
// 03-Feb-1989 SB Changed () to (void) for prototypes
// 02-Feb-1989 SB Moved freeUnusedRules() prototype from nmake.c to here and
// renamed as freeRules()
// 05-Dec-1988 SB Added CDECL for functions with var params, ecs_strchr() and
// ecs_strrchr(); deleted proto for exit() - not reqd
// 23-Oct-1988 SB Added putEnvStr()
// 07-Jul-1988 rj Added targetFlag parameter to find and hash
// 06-Jul-1988 rj Added ecs_system declaration
// 28-Jun-1988 rj Added doCmd parameter to execLine
// 23-Jun-1988 rj Added echoCmd parameter to execLine
void displayBanner(void); void __cdecl makeError(unsigned, unsigned, ...); void __cdecl makeMessage(unsigned, ...); UCHAR getToken(unsigned, UCHAR); int skipWhiteSpace(UCHAR); int skipBackSlash(int, UCHAR); void parse(void); void appendItem(STRINGLIST **, STRINGLIST *); void prependItem(STRINGLIST **, STRINGLIST *); STRINGLIST * removeFirstString(STRINGLIST **); void * allocate(size_t); void * alloc_stringlist(void); void * rallocate(size_t); char * makeString(const char *); char * makeQuotedString(const char *); char * reallocString(char * pszTarget, const char *szAppend); BOOL tagOpen(char *, char *, char *); void parseCommandLine(unsigned, char **); void getRestOfLine(char **, size_t *); BOOL defineMacro(char *, char *, UCHAR); STRINGLIST * find(char *, unsigned, STRINGLIST **, BOOL); MACRODEF * findMacro(char *); void insertMacro(STRINGLIST *); unsigned hash(char *, unsigned, BOOL); void prependList(STRINGLIST **, STRINGLIST **); BOOL findMacroValues(char *, STRINGLIST **, STRINGLIST **, char *, unsigned, unsigned, UCHAR); BOOL findMacroValuesInRule(RULELIST *, char *, STRINGLIST **); char * removeMacros(char *); void delScriptFiles(void); char * expandMacros(char *, STRINGLIST **); STRINGLIST * expandWildCards(char *); void readCommandFile(char *); void setFlags(char, BOOL); void showTargets(void); void showRules(void); void showMacros(void); char * findFirst(char*, void *, NMHANDLE*); char * findNext(void *, NMHANDLE);
int processTree(void); void expandFileNames(char *, STRINGLIST **, STRINGLIST **); void sortRules(void); BOOL isRule(char *); char * prependPath(const char *, const char *); char * searchPath(char *, char *, void *, NMHANDLE*); BOOL putMacro(char *, char *, UCHAR); int execLine(char *, BOOL, BOOL, BOOL, char **); RULELIST * findRule(char *, char *, char *, void *); int lgetc(void); UCHAR processIncludeFile(char *); BOOL evalExpr(char *, UCHAR); int doMake(unsigned, char **, char *); void freeList(STRINGLIST *); void freeStringList(STRINGLIST *); #ifdef _MBCS
int GetTxtChr(FILE*); int UngetTxtChr (int, FILE *); #endif
int putEnvStr(char *, char *); #define PutEnv(x) _putenv(x)
void expandExtmake(char *, char *, char*); BOOL ZFormat(char *, unsigned, char *, char *); void printReverseFile(void); void freeRules(RULELIST *, BOOL); char * getFileName(void *); time_t getDateTime(const _finddata_t *); void putDateTime(_finddata_t *, time_t); char * getCurDir(void);
void free_memory(void *); void free_stringlist(STRINGLIST *); void * realloc_memory(void *, unsigned);
FILE * open_file(char *, char *); void initMacroTable(MACRODEF *table[]); void TruncateString(char *, unsigned); BOOL IsValidMakefile(FILE *fp); FILE * OpenValidateMakefile(char *name,char *mode);
// from util.c
char * unQuote(char*); int strcmpiquote(char *, char*); char ** copyEnviron(char **environ); void printStats(void); void curTime(time_t *);
// from charmap.c
void initCharmap(void);
// from print.c
void printDate(unsigned, char*, time_t);
// from build.c
int invokeBuild(char*, UCHAR, time_t *, char *); void DumpList(STRINGLIST *pList);
// from exec.c
extern int doCommands(char*, STRINGLIST*, STRINGLIST*, UCHAR, char *); extern int doCommandsEx(STRINGLIST*, STRINGLIST*, STRINGLIST*, UCHAR, char *);
// from rule.c
extern RULELIST * useRule(MAKEOBJECT*, char*, time_t, STRINGLIST**, STRINGLIST**, int*, time_t *, char **);
|