/* compServerDefs.h */
#define MAXNAMLEN 255 /* from dir.h */
enum maxStatusStrinSize {MAXSTATUSSTRINGSIZE = 30};
enum maxErrorMessageSize {MAXERRMSGSIZE = 100};
enum maxStatusMessageSize {MAXSTATUSMSGSIZE = 1000};
enum maxCommandStringSize {MAXCOMMANDSTRINGSIZE = 1000};
enum maxAvSize {MAXAVSIZE = 30};
typedef enum { UNKNOWN=0, SUN4, RS6000, DEC } arch;
#define MAXARCH (int)DEC
/* If you add any switches here be sure to update SwitchesArray in
* compServer.h and switch translation tables in mimosa.c and cinder.c
*/
typedef enum {a = 'a', b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z, pw, Q, zcirio, si} Switches;
#define LASTSWITCH si
typedef unsigned long JobID;
typedef struct object {
JobDesc job;
char *serverName;
char *inlineFile;
JobID jobID;
char **argv;
int argc;
unsigned nJobs;
char **jobList;
int optLevel;
long startTime, finishTime;
/* CLIENT *client; */
arch archtype;
} Object, *Handle;
/* Handle stuff */
extern Handle NewHandle();
extern void FreeHandle(/* Handle h */);
/* command line switches/args routines */
extern void setSwitch(/* Handle h, Switches sw */);
extern void resetSwitch(/* Handle h, Switches sw */);
extern int isSwitchSet(/* Handle h, Switches sw */);
/* IO and Error Msg Routines */
extern void PutLong();
extern void PutC();
extern void PutS();
extern void Fatal();
extern void Fatal2();
extern void Warning();
extern void echoCmd(/* Handle h, char *cmd, *filename */);
extern void echoArgs(/* Handle h */);
extern void ExitSuccessfully();
extern void Verbose();
/* Compiling and Status */
extern JobStatus JobStatusFromStatus(/* int sstatus */);
extern void DoCCompile();
extern void ExitSuccessfully();
extern int validArch();
extern arch getArch();
extern char *getMach();
extern char *getwd←wo←automount();
extern char *stringFromArch();
extern arch archFromString();
extern int isSun4Target();
extern int isDecTarget();
extern int isRS6000Target();
/* System routines */
extern void DeleteFile();
extern int CallSys(/* Handle h, char *fileArg, **argVector */);
extern int systeme(/* Handle h, char *shell, *commander, *fileToWorkOn,
int defSuccess*/);
/* the defSuccess flag is an ugly hack for the debugging flag.
Its value should be what default value should be returned if the
debugging flag is turned on */
extern void AppendFileName();
/* mimosa server stuff */
extern JobStatus CheckJobStatus();
extern JobStatus JobStatusFromStatus();
extern void TranslateCRs();
extern void ReportStatus();
extern void StartService();
extern void StopService();
extern int Mycallrpc();