* IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
*
- * @(#)make.h 5.2 (Berkeley) %G%
+ * @(#)make.h 5.9 (Berkeley) %G%
*/
/*-
#ifndef _MAKE_H_
#define _MAKE_H_
-#include <sys/types.h>
-#include "sprite.h"
-#include <ctype.h>
-#include "lst.h"
-#include "config.h"
-
-#ifdef NO_VFORK
-#define vfork fork
-#else
-
-#ifdef sparc
-#include <vfork.h>
-#endif
-
-#endif /* NO_VFORK */
+#include <sys/types.h>
+#include <strings.h>
+#include <ctype.h>
+#include "sprite.h"
+#include "lst.h"
+#include "config.h"
/*-
* The structure for an individual graph node. Each node has several
* per line (::) */
#define OP_OPMASK (OP_DEPENDS|OP_FORCE|OP_DOUBLEDEP)
-#define OP_DONTCARE 0x00000008 /* Don't care if the target doesn't
+#define OP_OPTIONAL 0x00000008 /* Don't care if the target doesn't
* exist and can't be created */
#define OP_USE 0x00000010 /* Use associated commands for parents */
#define OP_EXEC 0x00000020 /* Target is never out of date, but always
* state of the -n or -t flags */
#define OP_JOIN 0x00000400 /* Target is out-of-date only if any of its
* children was out-of-date */
-#define OP_EXPORT 0x00000800 /* UNUSED: The creation of the target
- * should be sent somewhere else, if
- * possible. */
-#define OP_NOEXPORT 0x00001000 /* The creation should not be sent
- * elsewhere */
-#define OP_EXPORTSAME 0x00002000 /* Export only to machine with same
- * architecture */
#define OP_INVISIBLE 0x00004000 /* The node is invisible to its parents.
* I.e. it doesn't show up in the parents's
* local variables. */
#define OP_NOTMAIN 0x00008000 /* The node is exempt from normal 'main
* target' processing in parse.c */
-/*XXX*/
-#define OP_M68020 0x00010000 /* Command must be run on a 68020 */
/* Attributes applied by PMake */
#define OP_TRANSFORM 0x80000000 /* The node is a transformation rule */
#define OP_MEMBER 0x40000000 /* Target is a member of an archive */
* anything, just see if the targets are out-
* of-date */
-extern Boolean noWarnings; /* TRUE if should not print warning messages */
-extern Boolean noExport; /* TRUE if should not export any jobs */
extern Boolean checkEnvFirst; /* TRUE if environment should be searched for
* variables before the global context */
extern time_t now; /* The time at the start of this whole
* process */
-/*
- * Three levels of compatibility. amMake incorporates backwards and oldVars,
- * backwards incorporates oldVars.
- */
-extern Boolean amMake; /* Go all the way to backwards compatibility:
- * - Depth-first traversal of the graph
- * - No paralellism */
-extern Boolean backwards; /* Go halfway to backwards compatibility:
- * - One shell per command */
extern Boolean oldVars; /* Do old-style variable substitution */
-extern Boolean sysVmake; /* Imitate System V make in anything weird */
/*
- * Debug control:
- * There is one bit per module. It is up to the module what debug
+ * debug control:
+ * There is one bit per module. It is up to the module what debug
* information to print.
- * DEBUG(module) returns TRUE if debugging is on for that module.
*/
-extern int debug;
-#define DEBUG_SUFF 0x00000001
-#define DEBUG_MAKE 0x00000002
-#define DEBUG_JOB 0x00000004
-#define DEBUG_TARG 0x00000008
-#define DEBUG_DIR 0x00000010
-#define DEBUG_VAR 0x00000020
-#define DEBUG_COND 0x00000040
-#define DEBUG_PARSE 0x00000080
-#define DEBUG_RMT 0x00000100
-#define DEBUG_ARCH 0x00000200
-
-#ifndef __STDC__
+extern int debug;
+#define DEBUG_ARCH 0x0001
+#define DEBUG_COND 0x0002
+#define DEBUG_DIR 0x0004
+#define DEBUG_GRAPH1 0x0008
+#define DEBUG_GRAPH2 0x0010
+#define DEBUG_JOB 0x0020
+#define DEBUG_MAKE 0x0040
+#define DEBUG_PARSE 0x0080
+#define DEBUG_SUFF 0x0100
+#define DEBUG_TARG 0x0200
+#define DEBUG_VAR 0x0400
+
+#ifdef __STDC__
+#define CONCAT(a,b) a##b
+#else
#define I(a) a
#define CONCAT(a,b) I(a)b
-#else
-#define CONCAT(a,b) a##b
#endif /* __STDC__ */
-#define DEBUG(module) (debug & CONCAT(DEBUG_,module))
+#define DEBUG(module) (debug & CONCAT(DEBUG_,module))
/*
* Since there are so many, all functions that return non-integer values are
* extracted by means of a sed script or two and stuck in the file "nonints.h"
*/
-#include "nonints.h"
-
-#ifdef Sprite
-#define Str_FindSubstring(s1, s2) strstr(s1, s2)
-#endif /* Sprite */
-
-extern char *index();
-extern char *rindex();
-extern char *malloc();
+#include "nonints.h"
#endif _MAKE_H_