xref: /dflybsd-src/contrib/bmake/trace.h (revision a34d5fb143d34c0e1d2580296c500e2c8a5bc5dc)
1*a34d5fb1SAntonio Huete Jimenez /*	$NetBSD: trace.h,v 1.6 2021/01/19 20:51:46 rillig Exp $	*/
201e196c8SJohn Marino 
3*a34d5fb1SAntonio Huete Jimenez /*
401e196c8SJohn Marino  * Copyright (c) 2000 The NetBSD Foundation, Inc.
501e196c8SJohn Marino  * All rights reserved.
601e196c8SJohn Marino  *
701e196c8SJohn Marino  * This code is derived from software contributed to The NetBSD Foundation
801e196c8SJohn Marino  * by Bill Sommerfeld
901e196c8SJohn Marino  *
1001e196c8SJohn Marino  * Redistribution and use in source and binary forms, with or without
1101e196c8SJohn Marino  * modification, are permitted provided that the following conditions
1201e196c8SJohn Marino  * are met:
1301e196c8SJohn Marino  * 1. Redistributions of source code must retain the above copyright
1401e196c8SJohn Marino  *    notice, this list of conditions and the following disclaimer.
1501e196c8SJohn Marino  * 2. Redistributions in binary form must reproduce the above copyright
1601e196c8SJohn Marino  *    notice, this list of conditions and the following disclaimer in the
1701e196c8SJohn Marino  *    documentation and/or other materials provided with the distribution.
1801e196c8SJohn Marino  *
1901e196c8SJohn Marino  * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
2001e196c8SJohn Marino  * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
2101e196c8SJohn Marino  * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
2201e196c8SJohn Marino  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
2301e196c8SJohn Marino  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
2401e196c8SJohn Marino  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
2501e196c8SJohn Marino  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
2601e196c8SJohn Marino  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
2701e196c8SJohn Marino  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
2801e196c8SJohn Marino  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
2901e196c8SJohn Marino  * POSSIBILITY OF SUCH DAMAGE.
3001e196c8SJohn Marino  */
3101e196c8SJohn Marino 
32*a34d5fb1SAntonio Huete Jimenez /*
3301e196c8SJohn Marino  * trace.h --
3401e196c8SJohn Marino  *	Definitions pertaining to the tracing of jobs in parallel mode.
3501e196c8SJohn Marino  */
3601e196c8SJohn Marino 
37*a34d5fb1SAntonio Huete Jimenez #ifndef MAKE_TRACE_H
38*a34d5fb1SAntonio Huete Jimenez #define MAKE_TRACE_H
39*a34d5fb1SAntonio Huete Jimenez 
40*a34d5fb1SAntonio Huete Jimenez typedef enum TrEvent {
4101e196c8SJohn Marino 	MAKESTART,
4201e196c8SJohn Marino 	MAKEEND,
4301e196c8SJohn Marino 	MAKEERROR,
4401e196c8SJohn Marino 	JOBSTART,
4501e196c8SJohn Marino 	JOBEND,
4601e196c8SJohn Marino 	MAKEINTR
4701e196c8SJohn Marino } TrEvent;
4801e196c8SJohn Marino 
4901e196c8SJohn Marino void Trace_Init(const char *);
5001e196c8SJohn Marino void Trace_Log(TrEvent, Job *);
5101e196c8SJohn Marino void Trace_End(void);
5201e196c8SJohn Marino 
53*a34d5fb1SAntonio Huete Jimenez #endif
54