xref: /openbsd/usr.bin/make/cmd_exec.h (revision e2e5a33c)
1f7923656Sespie #ifndef CMD_EXEC_H
2f7923656Sespie #define CMD_EXEC_H
3*e2e5a33cSespie /*	$OpenBSD: cmd_exec.h,v 1.5 2023/08/31 06:53:28 espie Exp $ */
4f7923656Sespie 
5f7923656Sespie /*
6f7923656Sespie  * Copyright (c) 2001 Marc Espie.
7f7923656Sespie  *
8f7923656Sespie  * Redistribution and use in source and binary forms, with or without
9f7923656Sespie  * modification, are permitted provided that the following conditions
10f7923656Sespie  * are met:
11f7923656Sespie  * 1. Redistributions of source code must retain the above copyright
12f7923656Sespie  *    notice, this list of conditions and the following disclaimer.
13f7923656Sespie  * 2. Redistributions in binary form must reproduce the above copyright
14f7923656Sespie  *    notice, this list of conditions and the following disclaimer in the
15f7923656Sespie  *    documentation and/or other materials provided with the distribution.
16f7923656Sespie  *
17f7923656Sespie  * THIS SOFTWARE IS PROVIDED BY THE OPENBSD PROJECT AND CONTRIBUTORS
18f7923656Sespie  * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
19f7923656Sespie  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
20f7923656Sespie  * A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE OPENBSD
21f7923656Sespie  * PROJECT OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
22f7923656Sespie  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
23f7923656Sespie  * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
24f7923656Sespie  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
25f7923656Sespie  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26f7923656Sespie  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
27f7923656Sespie  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28f7923656Sespie  */
29f7923656Sespie 
30f7923656Sespie /* output = Cmd_Exec(cmd, &err);
31f7923656Sespie  *	execute the command in cmd, return the output of that command as
32f7923656Sespie  *	a string. If an error occurs, Cmd_Exec returns an empty string,
33f7923656Sespie  *	and err is filled with the reason for the command failure.
34f7923656Sespie  *	The output result should always be freed by the caller.  */
35f7923656Sespie extern char *Cmd_Exec(const char *, char **);
36f7923656Sespie 
37*e2e5a33cSespie extern void CmdExec_Init(void);
38*e2e5a33cSespie extern __dead void run_command(const char *, bool);
39f7923656Sespie #endif
40