job.h revision 146144
158234Skato/*-
258234Skato * Copyright (c) 1988, 1989, 1990, 1993
358234Skato *	The Regents of the University of California.  All rights reserved.
458234Skato * Copyright (c) 1988, 1989 by Adam de Boor
558234Skato * Copyright (c) 1989 by Berkeley Softworks
658234Skato * All rights reserved.
758234Skato *
858234Skato * This code is derived from software contributed to Berkeley by
958234Skato * Adam de Boor.
1058234Skato *
1158234Skato * Redistribution and use in source and binary forms, with or without
1258234Skato * modification, are permitted provided that the following conditions
1358234Skato * are met:
1458234Skato * 1. Redistributions of source code must retain the above copyright
1558234Skato *    notice, this list of conditions and the following disclaimer.
1658234Skato * 2. Redistributions in binary form must reproduce the above copyright
1758234Skato *    notice, this list of conditions and the following disclaimer in the
1858234Skato *    documentation and/or other materials provided with the distribution.
1958234Skato * 3. All advertising materials mentioning features or use of this software
2058234Skato *    must display the following acknowledgement:
2158234Skato *	This product includes software developed by the University of
2258234Skato *	California, Berkeley and its contributors.
2358234Skato * 4. Neither the name of the University nor the names of its contributors
2458234Skato *    may be used to endorse or promote products derived from this software
2558234Skato *    without specific prior written permission.
2658234Skato *
27145748Snyan * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
28145748Snyan * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
2958234Skato * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
30106047Snyan * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
3158234Skato * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
32104459Snyan * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
33106047Snyan * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
3458234Skato * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
35106047Snyan * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
3658234Skato * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
3758234Skato * SUCH DAMAGE.
3858234Skato *
3958234Skato *	@(#)job.h	8.1 (Berkeley) 6/6/93
40148062Snyan * $FreeBSD: head/usr.bin/make/job.h 146144 2005-05-12 14:43:32Z harti $
4169793Sobrien */
42106047Snyan
43106047Snyan#ifndef job_h_4678dfd1
4458234Skato#define	job_h_4678dfd1
4558234Skato
4658234Skato/*-
4758234Skato * job.h --
4858234Skato *	Definitions pertaining to the running of jobs in parallel mode.
4958234Skato */
5058234Skato
5158234Skato#include <stdio.h>
5258234Skato
5358234Skato#include "sprite.h"
5458234Skato
5558234Skatostruct Buffer;
5658234Skatostruct GNode;
5758234Skatostruct Lst;
5858234Skato
5958234Skatovoid Shell_Init(void);
6058234Skatovoid Job_Touch(struct GNode *, Boolean);
6158234SkatoBoolean Job_CheckCommands(struct GNode *, void (*abortProc)(const char *, ...));
6258234Skatovoid Job_CatchChildren(Boolean);
6358234Skatovoid Job_CatchOutput(int flag);
6458234Skatovoid Job_Make(struct GNode *);
6558234Skatovoid Job_Init(int);
6658234SkatoBoolean Job_Full(void);
6758234SkatoBoolean Job_Empty(void);
6858234SkatoReturnStatus Job_ParseShell(char *);
6958234Skatoint Job_Finish(void);
70106047Snyanvoid Job_Wait(void);
7158234Skatovoid Job_AbortAll(void);
72106047Snyan
7358234Skatovoid Proc_Init(void);
74106047Snyan
7558234Skatostruct Buffer *Cmd_Exec(const char *, const char **);
76106047Snyan
7758234Skatovoid Compat_Run(struct Lst *);
7858234Skato
7958234Skato#endif /* job_h_4678dfd1 */
80108650Snyan