2 * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
3 * See the copyright notice in the ACK home directory, in the file "Copyright".
6 #define RCS_ACK "$Id: ack.h,v 2.9 1994/06/24 10:12:26 ceriel Exp $"
9 /****************************************************************************/
10 /* User settable options */
11 /****************************************************************************/
13 #define FRONTENDS "fe" /* The front-end definitions */
14 #define TMPNAME "Ack_%x" /* Naming of temp. files */
16 /****************************************************************************/
17 /* Internal mnemonics, should not be tinkered with */
18 /****************************************************************************/
20 /* The names of some string variables */
27 #define LIBVAR "LNAME"
28 #define SUFFIX "SUFFIX"
30 /* Intended for flags, possibly in bit fields */
38 #define SUFCHAR '.' /* Start of SUFFIX in file name */
42 #define S_VAR '{' /* Start of variable */
43 #define C_VAR '}' /* End of variable */
44 #define A_VAR '?' /* Variable alternative */
45 #define BSLASH '\\' /* Backslash */
46 #define STAR '*' /* STAR */
47 #define C_IN '<' /* Token specifying input */
48 #define C_OUT '>' /* Token specifying output */
49 #define S_EXPR '(' /* Start of expression */
50 #define C_EXPR ')' /* End of expression */
51 #define M_EXPR ':' /* Middle of two suffix lists */
52 #define T_EXPR '=' /* Start of tail */
54 #define NO_SCAN 0200 /* Bit set in character to defeat recogn. */
57 char *p_path; /* points to the full pathname */
58 int p_keeps:1; /* The string should be thrown when unused */
59 int p_keep:1; /* The file should be thrown away after use */
62 #define p_cont(elem) ((path *)l_content(elem))
64 /* Return values of setpath() */
65 enum f_path { F_OK, F_NOMATCH, F_NOPATH } ;
67 /* Library routines */
69 extern char *strindex();
70 extern char *strrindex();
71 extern char *strcpy();
72 extern char *strcat();
80 enum f_path getpath();
81 enum f_path scan_end();
82 extern void noodstop();
83 extern char *getvar();
85 extern char *basename();
86 extern char *skipblank();
87 extern char *firstblank();
88 extern char *getcore();
89 extern char *changecore();
90 #define freecore(area) free(area)
92 #define DEBUG 1 /* Allow debugging of Ack */
95 # define debug 0 /* To surprise all these 'if ( debug ) 's */
101 /* Some arch need to be told not to use regcall for varargs functions */
102 void fatal(const char *fmt, ...);
103 void vprint(const char *fmt, ...);
104 void fuerror(const char *fmt, ...);
105 void werror(const char *fmt, ...);
106 void error(const char *fmt, ...);